From 9ae05ce1558e6ab4fef5ebc944d2be2e6ee2c064 Mon Sep 17 00:00:00 2001 From: Fan Zhang Date: Mon, 18 Dec 2017 14:01:39 -0800 Subject: [PATCH 1/5] Old version of extension --- examples/js/loaders/GLTFLoader.js | 52 ++++++++++++ examples/js/loaders/draco/DRACOLoader.js | 80 +++++++++++++++++++ .../loaders/draco/draco_animation_decoder.js | 27 +++++++ examples/webgl_loader_gltf.html | 10 +++ 4 files changed, 169 insertions(+) create mode 100644 examples/js/loaders/draco/draco_animation_decoder.js diff --git a/examples/js/loaders/GLTFLoader.js b/examples/js/loaders/GLTFLoader.js index c94b78cc87f1e2..9a112b1e6584b0 100644 --- a/examples/js/loaders/GLTFLoader.js +++ b/examples/js/loaders/GLTFLoader.js @@ -123,6 +123,12 @@ THREE.GLTFLoader = ( function () { } + if ( json.extensionsUsed.indexOf( EXTENSIONS.DRACO_ANIMATION_COMPRESSION ) >= 0 ) { + + extensions[ EXTENSIONS.DRACO_ANIMATION_COMPRESSION ] = new GLTFDracoAnimationCompressionExtension( this.dracoLoader ); + + } + } console.time( 'GLTFLoader' ); @@ -196,6 +202,7 @@ THREE.GLTFLoader = ( function () { var EXTENSIONS = { KHR_BINARY_GLTF: 'KHR_binary_glTF', KHR_DRACO_MESH_COMPRESSION: 'KHR_draco_mesh_compression', + DRACO_ANIMATION_COMPRESSION: 'Draco_animation_compression', KHR_LIGHTS: 'KHR_lights', KHR_MATERIALS_COMMON: 'KHR_materials_common', KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS: 'KHR_materials_pbrSpecularGlossiness' @@ -511,6 +518,39 @@ THREE.GLTFLoader = ( function () { }; + function GLTFDracoAnimationCompressionExtension ( dracoLoader ) { + + if ( ! dracoLoader ) { + + throw new Error( 'THREE.GLTFLoader: No DRACOLoader instance provided.' ); + + } + + if (!dracoLoader.supportAnimationDecoding()) { + + throw new Error( 'THREE.GLTFLoader: DRACOLoader does not support animation decoding.' ); + } + + this.name = EXTENSIONS.DRACO_ANIMATION_COMPRESSION; + this.dracoLoader = dracoLoader; + } + + GLTFDracoAnimationCompressionExtension.prototype.decodeAnimation = function ( sampler, parser ) { + + var dracoLoader = this.dracoLoader; + var bufferViewIndex = sampler.extensions[ this.name ].bufferView; + console.log("Calling decodeAnimation in GLTF"); + return parser.getDependency( 'bufferView', bufferViewIndex ).then( function ( bufferView ) { + + return new Promise( function ( resolve ) { + + dracoLoader.decodeDracoAnimation( bufferView, resolve ); + + } ); + + } ); + } + /** * Specular-Glossiness Extension * @@ -2075,6 +2115,8 @@ THREE.GLTFLoader = ( function () { GLTFParser.prototype.loadAnimations = function () { var json = this.json; + var parser = this; + var extensions = this.extensions; return this._withDependencies( [ @@ -2093,15 +2135,25 @@ THREE.GLTFLoader = ( function () { var sampler = animation.samplers[ channel.sampler ]; if ( sampler ) { + var target = channel.target; var name = target.node !== undefined ? target.node : target.id; // NOTE: target.id is deprecated. + var input = animation.parameters !== undefined ? animation.parameters[ sampler.input ] : sampler.input; var output = animation.parameters !== undefined ? animation.parameters[ sampler.output ] : sampler.output; var inputAccessor = dependencies.accessors[ input ]; var outputAccessor = dependencies.accessors[ output ]; + // If use Draco_animation_compression, then need fill the accessors with data. + if ( sampler.extensions && sampler.extensions[ EXTENSIONS.DRACO_ANIMATION_COMPRESSION ] ) { + console.log("Using draco animation extension"); + var decodedAnimation = extensions[ EXTENSIONS.DRACO_ANIMATION_COMPRESSION ].decodeAnimation( sampler, parser ); + inputAccessor["array"] = decodedAnimation.input; + outputAccessor["array"] = decodedAnimation.output; + } + var node = dependencies.nodes[ name ]; if ( node ) { diff --git a/examples/js/loaders/draco/DRACOLoader.js b/examples/js/loaders/draco/DRACOLoader.js index d8647e3580503d..6e81a8f1e5a8f2 100644 --- a/examples/js/loaders/draco/DRACOLoader.js +++ b/examples/js/loaders/draco/DRACOLoader.js @@ -340,7 +340,82 @@ THREE.DRACOLoader.prototype = { if (typeof this.attributeOptions[attributeName] === 'undefined') this.attributeOptions[attributeName] = {}; return this.attributeOptions[attributeName]; + }, + + supportAnimationDecoding: function() { + if (typeof DracoAnimationDecoderModule === 'undefined') { + // No animation decoder is found. + return false; + } + return true; + }, + + decodeDracoAnimation: function(rawBuffer, callback) { + console.log("Calling decodeDracoAnimation in DracoLoader"); + + if (typeof DracoAnimationDecoderModule === 'undefined') { + console.log('No animation decoder is found.'); + return; + } + + const decoderModule = DracoAnimationDecoderModule(); + const buffer = new decoderModule.DecoderBuffer(); + buffer.Init(new Int8Array(rawBuffer), rawBuffer.byteLength); + const decoder = new decoderModule.AnimationDecoder(); + + console.log('Animation decoder is created.'); + + const dracoAnimation = new decoderModule.KeyframeAnimation(); + decoder.DecodeBufferToKeyframeAnimation(buffer, dracoAnimation); + + if (dracoAnimation.ptr == 0) { + console.log("Error: Decode animation failed."); + return; + } + + const numFrames = dracoAnimation.num_frames(); + console.log("Number of frames: " + numFrames); + const numComponents = dracoAnimation.num_components(); + const timestampAttData = new decoderModule.DracoFloat32Array(); + const animationAttData = new decoderModule.DracoFloat32Array(); + + const timestamps = new Float32Array(numFrames); + const animationData = new Float32Array(numFrames * numComponents); + for (let i = 0; i < numFrames; ++i) { + timestamps[i] = timestampAttData.GetValue(i); + for (let j = 0; j < numComponents; ++j) { + animationData[i * numComponents + j] = + animationAttData.GetValue(i * numComponents + j); + } + } + const decodedAnimation = { + input : timestamps, + output : animationData + } + /* + 70 + 73 assertTrue(decoder.GetTimestampAndAnimationData(dracoAnimation, + 74 timestampAttData, animationAttData)); + 75 + 76 const timestamps = new Float32Array(numFrames); + 77 const animationData = new Float32Array(numFrames * numComponents); + 78 for (let i = 0; i < numFrames; ++i) { + 79 timestamps[i] = timestampAttData.GetValue(i); + 80 for (let j = 0; j < numComponents; ++j) { + 81 animationData[i * numComponents + j] = + 82 animationAttData.GetValue(i * numComponents + j); + 83 } + 84 } + 85 const animation = { + 86 timestamps : timestamps, + 87 animationData : animationData + 88 } + 89 + 90 return animation; + */ + return decodedAnimation; } + }; // This function loads a JavaScript file and adds it to the page. "path" @@ -403,6 +478,11 @@ THREE.DRACOLoader.loadDracoDecoder = function(dracoDecoder) { } } +THREE.DRACOLoader.loadDracoAnimationDecoder = function(dracoAnimationDecoder) { + THREE.DRACOLoader.loadJavaScriptFile(dracoAnimationDecoder.dracoSrcPath + + 'draco_animation_decoder.js', null, dracoAnimationDecoder); +} + /** * Creates and returns a singleton instance of the DracoDecoderModule. * The module loading is done asynchronously for WebAssembly. Initialized module diff --git a/examples/js/loaders/draco/draco_animation_decoder.js b/examples/js/loaders/draco/draco_animation_decoder.js new file mode 100644 index 00000000000000..ae19b03fa51fa1 --- /dev/null +++ b/examples/js/loaders/draco/draco_animation_decoder.js @@ -0,0 +1,27 @@ +var DracoAnimationDecoderModule = function(DracoAnimationDecoderModule) { + DracoAnimationDecoderModule = DracoAnimationDecoderModule || {}; + var Module = DracoAnimationDecoderModule; + +var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=(function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}});Module["onModuleParsed"]=(function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}});function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=2)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var Module;if(!Module)Module=(typeof DracoAnimationDecoderModule!=="undefined"?DracoAnimationDecoderModule:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);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"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}else{Module["read"]=function shell_read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(f);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function shell_print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function shell_printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw new Error("Unknown runtime environment. Where are we?")}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}if(!Module["quit"]){Module["quit"]=(function(status,toThrow){throw toThrow})}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value;return value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i>2];var end=(ret+size+15|0)&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>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)}}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 getValue: "+type)}return null}var ALLOC_NORMAL=0;var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(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>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)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=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}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){var __cxa_demangle_func=Module["___cxa_demangle"]||Module["__cxa_demangle"];if(__cxa_demangle_func){try{var s=func.substr(1);var len=lengthBytesUTF8(s)+1;var buf=_malloc(len);stringToUTF8(s,buf,len);var status=_malloc(4);var ret=__cxa_demangle_func(buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}return func}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var ASMJS_PAGE_SIZE=16777216;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}if(!Module["reallocBuffer"])Module["reallocBuffer"]=(function(size){var ret;try{if(ArrayBuffer.transfer){ret=ArrayBuffer.transfer(buffer,size)}else{var oldHEAP8=HEAP8;ret=new ArrayBuffer(size);var temp=new Int8Array(ret);temp.set(oldHEAP8)}}catch(e){return false}var success=_emscripten_replace_memory(ret);if(!success)return false;return ret});function enlargeMemory(){var PAGE_MULTIPLE=Module["usingWasm"]?WASM_PAGE_SIZE:ASMJS_PAGE_SIZE;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["fround"]){var froundBuffer=new Float32Array(1);Math["fround"]=(function(x){froundBuffer[0]=x;return froundBuffer[0]})}Math.fround=Math["fround"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}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["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=Runtime.GLOBAL_BASE;STATICTOP=STATIC_BASE+15200;__ATINIT__.push();memoryInitializer="data:application/octet-stream;base64,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TAAAAFQAAAAAAAAAuAMAAEsAAABNAAAAVAAAAAAAAADoAwAARgAAAE4AAABIAAAASQAAAA8AAAADAAAAAwAAAAUAAABONWRyYWNvMjRLZXlmcmFtZUFuaW1hdGlvbkRlY29kZXJFAE41ZHJhY28xN0tleWZyYW1lQW5pbWF0aW9uRQBONWRyYWNvMjhBdHRyaWJ1dGVPY3RhaGVkcm9uVHJhbnNmb3JtRQBONWRyYWNvMThBdHRyaWJ1dGVUcmFuc2Zvcm1FAE41ZHJhY28zMEF0dHJpYnV0ZVF1YW50aXphdGlvblRyYW5zZm9ybUUATjVkcmFjbzE3QXR0cmlidXRlc0RlY29kZXJFAE41ZHJhY28yNkF0dHJpYnV0ZXNEZWNvZGVySW50ZXJmYWNlRQBONWRyYWNvMjZTZXF1ZW50aWFsQXR0cmlidXRlRGVjb2RlckUAIWlkZW50aXR5X21hcHBpbmdfAC91c3IvbG9jYWwvZ29vZ2xlL2hvbWUvemhhZmFuZy9kcmFjby9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9hdHRyaWJ1dGVzL3BvaW50X2F0dHJpYnV0ZS5oAFNldFBvaW50TWFwRW50cnkAc2tpcF9hdHRyaWJ1dGVfdHJhbnNmb3JtAE41ZHJhY28zN1NlcXVlbnRpYWxBdHRyaWJ1dGVEZWNvZGVyc0NvbnRyb2xsZXJFAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUATjVkcmFjbzM3UHJlZGljdGlvblNjaGVtZVR5cGVkRGVjb2RlckludGVyZmFjZUlpaUVFAE41ZHJhY28zMlByZWRpY3Rpb25TY2hlbWVEZWNvZGVySW50ZXJmYWNlRQBONWRyYWNvMjVQcmVkaWN0aW9uU2NoZW1lSW50ZXJmYWNlRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAZmFsc2UAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL3ByZWRpY3Rpb25fc2NoZW1lX3dyYXBfdHJhbnNmb3JtX2Jhc2UuaABxdWFudGl6YXRpb25fYml0cwBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfdGV4X2Nvb3Jkc19wb3J0YWJsZV9kZWNvZGVyLmgATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAC91c3IvbG9jYWwvZ29vZ2xlL2hvbWUvemhhZmFuZy9kcmFjby9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9jb21wcmVzc2lvbi9hdHRyaWJ1dGVzL3ByZWRpY3Rpb25fc2NoZW1lcy9tZXNoX3ByZWRpY3Rpb25fc2NoZW1lX3RleF9jb29yZHNfZGVjb2Rlci5oAE41ZHJhY28zNk1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzU2TWVzaFByZWRpY3Rpb25TY2hlbWVDb25zdHJhaW5lZE11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280NU1lc2hQcmVkaWN0aW9uU2NoZW1lTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMzZNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc0RlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280NU1lc2hQcmVkaWN0aW9uU2NoZW1lTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMzNTZXF1ZW50aWFsSW50ZWdlckF0dHJpYnV0ZURlY29kZXJFAChxKSA+PSAoMikAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvbm9ybWFsX2NvbXByZXNzaW9uX3V0aWxzLmgAU2V0UXVhbnRpemF0aW9uQml0cwAocSkgPD0gKDMwKQAoaW5fcykgPj0gKDApAE9jdGFoZXJkYWxDb29yZHNUb1VuaXRWZWN0b3IAKGluX3QpID49ICgwKQAoaW5fcykgPD0gKDEpAChpbl90KSA8PSAoMSkAKHByZWRfdmFsc1swXSkgPD0gKDIgKiB0aGlzLT5jZW50ZXJfdmFsdWUoKSkAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL3ByZWRpY3Rpb25fc2NoZW1lX25vcm1hbF9vY3RhaGVkcm9uX2Nhbm9uaWNhbGl6ZWRfZGVjb2RpbmdfdHJhbnNmb3JtLmgAQ29tcHV0ZU9yaWdpbmFsVmFsdWUAKHByZWRfdmFsc1sxXSkgPD0gKDIgKiB0aGlzLT5jZW50ZXJfdmFsdWUoKSkAKGNvcnJfdmFsc1swXSkgPD0gKDIgKiB0aGlzLT5jZW50ZXJfdmFsdWUoKSkAKGNvcnJfdmFsc1sxXSkgPD0gKDIgKiB0aGlzLT5jZW50ZXJfdmFsdWUoKSkAKDApIDw9IChwcmVkX3ZhbHNbMF0pACgwKSA8PSAocHJlZF92YWxzWzFdKQAoMCkgPD0gKGNvcnJfdmFsc1swXSkAKDApIDw9IChjb3JyX3ZhbHNbMV0pAChzKSA8PSAoY2VudGVyX3ZhbHVlXykASXNJbkRpYW1vbmQAKHQpIDw9IChjZW50ZXJfdmFsdWVfKQAocykgPj0gKC1jZW50ZXJfdmFsdWVfKQAodCkgPj0gKC1jZW50ZXJfdmFsdWVfKQAoKnMpIDw9IChjZW50ZXJfdmFsdWVfKQBJbnZlcnREaWFtb25kACgqdCkgPD0gKGNlbnRlcl92YWx1ZV8pACgqcykgPj0gKC1jZW50ZXJfdmFsdWVfKQAoKnQpID49ICgtY2VudGVyX3ZhbHVlXykAKG1heF9xdWFudGl6ZWRfdmFsdWUgJSAyKSA9PSAoMSkAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL3ByZWRpY3Rpb25fc2NoZW1lX25vcm1hbF9vY3RhaGVkcm9uX3RyYW5zZm9ybV9iYXNlLmgAc2V0X21heF9xdWFudGl6ZWRfdmFsdWUATjVkcmFjbzI4UHJlZGljdGlvblNjaGVtZURlbHRhRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQB0aGlzLT5Jc0luaXRpYWxpemVkKCkAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfZ2VvbWV0cmljX25vcm1hbF9wcmVkaWN0b3JfYXJlYS5oAENvbXB1dGVQcmVkaWN0ZWRWYWx1ZQAobm9ybWFsLkFic1N1bSgpKSA8PSAodXBwZXJfYm91bmQpAC91c3IvbG9jYWwvZ29vZ2xlL2hvbWUvemhhZmFuZy9kcmFjby9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9jb21wcmVzc2lvbi9hdHRyaWJ1dGVzL3ByZWRpY3Rpb25fc2NoZW1lcy9tZXNoX3ByZWRpY3Rpb25fc2NoZW1lX2dlb21ldHJpY19ub3JtYWxfcHJlZGljdG9yX2Jhc2UuaABHZXRQb3NpdGlvbkZvckNvcm5lcgBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfZ2VvbWV0cmljX25vcm1hbF9kZWNvZGVyLmgAQ29tcHV0ZU9yaWdpbmFsVmFsdWVzAChudW1fY29tcG9uZW50cykgPT0gKDIpAChwcmVkX25vcm1hbF8zZC5BYnNTdW0oKSkgPT0gKG9jdGFoZWRyb25fdG9vbF9ib3hfLmNlbnRlcl92YWx1ZSgpKQAoc3RkOjphYnMoaW50X3ZlY1swXSkgKyBzdGQ6OmFicyhpbnRfdmVjWzFdKSArIHN0ZDo6YWJzKGludF92ZWNbMl0pKSA9PSAoY2VudGVyX3ZhbHVlXykASW50ZWdlclZlY3RvclRvUXVhbnRpemVkT2N0YWhlZHJhbENvb3JkcwAoaSkgPT0gKDApAEdldFBhcmVudEF0dHJpYnV0ZVR5cGUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAC91c3IvbG9jYWwvZ29vZ2xlL2hvbWUvemhhZmFuZy9kcmFjby9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9jb21wcmVzc2lvbi9hdHRyaWJ1dGVzL3ByZWRpY3Rpb25fc2NoZW1lcy9wcmVkaWN0aW9uX3NjaGVtZV9ub3JtYWxfb2N0YWhlZHJvbl9kZWNvZGluZ190cmFuc2Zvcm0uaABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMzJTZXF1ZW50aWFsTm9ybWFsQXR0cmlidXRlRGVjb2RlckUAKDApIDw9IChhdHRfaWQpAE41ZHJhY28zOFNlcXVlbnRpYWxRdWFudGl6YXRpb25BdHRyaWJ1dGVEZWNvZGVyRQBONWRyYWNvMTVQb2ludHNTZXF1ZW5jZXJFAE41ZHJhY28xNUxpbmVhclNlcXVlbmNlckUATjVkcmFjbzE3UG9pbnRDbG91ZERlY29kZXJFAEZhaWxlZCB0byBwYXJzZSBEcmFjbyBoZWFkZXIuAERSQUNPAE5vdCBhIERyYWNvIGZpbGUuAEZhaWxlZCB0byBkZWNvZGUgbWV0YWRhdGEuAFVzaW5nIGluY29tcGF0aWJsZSBkZWNvZGVyIGZvciB0aGUgaW5wdXQgZ2VvbWV0cnkuAFVua25vd24gbWFqb3IgdmVyc2lvbi4AVW5rbm93biBtaW5vciB2ZXJzaW9uLgBGYWlsZWQgdG8gaW5pdGlhbGl6ZSB0aGUgZGVjb2Rlci4ARmFpbGVkIHRvIGRlY29kZSBnZW9tZXRyeSBkYXRhLgBGYWlsZWQgdG8gZGVjb2RlIHBvaW50IGF0dHJpYnV0ZXMuAE41ZHJhY28yN1BvaW50Q2xvdWRTZXF1ZW50aWFsRGVjb2RlckUAKG5iaXRzKSA+PSAoMCkAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvcmUvZGVjb2Rlcl9idWZmZXIuaABHZXRCaXRzAChuYml0cykgPD0gKDMyKQAoYXR0X2lkKSA8IChzdGF0aWNfY2FzdDxpbnQzMl90PihhdHRyaWJ1dGVzXy5zaXplKCkpKQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vcG9pbnRfY2xvdWQvcG9pbnRfY2xvdWQuaABhdHRyaWJ1dGUAYXR0X2lkID49IDAAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL3BvaW50X2Nsb3VkL3BvaW50X2Nsb3VkLmNjAFNldEF0dHJpYnV0ZQBhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAE41ZHJhY28xMFBvaW50Q2xvdWRFAFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBTdDExbG9naWNfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(Runtime.setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(Runtime.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>2];info.adjusted=thrown;return(Runtime.setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(Runtime.setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function _abort(){Module["abort"]()}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}function ___gxx_personality_v0(){}function ___cxa_allocate_exception(size){return _malloc(size)}DYNAMICTOP_PTR=allocate(1,"i32",ALLOC_STATIC);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=Runtime.alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;function 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}var ASSERTIONS;var intArrayToString=ASSERTIONS?(function(array){var ret=[];for(var i=0;i255){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.");chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}):(function(array){var ret=[];for(var i=0;i255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")});var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var decodeBase64=typeof atob==="function"?atob:(function(input){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i2147483648)return false;b=new a(newBuffer);d=new c(newBuffer);f=new e(newBuffer);h=new g(newBuffer);j=new i(newBuffer);l=new k(newBuffer);n=new m(newBuffer);p=new o(newBuffer);buffer=newBuffer;return true} +// EMSCRIPTEN_START_FUNCS +function Pa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;n=x;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=f[3656]|0;c=m>>>a;if(c&3|0){b=(c&1^1)+a|0;a=14664+(b<<1<<2)|0;c=a+8|0;d=f[c>>2]|0;e=d+8|0;g=f[e>>2]|0;if((a|0)==(g|0))f[3656]=m&~(1<>2]=a;f[c>>2]=g}w=b<<3;f[d+4>>2]=w|3;w=d+w+4|0;f[w>>2]=f[w>>2]|1;w=e;u=x;return w|0}l=f[3658]|0;if(k>>>0>l>>>0){if(c|0){b=2<>>12&16;b=b>>>h;c=b>>>5&8;b=b>>>c;e=b>>>2&4;b=b>>>e;a=b>>>1&2;b=b>>>a;d=b>>>1&1;d=(c|h|e|a|d)+(b>>>d)|0;b=14664+(d<<1<<2)|0;a=b+8|0;e=f[a>>2]|0;h=e+8|0;c=f[h>>2]|0;if((b|0)==(c|0)){a=m&~(1<>2]=b;f[a>>2]=c;a=m}g=(d<<3)-k|0;f[e+4>>2]=k|3;d=e+k|0;f[d+4>>2]=g|1;f[d+g>>2]=g;if(l|0){e=f[3661]|0;b=l>>>3;c=14664+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=e;f[b+12>>2]=e;f[e+8>>2]=b;f[e+12>>2]=c}f[3658]=g;f[3661]=d;w=h;u=x;return w|0}i=f[3657]|0;if(i){c=(i&0-i)+-1|0;h=c>>>12&16;c=c>>>h;g=c>>>5&8;c=c>>>g;j=c>>>2&4;c=c>>>j;d=c>>>1&2;c=c>>>d;a=c>>>1&1;a=f[14928+((g|h|j|d|a)+(c>>>a)<<2)>>2]|0;c=(f[a+4>>2]&-8)-k|0;d=f[a+16+(((f[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){j=a;g=c}else{do{h=(f[d+4>>2]&-8)-k|0;j=h>>>0>>0;c=j?h:c;a=j?d:a;d=f[d+16+(((f[d+16>>2]|0)==0&1)<<2)>>2]|0}while((d|0)!=0);j=a;g=c}h=j+k|0;if(j>>>0>>0){e=f[j+24>>2]|0;b=f[j+12>>2]|0;do if((b|0)==(j|0)){a=j+20|0;b=f[a>>2]|0;if(!b){a=j+16|0;b=f[a>>2]|0;if(!b){c=0;break}}while(1){c=b+20|0;d=f[c>>2]|0;if(d|0){b=d;a=c;continue}c=b+16|0;d=f[c>>2]|0;if(!d)break;else{b=d;a=c}}f[a>>2]=0;c=b}else{c=f[j+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);do if(e|0){b=f[j+28>>2]|0;a=14928+(b<<2)|0;if((j|0)==(f[a>>2]|0)){f[a>>2]=c;if(!c){f[3657]=i&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=e;b=f[j+16>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}b=f[j+20>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}while(0);if(g>>>0<16){w=g+k|0;f[j+4>>2]=w|3;w=j+w+4|0;f[w>>2]=f[w>>2]|1}else{f[j+4>>2]=k|3;f[h+4>>2]=g|1;f[h+g>>2]=g;if(l|0){d=f[3661]|0;b=l>>>3;c=14664+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=d;f[b+12>>2]=d;f[d+8>>2]=b;f[d+12>>2]=c}f[3658]=g;f[3661]=h}w=j+8|0;u=x;return w|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;j=f[3657]|0;if(j){d=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)i=31;else{m=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;i=14-(l|m|i)+(v<>>15)|0;i=k>>>(i+7|0)&1|i<<1}else i=0;c=f[14928+(i<<2)>>2]|0;a:do if(!c){c=0;a=0;v=57}else{a=0;h=k<<((i|0)==31?0:25-(i>>>1)|0);g=0;while(1){e=(f[c+4>>2]&-8)-k|0;if(e>>>0>>0)if(!e){a=c;d=0;e=c;v=61;break a}else{a=c;d=e}e=f[c+20>>2]|0;c=f[c+16+(h>>>31<<2)>>2]|0;g=(e|0)==0|(e|0)==(c|0)?g:e;e=(c|0)==0;if(e){c=g;v=57;break}else h=h<<((e^1)&1)}}while(0);if((v|0)==57){if((c|0)==0&(a|0)==0){a=2<>>12&16;m=m>>>h;g=m>>>5&8;m=m>>>g;i=m>>>2&4;m=m>>>i;l=m>>>1&2;m=m>>>l;c=m>>>1&1;a=0;c=f[14928+((g|h|i|l|c)+(m>>>c)<<2)>>2]|0}if(!c){i=a;h=d}else{e=c;v=61}}if((v|0)==61)while(1){v=0;c=(f[e+4>>2]&-8)-k|0;m=c>>>0>>0;c=m?c:d;a=m?e:a;e=f[e+16+(((f[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){i=a;h=c;break}else{d=c;v=61}}if((i|0)!=0?h>>>0<((f[3658]|0)-k|0)>>>0:0){g=i+k|0;if(i>>>0>=g>>>0){w=0;u=x;return w|0}e=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=f[a>>2]|0;if(!b){a=i+16|0;b=f[a>>2]|0;if(!b){b=0;break}}while(1){c=b+20|0;d=f[c>>2]|0;if(d|0){b=d;a=c;continue}c=b+16|0;d=f[c>>2]|0;if(!d)break;else{b=d;a=c}}f[a>>2]=0}else{w=f[i+8>>2]|0;f[w+12>>2]=b;f[b+8>>2]=w}while(0);do if(e){a=f[i+28>>2]|0;c=14928+(a<<2)|0;if((i|0)==(f[c>>2]|0)){f[c>>2]=b;if(!b){d=j&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){d=j;break}}f[b+24>>2]=e;a=f[i+16>>2]|0;if(a|0){f[b+16>>2]=a;f[a+24>>2]=b}a=f[i+20>>2]|0;if(a){f[b+20>>2]=a;f[a+24>>2]=b;d=j}else d=j}else d=j;while(0);do if(h>>>0>=16){f[i+4>>2]=k|3;f[g+4>>2]=h|1;f[g+h>>2]=h;b=h>>>3;if(h>>>0<256){c=14664+(b<<1<<2)|0;a=f[3656]|0;b=1<>2]|0}f[a>>2]=g;f[b+12>>2]=g;f[g+8>>2]=b;f[g+12>>2]=c;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(t|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;c=14928+(b<<2)|0;f[g+28>>2]=b;a=g+16|0;f[a+4>>2]=0;f[a>>2]=0;a=1<>2]=g;f[g+24>>2]=c;f[g+12>>2]=g;f[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);c=f[c>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(h|0)){v=97;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=96;break}else{a=a<<1;c=b}}if((v|0)==96){f[d>>2]=g;f[g+24>>2]=c;f[g+12>>2]=g;f[g+8>>2]=g;break}else if((v|0)==97){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=g;f[v>>2]=g;f[g+8>>2]=w;f[g+12>>2]=c;f[g+24>>2]=0;break}}else{w=h+k|0;f[i+4>>2]=w|3;w=i+w+4|0;f[w>>2]=f[w>>2]|1}while(0);w=i+8|0;u=x;return w|0}else m=k}else m=k}else m=-1;while(0);c=f[3658]|0;if(c>>>0>=m>>>0){b=c-m|0;a=f[3661]|0;if(b>>>0>15){w=a+m|0;f[3661]=w;f[3658]=b;f[w+4>>2]=b|1;f[w+b>>2]=b;f[a+4>>2]=m|3}else{f[3658]=0;f[3661]=0;f[a+4>>2]=c|3;w=a+c+4|0;f[w>>2]=f[w>>2]|1}w=a+8|0;u=x;return w|0}h=f[3659]|0;if(h>>>0>m>>>0){t=h-m|0;f[3659]=t;w=f[3662]|0;v=w+m|0;f[3662]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}if(!(f[3774]|0)){f[3776]=4096;f[3775]=4096;f[3777]=-1;f[3778]=-1;f[3779]=0;f[3767]=0;a=n&-16^1431655768;f[n>>2]=a;f[3774]=a;a=4096}else a=f[3776]|0;i=m+48|0;j=m+47|0;g=a+j|0;e=0-a|0;k=g&e;if(k>>>0<=m>>>0){w=0;u=x;return w|0}a=f[3766]|0;if(a|0?(l=f[3764]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){w=0;u=x;return w|0}b:do if(!(f[3767]&4)){c=f[3662]|0;c:do if(c){d=15072;while(1){a=f[d>>2]|0;if(a>>>0<=c>>>0?(q=d+4|0,(a+(f[q>>2]|0)|0)>>>0>c>>>0):0)break;a=f[d+8>>2]|0;if(!a){v=118;break c}else d=a}b=g-h&e;if(b>>>0<2147483647){a=sf(b|0)|0;if((a|0)==((f[d>>2]|0)+(f[q>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{d=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){c=sf(0)|0;if((c|0)!=(-1|0)?(b=c,o=f[3775]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=f[3764]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){q=f[3766]|0;if(q|0?p>>>0<=o>>>0|p>>>0>q>>>0:0){b=0;break}a=sf(b|0)|0;if((a|0)==(c|0)){h=b;g=c;v=135;break b}else{d=a;v=126}}else b=0}while(0);do if((v|0)==126){c=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(d|0)!=(-1|0))))if((d|0)==(-1|0)){b=0;break}else{h=b;g=d;v=135;break b}a=f[3776]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=d;v=135;break b}if((sf(a|0)|0)==(-1|0)){sf(c|0)|0;b=0;break}else{h=a+b|0;g=d;v=135;break b}}while(0);f[3767]=f[3767]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?k>>>0<2147483647:0)?(t=sf(k|0)|0,q=sf(0)|0,r=q-t|0,s=r>>>0>(m+40|0)>>>0,!((t|0)==(-1|0)|s^1|t>>>0>>0&((t|0)!=(-1|0)&(q|0)!=(-1|0))^1)):0){h=s?r:b;g=t;v=135}if((v|0)==135){b=(f[3764]|0)+h|0;f[3764]=b;if(b>>>0>(f[3765]|0)>>>0)f[3765]=b;j=f[3662]|0;do if(j){b=15072;while(1){a=f[b>>2]|0;c=b+4|0;d=f[c>>2]|0;if((g|0)==(a+d|0)){v=145;break}e=f[b+8>>2]|0;if(!e)break;else b=e}if(((v|0)==145?(f[b+12>>2]&8|0)==0:0)?j>>>0>>0&j>>>0>=a>>>0:0){f[c>>2]=d+h;w=j+8|0;w=(w&7|0)==0?0:0-w&7;v=j+w|0;w=(f[3659]|0)+(h-w)|0;f[3662]=v;f[3659]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[3663]=f[3778];break}if(g>>>0<(f[3660]|0)>>>0)f[3660]=g;c=g+h|0;b=15072;while(1){if((f[b>>2]|0)==(c|0)){v=153;break}a=f[b+8>>2]|0;if(!a)break;else b=a}if((v|0)==153?(f[b+12>>2]&8|0)==0:0){f[b>>2]=g;l=b+4|0;f[l>>2]=(f[l>>2]|0)+h;l=g+8|0;l=g+((l&7|0)==0?0:0-l&7)|0;b=c+8|0;b=c+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;f[l+4>>2]=m|3;do if((b|0)!=(j|0)){if((b|0)==(f[3661]|0)){w=(f[3658]|0)+i|0;f[3658]=w;f[3661]=k;f[k+4>>2]=w|1;f[k+w>>2]=w;break}a=f[b+4>>2]|0;if((a&3|0)==1){h=a&-8;d=a>>>3;d:do if(a>>>0<256){a=f[b+8>>2]|0;c=f[b+12>>2]|0;if((c|0)==(a|0)){f[3656]=f[3656]&~(1<>2]=c;f[c+8>>2]=a;break}}else{g=f[b+24>>2]|0;a=f[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;c=d+4|0;a=f[c>>2]|0;if(!a){a=f[d>>2]|0;if(!a){a=0;break}else c=d}while(1){d=a+20|0;e=f[d>>2]|0;if(e|0){a=e;c=d;continue}d=a+16|0;e=f[d>>2]|0;if(!e)break;else{a=e;c=d}}f[c>>2]=0}else{w=f[b+8>>2]|0;f[w+12>>2]=a;f[a+8>>2]=w}while(0);if(!g)break;c=f[b+28>>2]|0;d=14928+(c<<2)|0;do if((b|0)!=(f[d>>2]|0)){f[g+16+(((f[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{f[d>>2]=a;if(a|0)break;f[3657]=f[3657]&~(1<>2]=g;c=b+16|0;d=f[c>>2]|0;if(d|0){f[a+16>>2]=d;f[d+24>>2]=a}c=f[c+4>>2]|0;if(!c)break;f[a+20>>2]=c;f[c+24>>2]=a}while(0);b=b+h|0;e=h+i|0}else e=i;b=b+4|0;f[b>>2]=f[b>>2]&-2;f[k+4>>2]=e|1;f[k+e>>2]=e;b=e>>>3;if(e>>>0<256){c=14664+(b<<1<<2)|0;a=f[3656]|0;b=1<>2]|0}f[a>>2]=k;f[b+12>>2]=k;f[k+8>>2]=b;f[k+12>>2]=c;break}b=e>>>8;do if(!b)b=0;else{if(e>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(t|v|b)+(w<>>15)|0;b=e>>>(b+7|0)&1|b<<1}while(0);d=14928+(b<<2)|0;f[k+28>>2]=b;a=k+16|0;f[a+4>>2]=0;f[a>>2]=0;a=f[3657]|0;c=1<>2]=k;f[k+24>>2]=d;f[k+12>>2]=k;f[k+8>>2]=k;break}a=e<<((b|0)==31?0:25-(b>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){v=194;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=193;break}else{a=a<<1;c=b}}if((v|0)==193){f[d>>2]=k;f[k+24>>2]=c;f[k+12>>2]=k;f[k+8>>2]=k;break}else if((v|0)==194){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=k;f[v>>2]=k;f[k+8>>2]=w;f[k+12>>2]=c;f[k+24>>2]=0;break}}else{w=(f[3659]|0)+i|0;f[3659]=w;f[3662]=k;f[k+4>>2]=w|1}while(0);w=l+8|0;u=x;return w|0}b=15072;while(1){a=f[b>>2]|0;if(a>>>0<=j>>>0?(w=a+(f[b+4>>2]|0)|0,w>>>0>j>>>0):0)break;b=f[b+8>>2]|0}e=w+-47|0;a=e+8|0;a=e+((a&7|0)==0?0:0-a&7)|0;e=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;c=g+8|0;c=(c&7|0)==0?0:0-c&7;v=g+c|0;c=h+-40-c|0;f[3662]=v;f[3659]=c;f[v+4>>2]=c|1;f[v+c+4>>2]=40;f[3663]=f[3778];c=a+4|0;f[c>>2]=27;f[b>>2]=f[3768];f[b+4>>2]=f[3769];f[b+8>>2]=f[3770];f[b+12>>2]=f[3771];f[3768]=g;f[3769]=h;f[3771]=0;f[3770]=b;b=a+24|0;do{v=b;b=b+4|0;f[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;f[c>>2]=f[c>>2]&-2;f[j+4>>2]=g|1;f[a>>2]=g;b=g>>>3;if(g>>>0<256){c=14664+(b<<1<<2)|0;a=f[3656]|0;b=1<>2]|0}f[a>>2]=j;f[b+12>>2]=j;f[j+8>>2]=b;f[j+12>>2]=c;break}b=g>>>8;if(b)if(g>>>0>16777215)c=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;c=14-(t|v|c)+(w<>>15)|0;c=g>>>(c+7|0)&1|c<<1}else c=0;d=14928+(c<<2)|0;f[j+28>>2]=c;f[j+20>>2]=0;f[e>>2]=0;b=f[3657]|0;a=1<>2]=j;f[j+24>>2]=d;f[j+12>>2]=j;f[j+8>>2]=j;break}a=g<<((c|0)==31?0:25-(c>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(g|0)){v=216;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=215;break}else{a=a<<1;c=b}}if((v|0)==215){f[d>>2]=j;f[j+24>>2]=c;f[j+12>>2]=j;f[j+8>>2]=j;break}else if((v|0)==216){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=j;f[v>>2]=j;f[j+8>>2]=w;f[j+12>>2]=c;f[j+24>>2]=0;break}}}else{w=f[3660]|0;if((w|0)==0|g>>>0>>0)f[3660]=g;f[3768]=g;f[3769]=h;f[3771]=0;f[3665]=f[3774];f[3664]=-1;b=0;do{w=14664+(b<<1<<2)|0;f[w+12>>2]=w;f[w+8>>2]=w;b=b+1|0}while((b|0)!=32);w=g+8|0;w=(w&7|0)==0?0:0-w&7;v=g+w|0;w=h+-40-w|0;f[3662]=v;f[3659]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[3663]=f[3778]}while(0);b=f[3659]|0;if(b>>>0>m>>>0){t=b-m|0;f[3659]=t;w=f[3662]|0;v=w+m|0;f[3662]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}}w=ni()|0;f[w>>2]=12;w=0;u=x;return w|0}function Qa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;b=k;i=k+8|0;c=k+4|0;f[i>>2]=a;do if(a>>>0>=212){h=(a>>>0)/210|0;e=h*210|0;f[c>>2]=a-e;a=0;g=(tf(3324,3516,c,b)|0)-3324>>2;b=e;a:while(1){e=(f[3324+(g<<2)>>2]|0)+b|0;b=5;while(1){if(b>>>0>=47){d=211;j=8;break}c=f[3132+(b<<2)>>2]|0;d=(e>>>0)/(c>>>0)|0;if(d>>>0>>0){j=106;break a}if((e|0)==(X(d,c)|0))break;else b=b+1|0}b:do if((j|0)==8){c:while(1){j=0;b=(e>>>0)/(d>>>0)|0;do if(b>>>0>=d>>>0)if((e|0)!=(X(b,d)|0)){b=d+10|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+12|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+16|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+18|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+22|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+28|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)==(X(c,b)|0))c=9;else{b=d+30|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+36|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+40|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+42|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+46|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+52|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+58|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+60|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+66|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+70|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+72|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+78|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+82|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+88|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+96|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+100|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+102|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+106|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+108|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+112|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+120|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+126|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+130|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+136|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+138|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+142|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+148|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+150|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+156|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+162|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+166|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+168|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+172|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+178|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+180|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+186|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+190|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+192|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+196|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+198|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+208|0;c=(e>>>0)/(b>>>0)|0;l=c>>>0>>0;c=(e|0)==(X(c,b)|0);b=l|c?b:d+210|0;c=l?1:c?9:0;a=l?e:a}else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else{b=d;c=9}else{b=d;c=1;a=e}while(0);switch(c&15){case 9:break b;case 0:{d=b;j=8;break}default:break c}}if(c){j=107;break a}}while(0);l=g+1|0;e=(l|0)==48;b=(e&1)+h|0;h=b;g=e?0:l;b=b*210|0}if((j|0)==106){f[i>>2]=e;a=e;break}else if((j|0)==107){f[i>>2]=e;break}}else{a=tf(3132,3324,i,b)|0;a=f[a>>2]|0}while(0);u=k;return a|0}function Ra(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=Ca;if(!g){g=0;return g|0}do switch(f[a+28>>2]|0){case 1:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;i=a+48|0;i=Wg(l|0,I|0,f[i>>2]|0,f[i+4>>2]|0)|0;i=c+i|0;if(!(b[a+32>>0]|0)){c=i;a=0;while(1){m=$(b[c>>0]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}else{c=i;a=0;while(1){m=$($(b[c>>0]|0)/$(127.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 2:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=ng(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;i=a+48|0;i=Wg(c|0,I|0,f[i>>2]|0,f[i+4>>2]|0)|0;i=l+i|0;if(!(b[a+32>>0]|0)){c=i;a=0;while(1){m=$(h[c>>0]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}else{c=i;a=0;while(1){m=$($(h[c>>0]|0)/$(255.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 3:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(d[c>>1]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}else{a=0;while(1){m=$($(d[c>>1]|0)/$(32767.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 4:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(j[c>>1]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}else{a=0;while(1){m=$($(j[c>>1]|0)/$(65535.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 5:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(f[c>>2]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}else{a=0;while(1){m=$($(f[c>>2]|0)*$(4.65661287e-10));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 6:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$((f[c>>2]|0)>>>0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}else{a=0;while(1){m=$($((f[c>>2]|0)>>>0)*$(2.32830644e-10));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 7:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){i=c;m=$(+((f[i>>2]|0)>>>0)+4294967296.0*+(f[i+4>>2]|0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}else{a=0;while(1){i=c;m=$($(+((f[i>>2]|0)>>>0)+4294967296.0*+(f[i+4>>2]|0))*$(1.08420217e-19));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 8:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){i=c;m=$(+((f[i>>2]|0)>>>0)+4294967296.0*+((f[i+4>>2]|0)>>>0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}else{a=0;while(1){i=c;m=$($(+((f[i>>2]|0)>>>0)+4294967296.0*+((f[i+4>>2]|0)>>>0))*$(5.42101086e-20));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 9:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=ng(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Wg(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;a=0;while(1){f[g+(a<<2)>>2]=f[c>>2];a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 10:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=ng(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Wg(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;a=0;while(1){m=$(+p[c>>3]);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 11:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=ng(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Wg(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;a=0;while(1){m=$((b[c>>0]|0)!=0&1);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}default:{l=0;return l|0}}while(0);return 0}function Sa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=u;u=u+64|0;U=V+16|0;H=V;I=a+8|0;f[I>>2]=e;j=a+32|0;d=a+36|0;i=f[d>>2]|0;h=f[j>>2]|0;g=i-h>>2;if(g>>>0>=e>>>0){if(g>>>0>e>>>0?(k=h+(e<<2)|0,(i|0)!=(k|0)):0)f[d>>2]=i+(~((i+-4-k|0)>>>2)<<2)}else Cd(j,e-g|0);d=U;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[H>>2]=0;if(!e){d=0;g=0}else{_c(U,e,H);d=f[U+12>>2]|0;g=f[U+16>>2]|0}f[H>>2]=0;h=U+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else _c(U+12|0,e-i|0,H);d=U+24|0;f[H>>2]=0;g=U+28|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(m=i+(e<<2)|0,(j|0)!=(m|0)):0)f[g>>2]=j+(~((j+-4-m|0)>>>2)<<2)}else _c(d,e-h|0,H);d=U+36|0;f[H>>2]=0;g=U+40|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(n=i+(e<<2)|0,(j|0)!=(n|0)):0)f[g>>2]=j+(~((j+-4-n|0)>>>2)<<2)}else _c(d,e-h|0,H);j=f[U>>2]|0;if((f[I>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;h=0;do{d=f[j+(h<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(h<<2)>>2]=g}else{G=f[m>>2]|0;k=f[i>>2]|0;f[k+(h<<2)>>2]=(d|0)<(G|0)?G:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=a+20|0;g=0;do{d=(f[b+(g<<2)>>2]|0)+(f[k+(g<<2)>>2]|0)|0;i=c+(g<<2)|0;f[i>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[h>>2]|0)+d|0;r=18}}else{d=d-(f[h>>2]|0)|0;r=18}if((r|0)==18){r=0;f[i>>2]=d}g=g+1|0}while((g|0)<(f[I>>2]|0))}}B=f[a+48>>2]|0;C=f[a+52>>2]|0;F=pg(16)|0;f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;f[F+12>>2]=0;f[H>>2]=0;G=H+4|0;f[G>>2]=0;f[H+8>>2]=0;do if(e)if(e>>>0>1073741823)Yh(H);else{E=e<<2;p=pg(E)|0;f[H>>2]=p;o=p+(e<<2)|0;f[H+8>>2]=o;Vd(p|0,0,E|0)|0;f[G>>2]=o;o=p;break}else{o=0;p=0}while(0);D=a+56|0;d=f[D>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;A=g-h|0;E=A>>2;do if((A|0)>4){v=B+64|0;w=B+28|0;x=(e|0)>0;y=a+16|0;z=a+32|0;A=a+12|0;s=a+20|0;t=e<<2;if(g-h>>2>>>0>1){J=1;q=h}else{r=d;Yh(r)}while(1){o=f[q+(J<<2)>>2]|0;n=o+((o|0)<0?0:((o>>>0)%3|0|0)==0?2:-1)|0;p=n>>>5;q=1<<(n&31);r=(n|0)<0;m=1;d=0;g=o;a:while(1){do{if((g|0)<=-1){r=63;break a}i=f[U+(d*12|0)>>2]|0;if(((f[(f[B>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)|0)==0?(K=f[(f[(f[v>>2]|0)+12>>2]|0)+(g<<2)>>2]|0,(K|0)>=0):0)?(N=f[w>>2]|0,l=f[C>>2]|0,L=f[l+(f[N+(K<<2)>>2]<<2)>>2]|0,M=K+1|0,M=f[l+(f[N+((((M|0)%3|0|0)==0?K+-2|0:M)<<2)>>2]<<2)>>2]|0,N=f[l+(f[N+((((K>>>0)%3|0|0)==0?2:-1)+K<<2)>>2]<<2)>>2]|0,(L|0)<(J|0)&(M|0)<(J|0)&(N|0)<(J|0)):0){j=X(L,e)|0;k=X(M,e)|0;l=X(N,e)|0;if(x){h=0;do{f[i+(h<<2)>>2]=(f[c+(h+l<<2)>>2]|0)+(f[c+(h+k<<2)>>2]|0)-(f[c+(h+j<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;r=44;break a}}do if(m){h=g+1|0;g=((h|0)%3|0|0)==0?g+-2|0:h;h=f[B>>2]|0;if(!(f[h+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[v>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;i=g+1|0;if((g|0)>=0)g=((i|0)%3|0|0)==0?g+-2|0:i}}else g=-1073741824}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;h=f[B>>2]|0;if(!(f[h+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[v>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}else g=-1073741824}while(0);if((g|0)==(o|0)){r=63;break a}}while(!(m&(g|0)<0));g=(q&f[h+(p<<2)>>2]|0)!=0;if(g|r){m=0;g=g?-1073741824:n;continue}g=f[(f[(f[v>>2]|0)+12>>2]|0)+(n<<2)>>2]|0;if((g|0)<0){m=0;continue}if(!((g>>>0)%3|0)){m=0;g=g+2|0;continue}else{m=0;g=g+-1|0;continue}}if((r|0)==63)if((d|0)>0)r=44;else{Q=X(J,e)|0;r=75}if((r|0)==44){r=0;if(x){Vd(f[H>>2]|0,0,t|0)|0;l=d+-1|0;k=F+(l<<2)|0;l=f[a+60+(l*12|0)>>2]|0;m=f[H>>2]|0;j=0;g=0;do{q=f[k>>2]|0;f[k>>2]=q+1;if(!(f[l+(q>>>5<<2)>>2]&1<<(q&31))){i=f[U+(j*12|0)>>2]|0;h=0;do{q=m+(h<<2)|0;f[q>>2]=(f[q>>2]|0)+(f[i+(h<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0));g=g+1|0}j=j+1|0}while((j|0)!=(d|0));d=g}else{j=d+-1|0;i=F+(j<<2)|0;j=f[a+60+(j*12|0)>>2]|0;h=0;g=0;k=f[i>>2]|0;do{q=k;k=k+1|0;f[i>>2]=k;g=g+((f[j+(q>>>5<<2)>>2]&1<<(q&31)|0)==0&1)|0;h=h+1|0}while((h|0)!=(d|0));d=g}h=X(J,e)|0;if(d){j=f[H>>2]|0;if(x){g=0;do{q=j+(g<<2)|0;f[q>>2]=(f[q>>2]|0)/(d|0)|0;g=g+1|0}while((g|0)!=(e|0))}l=b+(h<<2)|0;k=c+(h<<2)|0;if((f[I>>2]|0)>0){h=0;do{d=f[j+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{q=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(q|0)?q:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[l+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;do if((d|0)>(f[y>>2]|0)){d=d-(f[s>>2]|0)|0;r=97}else{if((d|0)>=(f[A>>2]|0))break;d=(f[s>>2]|0)+d|0;r=97}while(0);if((r|0)==97){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[I>>2]|0))}}}else{Q=h;r=75}}if((r|0)==75?(r=0,O=c+((X(J+-1|0,e)|0)<<2)|0,P=b+(Q<<2)|0,R=c+(Q<<2)|0,(f[I>>2]|0)>0):0){h=0;do{d=f[O+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{q=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(q|0)?q:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[P+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=R+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[y>>2]|0)){if((d|0)<(f[A>>2]|0)){d=(f[s>>2]|0)+d|0;r=85}}else{d=d-(f[s>>2]|0)|0;r=85}if((r|0)==85){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[I>>2]|0))}}J=J+1|0;if((J|0)>=(E|0)){r=28;break}d=f[D>>2]|0;q=f[d>>2]|0;if((f[d+4>>2]|0)-q>>2>>>0<=J>>>0){r=34;break}}if((r|0)==28){T=f[H>>2]|0;S=T;break}else if((r|0)==34)Yh(d)}else{S=p;T=o}while(0);if(S|0){d=f[G>>2]|0;if((d|0)!=(S|0))f[G>>2]=d+(~((d+-4-S|0)>>>2)<<2);Bi(T)}Bi(F);d=f[U+36>>2]|0;if(d|0){g=U+40|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}d=f[U+24>>2]|0;if(d|0){g=U+28|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}d=f[U+12>>2]|0;if(d|0){g=U+16|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}h=f[U>>2]|0;if(!h){u=V;return 1}d=U+4|0;g=f[d>>2]|0;if((g|0)!=(h|0))f[d>>2]=g+(~((g+-4-h|0)>>>2)<<2);Bi(h);u=V;return 1}function Ta(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;S=u;u=u+64|0;R=S+16|0;I=S;J=a+8|0;f[J>>2]=e;j=a+32|0;d=a+36|0;i=f[d>>2]|0;h=f[j>>2]|0;g=i-h>>2;if(g>>>0>=e>>>0){if(g>>>0>e>>>0?(k=h+(e<<2)|0,(i|0)!=(k|0)):0)f[d>>2]=i+(~((i+-4-k|0)>>>2)<<2)}else Cd(j,e-g|0);d=R;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[I>>2]=0;if(!e){d=0;g=0}else{_c(R,e,I);d=f[R+12>>2]|0;g=f[R+16>>2]|0}f[I>>2]=0;h=R+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else _c(R+12|0,e-i|0,I);d=R+24|0;f[I>>2]=0;g=R+28|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(m=i+(e<<2)|0,(j|0)!=(m|0)):0)f[g>>2]=j+(~((j+-4-m|0)>>>2)<<2)}else _c(d,e-h|0,I);d=R+36|0;f[I>>2]=0;g=R+40|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(n=i+(e<<2)|0,(j|0)!=(n|0)):0)f[g>>2]=j+(~((j+-4-n|0)>>>2)<<2)}else _c(d,e-h|0,I);j=f[R>>2]|0;if((f[J>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;h=0;do{d=f[j+(h<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(h<<2)>>2]=g}else{H=f[m>>2]|0;k=f[i>>2]|0;f[k+(h<<2)>>2]=(d|0)<(H|0)?H:d}h=h+1|0;d=f[J>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=a+20|0;g=0;do{d=(f[b+(g<<2)>>2]|0)+(f[k+(g<<2)>>2]|0)|0;i=c+(g<<2)|0;f[i>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[h>>2]|0)+d|0;r=18}}else{d=d-(f[h>>2]|0)|0;r=18}if((r|0)==18){r=0;f[i>>2]=d}g=g+1|0}while((g|0)<(f[J>>2]|0))}}C=f[a+48>>2]|0;D=f[a+52>>2]|0;G=pg(16)|0;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;f[G+12>>2]=0;f[I>>2]=0;H=I+4|0;f[H>>2]=0;f[I+8>>2]=0;do if(e)if(e>>>0>1073741823)Yh(I);else{F=e<<2;p=pg(F)|0;f[I>>2]=p;o=p+(e<<2)|0;f[I+8>>2]=o;Vd(p|0,0,F|0)|0;f[H>>2]=o;o=p;break}else{o=0;p=0}while(0);E=a+56|0;d=f[E>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;B=g-h|0;F=B>>2;do if((B|0)>4){w=C+12|0;x=(e|0)>0;y=a+16|0;z=a+32|0;A=a+12|0;B=a+20|0;v=e<<2;if(g-h>>2>>>0>1){K=1;q=h}else{t=d;Yh(t)}while(1){r=f[q+(K<<2)>>2]|0;s=(((r>>>0)%3|0|0)==0?2:-1)+r|0;t=(r|s|0)<0;q=(r|0)<0?r:s;p=1;d=0;g=r;a:while(1){do{if((g|0)<=-1){r=64;break a}n=f[R+(d*12|0)>>2]|0;o=f[w>>2]|0;i=f[o+(g<<2)>>2]|0;if((i|0)>=0){j=f[C>>2]|0;k=f[D>>2]|0;m=f[k+(f[j+(i<<2)>>2]<<2)>>2]|0;h=i+1|0;h=((h|0)%3|0|0)==0?i+-2|0:h;if((h|0)<0)h=-1073741824;else h=f[j+(h<<2)>>2]|0;l=f[k+(h<<2)>>2]|0;h=(((i>>>0)%3|0|0)==0?2:-1)+i|0;if((h|0)<0)h=-1073741824;else h=f[j+(h<<2)>>2]|0;h=f[k+(h<<2)>>2]|0;if((m|0)<(K|0)&(l|0)<(K|0)&(h|0)<(K|0)){k=X(m,e)|0;j=X(l,e)|0;i=X(h,e)|0;if(x){h=0;do{f[n+(h<<2)>>2]=(f[c+(h+i<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+k<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;r=47;break a}}}do if(p){n=g+1|0;g=((n|0)%3|0|0)==0?g+-2|0:n;if((g|0)>=0){g=f[o+(g<<2)>>2]|0;h=g+1|0;if((g|0)>=0)g=((h|0)%3|0|0)==0?g+-2|0:h}}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((g|0)>=0){g=f[o+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}while(0);if((g|0)==(r|0)){r=64;break a}}while(!(p&(g|0)<0));if(t){p=0;g=q;continue}g=f[o+(s<<2)>>2]|0;if((g|0)<0){p=0;continue}if(!((g>>>0)%3|0)){p=0;g=g+2|0;continue}else{p=0;g=g+-1|0;continue}}if((r|0)==64)if((d|0)>0)r=47;else{N=X(K,e)|0;r=76}if((r|0)==47){r=0;if(x){Vd(f[I>>2]|0,0,v|0)|0;l=d+-1|0;k=G+(l<<2)|0;l=f[a+60+(l*12|0)>>2]|0;m=f[I>>2]|0;j=0;g=0;do{t=f[k>>2]|0;f[k>>2]=t+1;if(!(f[l+(t>>>5<<2)>>2]&1<<(t&31))){i=f[R+(j*12|0)>>2]|0;h=0;do{t=m+(h<<2)|0;f[t>>2]=(f[t>>2]|0)+(f[i+(h<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0));g=g+1|0}j=j+1|0}while((j|0)!=(d|0));d=g}else{j=d+-1|0;i=G+(j<<2)|0;j=f[a+60+(j*12|0)>>2]|0;h=0;g=0;k=f[i>>2]|0;do{t=k;k=k+1|0;f[i>>2]=k;g=g+((f[j+(t>>>5<<2)>>2]&1<<(t&31)|0)==0&1)|0;h=h+1|0}while((h|0)!=(d|0));d=g}h=X(K,e)|0;if(d){j=f[I>>2]|0;if(x){g=0;do{t=j+(g<<2)|0;f[t>>2]=(f[t>>2]|0)/(d|0)|0;g=g+1|0}while((g|0)!=(e|0))}l=b+(h<<2)|0;k=c+(h<<2)|0;if((f[J>>2]|0)>0){h=0;do{d=f[j+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{t=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(t|0)?t:d}h=h+1|0;d=f[J>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[l+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;do if((d|0)>(f[y>>2]|0)){d=d-(f[B>>2]|0)|0;r=98}else{if((d|0)>=(f[A>>2]|0))break;d=(f[B>>2]|0)+d|0;r=98}while(0);if((r|0)==98){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[J>>2]|0))}}}else{N=h;r=76}}if((r|0)==76?(r=0,L=c+((X(K+-1|0,e)|0)<<2)|0,M=b+(N<<2)|0,O=c+(N<<2)|0,(f[J>>2]|0)>0):0){h=0;do{d=f[L+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{t=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(t|0)?t:d}h=h+1|0;d=f[J>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[M+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=O+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[y>>2]|0)){if((d|0)<(f[A>>2]|0)){d=(f[B>>2]|0)+d|0;r=86}}else{d=d-(f[B>>2]|0)|0;r=86}if((r|0)==86){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[J>>2]|0))}}K=K+1|0;if((K|0)>=(F|0)){r=28;break}d=f[E>>2]|0;q=f[d>>2]|0;if((f[d+4>>2]|0)-q>>2>>>0<=K>>>0){r=34;break}}if((r|0)==28){Q=f[I>>2]|0;P=Q;break}else if((r|0)==34)Yh(d)}else{P=p;Q=o}while(0);if(P|0){d=f[H>>2]|0;if((d|0)!=(P|0))f[H>>2]=d+(~((d+-4-P|0)>>>2)<<2);Bi(Q)}Bi(G);d=f[R+36>>2]|0;if(d|0){g=R+40|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}d=f[R+24>>2]|0;if(d|0){g=R+28|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}d=f[R+12>>2]|0;if(d|0){g=R+16|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}h=f[R>>2]|0;if(!h){u=S;return 1}d=R+4|0;g=f[d>>2]|0;if((g|0)!=(h|0))f[d>>2]=g+(~((g+-4-h|0)>>>2)<<2);Bi(h);u=S;return 1}function Ua(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=0,o=Ca,q=0.0;if(!g){g=0;return g|0}do switch(f[a+28>>2]|0){case 1:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;i=ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(i|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=b[a>>0]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 2:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=h[a>>0];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 3:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=d[a>>1]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 4:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=j[a>>1];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 5:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=f[a>>2]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 6:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=f[a>>2];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 7:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){m=a;l=f[m+4>>2]|0;i=g+(c<<3)|0;f[i>>2]=f[m>>2];f[i+4>>2]=l;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 8:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=ng(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=a;m=f[l+4>>2]|0;i=g+(c<<3)|0;f[i>>2]=f[l>>2];f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 9:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=ng(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){o=$(n[a>>2]);m=+K(+o)>=1.0?(+o>0.0?~~+Y(+J(+o/4294967296.0),4294967295.0)>>>0:~~+W((+o-+(~~+o>>>0))/4294967296.0)>>>0):0;i=g+(c<<3)|0;f[i>>2]=~~+o>>>0;f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 10:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=ng(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){q=+p[a>>3];m=+K(q)>=1.0?(q>0.0?~~+Y(+J(q/4294967296.0),4294967295.0)>>>0:~~+W((q-+(~~q>>>0))/4294967296.0)>>>0):0;i=g+(c<<3)|0;f[i>>2]=~~q>>>0;f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 11:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=ng(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=h[a>>0];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}default:{m=0;return m|0}}while(0);return 0}function Va(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;F=u;u=u+80|0;k=F+76|0;l=F+72|0;D=F+48|0;m=F+24|0;x=F;h=a+32|0;g=f[c>>2]|0;c=g+1|0;if((g|0)>=0){c=((c|0)%3|0|0)==0?g+-2|0:c;g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((c|0)<0)c=-1073741824;else c=f[(f[f[h>>2]>>2]|0)+(c<<2)>>2]|0;if((g|0)<0)h=-1073741824;else h=f[(f[f[h>>2]>>2]|0)+(g<<2)>>2]|0}else{c=-1073741824;h=-1073741824}i=f[a+36>>2]|0;g=f[i>>2]|0;j=(f[i+4>>2]|0)-g>>2;if(j>>>0<=c>>>0)Yh(i);w=f[g+(c<<2)>>2]|0;if(j>>>0<=h>>>0)Yh(i);h=f[g+(h<<2)>>2]|0;n=(w|0)<(e|0);do if(n&(h|0)<(e|0)){z=w<<1;q=f[d+(z<<2)>>2]|0;y=((q|0)<0)<<31>>31;z=f[d+((z|1)<<2)>>2]|0;A=((z|0)<0)<<31>>31;p=h<<1;o=f[d+(p<<2)>>2]|0;p=f[d+((p|1)<<2)>>2]|0;if(!((o|0)!=(q|0)|(p|0)!=(z|0))){f[a+8>>2]=q;f[a+12>>2]=z;u=F;return}i=a+4|0;c=f[(f[i>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;f[D+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,D)|0;c=f[(f[i>>2]|0)+(w<<2)>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,m)|0;c=f[(f[i>>2]|0)+(h<<2)>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;f[x+16>>2]=0;f[x+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;r=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,r,x)|0;r=x;i=m;h=f[i>>2]|0;i=f[i+4>>2]|0;r=Jg(f[r>>2]|0,f[r+4>>2]|0,h|0,i|0)|0;s=I;t=x+8|0;k=m+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;t=Jg(f[t>>2]|0,f[t+4>>2]|0,j|0,k|0)|0;v=I;l=x+16|0;g=m+16|0;c=f[g>>2]|0;g=f[g+4>>2]|0;l=Jg(f[l>>2]|0,f[l+4>>2]|0,c|0,g|0)|0;m=I;C=ng(r|0,s|0,r|0,s|0)|0;x=I;B=ng(t|0,v|0,t|0,v|0)|0;x=Wg(B|0,I|0,C|0,x|0)|0;C=I;B=ng(l|0,m|0,l|0,m|0)|0;B=Wg(x|0,C|0,B|0,I|0)|0;C=I;if((B|0)==0&(C|0)==0)break;K=D;K=Jg(f[K>>2]|0,f[K+4>>2]|0,h|0,i|0)|0;J=I;H=D+8|0;H=Jg(f[H>>2]|0,f[H+4>>2]|0,j|0,k|0)|0;G=I;h=D+16|0;h=Jg(f[h>>2]|0,f[h+4>>2]|0,c|0,g|0)|0;i=I;k=ng(K|0,J|0,r|0,s|0)|0;d=I;g=ng(H|0,G|0,t|0,v|0)|0;d=Wg(g|0,I|0,k|0,d|0)|0;k=I;g=ng(h|0,i|0,l|0,m|0)|0;g=Wg(d|0,k|0,g|0,I|0)|0;k=I;d=Jg(o|0,((o|0)<0)<<31>>31|0,q|0,y|0)|0;c=I;w=Jg(p|0,((p|0)<0)<<31>>31|0,z|0,A|0)|0;x=I;o=ng(B|0,C|0,q|0,y|0)|0;n=I;q=ng(B|0,C|0,z|0,A|0)|0;p=I;D=ng(g|0,k|0,d|0,c|0)|0;e=I;j=ng(g|0,k|0,w|0,x|0)|0;A=I;n=Wg(D|0,e|0,o|0,n|0)|0;o=I;p=Wg(j|0,A|0,q|0,p|0)|0;q=I;A=ng(g|0,k|0,r|0,s|0)|0;j=I;e=ng(g|0,k|0,t|0,v|0)|0;D=I;m=ng(g|0,k|0,l|0,m|0)|0;k=I;j=Fe(A|0,j|0,B|0,C|0)|0;l=I;D=Fe(e|0,D|0,B|0,C|0)|0;e=I;k=Fe(m|0,k|0,B|0,C|0)|0;m=I;l=Jg(K|0,J|0,j|0,l|0)|0;j=I;e=Jg(H|0,G|0,D|0,e|0)|0;D=I;m=Jg(h|0,i|0,k|0,m|0)|0;k=I;j=ng(l|0,j|0,l|0,j|0)|0;l=I;D=ng(e|0,D|0,e|0,D|0)|0;l=Wg(D|0,I|0,j|0,l|0)|0;j=I;k=ng(m|0,k|0,m|0,k|0)|0;k=Wg(l|0,j|0,k|0,I|0)|0;j=I;l=Jg(0,0,d|0,c|0)|0;m=I;j=ng(k|0,j|0,B|0,C|0)|0;k=I;c=k&2147483647;switch(j|0){case 0:{if(!c){g=0;c=0}else{g=1;c=0;h=j;i=k;E=23}break}case 1:{if(!c){g=1;c=0;E=24}else{g=1;c=0;h=j;i=k;E=23}break}default:{g=1;c=0;h=j;i=k;E=23}}if((E|0)==23)while(1){g=Fg(g|0,c|0,1)|0;c=I;K=h;h=Hg(h|0,i|0,2)|0;if(!(i>>>0>0|(i|0)==0&K>>>0>7)){E=24;break}else{i=I;E=23}}if((E|0)==24)while(1){K=Ah(j|0,k|0,g|0,c|0)|0;g=Wg(K|0,I|0,g|0,c|0)|0;g=Hg(g|0,I|0,1)|0;c=I;K=ng(g|0,c|0,g|0,c|0)|0;J=I;if(J>>>0>k>>>0|(J|0)==(k|0)&K>>>0>j>>>0)E=24;else break}E=ng(g|0,c|0,w|0,x|0)|0;G=I;d=ng(g|0,c|0,l|0,m|0)|0;H=I;J=a+20|0;D=(f[J>>2]|0)+-1|0;K=(1<<(D&31)&f[(f[a+16>>2]|0)+(D>>>5<<2)>>2]|0)!=0;f[J>>2]=D;J=Jg(0,0,E|0,G|0)|0;G=Wg(n|0,o|0,(K?E:J)|0,(K?G:I)|0)|0;J=I;E=Jg(0,0,d|0,H|0)|0;H=Wg(p|0,q|0,(K?d:E)|0,(K?H:I)|0)|0;K=I;J=Fe(G|0,J|0,B|0,C|0)|0;K=Fe(H|0,K|0,B|0,C|0)|0;f[a+8>>2]=J;f[a+12>>2]=K;u=F;return}while(0);do if(n)c=w<<1;else{if((e|0)>0){c=(e<<1)+-2|0;break}K=a+8|0;f[K>>2]=0;f[K+4>>2]=0;u=F;return}while(0);f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=f[d+(c+1<<2)>>2];u=F;return}function Wa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;F=u;u=u+80|0;k=F+76|0;l=F+72|0;D=F+48|0;m=F+24|0;x=F;i=a+32|0;g=f[c>>2]|0;c=g+1|0;do if((g|0)>=0){c=((c|0)%3|0|0)==0?g+-2|0:c;if(!((g>>>0)%3|0)){h=g+2|0;break}else{h=g+-1|0;break}}else{h=g;c=g}while(0);i=f[(f[i>>2]|0)+28>>2]|0;g=f[i+(c<<2)>>2]|0;h=f[i+(h<<2)>>2]|0;i=f[a+36>>2]|0;c=f[i>>2]|0;j=(f[i+4>>2]|0)-c>>2;if(j>>>0<=g>>>0)Yh(i);w=f[c+(g<<2)>>2]|0;if(j>>>0<=h>>>0)Yh(i);h=f[c+(h<<2)>>2]|0;n=(w|0)<(e|0);do if(n&(h|0)<(e|0)){z=w<<1;q=f[d+(z<<2)>>2]|0;y=((q|0)<0)<<31>>31;z=f[d+((z|1)<<2)>>2]|0;A=((z|0)<0)<<31>>31;p=h<<1;o=f[d+(p<<2)>>2]|0;p=f[d+((p|1)<<2)>>2]|0;if(!((o|0)!=(q|0)|(p|0)!=(z|0))){f[a+8>>2]=q;f[a+12>>2]=z;u=F;return}i=a+4|0;c=f[(f[i>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;f[D+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,D)|0;c=f[(f[i>>2]|0)+(w<<2)>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,m)|0;c=f[(f[i>>2]|0)+(h<<2)>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;f[x+16>>2]=0;f[x+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;r=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,r,x)|0;r=x;i=m;h=f[i>>2]|0;i=f[i+4>>2]|0;r=Jg(f[r>>2]|0,f[r+4>>2]|0,h|0,i|0)|0;s=I;t=x+8|0;k=m+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;t=Jg(f[t>>2]|0,f[t+4>>2]|0,j|0,k|0)|0;v=I;l=x+16|0;g=m+16|0;c=f[g>>2]|0;g=f[g+4>>2]|0;l=Jg(f[l>>2]|0,f[l+4>>2]|0,c|0,g|0)|0;m=I;C=ng(r|0,s|0,r|0,s|0)|0;x=I;B=ng(t|0,v|0,t|0,v|0)|0;x=Wg(B|0,I|0,C|0,x|0)|0;C=I;B=ng(l|0,m|0,l|0,m|0)|0;B=Wg(x|0,C|0,B|0,I|0)|0;C=I;if((B|0)==0&(C|0)==0)break;K=D;K=Jg(f[K>>2]|0,f[K+4>>2]|0,h|0,i|0)|0;J=I;H=D+8|0;H=Jg(f[H>>2]|0,f[H+4>>2]|0,j|0,k|0)|0;G=I;h=D+16|0;h=Jg(f[h>>2]|0,f[h+4>>2]|0,c|0,g|0)|0;i=I;k=ng(K|0,J|0,r|0,s|0)|0;d=I;g=ng(H|0,G|0,t|0,v|0)|0;d=Wg(g|0,I|0,k|0,d|0)|0;k=I;g=ng(h|0,i|0,l|0,m|0)|0;g=Wg(d|0,k|0,g|0,I|0)|0;k=I;d=Jg(o|0,((o|0)<0)<<31>>31|0,q|0,y|0)|0;c=I;w=Jg(p|0,((p|0)<0)<<31>>31|0,z|0,A|0)|0;x=I;o=ng(B|0,C|0,q|0,y|0)|0;n=I;q=ng(B|0,C|0,z|0,A|0)|0;p=I;D=ng(g|0,k|0,d|0,c|0)|0;e=I;j=ng(g|0,k|0,w|0,x|0)|0;A=I;n=Wg(D|0,e|0,o|0,n|0)|0;o=I;p=Wg(j|0,A|0,q|0,p|0)|0;q=I;A=ng(g|0,k|0,r|0,s|0)|0;j=I;e=ng(g|0,k|0,t|0,v|0)|0;D=I;m=ng(g|0,k|0,l|0,m|0)|0;k=I;j=Fe(A|0,j|0,B|0,C|0)|0;l=I;D=Fe(e|0,D|0,B|0,C|0)|0;e=I;k=Fe(m|0,k|0,B|0,C|0)|0;m=I;l=Jg(K|0,J|0,j|0,l|0)|0;j=I;e=Jg(H|0,G|0,D|0,e|0)|0;D=I;m=Jg(h|0,i|0,k|0,m|0)|0;k=I;j=ng(l|0,j|0,l|0,j|0)|0;l=I;D=ng(e|0,D|0,e|0,D|0)|0;l=Wg(D|0,I|0,j|0,l|0)|0;j=I;k=ng(m|0,k|0,m|0,k|0)|0;k=Wg(l|0,j|0,k|0,I|0)|0;j=I;l=Jg(0,0,d|0,c|0)|0;m=I;j=ng(k|0,j|0,B|0,C|0)|0;k=I;c=k&2147483647;switch(j|0){case 0:{if(!c){g=0;c=0}else{g=1;c=0;h=j;i=k;E=22}break}case 1:{if(!c){g=1;c=0;E=23}else{g=1;c=0;h=j;i=k;E=22}break}default:{g=1;c=0;h=j;i=k;E=22}}if((E|0)==22)while(1){g=Fg(g|0,c|0,1)|0;c=I;K=h;h=Hg(h|0,i|0,2)|0;if(!(i>>>0>0|(i|0)==0&K>>>0>7)){E=23;break}else{i=I;E=22}}if((E|0)==23)while(1){K=Ah(j|0,k|0,g|0,c|0)|0;g=Wg(K|0,I|0,g|0,c|0)|0;g=Hg(g|0,I|0,1)|0;c=I;K=ng(g|0,c|0,g|0,c|0)|0;J=I;if(J>>>0>k>>>0|(J|0)==(k|0)&K>>>0>j>>>0)E=23;else break}E=ng(g|0,c|0,w|0,x|0)|0;G=I;d=ng(g|0,c|0,l|0,m|0)|0;H=I;J=a+20|0;D=(f[J>>2]|0)+-1|0;K=(1<<(D&31)&f[(f[a+16>>2]|0)+(D>>>5<<2)>>2]|0)!=0;f[J>>2]=D;J=Jg(0,0,E|0,G|0)|0;G=Wg(n|0,o|0,(K?E:J)|0,(K?G:I)|0)|0;J=I;E=Jg(0,0,d|0,H|0)|0;H=Wg(p|0,q|0,(K?d:E)|0,(K?H:I)|0)|0;K=I;J=Fe(G|0,J|0,B|0,C|0)|0;K=Fe(H|0,K|0,B|0,C|0)|0;f[a+8>>2]=J;f[a+12>>2]=K;u=F;return}while(0);do if(n)c=w<<1;else{if((e|0)>0){c=(e<<1)+-2|0;break}K=a+8|0;f[K>>2]=0;f[K+4>>2]=0;u=F;return}while(0);f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=f[d+(c+1<<2)>>2];u=F;return}function Xa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;S=u;u=u+96|0;F=S+92|0;J=S+88|0;K=S+72|0;L=S+48|0;M=S+24|0;N=S;O=a+4|0;m=f[O>>2]|0;if(!m)xa(9274,9296,46,9468);G=a+8|0;l=f[G>>2]|0;if(!l)xa(9274,9296,46,9468);H=a+16|0;E=f[H>>2]|0;n=f[c>>2]|0;f[K>>2]=E;f[K+4>>2]=n;D=K+8|0;f[D>>2]=n;b[K+12>>0]=1;c=f[(f[E+28>>2]|0)+(n<<2)>>2]|0;E=a+20|0;i=f[E>>2]|0;k=f[i>>2]|0;if((f[i+4>>2]|0)-k>>2>>>0<=c>>>0)Yh(i);c=f[l+(f[k+(c<<2)>>2]<<2)>>2]|0;if(!(b[m+84>>0]|0))c=f[(f[m+68>>2]|0)+(c<<2)>>2]|0;f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;f[L+12>>2]=0;f[L+16>>2]=0;f[L+20>>2]=0;f[J>>2]=c;c=b[m+24>>0]|0;f[F>>2]=f[J>>2];Ua(m,F,c,L)|0;c=f[D>>2]|0;w=a+28|0;i=(f[w>>2]|0)==0;a:do if((c|0)>=0){x=M+8|0;y=L+8|0;z=M+16|0;A=L+16|0;B=N+8|0;C=N+16|0;k=(n|0)<0;t=n+1|0;v=n+(k?0:((n>>>0)%3|0|0)==0?2:-1)|0;t=k?n:((t|0)%3|0|0)==0?n+-2|0:t;k=0;r=0;l=0;s=0;m=0;o=0;while(1){do if(!i){i=c+1|0;i=((i|0)%3|0|0)==0?c+-2|0:i;if(!((c>>>0)%3|0)){q=c+2|0;break}else{q=c+-1|0;break}}else{q=v;i=t}while(0);p=f[O>>2]|0;if(!p){c=16;break}a=f[G>>2]|0;if(!a){c=16;break}c=f[(f[(f[H>>2]|0)+28>>2]|0)+(i<<2)>>2]|0;n=f[E>>2]|0;i=f[n>>2]|0;if((f[n+4>>2]|0)-i>>2>>>0<=c>>>0){c=18;break}c=f[a+(f[i+(c<<2)>>2]<<2)>>2]|0;if(!(b[p+84>>0]|0))c=f[(f[p+68>>2]|0)+(c<<2)>>2]|0;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;f[M+12>>2]=0;f[M+16>>2]=0;f[M+20>>2]=0;f[J>>2]=c;n=b[p+24>>0]|0;f[F>>2]=f[J>>2];Ua(p,F,n,M)|0;p=f[O>>2]|0;if(!p){c=23;break}a=f[G>>2]|0;if(!a){c=23;break}c=f[(f[(f[H>>2]|0)+28>>2]|0)+(q<<2)>>2]|0;n=f[E>>2]|0;i=f[n>>2]|0;if((f[n+4>>2]|0)-i>>2>>>0<=c>>>0){c=25;break}c=f[a+(f[i+(c<<2)>>2]<<2)>>2]|0;if(!(b[p+84>>0]|0))c=f[(f[p+68>>2]|0)+(c<<2)>>2]|0;f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=0;f[N+20>>2]=0;f[J>>2]=c;c=b[p+24>>0]|0;f[F>>2]=f[J>>2];Ua(p,F,c,N)|0;c=M;_=L;Z=f[_>>2]|0;_=f[_+4>>2]|0;c=Jg(f[c>>2]|0,f[c+4>>2]|0,Z|0,_|0)|0;i=I;q=x;aa=y;$=f[aa>>2]|0;aa=f[aa+4>>2]|0;q=Jg(f[q>>2]|0,f[q+4>>2]|0,$|0,aa|0)|0;p=I;U=z;n=A;T=f[n>>2]|0;n=f[n+4>>2]|0;U=Jg(f[U>>2]|0,f[U+4>>2]|0,T|0,n|0)|0;V=I;W=N;_=Jg(f[W>>2]|0,f[W+4>>2]|0,Z|0,_|0)|0;Z=I;W=B;aa=Jg(f[W>>2]|0,f[W+4>>2]|0,$|0,aa|0)|0;$=I;W=C;n=Jg(f[W>>2]|0,f[W+4>>2]|0,T|0,n|0)|0;T=I;W=ng(n|0,T|0,q|0,p|0)|0;a=I;Y=ng(aa|0,$|0,U|0,V|0)|0;X=I;V=ng(_|0,Z|0,U|0,V|0)|0;U=I;T=ng(n|0,T|0,c|0,i|0)|0;n=I;i=ng(aa|0,$|0,c|0,i|0)|0;c=I;p=ng(_|0,Z|0,q|0,p|0)|0;q=I;k=Jg(k|0,r|0,Y|0,X|0)|0;k=Wg(k|0,I|0,W|0,a|0)|0;a=I;l=Wg(V|0,U|0,l|0,s|0)|0;l=Jg(l|0,I|0,T|0,n|0)|0;n=I;m=Jg(m|0,o|0,p|0,q|0)|0;m=Wg(m|0,I|0,i|0,c|0)|0;o=I;rc(K);c=f[D>>2]|0;i=(f[w>>2]|0)==0;if((c|0)<0){P=i;j=a;Q=k;R=n;h=l;g=o;e=m;break a}else{r=a;s=n}}if((c|0)==16)xa(9274,9525,70,9697);else if((c|0)==18)Yh(n);else if((c|0)==23)xa(9274,9525,70,9697);else if((c|0)==25)Yh(n)}else{P=i;j=0;Q=0;R=0;h=0;g=0;e=0}while(0);aa=(j|0)>-1|(j|0)==-1&Q>>>0>4294967295;i=Jg(0,0,Q|0,j|0)|0;c=aa?j:I;X=(R|0)>-1|(R|0)==-1&h>>>0>4294967295;Y=Jg(0,0,h|0,R|0)|0;Z=X?R:I;$=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;_=Jg(0,0,e|0,g|0)|0;$=Wg((X?h:Y)|0,Z|0,($?e:_)|0,($?g:I)|0)|0;c=Wg($|0,I|0,(aa?Q:i)|0,c|0)|0;i=I;if(P)if((c|0)>536870912){aa=Hg(c|0,i|0,29)|0;aa=aa&7;i=Fe(Q|0,j|0,aa|0,0)|0;j=I;h=Fe(h|0,R|0,aa|0,0)|0;c=I;e=Fe(e|0,g|0,aa|0,0)|0;g=I}else{i=Q;c=R}else if((i|0)>0|(i|0)==0&c>>>0>536870912){$=Hg(c|0,i|0,29)|0;aa=I;i=Fe(Q|0,j|0,$|0,aa|0)|0;j=I;h=Fe(h|0,R|0,$|0,aa|0)|0;c=I;e=Fe(e|0,g|0,$|0,aa|0)|0;g=I}else{i=Q;c=R}_=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;$=Jg(0,0,i|0,j|0)|0;aa=_?j:I;V=(c|0)>-1|(c|0)==-1&h>>>0>4294967295;W=Jg(0,0,h|0,c|0)|0;X=V?c:I;Z=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;Y=Jg(0,0,e|0,g|0)|0;Z=Wg((V?h:W)|0,X|0,(Z?e:Y)|0,(Z?g:I)|0)|0;aa=Wg(Z|0,I|0,(_?i:$)|0,aa|0)|0;$=I;if(($|0)<0|($|0)==0&aa>>>0<536870913){f[d>>2]=i;f[d+4>>2]=h;f[d+8>>2]=e;u=S;return}else xa(9490,9296,95,9468)}function Ya(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=Ca,l=Ca,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=Ca;C=u;u=u+64|0;e=C+40|0;z=C+16|0;A=C;g=qb(a,c)|0;if(g|0){f[z>>2]=g;f[e>>2]=f[z>>2];pc(a,e)|0}f[A>>2]=0;B=A+4|0;f[B>>2]=0;f[A+8>>2]=0;g=f[d>>2]|0;i=(f[d+4>>2]|0)-g|0;if(!i)j=0;else{Gd(A,i);j=f[A>>2]|0;g=f[d>>2]|0}Mc(j|0,g|0,i|0)|0;Wd(z,c);c=z+12|0;f[c>>2]=0;y=z+16|0;f[y>>2]=0;f[z+20>>2]=0;j=f[B>>2]|0;g=f[A>>2]|0;i=j-g|0;if(!i){d=g;i=j;g=0}else{Gd(c,i);d=f[A>>2]|0;i=f[B>>2]|0;g=f[c>>2]|0}Mc(g|0,d|0,i-d|0)|0;x=z+11|0;t=b[x>>0]|0;v=t<<24>>24<0;s=v?f[z>>2]|0:z;t=v?f[z+4>>2]|0:t&255;if(t>>>0>3){i=s;g=t;j=t;while(1){v=X(h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24,1540483477)|0;g=(X(v>>>24^v,1540483477)|0)^(X(g,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else i=i+4|0}i=t+-4|0;j=i&-4;i=i-j|0;j=s+(j+4)|0}else{i=t;j=s;g=t}switch(i|0){case 3:{g=h[j+2>>0]<<16^g;w=12;break}case 2:{w=12;break}case 1:{w=13;break}default:{}}if((w|0)==12){g=h[j+1>>0]<<8^g;w=13}if((w|0)==13)g=X(h[j>>0]^g,1540483477)|0;v=X(g>>>13^g,1540483477)|0;v=v>>>15^v;q=a+4|0;d=f[q>>2]|0;r=(d|0)==0;a:do if(!r){p=d+-1|0;j=(p&d|0)==0;if(!j)if(v>>>0>>0)g=v;else g=(v>>>0)%(d>>>0)|0;else g=v&p;i=f[(f[a>>2]|0)+(g<<2)>>2]|0;if((i|0)!=0?(o=f[i>>2]|0,(o|0)!=0):0){i=(t|0)==0;if(j){if(i){i=o;while(1){t=f[i+4>>2]|0;if(!((t|0)==(v|0)|(t&p|0)==(g|0))){w=54;break a}t=b[i+8+11>>0]|0;if(!((t<<24>>24<0?f[i+12>>2]|0:t&255)|0))break a;i=f[i>>2]|0;if(!i){w=54;break a}}}while(1){m=f[o+4>>2]|0;if(!((m|0)==(v|0)|(m&p|0)==(g|0))){w=54;break a}c=o+8|0;i=b[c+11>>0]|0;j=i<<24>>24<0;i=i&255;do if(((j?f[o+12>>2]|0:i)|0)==(t|0)){m=f[c>>2]|0;if(j)if(!(jf(m,s,t)|0))break a;else break;if((m&255)<<24>>24==(b[s>>0]|0)){j=s;do{i=i+-1|0;c=c+1|0;if(!i)break a;j=j+1|0}while((b[c>>0]|0)==(b[j>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=54;break a}}}if(i){j=o;while(1){i=f[j+4>>2]|0;if((i|0)!=(v|0)){if(i>>>0>=d>>>0)i=(i>>>0)%(d>>>0)|0;if((i|0)!=(g|0)){w=54;break a}}t=b[j+8+11>>0]|0;if(!((t<<24>>24<0?f[j+12>>2]|0:t&255)|0))break a;j=f[j>>2]|0;if(!j){w=54;break a}}}while(1){i=f[o+4>>2]|0;if((i|0)!=(v|0)){if(i>>>0>=d>>>0)i=(i>>>0)%(d>>>0)|0;if((i|0)!=(g|0)){w=54;break a}}c=o+8|0;i=b[c+11>>0]|0;j=i<<24>>24<0;i=i&255;do if(((j?f[o+12>>2]|0:i)|0)==(t|0)){m=f[c>>2]|0;if(j)if(!(jf(m,s,t)|0))break a;else break;if((m&255)<<24>>24==(b[s>>0]|0)){j=s;do{i=i+-1|0;c=c+1|0;if(!i)break a;j=j+1|0}while((b[c>>0]|0)==(b[j>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=54;break}}}else w=54}else{g=0;w=54}while(0);if((w|0)==54){yd(e,a,v,z);c=a+12|0;k=$(((f[c>>2]|0)+1|0)>>>0);D=$(d>>>0);l=$(n[a+16>>2]);do if(r|k>$(D*l)){g=(d>>>0<3|(d+-1&d|0)!=0)&1|d<<1;i=~~$(W($(k/l)))>>>0;nd(a,g>>>0>>0?i:g);g=f[q>>2]|0;i=g+-1|0;if(!(i&g)){d=g;g=i&v;break}if(v>>>0>>0){d=g;g=v}else{d=g;g=(v>>>0)%(g>>>0)|0}}while(0);i=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!i){j=a+8|0;f[f[e>>2]>>2]=f[j>>2];f[j>>2]=f[e>>2];f[(f[a>>2]|0)+(g<<2)>>2]=j;j=f[e>>2]|0;g=f[j>>2]|0;if(g){g=f[g+4>>2]|0;i=d+-1|0;if(i&d){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0}else g=g&i;f[(f[a>>2]|0)+(g<<2)>>2]=j}}else{f[f[e>>2]>>2]=f[i>>2];f[i>>2]=f[e>>2]}f[c>>2]=(f[c>>2]|0)+1;f[e>>2]=0}e=f[z+12>>2]|0;if(e|0){if((f[y>>2]|0)!=(e|0))f[y>>2]=e;Bi(e)}if((b[x>>0]|0)<0)Bi(f[z>>2]|0);e=f[A>>2]|0;if(!e){u=C;return}if((f[B>>2]|0)!=(e|0))f[B>>2]=e;Bi(e);u=C;return}function Za(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;D=a+8|0;f[D>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0){if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0)f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2)}else Cd(i,e-d|0);d=e>>>0>1073741823?-1:e<<2;B=xi(d)|0;Vd(B|0,0,d|0)|0;C=xi(d)|0;Vd(C|0,0,d|0)|0;d=f[D>>2]|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[B+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{z=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(z|0)?z:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;J=18}}else{d=d-(f[i>>2]|0)|0;J=18}if((J|0)==18){J=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}r=f[a+48>>2]|0;s=f[a+56>>2]|0;t=s+4|0;g=f[t>>2]|0;h=f[s>>2]|0;z=g-h|0;u=z>>2;if((z|0)<=4){yi(C);yi(B);return 1}v=f[a+52>>2]|0;w=(e|0)>0;x=a+16|0;y=a+32|0;z=a+12|0;n=a+20|0;o=r+64|0;p=r+28|0;q=e<<2;if(g-h>>2>>>0>1){E=1;A=d;m=h}else Yh(s);while(1){a=f[m+(E<<2)>>2]|0;if(w)Vd(B|0,0,q|0)|0;if((a|0)>-1){l=f[r>>2]|0;j=0;k=a;do{if(((f[l+(k>>>5<<2)>>2]&1<<(k&31)|0)==0?(F=f[(f[(f[o>>2]|0)+12>>2]|0)+(k<<2)>>2]|0,(F|0)>=0):0)?(I=f[p>>2]|0,m=f[v>>2]|0,G=f[m+(f[I+(F<<2)>>2]<<2)>>2]|0,H=F+1|0,H=f[m+(f[I+((((H|0)%3|0|0)==0?F+-2|0:H)<<2)>>2]<<2)>>2]|0,I=f[m+(f[I+((((F>>>0)%3|0|0)==0?2:-1)+F<<2)>>2]<<2)>>2]|0,(G|0)<(E|0)&(H|0)<(E|0)&(I|0)<(E|0)):0){g=X(G,e)|0;h=X(H,e)|0;i=X(I,e)|0;if(w){d=0;do{f[C+(d<<2)>>2]=(f[c+(d+i<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+g<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(w){d=0;do{m=B+(d<<2)|0;f[m>>2]=(f[m>>2]|0)+(f[C+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}j=j+1|0}d=(((k>>>0)%3|0|0)==0?2:-1)+k|0;do if(!(f[l+(d>>>5<<2)>>2]&1<<(d&31))){if((d|0)>=0){d=f[(f[(f[o>>2]|0)+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}}else d=-1073741824;while(0);k=(d|0)==(a|0)?-1073741824:d}while((k|0)>-1);g=X(E,e)|0;if(j){if(w){d=0;do{m=B+(d<<2)|0;f[m>>2]=(f[m>>2]|0)/(j|0)|0;d=d+1|0}while((d|0)!=(e|0))}k=b+(g<<2)|0;j=c+(g<<2)|0;if((A|0)>0){h=0;do{d=f[B+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){i=f[y>>2]|0;f[i+(h<<2)>>2]=g}else{A=f[z>>2]|0;i=f[y>>2]|0;f[i+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[k+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=j+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[n>>2]|0)+d|0;J=68}}else{d=d-(f[n>>2]|0)|0;J=68}if((J|0)==68){J=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}else{d=g;J=46}}else{d=X(E,e)|0;J=46}if((J|0)==46){J=0;i=c+((X(E+-1|0,e)|0)<<2)|0;l=b+(d<<2)|0;k=c+(d<<2)|0;if((A|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){j=f[y>>2]|0;f[j+(h<<2)>>2]=g}else{A=f[z>>2]|0;j=f[y>>2]|0;f[j+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[l+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[n>>2]|0)+d|0;J=56}}else{d=d-(f[n>>2]|0)|0;J=56}if((J|0)==56){J=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}E=E+1|0;if((E|0)>=(u|0)){J=22;break}m=f[s>>2]|0;if((f[t>>2]|0)-m>>2>>>0<=E>>>0){J=23;break}else A=d}if((J|0)==22){yi(C);yi(B);return 1}else if((J|0)==23)Yh(s);return 0}function _a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=a+8|0;f[D>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0){if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0)f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2)}else Cd(i,e-d|0);d=e>>>0>1073741823?-1:e<<2;B=xi(d)|0;Vd(B|0,0,d|0)|0;C=xi(d)|0;Vd(C|0,0,d|0)|0;d=f[D>>2]|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[B+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{z=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(z|0)?z:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;F=18}}else{d=d-(f[i>>2]|0)|0;F=18}if((F|0)==18){F=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}r=f[a+48>>2]|0;s=f[a+56>>2]|0;t=s+4|0;g=f[t>>2]|0;h=f[s>>2]|0;z=g-h|0;u=z>>2;if((z|0)<=4){yi(C);yi(B);return 1}v=f[a+52>>2]|0;w=(e|0)>0;x=a+16|0;y=a+32|0;z=a+12|0;o=a+20|0;p=r+12|0;q=e<<2;if(g-h>>2>>>0>1){E=1;A=d;m=h}else Yh(s);while(1){n=f[m+(E<<2)>>2]|0;if(w)Vd(B|0,0,q|0)|0;if((n|0)>-1){m=f[p>>2]|0;h=0;a=n;do{g=f[m+(a<<2)>>2]|0;if((g|0)>=0){i=f[r>>2]|0;j=f[v>>2]|0;l=f[j+(f[i+(g<<2)>>2]<<2)>>2]|0;d=g+1|0;d=((d|0)%3|0|0)==0?g+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[i+(d<<2)>>2]|0;k=f[j+(d<<2)>>2]|0;d=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((d|0)<0)d=-1073741824;else d=f[i+(d<<2)>>2]|0;d=f[j+(d<<2)>>2]|0;if((l|0)<(E|0)&(k|0)<(E|0)&(d|0)<(E|0)){j=X(l,e)|0;i=X(k,e)|0;g=X(d,e)|0;if(w){d=0;do{f[C+(d<<2)>>2]=(f[c+(d+g<<2)>>2]|0)+(f[c+(d+i<<2)>>2]|0)-(f[c+(d+j<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(w){d=0;do{l=B+(d<<2)|0;f[l>>2]=(f[l>>2]|0)+(f[C+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}h=h+1|0}}d=(((a>>>0)%3|0|0)==0?2:-1)+a|0;do if((d|0)>=0){d=f[m+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}while(0);a=(d|0)==(n|0)?-1073741824:d}while((a|0)>-1);g=X(E,e)|0;if(h){if(w){d=0;do{n=B+(d<<2)|0;f[n>>2]=(f[n>>2]|0)/(h|0)|0;d=d+1|0}while((d|0)!=(e|0))}k=b+(g<<2)|0;j=c+(g<<2)|0;if((A|0)>0){h=0;do{d=f[B+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){i=f[y>>2]|0;f[i+(h<<2)>>2]=g}else{A=f[z>>2]|0;i=f[y>>2]|0;f[i+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[k+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=j+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[o>>2]|0)+d|0;F=70}}else{d=d-(f[o>>2]|0)|0;F=70}if((F|0)==70){F=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}else{d=g;F=48}}else{d=X(E,e)|0;F=48}if((F|0)==48){F=0;i=c+((X(E+-1|0,e)|0)<<2)|0;l=b+(d<<2)|0;k=c+(d<<2)|0;if((A|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){j=f[y>>2]|0;f[j+(h<<2)>>2]=g}else{A=f[z>>2]|0;j=f[y>>2]|0;f[j+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[l+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[o>>2]|0)+d|0;F=58}}else{d=d-(f[o>>2]|0)|0;F=58}if((F|0)==58){F=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}E=E+1|0;if((E|0)>=(u|0)){F=22;break}m=f[s>>2]|0;if((f[t>>2]|0)-m>>2>>>0<=E>>>0){F=23;break}else A=d}if((F|0)==22){yi(C);yi(B);return 1}else if((F|0)==23)Yh(s);return 0}function $a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;if(!a)return;c=a+-8|0;e=f[3660]|0;a=f[a+-4>>2]|0;b=a&-8;j=c+b|0;do if(!(a&1)){d=f[c>>2]|0;if(!(a&3))return;h=c+(0-d)|0;g=d+b|0;if(h>>>0>>0)return;if((h|0)==(f[3661]|0)){a=j+4|0;b=f[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}f[3658]=g;f[a>>2]=b&-2;f[h+4>>2]=g|1;f[h+g>>2]=g;return}c=d>>>3;if(d>>>0<256){a=f[h+8>>2]|0;b=f[h+12>>2]|0;if((b|0)==(a|0)){f[3656]=f[3656]&~(1<>2]=b;f[b+8>>2]=a;i=h;b=g;break}}e=f[h+24>>2]|0;a=f[h+12>>2]|0;do if((a|0)==(h|0)){c=h+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){a=0;break}else b=c}while(1){c=a+20|0;d=f[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=f[c>>2]|0;if(!d)break;else{a=d;b=c}}f[b>>2]=0}else{i=f[h+8>>2]|0;f[i+12>>2]=a;f[a+8>>2]=i}while(0);if(e){b=f[h+28>>2]|0;c=14928+(b<<2)|0;if((h|0)==(f[c>>2]|0)){f[c>>2]=a;if(!a){f[3657]=f[3657]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}f[a+24>>2]=e;b=h+16|0;c=f[b>>2]|0;if(c|0){f[a+16>>2]=c;f[c+24>>2]=a}b=f[b+4>>2]|0;if(b){f[a+20>>2]=b;f[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=c;h=c}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;d=f[a>>2]|0;if(!(d&1))return;if(!(d&2)){a=f[3661]|0;if((j|0)==(f[3662]|0)){j=(f[3659]|0)+b|0;f[3659]=j;f[3662]=i;f[i+4>>2]=j|1;if((i|0)!=(a|0))return;f[3661]=0;f[3658]=0;return}if((j|0)==(a|0)){j=(f[3658]|0)+b|0;f[3658]=j;f[3661]=h;f[i+4>>2]=j|1;f[h+j>>2]=j;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){b=f[j+8>>2]|0;a=f[j+12>>2]|0;if((a|0)==(b|0)){f[3656]=f[3656]&~(1<>2]=a;f[a+8>>2]=b;break}}else{g=f[j+24>>2]|0;a=f[j+12>>2]|0;do if((a|0)==(j|0)){c=j+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){c=0;break}else b=c}while(1){c=a+20|0;d=f[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=f[c>>2]|0;if(!d)break;else{a=d;b=c}}f[b>>2]=0;c=a}else{c=f[j+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(g|0){a=f[j+28>>2]|0;b=14928+(a<<2)|0;if((j|0)==(f[b>>2]|0)){f[b>>2]=c;if(!c){f[3657]=f[3657]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=g;a=j+16|0;b=f[a>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}a=f[a+4>>2]|0;if(a|0){f[c+20>>2]=a;f[a+24>>2]=c}}}while(0);f[i+4>>2]=e|1;f[h+e>>2]=e;if((i|0)==(f[3661]|0)){f[3658]=e;return}}else{f[a>>2]=d&-2;f[i+4>>2]=b|1;f[h+b>>2]=b;e=b}a=e>>>3;if(e>>>0<256){c=14664+(a<<1<<2)|0;b=f[3656]|0;a=1<>2]|0}f[b>>2]=i;f[a+12>>2]=i;f[i+8>>2]=a;f[i+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=e>>>(a+7|0)&1|a<<1}else a=0;d=14928+(a<<2)|0;f[i+28>>2]=a;f[i+20>>2]=0;f[i+16>>2]=0;b=f[3657]|0;c=1<>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){a=73;break}d=c+16+(b>>>31<<2)|0;a=f[d>>2]|0;if(!a){a=72;break}else{b=b<<1;c=a}}if((a|0)==72){f[d>>2]=i;f[i+24>>2]=c;f[i+12>>2]=i;f[i+8>>2]=i;break}else if((a|0)==73){h=c+8|0;j=f[h>>2]|0;f[j+12>>2]=i;f[h>>2]=i;f[i+8>>2]=j;f[i+12>>2]=c;f[i+24>>2]=0;break}}else{f[3657]=b|c;f[d>>2]=i;f[i+24>>2]=d;f[i+12>>2]=i;f[i+8>>2]=i}while(0);j=(f[3664]|0)+-1|0;f[3664]=j;if(!j)a=15080;else return;while(1){a=f[a>>2]|0;if(!a)break;else a=a+8|0}f[3664]=-1;return}function ab(a,c){a=a|0;c=c|0;var d=0,e=0,g=Ca,i=Ca,j=0,k=0,l=0,m=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=Ca;v=b[c+11>>0]|0;x=v<<24>>24<0;w=x?f[c>>2]|0:c;v=x?f[c+4>>2]|0:v&255;if(v>>>0>3){j=w;m=v;k=v;while(1){x=X(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24,1540483477)|0;m=(X(x>>>24^x,1540483477)|0)^(X(m,1540483477)|0);k=k+-4|0;if(k>>>0<=3)break;else j=j+4|0}k=v+-4|0;l=k&-4;k=k-l|0;l=w+(l+4)|0;j=m}else{k=v;l=w;j=v}switch(k|0){case 3:{o=h[l+2>>0]<<16^j;z=6;break}case 2:{o=j;z=6;break}case 1:{p=j;z=7;break}default:q=j}if((z|0)==6){p=h[l+1>>0]<<8^o;z=7}if((z|0)==7)q=X(h[l>>0]^p,1540483477)|0;x=X(q>>>13^q,1540483477)|0;x=x>>>15^x;s=a+4|0;t=f[s>>2]|0;u=(t|0)==0;a:do if(!u){q=t+-1|0;k=(q&t|0)==0;if(!k)if(x>>>0>>0)r=x;else r=(x>>>0)%(t>>>0)|0;else r=x&q;j=f[(f[a>>2]|0)+(r<<2)>>2]|0;if((j|0)!=0?(e=f[j>>2]|0,(e|0)!=0):0){p=(v|0)==0;if(k){if(p){d=e;while(1){w=f[d+4>>2]|0;if(!((w|0)==(x|0)|(w&q|0)==(r|0))){d=r;break a}w=b[d+8+11>>0]|0;if(!((w<<24>>24<0?f[d+12>>2]|0:w&255)|0)){j=d;break}d=f[d>>2]|0;if(!d){d=r;break a}}a=j+20|0;return a|0}else j=e;b:while(1){o=f[j+4>>2]|0;if(!((o|0)==(x|0)|(o&q|0)==(r|0))){d=r;break a}m=j+8|0;k=b[m+11>>0]|0;l=k<<24>>24<0;k=k&255;do if(((l?f[j+12>>2]|0:k)|0)==(v|0)){o=f[m>>2]|0;if(l)if(!(jf(o,w,v)|0)){z=63;break b}else break;if((o&255)<<24>>24==(b[w>>0]|0)){l=w;do{k=k+-1|0;m=m+1|0;if(!k){z=63;break b}l=l+1|0}while((b[m>>0]|0)==(b[l>>0]|0))}}while(0);j=f[j>>2]|0;if(!j){d=r;break a}}if((z|0)==63){a=j+20|0;return a|0}}if(p){while(1){d=f[e+4>>2]|0;if((d|0)!=(x|0)){if(d>>>0>=t>>>0)d=(d>>>0)%(t>>>0)|0;if((d|0)!=(r|0)){d=r;break a}}w=b[e+8+11>>0]|0;if(!((w<<24>>24<0?f[e+12>>2]|0:w&255)|0)){j=e;break}e=f[e>>2]|0;if(!e){d=r;break a}}a=j+20|0;return a|0}c:while(1){j=f[e+4>>2]|0;if((j|0)!=(x|0)){if(j>>>0>=t>>>0)j=(j>>>0)%(t>>>0)|0;if((j|0)!=(r|0)){d=r;break a}}l=e+8|0;j=b[l+11>>0]|0;k=j<<24>>24<0;j=j&255;do if(((k?f[e+12>>2]|0:j)|0)==(v|0)){m=f[l>>2]|0;if(k)if(!(jf(m,w,v)|0)){j=e;z=63;break c}else break;if((m&255)<<24>>24==(b[w>>0]|0)){k=w;do{j=j+-1|0;l=l+1|0;if(!j){j=e;z=63;break c}k=k+1|0}while((b[l>>0]|0)==(b[k>>0]|0))}}while(0);e=f[e>>2]|0;if(!e){d=r;break a}}if((z|0)==63){a=j+20|0;return a|0}}else d=r}else d=0;while(0);l=pg(24)|0;Wd(l+8|0,c);f[l+20>>2]=0;f[l+4>>2]=x;f[l>>2]=0;k=a+12|0;g=$(((f[k>>2]|0)+1|0)>>>0);A=$(t>>>0);i=$(n[a+16>>2]);do if(u|g>$(A*i)){d=(t>>>0<3|(t+-1&t|0)!=0)&1|t<<1;e=~~$(W($(g/i)))>>>0;nd(a,d>>>0>>0?e:d);d=f[s>>2]|0;e=d+-1|0;if(!(e&d)){j=d;d=e&x;break}if(x>>>0>>0){j=d;d=x}else{j=d;d=(x>>>0)%(d>>>0)|0}}else j=t;while(0);d=(f[a>>2]|0)+(d<<2)|0;e=f[d>>2]|0;if(!e){c=a+8|0;f[l>>2]=f[c>>2];f[c>>2]=l;f[d>>2]=c;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;y=(f[a>>2]|0)+(d<<2)|0;z=61}}else{f[l>>2]=f[e>>2];y=e;z=61}if((z|0)==61)f[y>>2]=l;f[k>>2]=(f[k>>2]|0)+1;a=l;a=a+20|0;return a|0}function bb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;F=u;u=u+112|0;y=F+100|0;z=F+80|0;A=F+48|0;e=F+96|0;B=F+24|0;C=F+76|0;D=F;E=F+72|0;if(!(f[a+4>>2]|0))xa(9274,9296,46,9468);if(!(f[a+8>>2]|0))xa(9274,9296,46,9468);c=f[c>>2]|0;f[z>>2]=f[a+16>>2];f[z+4>>2]=c;x=z+8|0;f[x>>2]=c;b[z+12>>0]=1;f[e>>2]=c;f[y>>2]=f[e>>2];jd(A,a,y);p=a+28|0;m=(f[p>>2]|0)==0;if((c|0)<0){j=0;k=0;l=0;g=0;e=0;c=0}else{n=c+1|0;n=((n|0)%3|0|0)==0?c+-2|0:n;q=B+8|0;r=A+8|0;s=B+16|0;t=A+16|0;v=D+8|0;w=D+16|0;o=c+(((c>>>0)%3|0|0)==0?2:-1)|0;i=c;k=0;j=0;g=0;l=0;c=0;e=0;do{do if(!m){h=i+1|0;h=((h|0)%3|0|0)==0?i+-2|0:h;if(!((i>>>0)%3|0)){i=i+2|0;break}else{i=i+-1|0;break}}else{i=o;h=n}while(0);f[C>>2]=h;f[y>>2]=f[C>>2];jd(B,a,y);f[E>>2]=i;f[y>>2]=f[E>>2];jd(D,a,y);i=B;R=A;Q=f[R>>2]|0;R=f[R+4>>2]|0;i=Jg(f[i>>2]|0,f[i+4>>2]|0,Q|0,R|0)|0;m=I;h=q;T=r;S=f[T>>2]|0;T=f[T+4>>2]|0;h=Jg(f[h>>2]|0,f[h+4>>2]|0,S|0,T|0)|0;G=I;K=s;H=t;J=f[H>>2]|0;H=f[H+4>>2]|0;K=Jg(f[K>>2]|0,f[K+4>>2]|0,J|0,H|0)|0;L=I;N=D;R=Jg(f[N>>2]|0,f[N+4>>2]|0,Q|0,R|0)|0;Q=I;N=v;T=Jg(f[N>>2]|0,f[N+4>>2]|0,S|0,T|0)|0;S=I;N=w;H=Jg(f[N>>2]|0,f[N+4>>2]|0,J|0,H|0)|0;J=I;N=ng(H|0,J|0,h|0,G|0)|0;M=I;P=ng(T|0,S|0,K|0,L|0)|0;O=I;L=ng(R|0,Q|0,K|0,L|0)|0;K=I;J=ng(H|0,J|0,i|0,m|0)|0;H=I;m=ng(T|0,S|0,i|0,m|0)|0;i=I;G=ng(R|0,Q|0,h|0,G|0)|0;h=I;k=Jg(k|0,j|0,P|0,O|0)|0;k=Wg(k|0,I|0,N|0,M|0)|0;j=I;g=Wg(L|0,K|0,g|0,l|0)|0;g=Jg(g|0,I|0,J|0,H|0)|0;l=I;c=Jg(c|0,e|0,G|0,h|0)|0;c=Wg(c|0,I|0,m|0,i|0)|0;e=I;Pc(z);i=f[x>>2]|0;m=(f[p>>2]|0)==0}while((i|0)>=0)}T=(j|0)>-1|(j|0)==-1&k>>>0>4294967295;i=Jg(0,0,k|0,j|0)|0;h=T?j:I;O=(l|0)>-1|(l|0)==-1&g>>>0>4294967295;P=Jg(0,0,g|0,l|0)|0;Q=O?l:I;S=(e|0)>-1|(e|0)==-1&c>>>0>4294967295;R=Jg(0,0,c|0,e|0)|0;S=Wg((O?g:P)|0,Q|0,(S?c:R)|0,(S?e:I)|0)|0;h=Wg(S|0,I|0,(T?k:i)|0,h|0)|0;i=I;if(m)if((h|0)>536870912){T=Hg(h|0,i|0,29)|0;T=T&7;i=Fe(k|0,j|0,T|0,0)|0;j=I;g=Fe(g|0,l|0,T|0,0)|0;h=I;c=Fe(c|0,e|0,T|0,0)|0;e=I}else{i=k;h=l}else if((i|0)>0|(i|0)==0&h>>>0>536870912){S=Hg(h|0,i|0,29)|0;T=I;i=Fe(k|0,j|0,S|0,T|0)|0;j=I;g=Fe(g|0,l|0,S|0,T|0)|0;h=I;c=Fe(c|0,e|0,S|0,T|0)|0;e=I}else{i=k;h=l}R=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;S=Jg(0,0,i|0,j|0)|0;T=R?j:I;M=(h|0)>-1|(h|0)==-1&g>>>0>4294967295;N=Jg(0,0,g|0,h|0)|0;O=M?h:I;Q=(e|0)>-1|(e|0)==-1&c>>>0>4294967295;P=Jg(0,0,c|0,e|0)|0;Q=Wg((M?g:N)|0,O|0,(Q?c:P)|0,(Q?e:I)|0)|0;T=Wg(Q|0,I|0,(R?i:S)|0,T|0)|0;S=I;if((S|0)<0|(S|0)==0&T>>>0<536870913){f[d>>2]=i;f[d+4>>2]=g;f[d+8>>2]=c;u=F;return}else xa(9490,9296,95,9468)}function cb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;F=u;u=u+80|0;y=F+76|0;A=F;B=F+72|0;C=F+64|0;D=F+68|0;E=a+28|0;do if(((h[(f[E>>2]|0)+36>>0]|0)<<8&65535)<512){w=c+8|0;x=f[w>>2]|0;w=f[w+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=Wg(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((w|0)<(i|0)|(w|0)==(i|0)&x>>>0>>0){E=0;u=F;return E|0}else{x=(f[c>>2]|0)+e|0;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;f[y>>2]=x;f[d>>2]=g;f[d+4>>2]=i;d=x;break}}else if(ke(y,c)|0){d=f[y>>2]|0;break}else{E=0;u=F;return E|0}while(0);if(!d){E=0;u=F;return E|0}x=a+4|0;e=a+8|0;j=f[e>>2]|0;i=f[x>>2]|0;g=j-i>>2;if(d>>>0>g>>>0){Cd(x,d-g|0);if(!(f[y>>2]|0)){E=1;u=F;return E|0}}else if(d>>>0>>0?(k=i+(d<<2)|0,(j|0)!=(k|0)):0)f[e>>2]=j+(~((j+-4-k|0)>>>2)<<2);p=f[a+32>>2]|0;q=c+8|0;r=c+16|0;s=A+60|0;t=p+8|0;v=p+12|0;w=a+16|0;o=a+20|0;n=0;while(1){i=q;e=f[i>>2]|0;i=f[i+4>>2]|0;l=r;a=f[l>>2]|0;l=f[l+4>>2]|0;if(!((i|0)>(l|0)|(i|0)==(l|0)&e>>>0>a>>>0)){d=0;e=53;break}j=f[c>>2]|0;m=b[j+a>>0]|0;d=Wg(a|0,l|0,1,0)|0;k=I;g=r;f[g>>2]=d;f[g+4>>2]=k;if(!((i|0)>(k|0)|(i|0)==(k|0)&e>>>0>d>>>0)){d=0;e=53;break}k=b[j+d>>0]|0;d=Wg(a|0,l|0,2,0)|0;g=I;G=r;f[G>>2]=d;f[G+4>>2]=g;if(!((i|0)>(g|0)|(i|0)==(g|0)&e>>>0>d>>>0)){d=0;e=53;break}g=b[j+d>>0]|0;d=Wg(a|0,l|0,3,0)|0;G=I;H=r;f[H>>2]=d;f[H+4>>2]=G;if(!((i|0)>(G|0)|(i|0)==(G|0)&e>>>0>d>>>0)){d=0;e=53;break}e=b[j+d>>0]|0;H=Wg(a|0,l|0,4,0)|0;d=r;f[d>>2]=H;f[d+4>>2]=I;d=k&255;if((k+-1&255)>10){d=0;e=53;break}vf(A);H=X(Ef(d)|0,g&255)|0;je(A,m&255,0,g,d,e<<24>>24!=0,H,((H|0)<0)<<31>>31,0,0);H=f[E>>2]|0;if((((h[H+36>>0]|0)<<8|(h[H+37>>0]|0))&65535)<259){G=q;H=f[G>>2]|0;G=f[G+4>>2]|0;e=r;d=f[e>>2]|0;e=Wg(d|0,f[e+4>>2]|0,2,0)|0;g=I;if((G|0)<(g|0)|(G|0)==(g|0)&H>>>0>>0){e=51;break}d=(f[c>>2]|0)+d|0;d=h[d>>0]|h[d+1>>0]<<8;H=r;f[H>>2]=e;f[H+4>>2]=g;d=d&65535;f[B>>2]=d}else{ke(B,c)|0;d=f[B>>2]|0}f[s>>2]=d;j=pg(96)|0;pf(j,A);f[C>>2]=j;j=Vc(p,C)|0;i=f[C>>2]|0;f[C>>2]=0;if(i|0){H=i+88|0;d=f[H>>2]|0;f[H>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d)}d=f[i+68>>2]|0;if(d|0){e=i+72|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~((g+-4-d|0)>>>2)<<2);Bi(d)}H=i+64|0;d=f[H>>2]|0;f[H>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d)}Bi(i)}if((j|0)<=-1){e=41;break}d=f[t>>2]|0;if(((f[v>>2]|0)-d>>2|0)<=(j|0)){e=43;break}f[(f[d+(j<<2)>>2]|0)+60>>2]=f[B>>2];f[(f[x>>2]|0)+(n<<2)>>2]=j;e=f[o>>2]|0;d=f[w>>2]|0;g=e-d>>2;if((j|0)>=(g|0)){i=j+1|0;f[D>>2]=-1;if(i>>>0<=g>>>0){if(i>>>0>>0?(z=d+(i<<2)|0,(e|0)!=(z|0)):0)f[o>>2]=e+(~((e+-4-z|0)>>>2)<<2)}else{_c(w,i-g|0,D);d=f[w>>2]|0}}f[d+(j<<2)>>2]=n;n=n+1|0;if(n>>>0>=(f[y>>2]|0)>>>0){d=1;e=53;break}}if((e|0)==41)xa(13373,14023,67,14122);else if((e|0)==43)xa(13969,14023,68,14122);else if((e|0)==51){H=0;u=F;return H|0}else if((e|0)==53){u=F;return d|0}return 0}function db(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+16|0;k=l;j=c+8|0;o=j;m=f[o>>2]|0;o=f[o+4>>2]|0;i=c+16|0;g=i;e=f[g>>2]|0;g=Wg(e|0,f[g+4>>2]|0,5,0)|0;n=I;if((o|0)<(n|0)|(o|0)==(n|0)&m>>>0>>0){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}e=(f[c>>2]|0)+e|0;b[d>>0]=b[e>>0]|0;b[d+1>>0]=b[e+1>>0]|0;b[d+2>>0]=b[e+2>>0]|0;b[d+3>>0]=b[e+3>>0]|0;b[d+4>>0]=b[e+4>>0]|0;e=i;e=Wg(f[e>>2]|0,f[e+4>>2]|0,5,0)|0;g=I;o=i;f[o>>2]=e;f[o+4>>2]=g;if(jf(d,13548,5)|0){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=17;g=e;c=13554;i=g+17|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+17>>0]=0;f[a>>2]=-1;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}o=j;n=f[o+4>>2]|0;if(!((n|0)>(g|0)|((n|0)==(g|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}b[d+5>>0]=b[(f[c>>2]|0)+e>>0]|0;e=i;e=Wg(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=i;f[o>>2]=e;f[o+4>>2]=n;o=j;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}b[d+6>>0]=b[(f[c>>2]|0)+e>>0]|0;e=i;e=Wg(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=i;f[o>>2]=e;f[o+4>>2]=n;o=j;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}b[d+7>>0]=b[(f[c>>2]|0)+e>>0]|0;e=i;e=Wg(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=i;f[o>>2]=e;f[o+4>>2]=n;o=j;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}b[d+8>>0]=b[(f[c>>2]|0)+e>>0]|0;o=i;m=f[o>>2]|0;o=f[o+4>>2]|0;e=Wg(m|0,o|0,1,0)|0;n=i;f[n>>2]=e;f[n+4>>2]=I;n=f[j>>2]|0;j=f[j+4>>2]|0;o=Wg(m|0,o|0,3,0)|0;m=I;if(!((j|0)<(m|0)|(j|0)==(m|0)&n>>>0>>0)){n=d+10|0;o=(f[c>>2]|0)+e|0;o=h[o>>0]|h[o+1>>0]<<8;b[n>>0]=o;b[n+1>>0]=o>>8;n=i;n=Wg(f[n>>2]|0,f[n+4>>2]|0,2,0)|0;o=i;f[o>>2]=n;f[o+4>>2]=I;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=l;return}e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}function eb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=a+8|0;f[z>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0)if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0){f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2);d=e}else d=e;else{Cd(i,e-d|0);d=f[z>>2]|0}w=f[a+48>>2]|0;x=f[a+52>>2]|0;v=e>>>0>1073741823?-1:e<<2;y=xi(v)|0;Vd(y|0,0,v|0)|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[y+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{v=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(v|0)?v:d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;B=18}}else{d=d-(f[i>>2]|0)|0;B=18}if((B|0)==18){B=0;f[g>>2]=d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0))}}r=f[a+56>>2]|0;g=f[r>>2]|0;v=(f[r+4>>2]|0)-g|0;s=v>>2;if((v|0)<=4){yi(y);return 1}t=a+16|0;u=a+32|0;v=a+12|0;o=a+20|0;p=w+12|0;q=(e|0)>0;n=1;while(1){if(s>>>0<=n>>>0){B=24;break}h=f[g+(n<<2)>>2]|0;m=X(n,e)|0;if((h|0)>=0?(A=f[(f[p>>2]|0)+(h<<2)>>2]|0,(A|0)>=0):0){i=f[w>>2]|0;j=f[x>>2]|0;k=f[j+(f[i+(A<<2)>>2]<<2)>>2]|0;h=A+1|0;h=((h|0)%3|0|0)==0?A+-2|0:h;if((h|0)<0)h=-1073741824;else h=f[i+(h<<2)>>2]|0;l=f[j+(h<<2)>>2]|0;h=(((A>>>0)%3|0|0)==0?2:-1)+A|0;if((h|0)<0)h=-1073741824;else h=f[i+(h<<2)>>2]|0;h=f[j+(h<<2)>>2]|0;if((k|0)<(n|0)&(l|0)<(n|0)&(h|0)<(n|0)){k=X(k,e)|0;j=X(l,e)|0;i=X(h,e)|0;if(q){h=0;do{f[y+(h<<2)>>2]=(f[c+(h+i<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+k<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}l=b+(m<<2)|0;k=c+(m<<2)|0;if((d|0)>0){i=0;do{d=f[y+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){j=f[u>>2]|0;f[j+(i<<2)>>2]=h}else{m=f[v>>2]|0;j=f[u>>2]|0;f[j+(i<<2)>>2]=(d|0)<(m|0)?m:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[l+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;h=k+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[o>>2]|0)+d|0;B=56}}else{d=d-(f[o>>2]|0)|0;B=56}if((B|0)==56){B=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}else B=34}else B=34;if((B|0)==34){B=0;j=c+((X(n+-1|0,e)|0)<<2)|0;a=b+(m<<2)|0;l=c+(m<<2)|0;if((d|0)>0){i=0;do{d=f[j+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){k=f[u>>2]|0;f[k+(i<<2)>>2]=h}else{m=f[v>>2]|0;k=f[u>>2]|0;f[k+(i<<2)>>2]=(d|0)<(m|0)?m:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[o>>2]|0)+d|0;B=44}}else{d=d-(f[o>>2]|0)|0;B=44}if((B|0)==44){B=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}n=n+1|0;if((n|0)>=(s|0)){B=22;break}}if((B|0)==22){yi(y);return 1}else if((B|0)==24)Yh(r);return 0}function fb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=Ca,h=0,i=0,j=Ca,k=0,l=Ca,m=Ca,o=Ca,p=Ca,q=0,r=Ca,t=0,v=Ca,w=Ca,x=Ca,y=Ca,z=0,A=0,B=0,C=0,D=0,E=0,F=Ca;E=u;u=u+48|0;z=E+40|0;A=E+36|0;D=E+24|0;B=E+12|0;C=E;i=a+48|0;h=f[c>>2]|0;c=h+1|0;if((h|0)>=0){c=((c|0)%3|0|0)==0?h+-2|0:c;h=h+(((h>>>0)%3|0|0)==0?2:-1)|0;if((c|0)<0)c=-1073741824;else c=f[(f[f[i>>2]>>2]|0)+(c<<2)>>2]|0;if((h|0)<0)i=-1073741824;else i=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0}else{c=-1073741824;i=-1073741824}k=f[a+52>>2]|0;h=f[k>>2]|0;q=(f[k+4>>2]|0)-h>>2;if(q>>>0<=c>>>0)Yh(k);c=f[h+(c<<2)>>2]|0;if(q>>>0<=i>>>0)Yh(k);t=f[h+(i<<2)>>2]|0;h=(c|0)<(e|0);if(!(h&(t|0)<(e|0))){do if(!h){if((e|0)>0){c=e+-1|0;break}i=a+72|0;if((f[i>>2]|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(f[i>>2]|0));u=E;return}while(0);k=a+72|0;D=f[k>>2]|0;i=X(D,c)|0;if((D|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=f[d+(c+i<<2)>>2];c=c+1|0}while((c|0)<(f[k>>2]|0));u=E;return}q=f[a+72>>2]|0;k=X(q,c)|0;w=$(f[d+(k<<2)>>2]|0);x=$(f[d+(k+1<<2)>>2]|0);q=X(q,t)|0;y=$(f[d+(q<<2)>>2]|0);v=$(f[d+(q+1<<2)>>2]|0);if(!(y!=w|v!=x)){a=f[a+68>>2]|0;f[a>>2]=~~y;f[a+4>>2]=~~v;u=E;return}k=a+64|0;h=f[(f[k>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;q=a+60|0;i=f[q>>2]|0;if(!(b[i+84>>0]|0))h=f[(f[i+68>>2]|0)+(h<<2)>>2]|0;f[A>>2]=h;h=b[i+24>>0]|0;f[z>>2]=f[A>>2];Ra(i,z,h,D)|0;c=f[(f[k>>2]|0)+(c<<2)>>2]|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;c=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,c,B)|0;c=f[(f[k>>2]|0)+(t<<2)>>2]|0;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;d=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,d,C)|0;r=$(n[C>>2]);l=$(n[B>>2]);r=$(r-l);p=$(n[C+4>>2]);m=$(n[B+4>>2]);p=$(p-m);j=$(n[C+8>>2]);g=$(n[B+8>>2]);j=$(j-g);l=$($(n[D>>2])-l);m=$($(n[D+4>>2])-m);g=$($(n[D+8>>2])-g);o=$($($($(r*r)+$(0.0))+$(p*p))+$(j*j));if(o>$(0.0)?1:(f[a+88>>2]|0)<258){F=$($($($($(r*l)+$(0.0))+$(p*m))+$(j*g))/o);r=$(l-$(r*F));p=$(m-$(p*F));g=$(g-$(j*F));j=F;g=$(L($($($(g*g)+$($(p*p)+$($(r*r)+$(0.0))))/o)))}else{j=$(0.0);g=$(0.0)}r=$(y-w);F=$(v-x);y=$(w+$(r*j));w=$(r*g);x=$(x+$(F*j));F=$(F*g);C=a+80|0;B=(f[C>>2]|0)+-1|0;D=(1<<(B&31)&f[(f[a+76>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[C>>2]=B;j=$(-w);j=$(x+(D?j:w));g=$(-F);g=$(y+(D?F:g));if(((n[s>>2]=g,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+g+.5));h=f[a+68>>2]|0;f[h>>2]=c;if(((n[s>>2]=j,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+j+.5));f[h+4>>2]=c;u=E;return}function gb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=Ca,h=0,i=0,j=Ca,k=0,l=Ca,m=Ca,o=Ca,p=Ca,q=0,r=0,t=Ca,v=Ca,w=Ca,x=Ca,y=Ca,z=0,A=0,B=0,C=0,D=0,E=0,F=Ca;E=u;u=u+48|0;z=E+40|0;A=E+36|0;D=E+24|0;B=E+12|0;C=E;k=a+48|0;h=f[c>>2]|0;c=h+1|0;do if((h|0)>=0){c=((c|0)%3|0|0)==0?h+-2|0:c;if(!((h>>>0)%3|0)){i=h+2|0;break}else{i=h+-1|0;break}}else{i=h;c=h}while(0);q=f[(f[k>>2]|0)+28>>2]|0;k=f[q+(c<<2)>>2]|0;i=f[q+(i<<2)>>2]|0;q=f[a+52>>2]|0;c=f[q>>2]|0;r=(f[q+4>>2]|0)-c>>2;if(r>>>0<=k>>>0)Yh(q);h=c;c=f[h+(k<<2)>>2]|0;if(r>>>0<=i>>>0)Yh(q);r=f[h+(i<<2)>>2]|0;h=(c|0)<(e|0);if(!(h&(r|0)<(e|0))){do if(!h){if((e|0)>0){c=e+-1|0;break}i=a+72|0;if((f[i>>2]|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(f[i>>2]|0));u=E;return}while(0);k=a+72|0;D=f[k>>2]|0;i=X(D,c)|0;if((D|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=f[d+(c+i<<2)>>2];c=c+1|0}while((c|0)<(f[k>>2]|0));u=E;return}q=f[a+72>>2]|0;k=X(q,c)|0;w=$(f[d+(k<<2)>>2]|0);x=$(f[d+(k+1<<2)>>2]|0);q=X(q,r)|0;y=$(f[d+(q<<2)>>2]|0);v=$(f[d+(q+1<<2)>>2]|0);if(!(y!=w|v!=x)){a=f[a+68>>2]|0;f[a>>2]=~~y;f[a+4>>2]=~~v;u=E;return}k=a+64|0;h=f[(f[k>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;q=a+60|0;i=f[q>>2]|0;if(!(b[i+84>>0]|0))h=f[(f[i+68>>2]|0)+(h<<2)>>2]|0;f[A>>2]=h;h=b[i+24>>0]|0;f[z>>2]=f[A>>2];Ra(i,z,h,D)|0;c=f[(f[k>>2]|0)+(c<<2)>>2]|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;c=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,c,B)|0;c=f[(f[k>>2]|0)+(r<<2)>>2]|0;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;d=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,d,C)|0;t=$(n[C>>2]);l=$(n[B>>2]);t=$(t-l);p=$(n[C+4>>2]);m=$(n[B+4>>2]);p=$(p-m);j=$(n[C+8>>2]);g=$(n[B+8>>2]);j=$(j-g);l=$($(n[D>>2])-l);m=$($(n[D+4>>2])-m);g=$($(n[D+8>>2])-g);o=$($($($(t*t)+$(0.0))+$(p*p))+$(j*j));if(o>$(0.0)?1:(f[a+88>>2]|0)<258){F=$($($($($(t*l)+$(0.0))+$(p*m))+$(j*g))/o);t=$(l-$(t*F));p=$(m-$(p*F));g=$(g-$(j*F));j=F;g=$(L($($($(g*g)+$($(p*p)+$($(t*t)+$(0.0))))/o)))}else{j=$(0.0);g=$(0.0)}t=$(y-w);F=$(v-x);y=$(w+$(t*j));w=$(t*g);x=$(x+$(F*j));F=$(F*g);C=a+80|0;B=(f[C>>2]|0)+-1|0;D=(1<<(B&31)&f[(f[a+76>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[C>>2]=B;j=$(-w);j=$(x+(D?j:w));g=$(-F);g=$(y+(D?F:g));if(((n[s>>2]=g,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+g+.5));h=f[a+68>>2]|0;f[h>>2]=c;if(((n[s>>2]=j,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+j+.5));f[h+4>>2]=c;u=E;return}function hb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;z=a+8|0;f[z>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0)if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0){f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2);d=e}else d=e;else{Cd(i,e-d|0);d=f[z>>2]|0}w=f[a+48>>2]|0;x=f[a+52>>2]|0;v=e>>>0>1073741823?-1:e<<2;y=xi(v)|0;Vd(y|0,0,v|0)|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[y+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{v=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(v|0)?v:d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;E=18}}else{d=d-(f[i>>2]|0)|0;E=18}if((E|0)==18){E=0;f[g>>2]=d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0))}}r=f[a+56>>2]|0;g=f[r>>2]|0;v=(f[r+4>>2]|0)-g|0;s=v>>2;if((v|0)<=4){yi(y);return 1}t=a+16|0;u=a+32|0;v=a+12|0;n=a+20|0;o=w+64|0;p=w+28|0;q=(e|0)>0;m=1;while(1){if(s>>>0<=m>>>0){E=24;break}h=f[g+(m<<2)>>2]|0;l=X(m,e)|0;if((!((h|0)<0?1:(1<<(h&31)&f[(f[w>>2]|0)+(h>>>5<<2)>>2]|0)!=0)?(A=f[(f[(f[o>>2]|0)+12>>2]|0)+(h<<2)>>2]|0,(A|0)>=0):0)?(D=f[p>>2]|0,a=f[x>>2]|0,B=f[a+(f[D+(A<<2)>>2]<<2)>>2]|0,C=A+1|0,C=f[a+(f[D+((((C|0)%3|0|0)==0?A+-2|0:C)<<2)>>2]<<2)>>2]|0,D=f[a+(f[D+((((A>>>0)%3|0|0)==0?2:-1)+A<<2)>>2]<<2)>>2]|0,(B|0)<(m|0)&(C|0)<(m|0)&(D|0)<(m|0)):0){i=X(B,e)|0;j=X(C,e)|0;k=X(D,e)|0;if(q){h=0;do{f[y+(h<<2)>>2]=(f[c+(h+k<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+i<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}a=b+(l<<2)|0;k=c+(l<<2)|0;if((d|0)>0){i=0;do{d=f[y+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){j=f[u>>2]|0;f[j+(i<<2)>>2]=h}else{l=f[v>>2]|0;j=f[u>>2]|0;f[j+(i<<2)>>2]=(d|0)<(l|0)?l:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;h=k+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[n>>2]|0)+d|0;E=52}}else{d=d-(f[n>>2]|0)|0;E=52}if((E|0)==52){E=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}else{j=c+((X(m+-1|0,e)|0)<<2)|0;a=b+(l<<2)|0;l=c+(l<<2)|0;if((d|0)>0){i=0;do{d=f[j+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){k=f[u>>2]|0;f[k+(i<<2)>>2]=h}else{h=f[v>>2]|0;k=f[u>>2]|0;f[k+(i<<2)>>2]=(d|0)<(h|0)?h:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[n>>2]|0)+d|0;E=40}}else{d=d-(f[n>>2]|0)|0;E=40}if((E|0)==40){E=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}m=m+1|0;if((m|0)>=(s|0)){E=22;break}}if((E|0)==22){yi(y);return 1}else if((E|0)==24)Yh(r);return 0}function ib(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if((b|0)<0)return;l=a+12|0;c=f[l>>2]|0;d=f[a+8>>2]|0;e=c-d>>2;if(e>>>0<=b>>>0)return;g=d+(b<<2)|0;n=f[(f[g>>2]|0)+56>>2]|0;if((e|0)<=(b|0))xa(13969,14023,68,14122);m=f[(f[d+(b<<2)>>2]|0)+60>>2]|0;d=g+4|0;if((d|0)!=(c|0)){do{i=f[d>>2]|0;f[d>>2]=0;j=f[g>>2]|0;f[g>>2]=i;if(j|0){i=j+88|0;e=f[i>>2]|0;f[i>>2]=0;if(e|0){h=f[e+8>>2]|0;if(h|0){i=e+12|0;if((f[i>>2]|0)!=(h|0))f[i>>2]=h;Bi(h)}Bi(e)}e=f[j+68>>2]|0;if(e|0){h=j+72|0;i=f[h>>2]|0;if((i|0)!=(e|0))f[h>>2]=i+(~((i+-4-e|0)>>>2)<<2);Bi(e)}i=j+64|0;e=f[i>>2]|0;f[i>>2]=0;if(e|0){h=f[e>>2]|0;if(h|0){i=e+4|0;if((f[i>>2]|0)!=(h|0))f[i>>2]=h;Bi(h)}Bi(e)}Bi(j)}d=d+4|0;g=g+4|0}while((d|0)!=(c|0));c=f[l>>2]|0;if((c|0)!=(g|0))k=26}else k=26;if((k|0)==26)do{k=c+-4|0;f[l>>2]=k;h=f[k>>2]|0;f[k>>2]=0;if(h|0){k=h+88|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(c)}c=f[h+68>>2]|0;if(c|0){d=h+72|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Bi(c)}k=h+64|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(c)}Bi(h)}c=f[l>>2]|0}while((c|0)!=(g|0));d=f[a+4>>2]|0;a:do if(d|0){h=d+44|0;c=f[h>>2]|0;g=f[d+40>>2]|0;while(1){if((g|0)==(c|0))break a;d=g+4|0;if((f[(f[g>>2]|0)+40>>2]|0)==(m|0))break;else g=d}if((d|0)!=(c|0)){do{m=f[d>>2]|0;f[d>>2]=0;e=f[g>>2]|0;f[g>>2]=m;if(e|0){Md(e);Bi(e)}d=d+4|0;g=g+4|0}while((d|0)!=(c|0));c=f[h>>2]|0;if((c|0)==(g|0))break}do{m=c+-4|0;f[h>>2]=m;c=f[m>>2]|0;f[m>>2]=0;if(c|0){Md(c);Bi(c)}c=f[h>>2]|0}while((c|0)!=(g|0))}while(0);b:do if((n|0)<5){c=f[a+20+(n*12|0)>>2]|0;i=a+20+(n*12|0)+4|0;d=f[i>>2]|0;e=d;c:do if((c|0)!=(d|0))while(1){if((f[c>>2]|0)==(b|0))break c;c=c+4|0;if((c|0)==(d|0))break b}while(0);if((c|0)!=(d|0)){g=c+4|0;e=e-g|0;h=e>>2;if(h){Of(c|0,g|0,e|0)|0;d=f[i>>2]|0}c=c+(h<<2)|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-4-c|0)>>>2)<<2)}}while(0);c=f[a+24>>2]|0;d=f[a+20>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}c=f[a+36>>2]|0;d=f[a+32>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}c=f[a+48>>2]|0;d=f[a+44>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}c=f[a+60>>2]|0;d=f[a+56>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}d=f[a+72>>2]|0;c=f[a+68>>2]|0;h=c;if((d|0)==(c|0))return;d=d-c>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0);return}function jb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{h=pg(60)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1864;g=h;f[a>>2]=g;return}case 2:{h=pg(60)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1920;g=h;f[a>>2]=g;return}case 4:{h=pg(112)|0;f[h>>2]=1388;f[h+4>>2]=d;b=h+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];f[b+16>>2]=f[e+16>>2];f[b+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);b=h+44|0;f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];f[b+12>>2]=f[g+12>>2];f[h>>2]=1976;b=h+60|0;c=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));g=h;f[a>>2]=g;return}case 3:{c=pg(92)|0;f[c>>2]=1388;f[c+4>>2]=d;d=c+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(c+32|0,e+24|0);e=c+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[c>>2]=2032;g=c+60|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;f[c+88>>2]=h&65535;g=c;f[a>>2]=g;return}case 5:{h=pg(104)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=2088;f[h+60>>2]=0;f[h+64>>2]=0;f[h+76>>2]=0;f[h+80>>2]=0;f[h+84>>2]=0;e=h+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];g=h;f[a>>2]=g;return}case 6:{h=pg(124)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=2144;f[h+64>>2]=0;f[h+68>>2]=0;e=h+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h+60>>2]=2200;f[h+88>>2]=1;g=h+92|0;f[g>>2]=-1;f[g+4>>2]=-1;f[g+8>>2]=-1;f[g+12>>2]=-1;ci(h+108|0);g=h;f[a>>2]=g;return}default:{g=0;f[a>>2]=g;return}}}function kb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{h=pg(60)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1500;g=h;f[a>>2]=g;return}case 2:{h=pg(60)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1556;g=h;f[a>>2]=g;return}case 4:{h=pg(112)|0;f[h>>2]=1388;f[h+4>>2]=d;b=h+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];f[b+16>>2]=f[e+16>>2];f[b+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);b=h+44|0;f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];f[b+12>>2]=f[g+12>>2];f[h>>2]=1612;b=h+60|0;c=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));g=h;f[a>>2]=g;return}case 3:{c=pg(92)|0;f[c>>2]=1388;f[c+4>>2]=d;d=c+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(c+32|0,e+24|0);e=c+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[c>>2]=1668;g=c+60|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;f[c+88>>2]=h&65535;g=c;f[a>>2]=g;return}case 5:{h=pg(104)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1724;f[h+60>>2]=0;f[h+64>>2]=0;f[h+76>>2]=0;f[h+80>>2]=0;f[h+84>>2]=0;e=h+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];g=h;f[a>>2]=g;return}case 6:{h=pg(124)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1780;f[h+64>>2]=0;f[h+68>>2]=0;e=h+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h+60>>2]=1836;f[h+88>>2]=1;g=h+92|0;f[g>>2]=-1;f[g+4>>2]=-1;f[g+8>>2]=-1;f[g+12>>2]=-1;ci(h+108|0);g=h;f[a>>2]=g;return}default:{g=0;f[a>>2]=g;return}}}function lb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7884,7895,60,8018);if((d|0)>=31)xa(8038,7895,61,8018);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9274,10082,99,10247);if((e|0)!=2)xa(10269,10082,102,10247);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Yh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];Xa(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Wg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Wg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=ng(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Fe(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=ng(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Fe(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Pe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;vd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Yh(d);else if((e|0)==16)xa(10293,10082,116,10247);else if((e|0)==21)xa(10360,7895,99,10448);return 0}function mb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7884,7895,60,8018);if((d|0)>=31)xa(8038,7895,61,8018);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9274,10082,99,10247);if((e|0)!=2)xa(10269,10082,102,10247);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Yh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];bb(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Wg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Wg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=ng(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Fe(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=ng(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Fe(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Pe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;vd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Yh(d);else if((e|0)==16)xa(10293,10082,116,10247);else if((e|0)==21)xa(10360,7895,99,10448);return 0}function nb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7884,7895,60,8018);if((d|0)>=31)xa(8038,7895,61,8018);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9274,10082,99,10247);if((e|0)!=2)xa(10269,10082,102,10247);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Yh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];Xa(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Wg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Wg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=ng(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Fe(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=ng(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Fe(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Pe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;wd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Yh(d);else if((e|0)==16)xa(10293,10082,116,10247);else if((e|0)==21)xa(10360,7895,99,10448);return 0}function ob(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7884,7895,60,8018);if((d|0)>=31)xa(8038,7895,61,8018);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9274,10082,99,10247);if((e|0)!=2)xa(10269,10082,102,10247);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Yh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];bb(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Wg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Wg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=ng(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Fe(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=ng(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Fe(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Pe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;wd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Yh(d);else if((e|0)==16)xa(10293,10082,116,10247);else if((e|0)==21)xa(10360,7895,99,10448);return 0}function pb(a,c,e,g,i){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;k=n+12|0;m=n;f[c+40>>2]=e;j=c+32|0;f[j>>2]=g;f[c+4>>2]=i;db(a,g,k);if(f[a>>2]|0){u=n;return}l=a+4|0;e=l+11|0;if((b[e>>0]|0)<0)Bi(f[l>>2]|0);i=h[k+7>>0]|0;if((i|0)!=(Ja[f[(f[c>>2]|0)+8>>2]&127](c)|0)){e=pg(64)|0;f[m>>2]=e;f[m+8>>2]=-2147483584;f[m+4>>2]=50;g=e;i=13599;j=g+50|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+50>>0]=0;f[a>>2]=-1;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}g=b[k+5>>0]|0;b[c+36>>0]=g;i=b[k+6>>0]|0;b[c+37>>0]=i;if((g+-1&255)>1){e=pg(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=22;g=e;i=13650;j=g+22|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+22>>0]=0;f[a>>2]=-5;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}if(g<<24>>24==2&(i&255)>2){e=pg(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=22;g=e;i=13673;j=g+22|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+22>>0]=0;f[a>>2]=-5;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}i=(i&255|(g&255)<<8)&65535;d[(f[j>>2]|0)+38>>1]=i;if((i&65535)>258?(d[k+10>>1]|0)<0:0){ec(a,c);if(f[a>>2]|0){u=n;return}if((b[e>>0]|0)<0)Bi(f[l>>2]|0)}if(!(Ja[f[(f[c>>2]|0)+12>>2]&127](c)|0)){e=pg(48)|0;f[m>>2]=e;f[m+8>>2]=-2147483600;f[m+4>>2]=33;g=e;i=13696;j=g+33|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+33>>0]=0;f[a>>2]=-1;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}if(!(Ja[f[(f[c>>2]|0)+20>>2]&127](c)|0)){e=pg(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=31;g=e;i=13730;j=g+31|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+31>>0]=0;f[a>>2]=-1;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}if(Ja[f[(f[c>>2]|0)+24>>2]&127](c)|0){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=n;return}e=pg(48)|0;f[m>>2]=e;f[m+8>>2]=-2147483600;f[m+4>>2]=34;g=e;i=13762;j=g+34|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+34>>0]=0;f[a>>2]=-1;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}function qb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=b[c+11>>0]|0;m=r<<24>>24<0;u=m?f[c>>2]|0:c;r=m?f[c+4>>2]|0:r&255;if(r>>>0>3){c=u;g=r;d=r;while(1){m=X(h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24,1540483477)|0;g=(X(m>>>24^m,1540483477)|0)^(X(g,1540483477)|0);d=d+-4|0;if(d>>>0<=3)break;else c=c+4|0}d=r+-4|0;e=d&-4;d=d-e|0;e=u+(e+4)|0;c=g}else{d=r;e=u;c=r}switch(d|0){case 3:{i=h[e+2>>0]<<16^c;q=6;break}case 2:{i=c;q=6;break}case 1:{j=c;q=7;break}default:k=c}if((q|0)==6){j=h[e+1>>0]<<8^i;q=7}if((q|0)==7)k=X(h[e>>0]^j,1540483477)|0;k=X(k>>>13^k,1540483477)|0;k=k>>>15^k;l=f[a+4>>2]|0;if(!l){w=0;return w|0}i=l+-1|0;d=(i&l|0)==0;if(!d)if(k>>>0>>0)m=k;else m=(k>>>0)%(l>>>0)|0;else m=k&i;c=f[(f[a>>2]|0)+(m<<2)>>2]|0;if(!c){w=0;return w|0}c=f[c>>2]|0;if(!c){w=0;return w|0}j=(r|0)==0;if(d){a:while(1){q=f[c+4>>2]|0;d=(q|0)==(k|0);if(!(d|(q&i|0)==(m|0))){c=0;q=41;break}do if(d?(n=c+8|0,p=b[n+11>>0]|0,o=p<<24>>24<0,p=p&255,((o?f[c+12>>2]|0:p)|0)==(r|0)):0){d=f[n>>2]|0;e=o?d:n;if(o){if(j){q=41;break a}if(!(jf(e,u,r)|0)){q=41;break a}else break}if(j){q=41;break a}if((d&255)<<24>>24==(b[u>>0]|0)){d=n;e=p;g=u;do{e=e+-1|0;d=d+1|0;if(!e){q=41;break a}g=g+1|0}while((b[d>>0]|0)==(b[g>>0]|0))}}while(0);c=f[c>>2]|0;if(!c){c=0;q=41;break}}if((q|0)==41)return c|0}else s=c;b:while(1){c=f[s+4>>2]|0;d=(c|0)==(k|0);if(!d){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0;if((c|0)!=(m|0)){c=0;q=41;break}if(d)q=33}else q=33;do if((q|0)==33?(q=0,v=s+8|0,t=b[v+11>>0]|0,w=t<<24>>24<0,t=t&255,((w?f[s+12>>2]|0:t)|0)==(r|0)):0){c=f[v>>2]|0;d=w?c:v;if(w){if(j){c=s;q=41;break b}if(!(jf(d,u,r)|0)){c=s;q=41;break b}else break}if(j){c=s;q=41;break b}if((c&255)<<24>>24==(b[u>>0]|0)){c=v;d=t;e=u;do{d=d+-1|0;c=c+1|0;if(!d){c=s;q=41;break b}e=e+1|0}while((b[c>>0]|0)==(b[e>>0]|0))}}while(0);s=f[s>>2]|0;if(!s){c=0;q=41;break}}if((q|0)==41)return c|0;return 0}function rb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=Ja[f[(f[a>>2]|0)+44>>2]&127](a)|0;if((t|0)<1){t=0;return t|0}m=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;r=X(m,t)|0;Ec(a,m,t);m=a+16|0;s=f[m>>2]|0;s=(f[f[s>>2]>>2]|0)+(f[s+48>>2]|0)|0;p=d+8|0;g=p;e=f[g>>2]|0;g=f[g+4>>2]|0;q=d+16|0;l=q;k=f[l>>2]|0;l=f[l+4>>2]|0;if(!((g|0)>(l|0)|(g|0)==(l|0)&e>>>0>k>>>0)){t=0;return t|0}h=f[d>>2]|0;o=b[h+k>>0]|0;i=Wg(k|0,l|0,1,0)|0;j=I;n=q;f[n>>2]=i;f[n+4>>2]=j;a:do if(!(o<<24>>24)){if(!((g|0)>(j|0)|(g|0)==(j|0)&e>>>0>i>>>0)){t=0;return t|0}n=b[h+i>>0]|0;l=Wg(k|0,l|0,2,0)|0;o=q;f[o>>2]=l;f[o+4>>2]=I;o=n&255;l=(o|0)==(Ef(5)|0);e=f[(f[m>>2]|0)+64>>2]|0;e=(f[e+4>>2]|0)-(f[e>>2]|0)|0;if(l){g=r<<2;if(e>>>0>>0){t=0;return t|0}m=p;o=f[m>>2]|0;m=f[m+4>>2]|0;p=q;e=f[p>>2]|0;p=Wg(e|0,f[p+4>>2]|0,g|0,0)|0;n=I;if((m|0)<(n|0)|(m|0)==(n|0)&o>>>0

>>0){t=0;return t|0}else{Mc(s|0,(f[d>>2]|0)+e|0,g|0)|0;p=q;p=Wg(f[p>>2]|0,f[p+4>>2]|0,g|0,0)|0;i=q;f[i>>2]=p;f[i+4>>2]=I;i=18;break}}i=X(o,r)|0;if(e>>>0>>0){t=0;return t|0}k=p;g=f[k>>2]|0;k=f[k+4>>2]|0;h=q;j=f[h>>2]|0;h=f[h+4>>2]|0;m=Jg(g|0,k|0,j|0,h|0)|0;l=I;if((l|0)<0|(l|0)==0&m>>>0>>0){t=0;return t|0}if(!r)i=19;else{l=n&255;e=0;i=k;while(1){n=Wg(j|0,h|0,l|0,0)|0;m=I;if((i|0)<(m|0)|(i|0)==(m|0)&g>>>0>>0)g=j;else{Mc(s+(e<<2)|0,(f[d>>2]|0)+j|0,o|0)|0;g=q;g=Wg(f[g>>2]|0,f[g+4>>2]|0,l|0,0)|0;h=I;n=q;f[n>>2]=g;f[n+4>>2]=h}e=e+1|0;if((e|0)==(r|0)){i=18;break a}n=p;j=g;i=f[n+4>>2]|0;g=f[n>>2]|0}}}else if(Xd(r,t,d,s)|0)i=18;else{t=0;return t|0}while(0);do if((i|0)==18)if(!r)i=19;else{e=a+20|0;g=f[e>>2]|0;if(g|0?Ja[f[(f[g>>2]|0)+32>>2]&127](g)|0:0){h=1;break}Qf(s,r,s);h=1}while(0);if((i|0)==19){e=a+20|0;h=0}g=f[e>>2]|0;if(g|0){if(!(Na[f[(f[g>>2]|0)+40>>2]&127](g,d)|0)){t=0;return t|0}if(h?(d=f[e>>2]|0,!(Ia[f[(f[d>>2]|0)+44>>2]&31](d,s,s,r,t,f[c>>2]|0)|0)):0){t=0;return t|0}}t=1;return t|0}function sb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)Bi(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=za(8)|0;gh(a,14257);f[a>>2]=3624;qa(a|0,952,75)}s=pg(c<<2)|0;d=f[a>>2]|0;f[a>>2]=s;if(d|0)Bi(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;i=f[e>>2]|0;if(!i)return;d=f[i+4>>2]|0;r=c+-1|0;s=(r&c|0)==0;if(!s){if(d>>>0>=c>>>0)d=(d>>>0)%(c>>>0)|0}else d=d&r;f[(f[a>>2]|0)+(d<<2)>>2]=e;e=f[i>>2]|0;if(!e)return;else{g=i;h=e;e=i}a:while(1){q=g;g=h;p=e;b:while(1){e=g;while(1){g=f[e+4>>2]|0;if(!s){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0}else g=g&r;if((g|0)==(d|0))break;h=(f[a>>2]|0)+(g<<2)|0;if(!(f[h>>2]|0))break b;i=f[e>>2]|0;c:do if(!i)h=e;else{n=e+8|0;m=b[n+11>>0]|0;k=m<<24>>24<0;m=m&255;o=k?f[e+12>>2]|0:m;l=(o|0)==0;if(k){h=e;while(1){j=i+8|0;m=b[j+11>>0]|0;k=m<<24>>24<0;if((o|0)!=((k?f[i+12>>2]|0:m&255)|0))break c;if(!l?jf(f[n>>2]|0,k?f[j>>2]|0:j,o)|0:0)break c;h=f[i>>2]|0;if(!h){h=i;break c}else{m=i;i=h;h=m}}}if(l){h=e;while(1){o=b[i+8+11>>0]|0;if((o<<24>>24<0?f[i+12>>2]|0:o&255)|0)break c;h=f[i>>2]|0;if(!h){h=i;break c}else{o=i;i=h;h=o}}}h=e;while(1){j=i+8|0;l=b[j+11>>0]|0;k=l<<24>>24<0;if((o|0)!=((k?f[i+12>>2]|0:l&255)|0))break c;j=k?f[j>>2]|0:j;if((f[n>>2]&255)<<24>>24==(b[j>>0]|0)){k=n;l=m}else break c;while(1){l=l+-1|0;k=k+1|0;if(!l)break;j=j+1|0;if((b[k>>0]|0)!=(b[j>>0]|0))break c}h=f[i>>2]|0;if(!h){h=i;break}else{l=i;i=h;h=l}}}while(0);f[p>>2]=f[h>>2];f[h>>2]=f[f[(f[a>>2]|0)+(g<<2)>>2]>>2];f[f[(f[a>>2]|0)+(g<<2)>>2]>>2]=e;e=f[q>>2]|0;if(!e){d=43;break a}}g=f[e>>2]|0;if(!g){d=43;break a}else{q=e;p=e}}f[h>>2]=p;h=f[e>>2]|0;if(!h){d=43;break}else{d=g;g=e}}if((d|0)==43)return}function tb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+64|0;E=F;g=E;i=g+40|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(i|0));a:do if(Hb(E,d)|0?Vb(E,d)|0:0){g=(a|0)==0;b:do if(!g){if(!(f[E+12>>2]|0)){k=0;break a}Jc(d,0,0)|0;if(!g){t=E+44|0;v=E+48|0;w=E+40|0;x=E+16|0;y=E+28|0;z=(c|0)>0;D=d+36|0;A=d+32|0;B=d+24|0;C=d+28|0;s=0;g=0;i=f[v>>2]|0;while(1){c:do if(i>>>0<16384){j=f[t>>2]|0;do{if((j|0)<=0)break c;r=f[w>>2]|0;j=j+-1|0;f[t>>2]=j;i=h[r+j>>0]|i<<8;f[v>>2]=i}while(i>>>0<16384)}while(0);p=i&4095;r=f[(f[x>>2]|0)+(p<<2)>>2]|0;q=f[y>>2]|0;i=(X(f[q+(r<<3)>>2]|0,i>>>12)|0)+p-(f[q+(r<<3)+4>>2]|0)|0;f[v>>2]=i;if(z){q=(r|0)>0;if((r|0)<=-1){g=22;break}if((r|0)<33)p=0;else{g=21;break}while(1){if(!(b[D>>0]|0)){k=0;break a}if(q){n=f[B>>2]|0;o=f[C>>2]|0;j=0;m=0;l=f[A>>2]|0;do{k=n+(l>>>3)|0;if(k>>>0>>0){k=(h[k>>0]|0)>>>(l&7)&1;l=l+1|0;f[A>>2]=l}else k=0;j=k<>2]=j;p=p+1|0;if((p|0)>=(c|0)){g=k;break}else g=k}}s=s+c|0;if(s>>>0>=a>>>0)break b}if((g|0)==21){if(!(b[D>>0]|0)){k=0;break a}xa(13953,13850,156,13945)}else if((g|0)==22){if(!(b[D>>0]|0)){k=0;break a}xa(13835,13850,155,13945)}}}else Jc(d,0,0)|0;while(0);Hf(d);k=1}else k=0;while(0);g=f[E+28>>2]|0;if(g|0){i=E+32|0;j=f[i>>2]|0;if((j|0)!=(g|0))f[i>>2]=j+(~((j+-8-g|0)>>>3)<<3);Bi(g)}g=f[E+16>>2]|0;if(g|0){i=E+20|0;j=f[i>>2]|0;if((j|0)!=(g|0))f[i>>2]=j+(~((j+-4-g|0)>>>2)<<2);Bi(g)}j=f[E>>2]|0;if(!j){u=F;return k|0}i=E+4|0;g=f[i>>2]|0;if((g|0)!=(j|0))f[i>>2]=g+(~((g+-4-j|0)>>>2)<<2);Bi(j);u=F;return k|0}function ub(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=c;n=d;i=n;if(!k){g=(e|0)!=0;if(!i){if(g){f[e>>2]=(l>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(l>>>0)/(h>>>0)>>>0;return (I=n,e)|0}else{if(!g){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;e=0;return (I=n,e)|0}}g=(i|0)==0;do if(h){if(!g){g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}g=h-1|0;if(g&h|0){i=(_(h|0)|0)+33-(_(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(e|0){f[e>>2]=g&l;f[e+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (I=o,p)|0}else{p=Tf(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (I=o,p)|0}}else{if(g){if(e|0){f[e>>2]=(k>>>0)%(h>>>0);f[e+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (I=o,p)|0}if(!l){if(e|0){f[e>>2]=0;f[e+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (I=o,p)|0}g=i-1|0;if(!(g&i)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=g&k|b&0}o=0;p=k>>>((Tf(i|0)|0)>>>0);return (I=o,p)|0}g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;o=0;p=0;return (I=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=c|0|0;l=n|d&0;k=Wg(m|0,l|0,-1,-1)|0;c=I;j=i;i=0;do{d=j;j=g>>>31|j<<1;g=i|g<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;Jg(k|0,c|0,d|0,n|0)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Jg(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=I;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(e|0){f[e>>2]=a;f[e+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (I=o,p)|0}function vb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;r=w+24|0;s=w+20|0;k=w+16|0;t=w;v=f[a+80>>2]|0;l=a+8|0;m=a+12|0;a=f[l>>2]|0;if(((f[m>>2]|0)-a|0)<=0)xa(13969,14023,60,14122);j=f[a>>2]|0;a=c+4|0;h=f[a>>2]|0;g=f[c>>2]|0;e=h-g>>2;if(v>>>0<=e>>>0){if(v>>>0>>0?(i=g+(v<<2)|0,(h|0)!=(i|0)):0)f[a>>2]=h+(~((h+-4-i|0)>>>2)<<2)}else Cd(c,v-e|0);n[k>>2]=$(-1.0);p=(v|0)>0;a:do if(p){g=j+84|0;h=j+68|0;i=j+24|0;a=0;while(1){if(!(b[g>>0]|0))e=f[(f[h>>2]|0)+(a<<2)>>2]|0;else e=a;f[s>>2]=e;o=b[i>>0]|0;f[r>>2]=f[s>>2];if(!(Ra(j,r,o,k)|0)){a=0;break}f[(f[c>>2]|0)+(a<<2)>>2]=f[k>>2];a=a+1|0;if((a|0)>=(v|0))break a}u=w;return a|0}while(0);a=f[l>>2]|0;if(((f[m>>2]|0)-a|0)<=4)xa(13969,14023,60,14122);m=f[a+4>>2]|0;o=m+24|0;j=b[o>>0]|0;l=j<<24>>24;a=X(l,v)|0;f[t>>2]=f[265];f[t+4>>2]=f[266];f[t+8>>2]=f[267];f[t+12>>2]=f[268];e=d+4|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>2;if(a>>>0<=g>>>0){if(a>>>0>>0?(q=h+(a<<2)|0,(i|0)!=(q|0)):0)f[e>>2]=i+(~((i+-4-q|0)>>>2)<<2)}else Cd(d,a-g|0);b:do if(p){c=m+84|0;k=m+68|0;if(j<<24>>24>0){h=0;i=0}else{e=0;while(1){if(!(b[c>>0]|0))a=f[(f[k>>2]|0)+(e<<2)>>2]|0;else a=e;f[s>>2]=a;d=b[o>>0]|0;f[r>>2]=f[s>>2];if(!(Ra(m,r,d,t)|0)){a=0;break b}e=e+1|0;if((e|0)>=(v|0)){a=1;break b}}}while(1){if(!(b[c>>0]|0))a=f[(f[k>>2]|0)+(i<<2)>>2]|0;else a=i;f[s>>2]=a;q=b[o>>0]|0;f[r>>2]=f[s>>2];if(!(Ra(m,r,q,t)|0)){a=0;break b}g=f[d>>2]|0;a=0;e=h;while(1){f[g+(e<<2)>>2]=f[t+(a<<2)>>2];a=a+1|0;if((a|0)==(l|0))break;else e=e+1|0}i=i+1|0;if((i|0)>=(v|0)){a=1;break}else h=l+h|0}}else a=1;while(0);v=a;u=w;return v|0}function wb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:do if(!(xh(a,f[c+8>>2]|0,g)|0)){i=a+12|0;q=c+24|0;r=c+36|0;s=c+54|0;o=a+8|0;m=a+16|0;if(!(xh(a,f[c>>2]|0,g)|0)){p=f[i>>2]|0;j=a+16+(p<<3)|0;mf(m,c,d,e,g);h=a+24|0;if((p|0)<=1)break;i=f[o>>2]|0;if((i&2|0)==0?(f[r>>2]|0)!=1:0){if(!(i&1))while(1){if(b[s>>0]|0)break a;if((f[r>>2]|0)==1)break a;mf(h,c,d,e,g);h=h+8|0;if(h>>>0>=j>>>0)break a}while(1){if(b[s>>0]|0)break a;if((f[r>>2]|0)==1?(f[q>>2]|0)==1:0)break a;mf(h,c,d,e,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}while(1){if(b[s>>0]|0)break a;mf(h,c,d,e,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}h=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(p=c+20|0,(f[p>>2]|0)!=(d|0)):0){f[h>>2]=e;n=c+44|0;if((f[n>>2]|0)==4)break;e=a+16+(f[i>>2]<<3)|0;k=c+52|0;l=c+53|0;h=0;a=m;j=0;b:while(1){if(a>>>0>=e>>>0){i=18;break}b[k>>0]=0;b[l>>0]=0;ef(a,c,d,d,1,g);if(b[s>>0]|0){i=18;break}do if(b[l>>0]|0){if(!(b[k>>0]|0))if(!(f[o>>2]&1)){h=1;i=18;break b}else{h=1;i=j;break}if((f[q>>2]|0)==1){i=23;break b}if(!(f[o>>2]&2)){i=23;break b}else{h=1;i=1}}else i=j;while(0);a=a+8|0;j=i}do if((i|0)==18){if((!j?(f[p>>2]=d,d=c+40|0,f[d>>2]=(f[d>>2]|0)+1,(f[r>>2]|0)==1):0)?(f[q>>2]|0)==2:0){b[s>>0]=1;if(h){i=23;break}else{h=4;break}}if(h)i=23;else h=4}while(0);if((i|0)==23)h=3;f[n>>2]=h;break}if((e|0)==1)f[h>>2]=1}else cg(0,c,d,e);while(0);return}function xb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;w=u;u=u+32|0;e=w+24|0;k=w+20|0;l=w+8|0;m=w+4|0;r=w;f[e>>2]=0;ke(e,f[a>>2]|0)|0;a:do if(f[e>>2]|0){d=0;while(1){d=d+1|0;if(!(Mb(a,c)|0)){d=0;break}if(d>>>0>=(f[e>>2]|0)>>>0)break a}u=w;return d|0}while(0);f[k>>2]=0;ke(k,f[a>>2]|0)|0;b:do if(!(f[k>>2]|0))d=1;else{j=l+11|0;i=0;while(1){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;d=f[a>>2]|0;x=d+8|0;y=f[x+4>>2]|0;e=d+16|0;h=e;g=f[h>>2]|0;h=f[h+4>>2]|0;if((y|0)>(h|0)|((y|0)==(h|0)?(f[x>>2]|0)>>>0>g>>>0:0)?(v=b[(f[d>>2]|0)+g>>0]|0,p=Wg(g|0,h|0,1,0)|0,o=e,f[o>>2]=p,f[o+4>>2]=I,o=v&255,le(l,o,0),p=f[a>>2]|0,q=Af(l,0)|0,g=p+8|0,x=f[g>>2]|0,g=f[g+4>>2]|0,s=p+16|0,y=s,t=f[y>>2]|0,v=v&255,y=Wg(t|0,f[y+4>>2]|0,v|0,0)|0,h=I,!((g|0)<(h|0)|(g|0)==(h|0)&x>>>0>>0)):0){Mc(q|0,(f[p>>2]|0)+t|0,o|0)|0;x=s;x=Wg(f[x>>2]|0,f[x+4>>2]|0,v|0,0)|0;y=s;f[y>>2]=x;f[y+4>>2]=I;y=pg(40)|0;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;f[y+12>>2]=0;n[y+16>>2]=$(1.0);x=y+20|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;n[y+36>>2]=$(1.0);f[m>>2]=y;if(xb(a,y)|0){d=f[m>>2]|0;f[m>>2]=0;f[r>>2]=d;Bc(c,l,r)|0;Id(r);d=0}else d=1;Id(m)}else d=1;if((b[j>>0]|0)<0)Bi(f[l>>2]|0);i=i+1|0;if(d|0){d=0;break b}if(i>>>0>=(f[k>>2]|0)>>>0){d=1;break}}}while(0);y=d;u=w;return y|0}function yb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;v=x+4|0;w=x;f[a+72>>2]=e;f[a+64>>2]=g;s=xi(e>>>0>1073741823?-1:e<<2)|0;t=a+68|0;d=f[t>>2]|0;f[t>>2]=s;if(d|0)yi(d);s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Cd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Yh(k)}else{y=0;l=h}while(1){f[w>>2]=f[l+(y<<2)>>2];f[v>>2]=f[w>>2];gb(a,v,c,y);l=X(y,e)|0;i=f[t>>2]|0;k=b+(l<<2)|0;l=c+(l<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){j=f[p>>2]|0;f[j+(h<<2)>>2]=g}else{g=f[q>>2]|0;j=f[p>>2]|0;f[j+(h<<2)>>2]=(d|0)<(g|0)?g:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[k+(g<<2)>>2]|0)+(f[j+(g<<2)>>2]|0)|0;h=l+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=22}}else{d=d-(f[r>>2]|0)|0;z=22}if((z|0)==22){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=10;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=11;break}}if((z|0)==10){u=x;return 1}else if((z|0)==11)Yh(d);return 0}function zb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;v=x+4|0;w=x;f[a+72>>2]=e;f[a+64>>2]=g;s=xi(e>>>0>1073741823?-1:e<<2)|0;t=a+68|0;d=f[t>>2]|0;f[t>>2]=s;if(d|0)yi(d);s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Cd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Yh(k)}else{y=0;l=h}while(1){f[w>>2]=f[l+(y<<2)>>2];f[v>>2]=f[w>>2];fb(a,v,c,y);l=X(y,e)|0;i=f[t>>2]|0;k=b+(l<<2)|0;l=c+(l<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){j=f[p>>2]|0;f[j+(h<<2)>>2]=g}else{g=f[q>>2]|0;j=f[p>>2]|0;f[j+(h<<2)>>2]=(d|0)<(g|0)?g:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[k+(g<<2)>>2]|0)+(f[j+(g<<2)>>2]|0)|0;h=l+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=22}}else{d=d-(f[r>>2]|0)|0;z=22}if((z|0)==22){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=10;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=11;break}}if((z|0)==10){u=x;return 1}else if((z|0)==11)Yh(d);return 0}function Ab(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=a+8|0;f[t>>2]=e;j=a+32|0;k=a+36|0;i=f[k>>2]|0;h=f[j>>2]|0;g=i-h>>2;if(g>>>0>=e>>>0)if(g>>>0>e>>>0?(l=h+(e<<2)|0,(i|0)!=(l|0)):0){f[k>>2]=i+(~((i+-4-l|0)>>>2)<<2);g=e}else g=e;else{Cd(j,e-g|0);g=f[t>>2]|0}r=e>>>0>1073741823?-1:e<<2;s=xi(r)|0;Vd(s|0,0,r|0)|0;if((g|0)>0){l=a+16|0;j=a+32|0;m=a+12|0;i=0;do{g=f[s+(i<<2)>>2]|0;h=f[l>>2]|0;if((g|0)>(h|0)){k=f[j>>2]|0;f[k+(i<<2)>>2]=h}else{r=f[m>>2]|0;k=f[j>>2]|0;f[k+(i<<2)>>2]=(g|0)<(r|0)?r:g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0));if((g|0)>0){j=a+20|0;i=0;do{g=(f[b+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=c+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[l>>2]|0)){if((g|0)<(f[m>>2]|0)){g=(f[j>>2]|0)+g|0;u=18}}else{g=g-(f[j>>2]|0)|0;u=18}if((u|0)==18){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}if((e|0)>=(d|0)){yi(s);return 1}o=0-e|0;p=a+16|0;q=a+32|0;r=a+12|0;n=a+20|0;a=e;do{l=c+(a<<2)|0;j=l+(o<<2)|0;m=b+(a<<2)|0;if((g|0)>0){i=0;do{g=f[j+(i<<2)>>2]|0;h=f[p>>2]|0;if((g|0)>(h|0)){k=f[q>>2]|0;f[k+(i<<2)>>2]=h}else{h=f[r>>2]|0;k=f[q>>2]|0;f[k+(i<<2)>>2]=(g|0)<(h|0)?h:g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0));if((g|0)>0){i=0;do{g=(f[m+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[p>>2]|0)){if((g|0)<(f[r>>2]|0)){g=(f[n>>2]|0)+g|0;u=33}}else{g=g-(f[n>>2]|0)|0;u=33}if((u|0)==33){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}a=a+e|0}while((a|0)<(d|0));yi(s);return 1}function Bb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=Yc(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Cb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=$c(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Db(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=ad(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Eb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=bd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Fb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=cd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Gb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=ed(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Hb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=fd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Ib(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=c+8|0;j=f[i+4>>2]|0;e=c+16|0;h=e;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((j|0)>(h|0)|((j|0)==(h|0)?(f[i>>2]|0)>>>0>g>>>0:0))){j=0;return j|0}j=b[(f[c>>2]|0)+g>>0]|0;h=Wg(g|0,h|0,1,0)|0;i=e;f[i>>2]=h;f[i+4>>2]=I;do switch(j<<24>>24){case 1:{j=nc(a,c,d)|0;return j|0}case 2:{j=nc(a,c,d)|0;return j|0}case 3:{j=nc(a,c,d)|0;return j|0}case 4:{j=nc(a,c,d)|0;return j|0}case 5:{j=nc(a,c,d)|0;return j|0}case 6:{j=nc(a,c,d)|0;return j|0}case 7:{j=nc(a,c,d)|0;return j|0}case 8:{j=nc(a,c,d)|0;return j|0}case 9:{j=mc(a,c,d)|0;return j|0}case 10:{j=lc(a,c,d)|0;return j|0}case 11:{j=kc(a,c,d)|0;return j|0}case 12:{j=jc(a,c,d)|0;return j|0}case 13:{j=ic(a,c,d)|0;return j|0}case 14:{j=hc(a,c,d)|0;return j|0}case 15:{j=hc(a,c,d)|0;return j|0}case 16:{j=hc(a,c,d)|0;return j|0}case 17:{j=hc(a,c,d)|0;return j|0}case 18:{j=hc(a,c,d)|0;return j|0}default:{j=0;return j|0}}while(0);return 0}function Jb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;t=x+4|0;v=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Cd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Yh(k)}else{y=0;l=h}while(1){f[v>>2]=f[l+(y<<2)>>2];f[t>>2]=f[v>>2];Wa(w,t,c,y);k=X(y,e)|0;j=b+(k<<2)|0;k=c+(k<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[a+68+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){i=f[p>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[q>>2]|0;i=f[p>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[j+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=20}}else{d=d-(f[r>>2]|0)|0;z=20}if((z|0)==20){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=8;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=9;break}}if((z|0)==8){u=x;return 1}else if((z|0)==9)Yh(d);return 0}function Kb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=a+8|0;e=f[k>>2]|0;switch(f[e+28>>2]|0){case 2:{d=b[e+24>>0]|0;j=d<<24>>24;i=xi((j|0)>-1?j:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;a:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Mc(f[f[e+64>>2]>>2]|0,i|0,j|0)|0;if((c|0)==1)break;else{d=0;a=1}while(1){d=d+j|0;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+d|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break a}}while(1){d=0;g=e;while(1){b[i+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(j|0))break;else g=g+1|0}Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+j|0}}while(0);yi(i);k=1;return k|0}case 1:{d=b[e+24>>0]|0;i=d<<24>>24;j=xi((i|0)>-1?i:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;b:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Mc(f[f[e+64>>2]>>2]|0,j|0,i|0)|0;if((c|0)==1)break;else{d=0;a=1}while(1){d=d+i|0;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+d|0,j|0,i|0)|0;a=a+1|0;if((a|0)==(c|0))break b}}while(1){d=0;g=e;while(1){b[j+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(i|0))break;else g=g+1|0}Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,j|0,i|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+i|0}}while(0);yi(j);k=1;return k|0}case 4:{od(a,c);k=1;return k|0}case 3:{od(a,c);k=1;return k|0}case 6:{pd(a,c);k=1;return k|0}case 5:{pd(a,c);k=1;return k|0}default:{k=0;return k|0}}return 0}function Lb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;t=x+4|0;v=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Cd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Yh(k)}else{y=0;l=h}while(1){f[v>>2]=f[l+(y<<2)>>2];f[t>>2]=f[v>>2];Va(w,t,c,y);k=X(y,e)|0;j=b+(k<<2)|0;k=c+(k<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[a+68+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){i=f[p>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[q>>2]|0;i=f[p>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[j+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=20}}else{d=d-(f[r>>2]|0)|0;z=20}if((z|0)==20){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=8;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=9;break}}if((z|0)==8){u=x;return 1}else if((z|0)==9)Yh(d);return 0}function Mb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;q=r+16|0;o=r+12|0;p=r;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;m=f[a>>2]|0;s=m+8|0;t=f[s+4>>2]|0;d=m+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if((t|0)>(g|0)|((t|0)==(g|0)?(f[s>>2]|0)>>>0>e>>>0:0)?(n=b[(f[m>>2]|0)+e>>0]|0,i=Wg(e|0,g|0,1,0)|0,h=d,f[h>>2]=i,f[h+4>>2]=I,h=n&255,le(q,h,0),i=f[a>>2]|0,j=Af(q,0)|0,g=i+8|0,s=f[g>>2]|0,g=f[g+4>>2]|0,k=i+16|0,t=k,l=f[t>>2]|0,n=n&255,t=Wg(l|0,f[t+4>>2]|0,n|0,0)|0,m=I,!((g|0)<(m|0)|(g|0)==(m|0)&s>>>0>>0)):0){Mc(j|0,(f[i>>2]|0)+l|0,h|0)|0;d=k;d=Wg(f[d>>2]|0,f[d+4>>2]|0,n|0,0)|0;t=k;f[t>>2]=d;f[t+4>>2]=I;f[o>>2]=0;t=(ke(o,f[a>>2]|0)|0)^1;d=f[o>>2]|0;if((d|0)==0|t)d=0;else{f[p>>2]=0;i=p+4|0;f[i>>2]=0;f[p+8>>2]=0;if((d|0)<0)Yh(p);e=pg(d)|0;f[i>>2]=e;f[p>>2]=e;f[p+8>>2]=e+d;do{b[e>>0]=0;e=(f[i>>2]|0)+1|0;f[i>>2]=e;d=d+-1|0}while((d|0)!=0);h=f[o>>2]|0;d=f[a>>2]|0;o=d+8|0;s=f[o>>2]|0;o=f[o+4>>2]|0;e=d+16|0;t=e;g=f[t>>2]|0;t=Wg(g|0,f[t+4>>2]|0,h|0,0)|0;a=I;if((o|0)<(a|0)|(o|0)==(a|0)&s>>>0>>0)d=0;else{Mc(f[p>>2]|0,(f[d>>2]|0)+g|0,h|0)|0;t=e;t=Wg(f[t>>2]|0,f[t+4>>2]|0,h|0,0)|0;d=e;f[d>>2]=t;f[d+4>>2]=I;$f(c,q,p);d=1}e=f[p>>2]|0;if(e|0){if((f[i>>2]|0)!=(e|0))f[i>>2]=e;Bi(e)}}}else d=0;if((b[q+11>>0]|0)>=0){u=r;return d|0}Bi(f[q>>2]|0);u=r;return d|0}function Nb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+32|0;i=s+16|0;r=s;f[i>>2]=0;do if((j[b+38>>1]|0)<514){k=b+8|0;l=f[k>>2]|0;k=f[k+4>>2]|0;c=b+16|0;e=c;d=f[e>>2]|0;e=Wg(d|0,f[e+4>>2]|0,4,0)|0;g=I;if((k|0)<(g|0)|(k|0)==(g|0)&l>>>0>>0){r=0;u=s;return r|0}else{l=(f[b>>2]|0)+d|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;f[i>>2]=l;f[c>>2]=e;f[c+4>>2]=g;c=l;break}}else if(ke(i,b)|0){c=f[i>>2]|0;break}else{r=0;u=s;return r|0}while(0);e=a+76|0;ac(e,c,0);ci(r);if(bc(r,b)|0){if(f[i>>2]|0){c=1;d=0;do{c=c^((Pe(r)|0)^1);l=(f[e>>2]|0)+(d>>>5<<2)|0;k=1<<(d&31);g=f[l>>2]|0;f[l>>2]=c?g|k:g&~k;d=d+1|0}while(d>>>0<(f[i>>2]|0)>>>0)}d=b+8|0;c=f[d>>2]|0;d=f[d+4>>2]|0;e=b+16|0;i=e;g=f[i>>2]|0;i=f[i+4>>2]|0;k=Wg(g|0,i|0,4,0)|0;l=I;if((!((d|0)<(l|0)|(d|0)==(l|0)&c>>>0>>0)?(m=f[b>>2]|0,n=m+g|0,n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24,o=e,f[o>>2]=k,f[o+4>>2]=l,o=Wg(g|0,i|0,8,0)|0,p=I,!((d|0)<(p|0)|(d|0)==(p|0)&c>>>0>>0)):0)?(q=m+k|0,q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24,m=e,f[m>>2]=o,f[m+4>>2]=p,(n|0)<=(q|0)):0){f[a+12>>2]=n;f[a+16>>2]=q;q=q+(1-n)|0;f[a+20>>2]=q;c=(q|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(q&1)){f[d>>2]=c+-1;c=1}else c=1}else c=0}else c=0;zi(r);r=c;u=s;return r|0}function Ob(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;k=t;o=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((o|0)<=0){r=1;s=1;s=r|s;u=t;return s|0}p=a+36|0;q=a+48|0;r=k+8|0;l=k+4|0;m=k+11|0;c=0;while(1){j=(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)+40|0;if(f[j>>2]|0){j=f[(f[(f[p>>2]|0)+(c<<2)>>2]|0)+8>>2]|0;i=(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)+40|0;i=f[i>>2]|0;j=f[j+56>>2]|0;d=pg(32)|0;f[k>>2]=d;f[r>>2]=-2147483616;f[l>>2]=24;e=d;g=4088;h=e+24|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));b[d+24>>0]=0;h=i+16|0;e=f[h>>2]|0;if(e){d=h;a:while(1){g=e;while(1){if((f[g+16>>2]|0)>=(j|0))break;e=f[g+4>>2]|0;if(!e)break a;else g=e}e=f[g>>2]|0;if(!e){d=g;break}else d=g}if(((d|0)!=(h|0)?(j|0)>=(f[d+16>>2]|0):0)?(n=d+20|0,(id(n,k)|0)!=0):0)d=ve(n,k,0)|0;else s=13}else s=13;if((s|0)==13){s=0;d=ve(i,k,0)|0}if((b[m>>0]|0)<0)Bi(f[k>>2]|0);if(d){s=17;break}}j=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(!(Na[f[(f[j>>2]|0)+24>>2]&127](j,q)|0)){c=0;d=0;s=20;break}c=c+1|0;if((c|0)>=(o|0)){c=1;d=1;s=20;break}}if((s|0)==17){r=f[(f[p>>2]|0)+(c<<2)>>2]|0;s=f[r+8>>2]|0;fc(s,Qc(r)|0);r=0;s=1;s=r|s;u=t;return s|0}else if((s|0)==20){s=c|d;u=t;return s|0}return 0}function Pb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+4194304|0;f[a+48>>2]=q;q=q>>>0<1073741824;u=o;return q|0}function Qb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+2097152|0;f[a+48>>2]=q;q=q>>>0<536870912;u=o;return q|0}function Rb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+1048576|0;f[a+48>>2]=q;q=q>>>0<268435456;u=o;return q|0}function Sb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+262144|0;f[a+48>>2]=q;q=q>>>0<67108864;u=o;return q|0}function Tb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+131072|0;f[a+48>>2]=q;q=q>>>0<33554432;u=o;return q|0}function Ub(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+32768|0;f[a+48>>2]=q;q=q>>>0<8388608;u=o;return q|0}function Vb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+16384|0;f[a+48>>2]=q;q=q>>>0<4194304;u=o;return q|0}function Wb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f[b+4>>2]|0;if((d|0)<=-1)xa(13373,14023,59,14122);g=f[h+8>>2]|0;if(((f[h+12>>2]|0)-g>>2|0)<=(d|0))xa(13969,14023,60,14122);j=f[g+(d<<2)>>2]|0;if(!((c+-1|0)>>>0<6&(Ja[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1)){e=0;f[a>>2]=e;return}k=Ja[f[(f[b>>2]|0)+36>>2]&127](b)|0;l=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((k|0)==0|(l|0)==0){e=0;f[a>>2]=e;return}i=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;h=f[b+44>>2]|0;d=l+12|0;g=(c|0)==6;if(!i){if(g){c=pg(104)|0;f[c+4>>2]=j;j=c+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[j+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=k;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2428;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=k;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2484;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;ci(c+88|0);e=c;f[a>>2]=e;return}}else if(g){c=pg(104)|0;f[c+4>>2]=j;k=c+8|0;f[k>>2]=f[e>>2];f[k+4>>2]=f[e+4>>2];f[k+8>>2]=f[e+8>>2];f[k+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=i;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2344;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=i;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2400;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;ci(c+88|0);e=c;f[a>>2]=e;return}f[a>>2]=0;f[a>>2]=0;e=0;f[a>>2]=e;return}function Xb(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=a+32|0;g=f[h>>2]|0;o=g+8|0;n=f[o+4>>2]|0;c=g+16|0;e=c;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((n|0)>(e|0)|((n|0)==(e|0)?(f[o>>2]|0)>>>0>d>>>0:0))){p=0;return p|0}g=b[(f[g>>2]|0)+d>>0]|0;n=Wg(d|0,e|0,1,0)|0;o=c;f[o>>2]=n;f[o+4>>2]=I;o=g&255;g=g<<24>>24==0;a:do if(!g){c=0;while(1){if(!(Na[f[(f[a>>2]|0)+16>>2]&127](a,c)|0)){c=0;break}c=c+1|0;if((c|0)>=(o|0))break a}return c|0}while(0);n=a+8|0;c=f[n>>2]|0;d=f[a+12>>2]|0;b:do if((c|0)!=(d|0)){e=a+4|0;while(1){m=f[c>>2]|0;c=c+4|0;if(!(Ea[f[(f[m>>2]|0)+8>>2]&15](m,a,f[e>>2]|0)|0)){c=0;break}if((c|0)==(d|0))break b}return c|0}while(0);if(!g){c=0;do{m=f[(f[n>>2]|0)+(c<<2)>>2]|0;c=c+1|0;if(!(Na[f[(f[m>>2]|0)+12>>2]&127](m,f[h>>2]|0)|0)){c=0;i=26;break}}while((c|0)<(o|0));if((i|0)==26)return c|0;if(!g){j=a+20|0;k=a+24|0;i=0;do{l=f[(f[n>>2]|0)+(i<<2)>>2]|0;l=Ja[f[(f[l>>2]|0)+24>>2]&127](l)|0;if((l|0)>0){h=0;do{m=f[(f[n>>2]|0)+(i<<2)>>2]|0;m=Na[f[(f[m>>2]|0)+20>>2]&127](m,h)|0;d=f[k>>2]|0;c=f[j>>2]|0;e=d-c>>2;do if(m>>>0>=e>>>0){g=m+1|0;if(g>>>0>e>>>0){Cd(j,g-e|0);c=f[j>>2]|0;break}if(g>>>0>>0?(p=c+(g<<2)|0,(d|0)!=(p|0)):0)f[k>>2]=d+(~((d+-4-p|0)>>>2)<<2)}while(0);f[c+(m<<2)>>2]=i;h=h+1|0}while((h|0)!=(l|0))}i=i+1|0}while((i|0)!=(o|0))}}if(!(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)){p=0;return p|0}p=Ja[f[(f[a>>2]|0)+32>>2]&127](a)|0;return p|0}function Yb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f[b+4>>2]|0;if((d|0)<=-1)xa(13373,14023,59,14122);g=f[h+8>>2]|0;if(((f[h+12>>2]|0)-g>>2|0)<=(d|0))xa(13969,14023,60,14122);j=f[g+(d<<2)>>2]|0;if(!((c+-1|0)>>>0<6&(Ja[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1)){e=0;f[a>>2]=e;return}k=Ja[f[(f[b>>2]|0)+36>>2]&127](b)|0;l=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((k|0)==0|(l|0)==0){e=0;f[a>>2]=e;return}i=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;h=f[b+44>>2]|0;d=l+12|0;g=(c|0)==6;if(!i){if(g){c=pg(104)|0;f[c+4>>2]=j;j=c+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[j+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=k;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2652;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=k;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2708;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;ci(c+88|0);e=c;f[a>>2]=e;return}}else if(g){c=pg(104)|0;f[c+4>>2]=j;k=c+8|0;f[k>>2]=f[e>>2];f[k+4>>2]=f[e+4>>2];f[k+8>>2]=f[e+8>>2];f[k+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=i;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2568;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=i;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2624;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;ci(c+88|0);e=c;f[a>>2]=e;return}f[a>>2]=0;f[a>>2]=0;e=0;f[a>>2]=e;return}function Zb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;i=o+16|0;k=o;if((j[c+38>>1]|0)<514){n=c+8|0;m=f[n+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((m|0)>(g|0)|((m|0)==(g|0)?(f[n>>2]|0)>>>0>e>>>0:0))){a=0;u=o;return a|0}n=b[(f[c>>2]|0)+e>>0]|0;l=Wg(e|0,g|0,1,0)|0;m=d;f[m>>2]=l;f[m+4>>2]=I;if(n<<24>>24){a=0;u=o;return a|0}}e=0;do{ke(i,c)|0;d=f[i>>2]|0;if(d|0){g=a+60+(e*12|0)|0;ac(g,d,0);ci(k);bc(k,c)|0;if(f[i>>2]|0){d=0;do{p=Pe(k)|0;n=(f[g>>2]|0)+(d>>>5<<2)|0;m=1<<(d&31);l=f[n>>2]|0;f[n>>2]=p?l|m:l&~m;d=d+1|0}while(d>>>0<(f[i>>2]|0)>>>0)}zi(k)}e=e+1|0}while((e|0)<4);l=c+8|0;k=f[l>>2]|0;l=f[l+4>>2]|0;n=c+16|0;e=n;d=f[e>>2]|0;e=f[e+4>>2]|0;m=Wg(d|0,e|0,4,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){p=0;u=o;return p|0}i=f[c>>2]|0;c=i+d|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;p=n;f[p>>2]=m;f[p+4>>2]=g;e=Wg(d|0,e|0,8,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){p=0;u=o;return p|0}d=i+m|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;p=n;f[p>>2]=e;f[p+4>>2]=g;if((c|0)>(d|0)){p=0;u=o;return p|0}f[a+12>>2]=c;f[a+16>>2]=d;p=d+(1-c)|0;f[a+20>>2]=p;d=(p|0)/2|0;e=a+24|0;f[e>>2]=d;f[a+28>>2]=0-d;if(p&1|0){p=1;u=o;return p|0}f[e>>2]=d+-1;p=1;u=o;return p|0}function _b(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=f[b>>2]|0;m=b+4|0;e=f[m>>2]|0;i=((f[c>>2]|0)-l<<3)+(f[c+4>>2]|0)-e|0;c=l;if((i|0)<=0){b=d+4|0;d=f[d>>2]|0;f[a>>2]=d;d=a+4|0;a=f[b>>2]|0;f[d>>2]=a;return}if(!e){e=d+4|0;k=e;e=f[e>>2]|0}else{g=32-e|0;l=(i|0)<(g|0)?i:g;g=-1>>>(g-l|0)&-1<>2];k=d+4|0;e=f[k>>2]|0;j=32-e|0;c=j>>>0>>0?j:l;h=f[d>>2]|0;e=f[h>>2]&~(-1>>>(j-c|0)&-1<>2]=e;j=f[k>>2]|0;n=f[m>>2]|0;f[h>>2]=(j>>>0>n>>>0?g<>>(n-j|0))|e;e=(f[k>>2]|0)+c|0;h=h+(e>>>5<<2)|0;f[d>>2]=h;e=e&31;f[k>>2]=e;j=l-c|0;if((j|0)>0){e=f[h>>2]&~(-1>>>(32-j|0));f[h>>2]=e;f[h>>2]=g>>>((f[m>>2]|0)+c|0)|e;f[k>>2]=j;e=j}c=(f[b>>2]|0)+4|0;f[b>>2]=c;i=i-l|0}j=32-e|0;g=-1<31){h=~g;e=i;do{m=f[c>>2]|0;n=f[d>>2]|0;l=f[n>>2]&h;f[n>>2]=l;f[n>>2]=m<>2]|l;n=n+4|0;f[d>>2]=n;f[n>>2]=f[n>>2]&g|m>>>j;e=e+-32|0;c=(f[b>>2]|0)+4|0;f[b>>2]=c}while((e|0)>31);i=i&31}if((i|0)<=0){b=k;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;d=f[b>>2]|0;f[n>>2]=d;return}h=f[c>>2]&-1>>>(32-i|0);g=(j|0)<(i|0)?j:i;e=f[d>>2]|0;c=f[e>>2]&~(-1<>2]&-1>>>(j-g|0));f[e>>2]=c;f[e>>2]=c|h<>2];c=(f[k>>2]|0)+g|0;e=e+(c>>>5<<2)|0;f[d>>2]=e;f[k>>2]=c&31;c=i-g|0;if((c|0)<=0){b=k;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;d=f[b>>2]|0;f[n>>2]=d;return}f[e>>2]=f[e>>2]&~(-1>>>(32-c|0))|h>>>g;f[k>>2]=c;b=k;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;d=f[b>>2]|0;f[n>>2]=d;return}function $b(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+12|0;n=f[l>>2]|0;i=(f[c>>2]|0)-n|0;j=c+4|0;e=(f[j>>2]|0)-n|0;g=c;f[g>>2]=i;f[g+4>>2]=e;g=f[l>>2]|0;if((g|0)<(i|0))xa(8610,7895,250,8633);if((g|0)<(e|0))xa(8645,7895,251,8633);h=0-g|0;if((i|0)<(h|0))xa(8668,7895,252,8633);if((e|0)<(h|0))xa(8692,7895,253,8633);m=(((e|0)>-1?e:0-e|0)+((i|0)>-1?i:0-i|0)|0)<=(g|0);if(m)e=i;else{ld(b,c,j);e=f[c>>2]|0}if(!e){g=f[j>>2]|0;h=g;g=(g|0)==0}else{g=f[j>>2]|0;h=g;g=(e|0)<0&(g|0)<1}if(!e)k=(h|0)==0?0:(h|0)>0?3:1;else k=(e|0)>0?(h>>31)+2|0:(h|0)<1?0:3;if(g){j=1;g=e;e=h}else{switch(k|0){case 1:{g=h;e=0-e|0;break}case 2:{g=0-e|0;e=0-h|0;break}case 3:{g=0-h|0;break}default:{g=e;e=h}}j=c;f[j>>2]=g;f[j+4>>2]=e;j=0}h=(f[d>>2]|0)+g|0;f[a>>2]=h;e=(f[d+4>>2]|0)+e|0;i=a+4|0;f[i>>2]=e;g=f[l>>2]|0;if((g|0)>=(h|0)){if((h|0)<(0-g|0))h=(f[b+4>>2]|0)+h|0}else h=h-(f[b+4>>2]|0)|0;f[a>>2]=h;if((g|0)>=(e|0)){if((e|0)<(0-g|0))e=(f[b+4>>2]|0)+e|0}else e=e-(f[b+4>>2]|0)|0;f[i>>2]=e;if(j)g=h;else{switch((4-k|0)%4|0|0){case 1:{g=e;e=0-h|0;break}case 2:{g=0-h|0;e=0-e|0;break}case 3:{g=0-e|0;e=h;break}default:g=h}l=a;f[l>>2]=g;f[l+4>>2]=e}if(m){m=g;b=e;m=m+n|0;b=b+n|0;n=a;a=n;f[a>>2]=m;n=n+4|0;f[n>>2]=b;return}ld(b,a,i);m=f[a>>2]|0;b=f[i>>2]|0;m=m+n|0;b=b+n|0;n=a;a=n;f[a>>2]=m;n=n+4|0;f[n>>2]=b;return}function ac(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;m=p+8|0;j=p;n=a+4|0;e=f[n>>2]|0;if(e>>>0>=b>>>0){f[n>>2]=b;u=p;return}o=a+8|0;h=f[o>>2]|0;g=h<<5;d=b-e|0;if(g>>>0>>0|e>>>0>(g-d|0)>>>0){f[m>>2]=0;k=m+4|0;f[k>>2]=0;l=m+8|0;f[l>>2]=0;if((b|0)<0)Yh(a);e=h<<6;h=b+31&-32;zd(m,g>>>0<1073741823?(e>>>0>>0?h:e):2147483647);g=f[n>>2]|0;f[k>>2]=g+d;e=f[a>>2]|0;h=e;b=f[m>>2]|0;g=(h+(g>>>5<<2)-e<<3)+(g&31)|0;if((g|0)>0){i=g>>>5;Of(b|0,e|0,i<<2|0)|0;e=g-(i<<5)|0;g=b+(i<<2)|0;b=g;if((e|0)>0){q=-1>>>(32-e|0);f[g>>2]=f[g>>2]&~q|f[h+(i<<2)>>2]&q}else e=0}else e=0;f[j>>2]=b;f[j+4>>2]=e;g=j;b=f[g>>2]|0;g=f[g+4>>2]|0;e=f[a>>2]|0;f[a>>2]=f[m>>2];f[m>>2]=e;q=f[n>>2]|0;f[n>>2]=f[k>>2];f[k>>2]=q;q=f[o>>2]|0;f[o>>2]=f[l>>2];f[l>>2]=q;if(e|0)Bi(e)}else{g=(f[a>>2]|0)+(e>>>5<<2)|0;f[n>>2]=b;b=g;g=e&31}if(!d){u=p;return}h=(g|0)==0;e=b;if(c){if(!h){q=32-g|0;b=q>>>0>d>>>0?d:q;f[e>>2]=f[e>>2]|-1>>>(q-b|0)&-1<>>5;Vd(b|0,-1,q<<2|0)|0;d=d-(q<<5)|0;b=e+(q<<2)|0;if(!d){u=p;return}f[b>>2]=f[b>>2]|-1>>>(32-d|0);u=p;return}else{if(!h){q=32-g|0;b=q>>>0>d>>>0?d:q;f[e>>2]=f[e>>2]&~(-1>>>(q-b|0)&-1<>>5;Vd(b|0,0,q<<2|0)|0;d=d-(q<<5)|0;b=e+(q<<2)|0;if(!d){u=p;return}f[b>>2]=f[b>>2]&~(-1>>>(32-d|0));u=p;return}}function bc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;m=q;e=c+8|0;l=e;i=f[l+4>>2]|0;p=c+16|0;k=p;d=f[k>>2]|0;k=f[k+4>>2]|0;if(!((i|0)>(k|0)|((i|0)==(k|0)?(f[l>>2]|0)>>>0>d>>>0:0))){p=0;u=q;return p|0}b[a+12>>0]=b[(f[c>>2]|0)+d>>0]|0;g=p;d=f[g>>2]|0;g=f[g+4>>2]|0;i=Wg(d|0,g|0,1,0)|0;l=p;f[l>>2]=i;f[l+4>>2]=I;if((j[c+38>>1]|0)<514){k=e;e=f[k>>2]|0;k=f[k+4>>2]|0;d=Wg(d|0,g|0,5,0)|0;l=I;if((k|0)<(l|0)|(k|0)==(l|0)&e>>>0>>0)d=0;else{i=(f[c>>2]|0)+i|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;f[m>>2]=i;g=p;f[g>>2]=d;f[g+4>>2]=l;g=k;k=d;n=7}}else if(ke(m,c)|0){g=e;l=p;e=f[g>>2]|0;g=f[g+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;i=f[m>>2]|0;n=7}else d=0;a:do if((n|0)==7){n=Jg(e|0,g|0,k|0,l|0)|0;m=I;if(!(0>(m|0)|0==(m|0)&i>>>0>n>>>0)?(o=(f[c>>2]|0)+k|0,(i|0)>=1):0){f[a>>2]=o;d=i+-1|0;e=o+d|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[a+4>>2]=d;d=b[e>>0]&63;break}case 1:{if((i|0)<2){d=0;break a}f[a+4>>2]=i+-2;d=o+i+-2|0;d=(h[d+1>>0]|0)<<8&16128|(h[d>>0]|0);break}case 2:{if((i|0)<3){d=0;break a}f[a+4>>2]=i+-3;d=o+i+-3|0;d=(h[d+1>>0]|0)<<8|(h[d>>0]|0)|(h[d+2>>0]|0)<<16&4128768;break}default:{d=0;break a}}o=d+4096|0;f[a+8>>2]=o;if(o>>>0<=1048575){a=Wg(k|0,l|0,i|0,0)|0;d=p;f[d>>2]=a;f[d+4>>2]=I;d=1}else d=0}else d=0}while(0);p=d;u=q;return p|0}function cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+16|0;q=r;i=b+8|0;g=i;j=f[g>>2]|0;g=f[g+4>>2]|0;k=b+16|0;d=k;c=f[d>>2]|0;d=Wg(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((g|0)<(e|0)|(g|0)==(e|0)&j>>>0>>0){q=0;u=r;return q|0}g=(f[b>>2]|0)+c|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;j=k;f[j>>2]=d;f[j+4>>2]=e;if((g|0)<0){q=0;u=r;return q|0}ac(a+76|0,g,0);ci(q);if(bc(q,b)|0){if((g|0)>0){e=a+76|0;c=1;d=0;do{c=c^((Pe(q)|0)^1);j=(f[e>>2]|0)+(d>>>5<<2)|0;s=1<<(d&31);t=f[j>>2]|0;f[j>>2]=c?t|s:t&~s;d=d+1|0}while((d|0)<(g|0))}d=i;c=f[d>>2]|0;d=f[d+4>>2]|0;g=k;e=f[g>>2]|0;g=f[g+4>>2]|0;i=Wg(e|0,g|0,4,0)|0;j=I;if((!((d|0)<(j|0)|(d|0)==(j|0)&c>>>0>>0)?(l=f[b>>2]|0,m=l+e|0,m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24,n=k,f[n>>2]=i,f[n+4>>2]=j,n=Wg(e|0,g|0,8,0)|0,o=I,!((d|0)<(o|0)|(d|0)==(o|0)&c>>>0>>0)):0)?(p=l+i|0,p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24,t=k,f[t>>2]=n,f[t+4>>2]=o,(m|0)<=(p|0)):0){f[a+12>>2]=m;f[a+16>>2]=p;t=p+(1-m)|0;f[a+20>>2]=t;c=(t|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(t&1)){f[d>>2]=c+-1;c=1}else c=1}else c=0}else c=0;zi(q);t=c;u=r;return t|0}function dc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+16|0;j=m;if(!(cb(a,c)|0)){l=0;u=m;return l|0}k=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;l=a+36|0;i=a+40|0;d=f[i>>2]|0;g=f[l>>2]|0;e=d-g>>2;if(k>>>0<=e>>>0){if(k>>>0>>0?(h=g+(k<<2)|0,(d|0)!=(h|0)):0)do{g=d+-4|0;f[i>>2]=g;d=f[g>>2]|0;f[g>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[i>>2]|0}while((d|0)!=(h|0))}else Fc(l,k-e|0);h=c+8|0;if((k|0)<=0){l=1;u=m;return l|0}i=c+16|0;g=0;while(1){n=h;o=f[n+4>>2]|0;e=i;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((o|0)>(e|0)|((o|0)==(e|0)?(f[n>>2]|0)>>>0>d>>>0:0))){d=0;e=19;break}o=b[(f[c>>2]|0)+d>>0]|0;d=Wg(d|0,e|0,1,0)|0;n=i;f[n>>2]=d;f[n+4>>2]=I;Ka[f[(f[a>>2]|0)+48>>2]&15](j,a,o);o=(f[l>>2]|0)+(g<<2)|0;n=f[j>>2]|0;f[j>>2]=0;d=f[o>>2]|0;f[o>>2]=n;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[j>>2]|0;f[j>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[(f[l>>2]|0)+(g<<2)>>2]|0;if(!d){d=0;e=19;break}e=f[(f[d>>2]|0)+8>>2]|0;n=Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0;o=Na[f[(f[a>>2]|0)+20>>2]&127](a,g)|0;g=g+1|0;if(!(Ea[e&15](d,n,o)|0)){d=0;e=19;break}if((g|0)>=(k|0)){d=1;e=19;break}}if((e|0)==19){u=m;return d|0}return 0}function ec(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j+12|0;h=j;i=pg(52)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[i+16>>2]=$(1.0);e=i+20|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+36>>2]=$(1.0);f[i+40>>2]=0;f[i+44>>2]=0;f[i+48>>2]=0;ei(g);if(Kc(g,f[c+32>>2]|0,i)|0){g=(f[c+4>>2]|0)+4|0;h=f[g>>2]|0;f[g>>2]=i;if(h|0){e=h+40|0;c=f[e>>2]|0;if(c|0){g=h+44|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{i=d+-4|0;f[g>>2]=i;d=f[i>>2]|0;f[i>>2]=0;if(d|0){Md(d);Bi(d)}d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Bi(c)}Md(h);Bi(h)}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=j;return}else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;c=pg(32)|0;f[h>>2]=c;f[h+8>>2]=-2147483616;f[h+4>>2]=26;d=c;e=13572;g=d+26|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+26>>0]=0;f[a>>2]=-1;Wd(a+4|0,h);if((b[h+11>>0]|0)<0)Bi(f[h>>2]|0);e=i+40|0;c=f[e>>2]|0;if(c|0){g=i+44|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{a=d+-4|0;f[g>>2]=a;d=f[a>>2]|0;f[a>>2]=0;if(d|0){Md(d);Bi(d)}d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Bi(c)}Md(i);Bi(i);u=j;return}}function fc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!(f[a+64>>2]|0)){d=pg(32)|0;xg(d);g=a+64|0;h=f[g>>2]|0;f[g>>2]=d;if(h){d=f[h>>2]|0;if(d|0){e=h+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(h);d=f[g>>2]|0}Ke(a,d,0,0,0,0);d=a}else d=a;if(!(Sd(d,c)|0))return;b[a+84>>0]=b[c+84>>0]|0;f[a+80>>2]=f[c+80>>2];if((a|0)!=(c|0))xc(a+68|0,f[c+68>>2]|0,f[c+72>>2]|0);i=f[c+88>>2]|0;if(!i){a=a+88|0;d=f[a>>2]|0;f[a>>2]=0;if(!d)return;e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d);return}l=pg(40)|0;f[l>>2]=f[i>>2];d=l+8|0;e=i+8|0;f[d>>2]=0;j=l+12|0;f[j>>2]=0;g=l+16|0;f[g>>2]=0;c=i+12|0;h=(f[c>>2]|0)-(f[e>>2]|0)|0;if(h|0){if((h|0)<0)Yh(d);k=pg(h)|0;f[j>>2]=k;f[d>>2]=k;f[g>>2]=k+h;e=f[e>>2]|0;d=(f[c>>2]|0)-e|0;if((d|0)>0){Mc(k|0,e|0,d|0)|0;f[j>>2]=k+d}}g=l+24|0;k=i+24|0;f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[g+12>>2]=f[k+12>>2];a=a+88|0;g=f[a>>2]|0;f[a>>2]=l;if(!g)return;d=f[g+8>>2]|0;if(d|0){e=g+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(g);return}function gc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;l=n+16|0;m=n;i=f[b+4>>2]|0;if((d|0)<=-1)xa(13373,14023,59,14122);h=f[i+8>>2]|0;if(((f[i+12>>2]|0)-h>>2|0)<=(d|0))xa(13969,14023,60,14122);i=f[h+(d<<2)>>2]|0;do if((c+-1|0)>>>0<6&(Ja[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1){j=Ja[f[(f[b>>2]|0)+36>>2]&127](b)|0;k=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((j|0)==0|(k|0)==0){f[a>>2]=0;u=n;return}h=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;if(!h){f[m>>2]=f[b+44>>2];f[m+4>>2]=j;f[m+12>>2]=k;f[m+8>>2]=k+12;kb(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}else{f[m>>2]=f[b+44>>2];f[m+4>>2]=h;f[m+12>>2]=k;f[m+8>>2]=k+12;jb(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}}while(0);f[a>>2]=0;u=n;return}function hc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Bb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Pb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<4194304){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<4194304)}while(0);p=d&1048575;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>20)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function ic(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Cb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Qb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<2097152){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<2097152)}while(0);p=d&524287;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>19)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function jc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Db(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Rb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<1048576){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<1048576)}while(0);p=d&262143;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>18)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Eb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Sb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<262144){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<262144)}while(0);p=d&65535;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>16)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function lc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Fb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Tb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<131072){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<131072)}while(0);p=d&32767;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>15)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function mc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Gb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Ub(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<32768){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<32768)}while(0);p=d&8191;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>13)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Hb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Vb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<16384){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<16384)}while(0);p=d&4095;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>12)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function oc(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;d=b[(f[a+8>>2]|0)+24>>0]|0;i=xi(d>>>0>1073741823?-1:d<<2)|0;j=a+28|0;c=f[j>>2]|0;f[j>>2]=i;if(c|0)yi(c);g=a+4|0;i=f[(f[g>>2]|0)+32>>2]|0;c=d<<2;n=i+8|0;l=f[n>>2]|0;n=f[n+4>>2]|0;d=i+16|0;k=d;e=f[k>>2]|0;k=Wg(e|0,f[k+4>>2]|0,c|0,0)|0;m=I;if((n|0)<(m|0)|(n|0)==(m|0)&l>>>0>>0){n=0;return n|0}Mc(f[j>>2]|0,(f[i>>2]|0)+e|0,c|0)|0;k=d;k=Wg(f[k>>2]|0,f[k+4>>2]|0,c|0,0)|0;c=d;f[c>>2]=k;f[c+4>>2]=I;c=(f[g>>2]|0)+32|0;d=f[c>>2]|0;k=d+8|0;m=f[k>>2]|0;k=f[k+4>>2]|0;e=d+16|0;n=e;g=f[n>>2]|0;n=Wg(g|0,f[n+4>>2]|0,4,0)|0;l=I;if((k|0)<(l|0)|(k|0)==(l|0)&m>>>0>>0){n=0;return n|0}m=a+32|0;n=(f[d>>2]|0)+g|0;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;b[m>>0]=n;b[m+1>>0]=n>>8;b[m+2>>0]=n>>16;b[m+3>>0]=n>>24;m=e;m=Wg(f[m>>2]|0,f[m+4>>2]|0,4,0)|0;n=e;f[n>>2]=m;f[n+4>>2]=I;c=f[c>>2]|0;n=c+8|0;m=f[n+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((m|0)>(g|0)|((m|0)==(g|0)?(f[n>>2]|0)>>>0>e>>>0:0))){n=0;return n|0}c=b[(f[c>>2]|0)+e>>0]|0;m=Wg(e|0,g|0,1,0)|0;n=d;f[n>>2]=m;f[n+4>>2]=I;if((c&255)>31){n=0;return n|0}f[a+24>>2]=c&255;n=1;return n|0}function pc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=f[c>>2]|0;m=f[l>>2]|0;i=f[a+4>>2]|0;c=f[l+4>>2]|0;j=i+-1|0;g=(j&i|0)==0;if(!g)if(c>>>0>>0)h=c;else h=(c>>>0)%(i>>>0)|0;else h=j&c;d=(f[a>>2]|0)+(h<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(l|0))break;else k=c}if((k|0)!=(a+8|0)){c=f[k+4>>2]|0;if(!g){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&j;if((c|0)==(h|0)){d=m;e=21}else e=13}else e=13;do if((e|0)==13){if(m|0){c=f[m+4>>2]|0;if(!g){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&j;if((c|0)==(h|0)){d=m;c=m;e=22;break}}f[d>>2]=0;d=f[l>>2]|0;e=21}while(0);if((e|0)==21){c=d;if(d)e=22}if((e|0)==22){d=f[d+4>>2]|0;if(!g){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&j;if((d|0)!=(h|0)){f[(f[a>>2]|0)+(d<<2)>>2]=k;c=f[l>>2]|0}}f[k>>2]=c;f[l>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!l)return m|0;c=l+8|0;d=f[l+20>>2]|0;if(d|0){e=l+24|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}if((b[c+11>>0]|0)<0)Bi(f[c>>2]|0);Bi(l);return m|0}function qc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;n=o;j=d+8|0;l=f[j>>2]|0;j=f[j+4>>2]|0;k=d+16|0;g=k;e=f[g>>2]|0;g=f[g+4>>2]|0;if((j|0)>(g|0)|(j|0)==(g|0)&l>>>0>e>>>0){i=b[(f[d>>2]|0)+e>>0]|0;e=Wg(e|0,g|0,1,0)|0;g=I;p=k;f[p>>2]=e;f[p+4>>2]=g;if(i<<24>>24!=-2)m=3}else{i=0;m=3}if((m|0)==3){if((j|0)>(g|0)|(j|0)==(g|0)&l>>>0>e>>>0){p=b[(f[d>>2]|0)+e>>0]|0;m=Wg(e|0,g|0,1,0)|0;e=k;f[e>>2]=m;f[e+4>>2]=I;e=p}else e=0;Oa[f[(f[a>>2]|0)+40>>2]&7](n,a,i<<24>>24,e<<24>>24);p=a+20|0;m=f[n>>2]|0;f[n>>2]=0;e=f[p>>2]|0;f[p>>2]=m;if(e){Ga[f[(f[e>>2]|0)+4>>2]&127](e);e=f[n>>2]|0;f[n>>2]=0;if(e|0)Ga[f[(f[e>>2]|0)+4>>2]&127](e)}else f[n>>2]=0}e=f[a+20>>2]|0;if(e|0?!(Na[f[(f[a>>2]|0)+28>>2]&127](a,e)|0):0){p=0;u=o;return p|0}if(!(Ea[f[(f[a>>2]|0)+36>>2]&15](a,c,d)|0)){p=0;u=o;return p|0}e=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;p=f[a+4>>2]|0;if((p|0?((h[p+36>>0]|0)<<8&65535)<512:0)?!(Na[f[(f[a>>2]|0)+48>>2]&127](a,e)|0):0){p=0;u=o;return p|0}p=1;u=o;return p|0}function rc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[(f[h>>2]|0)+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;return}e=c+1|0;if(!d)c=((e|0)%3|0|0)==0?c+-2|0:e;e=f[h>>2]|0;if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2]))if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=7}else g=7;else{c=-1073741824;g=7}if((g|0)==7)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;b[i>>0]=0;return}function sc(a,b,c,d){a=a|0;b=$(b);c=$(c);d=d|0;var e=Ca,f=Ca,g=Ca,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0;if(!(b>=$(0.0)))xa(8050,7895,191,8064);if(!(c>=$(0.0)))xa(8093,7895,192,8064);if(!(b<=$(1.0)))xa(8107,7895,193,8064);if(!(c<=$(1.0)))xa(8121,7895,194,8064);e=$(b+c);f=$(b-c);if(!(f<=$(.5))|(!(f>=$(-.5))|(!(e>=$(.5))|!(e<=$(1.5))))){do if(!(e<=$(.5))){if(e>=$(1.5)){g=$($(1.5)-c);c=$($(1.5)-b);break}if(!(f<=$(-.5))){g=$(c+$(.5));c=$(b+$(-.5));break}else{g=$(c+$(-.5));c=$(b+$(.5));break}}else{g=$($(.5)-c);c=$($(.5)-b)}while(0);e=$(c+g);f=$(g-c);h=-1.0}else{h=1.0;g=b}b=$(+g*2.0+-1.0);g=$(+c*2.0+-1.0);k=+e*2.0;i=k+-1.0;k=3.0-k;l=+f*2.0;j=l+1.0;l=1.0-l;j=l>2]=$(0.0);b=$(0.0);c=$(0.0);a=d+4|0;n[a>>2]=c;d=d+8|0;n[d>>2]=b;return}else{f=$($(1.0)/$(L($(f))));c=$(e*f);n[d>>2]=c;c=$(g*f);b=$(b*f);a=d+4|0;n[a>>2]=b;d=d+8|0;n[d>>2]=c;return}}function tc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;k=n;l=a+8|0;e=f[l>>2]|0;m=a+4|0;c=f[m>>2]|0;if(e-c>>2>>>0>=b>>>0){Vd(c|0,0,b<<2|0)|0;f[m>>2]=c+(b<<2);u=n;return}d=f[a>>2]|0;g=c-d>>2;c=g+b|0;if(c>>>0>1073741823)Yh(a);i=e-d|0;j=i>>1;c=i>>2>>>0<536870911?(j>>>0>>0?c:j):1073741823;f[k+12>>2]=0;f[k+16>>2]=a+8;do if(c)if(c>>>0>1073741823){n=za(8)|0;gh(n,14257);f[n>>2]=3624;qa(n|0,952,75)}else{d=pg(c<<2)|0;break}else d=0;while(0);f[k>>2]=d;e=d+(g<<2)|0;i=k+8|0;h=k+4|0;f[h>>2]=e;j=k+12|0;f[j>>2]=d+(c<<2);Vd(e|0,0,b<<2|0)|0;f[i>>2]=e+(b<<2);e=f[a>>2]|0;c=f[m>>2]|0;if((c|0)==(e|0)){g=h;d=f[h>>2]|0}else{d=f[h>>2]|0;do{c=c+-4|0;b=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=b;d=(f[h>>2]|0)+-4|0;f[h>>2]=d}while((c|0)!=(e|0));g=h;e=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=d;f[g>>2]=e;f[m>>2]=f[i>>2];f[i>>2]=c;m=f[l>>2]|0;f[l>>2]=f[j>>2];f[j>>2]=m;f[k>>2]=f[g>>2];rd(k);u=n;return}function uc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=b;h=c-m>>2;i=a+8|0;d=f[i>>2]|0;l=f[a>>2]|0;j=l;if(h>>>0<=d-l>>2>>>0){k=a+4|0;i=(f[k>>2]|0)-l>>2;h=h>>>0>i>>>0;i=b+(i<<2)|0;g=h?i:c;a=g;d=a-m|0;e=d>>2;if(e|0)Of(l|0,b|0,d|0)|0;d=j+(e<<2)|0;if(!h){b=f[k>>2]|0;if((b|0)==(d|0))return;f[k>>2]=b+(~((b+-4-d|0)>>>2)<<2);return}if((g|0)==(c|0))return;g=f[k>>2]|0;e=((c+-4-a|0)>>>2)+1|0;b=i;d=g;while(1){f[d>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else d=d+4|0}f[k>>2]=g+(e<<2);return}g=l;if(l){d=a+4|0;e=f[d>>2]|0;if((e|0)!=(j|0))f[d>>2]=e+(~((e+-4-l|0)>>>2)<<2);Bi(g);f[i>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823)Yh(a);l=d>>1;d=d>>2>>>0<536870911?(l>>>0>>0?h:l):1073741823;if(d>>>0>1073741823)Yh(a);g=pg(d<<2)|0;h=a+4|0;f[h>>2]=g;f[a>>2]=g;f[i>>2]=g+(d<<2);if((b|0)==(c|0))return;e=((c+-4-m|0)>>>2)+1|0;d=g;while(1){f[d>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else d=d+4|0}f[h>>2]=g+(e<<2);return}function vc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=Ca,j=Ca,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=Ca,x=Ca,y=0,z=0;v=u;u=u+16|0;m=v;p=f[a+24>>2]|0;s=a+8|0;d=b[(f[s>>2]|0)+24>>0]|0;q=d<<24>>24;r=q<<2;t=xi(q>>>0>1073741823?-1:q<<2)|0;wh(m);if(!(ig(m,$(n[a+32>>2]),(1<>2]|0;o=(f[f[o>>2]>>2]|0)+(f[o+48>>2]|0)|0;if(!c){s=1;yi(t);u=v;return s|0}p=m+4|0;l=a+28|0;if(d<<24>>24>0){d=0;e=0;g=0}else{a=0;d=0;while(1){Mc((f[f[(f[s>>2]|0)+64>>2]>>2]|0)+d|0,t|0,r|0)|0;a=a+1|0;if((a|0)==(c|0)){a=1;break}else d=d+r|0}yi(t);u=v;return a|0}while(1){k=f[l>>2]|0;i=$(n[p>>2]);j=$(n[m>>2]);a=0;h=e;while(1){z=f[o+(h<<2)>>2]|0;y=(z|0)<0;w=$(i*$((y?0-z|0:z)|0));x=$(-w);w=$(j*(y?x:w));w=$($(n[k+(a<<2)>>2])+w);n[t+(a<<2)>>2]=w;a=a+1|0;if((a|0)==(q|0))break;else h=h+1|0}Mc((f[f[(f[s>>2]|0)+64>>2]>>2]|0)+g|0,t|0,r|0)|0;d=d+1|0;if((d|0)==(c|0)){a=1;break}else{e=q+e|0;g=g+r|0}}yi(t);u=v;return a|0}function wc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;f[c>>2]=1;e=a+4|0;l=c+8|0;k=c+12|0;c=f[l>>2]|0;d=(f[k>>2]|0)-c|0;if(d>>>0<4294967292){Ne(l,d+4|0,0);c=f[l>>2]|0}i=c+d|0;j=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[i>>0]=j;b[i+1>>0]=j>>8;b[i+2>>0]=j>>16;b[i+3>>0]=j>>24;i=a+8|0;j=a+12|0;c=f[i>>2]|0;if((f[j>>2]|0)!=(c|0)){g=0;do{d=c+(g<<2)|0;c=f[l>>2]|0;e=(f[k>>2]|0)-c|0;if(e>>>0<4294967292){Ne(l,e+4|0,0);c=f[l>>2]|0}c=c+e|0;e=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[c>>0]=e;b[c+1>>0]=e>>8;b[c+2>>0]=e>>16;b[c+3>>0]=e>>24;g=g+1|0;c=f[i>>2]|0}while(g>>>0<(f[j>>2]|0)-c>>2>>>0)}d=a+20|0;e=f[l>>2]|0;c=(f[k>>2]|0)-e|0;if(c>>>0<4294967292){Ne(l,c+4|0,0);l=f[l>>2]|0;l=l+c|0;k=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}else{l=e;l=l+c|0;k=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}}function xc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=c;e=b;i=k-e|0;h=i>>2;j=a+8|0;d=f[j>>2]|0;g=f[a>>2]|0;l=g;if(h>>>0>d-g>>2>>>0){e=g;if(g){d=a+4|0;c=f[d>>2]|0;if((c|0)!=(l|0))f[d>>2]=c+(~((c+-4-g|0)>>>2)<<2);Bi(e);f[j>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823)Yh(a);l=d>>1;d=d>>2>>>0<536870911?(l>>>0>>0?h:l):1073741823;if(d>>>0>1073741823)Yh(a);c=pg(d<<2)|0;e=a+4|0;f[e>>2]=c;f[a>>2]=c;f[j>>2]=c+(d<<2);if((i|0)<=0)return;Mc(c|0,b|0,i|0)|0;f[e>>2]=c+(i>>>2<<2);return}j=a+4|0;i=f[j>>2]|0;g=i-g>>2;a=h>>>0>g>>>0;h=a?b+(g<<2)|0:c;g=i;if((h|0)==(b|0))d=l;else{e=h+-4-e|0;d=b;c=l;while(1){f[c>>2]=f[d>>2];d=d+4|0;if((d|0)==(h|0))break;else c=c+4|0}d=l+((e>>>2)+1<<2)|0}if(a){d=k-h|0;if((d|0)<=0)return;Mc(i|0,h|0,d|0)|0;f[j>>2]=(f[j>>2]|0)+(d>>>2<<2);return}else{if((g|0)==(d|0))return;f[j>>2]=g+(~((g+-4-d|0)>>>2)<<2);return}}function yc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=c+8|0;m=f[n>>2]|0;n=f[n+4>>2]|0;q=c+16|0;p=q;o=f[p>>2]|0;p=f[p+4>>2]|0;e=Wg(o|0,p|0,4,0)|0;d=I;if((n|0)<(d|0)|(n|0)==(d|0)&m>>>0>>0){q=0;return q|0}l=f[c>>2]|0;g=l+o|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=q;f[i>>2]=e;f[i+4>>2]=d;i=Wg(o|0,p|0,8,0)|0;k=I;if((n|0)<(k|0)|(n|0)==(k|0)&m>>>0>>0){q=0;return q|0}d=l+e|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=q;f[e>>2]=i;f[e+4>>2]=k;if((g|0)>(d|0)){q=0;return q|0}f[a+12>>2]=g;f[a+16>>2]=d;g=d+(1-g)|0;f[a+20>>2]=g;d=(g|0)/2|0;e=a+24|0;f[e>>2]=d;f[a+28>>2]=0-d;if(!(g&1))f[e>>2]=d+-1;do if((j[c+38>>1]|0)<514){if(!((n|0)>(k|0)|(n|0)==(k|0)&m>>>0>i>>>0)){q=0;return q|0}d=b[l+i>>0]|0;p=Wg(o|0,p|0,9,0)|0;f[q>>2]=p;f[q+4>>2]=I;if((d&255)<2){f[a+88>>2]=d&255;break}else{q=0;return q|0}}while(0);q=bc(a+108|0,c)|0;return q|0}function zc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=b+12|0;m=f[k>>2]|0;g=(f[c>>2]|0)-m|0;j=c+4|0;i=(f[j>>2]|0)-m|0;h=c;f[h>>2]=g;f[h+4>>2]=i;h=f[k>>2]|0;if((h|0)<(g|0))xa(8610,7895,250,8633);if((h|0)<(i|0))xa(8645,7895,251,8633);e=0-h|0;if((g|0)<(e|0))xa(8668,7895,252,8633);if((i|0)<(e|0))xa(8692,7895,253,8633);if((((i|0)>-1?i:0-i|0)+((g|0)>-1?g:0-g|0)|0)>(h|0)){ld(b,c,j);l=0;c=f[c>>2]|0;e=f[j>>2]|0;h=f[k>>2]|0}else{l=1;c=g;e=i}c=(f[d>>2]|0)+c|0;f[a>>2]=c;e=(f[d+4>>2]|0)+e|0;g=a+4|0;f[g>>2]=e;if((h|0)>=(c|0)){if((c|0)<(0-h|0))c=(f[b+4>>2]|0)+c|0}else c=c-(f[b+4>>2]|0)|0;f[a>>2]=c;if((h|0)>=(e|0)){if((e|0)<(0-h|0))e=(f[b+4>>2]|0)+e|0}else e=e-(f[b+4>>2]|0)|0;f[g>>2]=e;if(l){l=c;b=e;l=l+m|0;b=b+m|0;m=a;a=m;f[a>>2]=l;m=m+4|0;f[m>>2]=b;return}ld(b,a,g);l=f[a>>2]|0;b=f[g>>2]|0;l=l+m|0;b=b+m|0;m=a;a=m;f[a>>2]=l;m=m+4|0;f[m>>2]=b;return}function Ac(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;f[h>>2]=b;if((b|0)<=-1)xa(14132,14144,110,14244);i=a+8|0;if(((f[a+12>>2]|0)-(f[i>>2]|0)>>2|0)<=(b|0))dd(i,b+1|0);d=f[(f[c>>2]|0)+56>>2]|0;do if((d|0)<5){e=a+20+(d*12|0)+4|0;g=f[e>>2]|0;if((g|0)==(f[a+20+(d*12|0)+8>>2]|0)){Kd(a+20+(d*12|0)|0,h);break}else{f[g>>2]=b;f[e>>2]=g+4;break}}while(0);g=f[c>>2]|0;e=f[h>>2]|0;f[g+60>>2]=e;i=(f[i>>2]|0)+(e<<2)|0;f[c>>2]=0;e=f[i>>2]|0;f[i>>2]=g;if(!e){u=j;return}i=e+88|0;a=f[i>>2]|0;f[i>>2]=0;if(a|0){b=f[a+8>>2]|0;if(b|0){d=a+12|0;if((f[d>>2]|0)!=(b|0))f[d>>2]=b;Bi(b)}Bi(a)}a=f[e+68>>2]|0;if(a|0){b=e+72|0;d=f[b>>2]|0;if((d|0)!=(a|0))f[b>>2]=d+(~((d+-4-a|0)>>>2)<<2);Bi(a)}i=e+64|0;a=f[i>>2]|0;f[i>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){d=a+4|0;if((f[d>>2]|0)!=(b|0))f[d>>2]=b;Bi(b)}Bi(a)}Bi(e);u=j;return}function Bc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a=a+20|0;if(qb(a,c)|0){h=0;return h|0}g=ab(a,c)|0;e=f[d>>2]|0;f[d>>2]=0;h=f[g>>2]|0;f[g>>2]=e;if(!h){h=1;return h|0}a=f[h+28>>2]|0;if(a|0)do{g=a;a=f[a>>2]|0;xd(g+8|0);Bi(g)}while((a|0)!=0);g=h+20|0;a=f[g>>2]|0;f[g>>2]=0;if(a|0)Bi(a);a=f[h+8>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;e=f[c+20>>2]|0;if(e|0){g=c+24|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}if((b[d+11>>0]|0)<0)Bi(f[d>>2]|0);Bi(c)}while((a|0)!=0);a=f[h>>2]|0;f[h>>2]=0;if(a|0)Bi(a);Bi(h);h=1;return h|0}function Cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;c=pg(64)|0;j=pg(12)|0;h=f[(f[a+4>>2]|0)+80>>2]|0;f[j+4>>2]=0;f[j>>2]=2804;f[j+8>>2]=h;f[k>>2]=j;hf(c,k);j=c;if((b|0)>=0){h=a+8|0;g=a+12|0;c=f[g>>2]|0;a=f[h>>2]|0;d=c-a>>2;do if((d|0)<=(b|0)){e=b+1|0;if(e>>>0>d>>>0){Fc(h,e-d|0);break}if(e>>>0>>0?(i=a+(e<<2)|0,(c|0)!=(i|0)):0)do{e=c+-4|0;f[g>>2]=e;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[g>>2]|0}while((c|0)!=(i|0))}while(0);i=(f[h>>2]|0)+(b<<2)|0;c=f[i>>2]|0;f[i>>2]=j;if(!c)c=1;else{Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=1}}else{Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=0}a=f[k>>2]|0;f[k>>2]=0;if(!a){u=l;return c|0}Ga[f[(f[a>>2]|0)+4>>2]&127](a);u=l;return c|0}function Dc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=c;h=d-i|0;j=a+8|0;e=f[j>>2]|0;g=f[a>>2]|0;k=g;if(h>>>0>(e-g|0)>>>0){if(g){e=a+4|0;if((f[e>>2]|0)!=(k|0))f[e>>2]=k;Bi(k);f[j>>2]=0;f[e>>2]=0;f[a>>2]=0;e=0}if((h|0)<0)Yh(a);g=e<<1;g=e>>>0<1073741823?(g>>>0>>0?h:g):2147483647;if((g|0)<0)Yh(a);e=pg(g)|0;h=a+4|0;f[h>>2]=e;f[a>>2]=e;f[j>>2]=e+g;if((c|0)==(d|0))return;do{b[e>>0]=b[c>>0]|0;c=c+1|0;e=(f[h>>2]|0)+1|0;f[h>>2]=e}while((c|0)!=(d|0));return}else{j=a+4|0;e=(f[j>>2]|0)-g|0;a=h>>>0>e>>>0;e=c+e|0;h=a?e:d;g=h-i|0;if(g|0)Of(k|0,c|0,g|0)|0;c=k+g|0;if(!a){if((f[j>>2]|0)==(c|0))return;f[j>>2]=c;return}if((h|0)==(d|0))return;c=f[j>>2]|0;do{b[c>>0]=b[e>>0]|0;e=e+1|0;c=(f[j>>2]|0)+1|0;f[j>>2]=c}while((e|0)!=(d|0));return}}function Ec(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+80|0;e=j;i=j+64|0;vf(e);h=f[(f[a+8>>2]|0)+56>>2]|0;g=X(Ef(5)|0,d)|0;je(e,h,0,d&255,5,0,g,((g|0)<0)<<31>>31,0,0);d=pg(96)|0;pf(d,e);b[d+84>>0]=1;e=f[d+68>>2]|0;g=d+72|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-4-e|0)>>>2)<<2);ce(d,c)|0;f[i>>2]=d;Pd(a,i);h=f[i>>2]|0;f[i>>2]=0;if(!h){u=j;return}i=h+88|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d)}d=f[h+68>>2]|0;if(d|0){e=h+72|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~((g+-4-d|0)>>>2)<<2);Bi(d)}i=h+64|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d)}Bi(h);u=j;return}function Fc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;e=f[l>>2]|0;m=a+4|0;d=f[m>>2]|0;c=d;if(e-d>>2>>>0>=b>>>0){Vd(d|0,0,b<<2|0)|0;f[m>>2]=d+(b<<2);return}g=f[a>>2]|0;d=d-g>>2;j=d+b|0;k=g;if(j>>>0>1073741823)Yh(a);i=e-g|0;h=i>>1;h=i>>2>>>0<536870911?(h>>>0>>0?j:h):1073741823;do if(h)if(h>>>0>1073741823){m=za(8)|0;gh(m,14257);f[m>>2]=3624;qa(m|0,952,75)}else{i=pg(h<<2)|0;break}else i=0;while(0);d=i+(d<<2)|0;Vd(d|0,0,b<<2|0)|0;e=d;b=i+(h<<2)|0;h=i+(j<<2)|0;if((c|0)!=(k|0)){do{c=c+-4|0;j=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=j;d=e+-4|0;e=d}while((c|0)!=(k|0));g=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=e;f[m>>2]=h;f[l>>2]=b;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d)}while((c|0)!=(e|0));if(!g)return;Bi(g);return}function Gc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=2872;b=f[a+68>>2]|0;if(b|0){c=a+72|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+56>>2]|0;if(b|0){c=a+60|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+44>>2]|0;if(b|0){c=a+48|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+32>>2]|0;if(b|0){c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}sd(a+8|0);a=a+4|0;e=f[a>>2]|0;f[a>>2]=0;if(!e)return;d=e+40|0;b=f[d>>2]|0;if(b|0){a=e+44|0;c=f[a>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[a>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0){Md(c);Bi(c)}c=f[a>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Bi(b)}Md(e);Bi(e);return}function Hc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+24|0;k=o+16|0;l=o+8|0;n=o;e=a+4|0;p=f[e>>2]|0;m=f[b>>2]|0;d=f[b+4>>2]|0;i=f[c>>2]|0;g=f[c+4>>2]|0;h=i-m<<3;f[e>>2]=p-d+g+h;e=(f[a>>2]|0)+(p>>>5<<2)|0;c=p&31;b=e;if((d|0)!=(c|0)){f[j>>2]=m;f[j+4>>2]=d;f[k>>2]=i;f[k+4>>2]=g;f[l>>2]=b;f[l+4>>2]=c;_b(n,j,k,l);u=o;return}c=g-d+h|0;h=m;if((c|0)>0){if(!d){d=0;b=m}else{p=32-d|0;b=(c|0)<(p|0)?c:p;p=-1>>>(p-b|0)&-1<>2]=f[e>>2]&~p|f[h>>2]&p;d=b+d|0;h=h+4|0;c=c-b|0;e=e+(d>>>5<<2)|0;d=d&31;b=h}g=(c|0)/32|0;Of(e|0,b|0,g<<2|0)|0;a=c-(g<<5)|0;c=e+(g<<2)|0;b=c;if((a|0)>0){d=-1>>>(32-a|0);f[c>>2]=f[c>>2]&~d|f[h+(g<<2)>>2]&d;d=a}}f[n>>2]=b;f[n+4>>2]=d;u=o;return}function Ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+4|0;c=f[a>>2]|0;e=(f[k>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)Yh(a);l=a+8|0;j=(f[l>>2]|0)-c|0;c=j>>1;c=j>>2>>>0<536870911?(c>>>0>>0?d:c):1073741823;do if(c)if(c>>>0>1073741823){l=za(8)|0;gh(l,14257);f[l>>2]=3624;qa(l|0,952,75)}else{d=pg(c<<2)|0;break}else d=0;while(0);g=d+(e<<2)|0;e=g;j=d+(c<<2)|0;i=f[b>>2]|0;f[b>>2]=0;f[g>>2]=i;i=g+4|0;h=f[a>>2]|0;c=f[k>>2]|0;if((c|0)==(h|0)){d=e;b=h;c=h}else{d=g;do{c=c+-4|0;g=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=g;d=e+-4|0;e=d}while((c|0)!=(h|0));d=e;b=f[a>>2]|0;c=f[k>>2]|0}f[a>>2]=d;f[k>>2]=i;f[l>>2]=j;e=b;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){Md(d);Bi(d)}}while((c|0)!=(e|0));if(!b)return;Bi(b);return}function Jc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0;do if(c){if((j[a+38>>1]|0)>=514){if(Qd(d,a)|0)break;else c=0;return c|0}l=a+8|0;i=f[l>>2]|0;l=f[l+4>>2]|0;c=a+16|0;g=c;e=f[g>>2]|0;g=Wg(e|0,f[g+4>>2]|0,8,0)|0;k=I;if((l|0)<(k|0)|(l|0)==(k|0)&i>>>0>>0){l=0;return l|0}else{l=(f[a>>2]|0)+e|0;g=l;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;l=l+4|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;k=d;i=k;b[i>>0]=g;b[i+1>>0]=g>>8;b[i+2>>0]=g>>16;b[i+3>>0]=g>>24;k=k+4|0;b[k>>0]=l;b[k+1>>0]=l>>8;b[k+2>>0]=l>>16;b[k+3>>0]=l>>24;k=c;k=Wg(f[k>>2]|0,f[k+4>>2]|0,8,0)|0;l=c;f[l>>2]=k;f[l+4>>2]=I;break}}while(0);b[a+36>>0]=1;l=a+16|0;i=f[l>>2]|0;k=(f[a>>2]|0)+i|0;g=a+8|0;l=Jg(f[g>>2]|0,f[g+4>>2]|0,i|0,f[l+4>>2]|0)|0;f[a+32>>2]=0;f[a+24>>2]=k;f[a+28>>2]=k+l;l=1;return l|0}function Kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;e=j+8|0;g=j+4|0;h=j;if(!c){i=0;u=j;return i|0}f[a>>2]=b;f[e>>2]=0;ke(e,b)|0;a:do if(!(f[e>>2]|0))i=8;else{d=0;while(1){ke(g,f[a>>2]|0)|0;b=pg(44)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[b+16>>2]=$(1.0);k=b+20|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[b+36>>2]=$(1.0);f[b+40>>2]=f[g>>2];if(!(xb(a,b)|0))break;f[h>>2]=b;xe(c,h)|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0){Md(b);Bi(b)}d=d+1|0;if(d>>>0>=(f[e>>2]|0)>>>0){i=8;break a}}Md(b);Bi(b);b=0}while(0);if((i|0)==8)b=xb(a,c)|0;k=b;u=j;return k|0}function Lc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=a+4|0;d=f[m>>2]|0;do if(d|0){l=b[c+11>>0]|0;k=l<<24>>24<0;l=k?f[c+4>>2]|0:l&255;k=k?f[c>>2]|0:c;a=m;a:while(1){c=d;while(1){e=c+16|0;h=b[e+11>>0]|0;g=h<<24>>24<0;h=g?f[c+20>>2]|0:h&255;d=l>>>0>>0?l:h;if((d|0)!=0?(i=jf(g?f[e>>2]|0:e,k,d)|0,(i|0)!=0):0){if((i|0)>=0)break}else j=6;if((j|0)==6?(j=0,h>>>0>=l>>>0):0)break;c=f[c+4>>2]|0;if(!c)break a}d=f[c>>2]|0;if(!d){a=c;break}else a=c}if((a|0)!=(m|0)){d=a+16|0;g=b[d+11>>0]|0;e=g<<24>>24<0;g=e?f[a+20>>2]|0:g&255;c=g>>>0>>0?g:l;if(c|0?(n=jf(k,e?f[d>>2]|0:d,c)|0,n|0):0){if((n|0)<0)break;return a|0}if(l>>>0>=g>>>0){n=a;return n|0}}}while(0);n=m;return n|0}function Mc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return ta(a|0,c|0,d|0)|0;h=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return h|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}d=g&-4|0;e=d-64|0;while((a|0)<=(e|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(d|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{d=g-4|0;while((a|0)<(d|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return h|0}function Nc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{i=f[d+4>>2]|0;if((c|0)<=-1)xa(13373,14023,59,14122);g=f[i+8>>2]|0;if(((f[i+12>>2]|0)-g>>2|0)<=(c|0))xa(13969,14023,60,14122);g=f[g+(c<<2)>>2]|0;do if((Ja[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){gc(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);d=pg(44)|0;f[d>>2]=1388;f[d+4>>2]=g;g=d+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[g+16>>2]=f[e+16>>2];f[g+20>>2]=f[e+20>>2];ue(d+32|0,e+24|0);f[d>>2]=1444;g=d}f[a>>2]=g;return}function Oc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+60|0;c=f[i>>2]|0;if(!c){b=0;return b|0}f[c+4>>2]=a+48;if(!(Ja[f[(f[c>>2]|0)+12>>2]&127](c)|0)){b=0;return b|0}d=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;a:do if((d|0)>0){c=0;while(1){e=(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)+4|0;e=f[e>>2]|0;g=Na[f[(f[a>>2]|0)+20>>2]&127](a,c)|0;if((g|0)<=-1){d=7;break}h=f[e+8>>2]|0;if(((f[e+12>>2]|0)-h>>2|0)<=(g|0)){d=9;break}e=f[i>>2]|0;c=c+1|0;if(!(Na[f[(f[e>>2]|0)+8>>2]&127](e,f[h+(g<<2)>>2]|0)|0)){c=0;d=14;break}if((c|0)>=(d|0))break a}if((d|0)==7)xa(13373,14023,67,14122);else if((d|0)==9)xa(13969,14023,68,14122);else if((d|0)==14)return c|0}while(0);if(!(Na[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){b=0;return b|0}if(!(Na[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){b=0;return b|0}b=Ja[f[(f[a>>2]|0)+44>>2]&127](a)|0;return b|0}function Pc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;return}e=c+1|0;if(!d){c=((e|0)%3|0|0)==0?c+-2|0:e;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=5}else g=5}else g=5;if((g|0)==5)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;b[i>>0]=0;return}function Qc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+8|0;c=f[j>>2]|0;l=a+16|0;if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}d=f[l>>2]|0;if(!d){l=f[l>>2]|0;return l|0}a=d+84|0;if(!(b[a>>0]|0)){l=f[l>>2]|0;return l|0}i=(f[c+72>>2]|0)-(f[c+68>>2]|0)>>2;b[a>>0]=0;h=d+68|0;a=d+72|0;g=f[a>>2]|0;e=f[h>>2]|0;d=g-e>>2;if(i>>>0<=d>>>0){if(i>>>0>>0?(k=e+(i<<2)|0,(g|0)!=(k|0)):0)f[a>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else{_c(h,i-d|0,1256);c=f[j>>2]|0}if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}k=f[c+68>>2]|0;g=k;k=(f[c+72>>2]|0)-k|0;a=k>>2;if((k|0)<=0){l=f[l>>2]|0;return l|0}e=f[l>>2]|0;d=(b[e+84>>0]|0)==0;e=e+68|0;c=0;while(1){if(!d){c=14;break}f[(f[e>>2]|0)+(c<<2)>>2]=f[g+(c<<2)>>2];c=c+1|0;if((c|0)>=(a|0)){c=15;break}}if((c|0)==14)xa(3950,3969,89,4071);else if((c|0)==15){l=f[l>>2]|0;return l|0}return 0}function Rc(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(xh(a,f[c+8>>2]|0,g)|0)){h=a+8|0;if(!(xh(a,f[c>>2]|0,g)|0)){j=f[h>>2]|0;Fa[f[(f[j>>2]|0)+24>>2]&3](j,c,d,e,g);break}a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(i=c+20|0,(f[i>>2]|0)!=(d|0)):0){f[a>>2]=e;e=c+44|0;if((f[e>>2]|0)==4)break;a=c+52|0;b[a>>0]=0;k=c+53|0;b[k>>0]=0;h=f[h>>2]|0;Ma[f[(f[h>>2]|0)+20>>2]&3](h,c,d,d,1,g);if(b[k>>0]|0)if(!(b[a>>0]|0)){a=3;j=11}else a=3;else{a=4;j=11}if((j|0)==11){f[i>>2]=d;k=c+40|0;f[k>>2]=(f[k>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1}f[e>>2]=a;break}if((e|0)==1)f[a>>2]=1}else cg(0,c,d,e);while(0);return}function Sc(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(xh(a,f[c+8>>2]|0,h)|0)Yd(0,c,d,e,g);else{p=c+52|0;i=b[p>>0]|0;j=c+53|0;k=b[j>>0]|0;o=f[a+12>>2]|0;l=a+16+(o<<3)|0;b[p>>0]=0;b[j>>0]=0;ef(a+16|0,c,d,e,g,h);a:do if((o|0)>1){m=c+24|0;n=c+54|0;o=a+8|0;a=a+24|0;do{if(b[n>>0]|0)break a;if(!(b[p>>0]|0)){if(b[j>>0]|0?(f[o>>2]&1|0)==0:0)break a}else{if((f[m>>2]|0)==1)break a;if(!(f[o>>2]&2))break a}b[p>>0]=0;b[j>>0]=0;ef(a,c,d,e,g,h);a=a+8|0}while(a>>>0>>0)}while(0);b[p>>0]=i;b[j>>0]=k}return}function Tc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{i=f[d+4>>2]|0;if((c|0)<=-1)xa(13373,14023,59,14122);g=f[i+8>>2]|0;if(((f[i+12>>2]|0)-g>>2|0)<=(c|0))xa(13969,14023,60,14122);g=f[g+(c<<2)>>2]|0;do if((Ja[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){Wb(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);d=pg(24)|0;f[d+4>>2]=g;g=d+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[d>>2]=2288;g=d}f[a>>2]=g;return}function Uc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+8|0;e=f[i>>2]|0;j=a+4|0;c=f[j>>2]|0;if(e-c>>3>>>0>=b>>>0){do{i=c;f[i>>2]=0;f[i+4>>2]=0;c=(f[j>>2]|0)+8|0;f[j>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;g=c-d>>3;c=g+b|0;if(c>>>0>536870911)Yh(a);e=e-d|0;h=e>>2;c=e>>3>>>0<268435455?(h>>>0>>0?c:h):536870911;do if(c)if(c>>>0>536870911){j=za(8)|0;gh(j,14257);f[j>>2]=3624;qa(j|0,952,75)}else{d=pg(c<<3)|0;break}else d=0;while(0);h=d+(g<<3)|0;g=d+(c<<3)|0;c=h;e=h;do{d=c;f[d>>2]=0;f[d+4>>2]=0;c=e+8|0;e=c;b=b+-1|0}while((b|0)!=0);b=f[a>>2]|0;d=(f[j>>2]|0)-b|0;c=h+(0-(d>>3)<<3)|0;if((d|0)>0)Mc(c|0,b|0,d|0)|0;f[a>>2]=c;f[j>>2]=e;f[i>>2]=g;if(!b)return;Bi(b);return}function Vc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h;i=f[(f[a>>2]|0)+8>>2]|0;e=a+8|0;g=a+12|0;d=(f[g>>2]|0)-(f[e>>2]|0)>>2;j=f[b>>2]|0;f[b>>2]=0;f[c>>2]=j;Ka[i&15](a,d,c);d=f[c>>2]|0;f[c>>2]=0;if(!d){i=f[g>>2]|0;j=f[e>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}j=d+88|0;a=f[j>>2]|0;f[j>>2]=0;if(a|0){b=f[a+8>>2]|0;if(b|0){c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Bi(b)}Bi(a)}a=f[d+68>>2]|0;if(a|0){b=d+72|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);Bi(a)}j=d+64|0;a=f[j>>2]|0;f[j>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Bi(b)}Bi(a)}Bi(d);i=f[g>>2]|0;j=f[e>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}function Wc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;if((Ja[f[(f[b>>2]|0)+20>>2]&127](b)|0)<=0){b=1;return b|0}i=a+4|0;d=0;while(1){e=f[(f[i>>2]|0)+4>>2]|0;e=Kf(e,Na[f[(f[b>>2]|0)+24>>2]&127](b,d)|0)|0;if((e|0)==-1){a=0;c=12;break}a=f[i>>2]|0;g=f[(f[b>>2]|0)+28>>2]|0;if(((h[a+36>>0]|0)<<8&65535)<512){a=f[a+4>>2]|0;if((e|0)<=-1){c=6;break}c=f[a+8>>2]|0;if(((f[a+12>>2]|0)-c>>2|0)<=(e|0)){c=8;break}if(!(Na[g&127](b,f[c+(e<<2)>>2]|0)|0)){a=0;c=12;break}}else{e=df(a,e)|0;if(!(Na[g&127](b,e)|0)){a=0;c=12;break}}d=d+1|0;if((d|0)>=(Ja[f[(f[b>>2]|0)+20>>2]&127](b)|0)){a=1;c=12;break}}if((c|0)==6)xa(13373,14023,67,14122);else if((c|0)==8)xa(13969,14023,68,14122);else if((c|0)==12)return a|0;return 0}function Xc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{i=f[d+4>>2]|0;if((c|0)<=-1)xa(13373,14023,59,14122);g=f[i+8>>2]|0;if(((f[i+12>>2]|0)-g>>2|0)<=(c|0))xa(13969,14023,60,14122);g=f[g+(c<<2)>>2]|0;do if((Ja[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){Yb(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);d=pg(24)|0;f[d+4>>2]=g;g=d+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[d>>2]=2512;g=d}f[a>>2]=g;return}function Yc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=1048576){if((h|0)!=1048576?(e=i+4194304|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,1048576-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>1048576){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==1048576;return k|0} +function Zc(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+64|0;n=p;m=f[a>>2]|0;o=a+(f[m+-8>>2]|0)|0;m=f[m+-4>>2]|0;f[n>>2]=e;f[n+4>>2]=a;f[n+8>>2]=c;f[n+12>>2]=g;a=n+16|0;c=n+20|0;g=n+24|0;h=n+28|0;i=n+32|0;j=n+40|0;k=a;l=k+36|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));d[a+36>>1]=0;b[a+38>>0]=0;a:do if(xh(m,e,0)|0){f[n+48>>2]=1;Ma[f[(f[m>>2]|0)+20>>2]&3](m,n,o,o,1,0);a=(f[g>>2]|0)==1?o:0}else{Fa[f[(f[m>>2]|0)+24>>2]&3](m,n,o,1,0);switch(f[n+36>>2]|0){case 0:{a=(f[j>>2]|0)==1&(f[h>>2]|0)==1&(f[i>>2]|0)==1?f[c>>2]|0:0;break a}case 1:break;default:{a=0;break a}}if((f[g>>2]|0)!=1?!((f[j>>2]|0)==0&(f[h>>2]|0)==1&(f[i>>2]|0)==1):0){a=0;break}a=f[a>>2]|0}while(0);u=p;return a|0}function _c(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;e=f[l>>2]|0;m=a+4|0;d=f[m>>2]|0;g=d;if(e-d>>2>>>0>=b>>>0){d=b;e=g;while(1){f[e>>2]=f[c>>2];d=d+-1|0;if(!d)break;else e=e+4|0}f[m>>2]=g+(b<<2);return}k=f[a>>2]|0;j=d-k|0;i=j>>2;d=i+b|0;if(d>>>0>1073741823)Yh(a);g=e-k|0;h=g>>1;d=g>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823;do if(d)if(d>>>0>1073741823){m=za(8)|0;gh(m,14257);f[m>>2]=3624;qa(m|0,952,75)}else{e=pg(d<<2)|0;break}else e=0;while(0);h=e+(i<<2)|0;g=e+(d<<2)|0;d=b;e=h;while(1){f[e>>2]=f[c>>2];d=d+-1|0;if(!d)break;else e=e+4|0}d=h+(0-i<<2)|0;if((j|0)>0)Mc(d|0,k|0,j|0)|0;f[a>>2]=d;f[m>>2]=h+(b<<2);f[l>>2]=g;if(!k)return;Bi(k);return}function $c(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=524288){if((h|0)!=524288?(e=i+2097152|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,524288-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>524288){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==524288;return k|0}function ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=262144){if((h|0)!=262144?(e=i+1048576|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,262144-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>262144){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==262144;return k|0}function bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=65536){if((h|0)!=65536?(e=i+262144|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,65536-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>65536){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==65536;return k|0}function cd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=32768){if((h|0)!=32768?(e=i+131072|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,32768-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>32768){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==32768;return k|0}function dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;d=f[a>>2]|0;e=c-d>>2;if(e>>>0>>0){tc(a,b-e|0);return}if(e>>>0<=b>>>0)return;e=d+(b<<2)|0;if((c|0)==(e|0))return;do{b=c+-4|0;f[g>>2]=b;d=f[b>>2]|0;f[b>>2]=0;if(d|0){b=d+88|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){a=f[c+8>>2]|0;if(a|0){b=c+12|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Bi(a)}Bi(c)}c=f[d+68>>2]|0;if(c|0){a=d+72|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c)}b=d+64|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){a=f[c>>2]|0;if(a|0){b=c+4|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Bi(a)}Bi(c)}Bi(d)}c=f[g>>2]|0}while((c|0)!=(e|0));return}function ed(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=8192){if((h|0)!=8192?(e=i+32768|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,8192-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>8192){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==8192;return k|0}function fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=4096){if((h|0)!=4096?(e=i+16384|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,4096-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>4096){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==4096;return k|0}function gd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=f[c+88>>2]|0;if(!d){a=0;return a|0}if((f[d>>2]|0)!=1){a=0;return a|0}n=d+8|0;j=f[n>>2]|0;f[a+4>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;o=a+8|0;d=c+24|0;c=b[d>>0]|0;e=c<<24>>24;g=a+12|0;l=f[g>>2]|0;k=f[o>>2]|0;i=l-k>>2;if(e>>>0<=i>>>0){if(e>>>0>>0?(m=k+(e<<2)|0,(l|0)!=(m|0)):0)f[g>>2]=l+(~((l+-4-m|0)>>>2)<<2)}else{Cd(o,e-i|0);c=b[d>>0]|0;j=f[n>>2]|0}d=j+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;if(c<<24>>24>0){i=f[o>>2]|0;g=c<<24>>24;c=4;e=0;do{f[i+(e<<2)>>2]=d;c=c+4|0;e=e+1|0;d=j+c|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24}while((e|0)<(g|0))}f[a+20>>2]=d;a=1;return a|0}function hd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;l=b+8|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=b+16|0;d=m;c=f[d>>2]|0;d=f[d+4>>2]|0;e=Wg(c|0,d|0,4,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){a=0;return a|0}i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;n=m;f[n>>2]=e;f[n+4>>2]=g;do if((j[b+38>>1]|0)<514){b=Wg(c|0,d|0,8,0)|0;c=I;if((l|0)<(c|0)|(l|0)==(c|0)&k>>>0>>0){n=0;return n|0}else{n=m;f[n>>2]=b;f[n+4>>2]=c;break}}while(0);if(((i|0)%2|0|0)!=1)xa(8828,8861,68,9029);b=(_(i|0)|0)^31;c=b+1|0;if(!b)xa(7884,7895,60,8018);if(c>>>0>=31)xa(8038,7895,61,8018);f[a>>2]=c;n=2<>2]=n+-1;n=n+-2|0;f[a+8>>2]=n;f[a+12>>2]=(n|0)/2|0;n=1;return n|0}function id(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a=f[a+4>>2]|0;if(!a){m=0;return m|0}k=b[c+11>>0]|0;j=k<<24>>24<0;k=j?f[c+4>>2]|0:k&255;j=j?f[c>>2]|0:c;while(1){e=a+16|0;d=b[e+11>>0]|0;g=d<<24>>24<0;d=g?f[a+20>>2]|0:d&255;h=d>>>0>>0;c=h?d:k;if((c|0)!=0?(l=jf(j,g?f[e>>2]|0:e,c)|0,(l|0)!=0):0)if((l|0)<0)i=7;else i=8;else if(k>>>0>>0)i=7;else i=8;if((i|0)!=7)if((i|0)==8){i=0;c=k>>>0>>0?k:d;if((c|0)!=0?(m=jf(g?f[e>>2]|0:e,j,c)|0,(m|0)!=0):0){if((m|0)>=0){a=1;i=14;break}}else i=10;if((i|0)==10?(0,!h):0){a=1;i=14;break}a=a+4|0}a=f[a>>2]|0;if(!a){a=0;i=14;break}}if((i|0)==14)return a|0;return 0}function jd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;i=k;j=f[c+4>>2]|0;if(!j)xa(9274,9525,70,9697);g=f[c+8>>2]|0;if(!g)xa(9274,9525,70,9697);d=f[d>>2]|0;if((d|0)<0)e=-1073741824;else e=f[(f[f[c+16>>2]>>2]|0)+(d<<2)>>2]|0;d=f[c+20>>2]|0;c=f[d>>2]|0;if((f[d+4>>2]|0)-c>>2>>>0<=e>>>0)Yh(d);d=f[g+(f[c+(e<<2)>>2]<<2)>>2]|0;if(!(b[j+84>>0]|0))d=f[(f[j+68>>2]|0)+(d<<2)>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[i>>2]=d;g=b[j+24>>0]|0;f[h>>2]=f[i>>2];Ua(j,h,g,a)|0;u=k;return}function kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;d=l;c=f[d>>2]|0;d=f[d+4>>2]|0;g=Wg(c|0,d|0,4,0)|0;e=I;if((k|0)<(e|0)|(k|0)==(e|0)&j>>>0>>0){a=0;return a|0}b=f[b>>2]|0;i=b+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;m=l;f[m>>2]=g;f[m+4>>2]=e;c=Wg(c|0,d|0,8,0)|0;d=I;if((k|0)<(d|0)|(k|0)==(d|0)&j>>>0>>0){m=0;return m|0}b=b+g|0;b=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;m=l;f[m>>2]=c;f[m+4>>2]=d;if((i|0)>(b|0)){m=0;return m|0}f[a+12>>2]=i;f[a+16>>2]=b;m=b+(1-i)|0;f[a+20>>2]=m;b=(m|0)/2|0;c=a+24|0;f[c>>2]=b;f[a+28>>2]=0-b;if(m&1|0){m=1;return m|0}f[c>>2]=b+-1;m=1;return m|0}function ld(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[b>>2]|0;e=f[a+12>>2]|0;if((i|0)>(e|0))xa(8716,7895,259,8740);d=f[c>>2]|0;if((d|0)>(e|0))xa(8754,7895,260,8740);a=0-e|0;if((i|0)<(a|0))xa(8778,7895,261,8740);if((d|0)<(a|0))xa(8803,7895,262,8740);if((d|i|0)>-1){g=1;a=1}else{a=(i|0)<1&(d|0)<1;g=a?-1:(i|0)>0?1:-1;a=a?-1:(d|0)>0?1:-1}h=X(e,g)|0;e=X(e,a)|0;f[b>>2]=(i<<1)-h;d=(f[c>>2]<<1)-e|0;f[c>>2]=d;i=(X(g,a)|0)>-1;a=f[b>>2]|0;if(i){f[b>>2]=0-d;i=0-a|0;f[c>>2]=i;i=f[b>>2]|0;i=i+h|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}else{f[b>>2]=d;i=a;f[c>>2]=i;i=f[b>>2]|0;i=i+h|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}}function md(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;e=h+8|0;g=h;switch(d|0){case 2:{i=f[b+12>>2]|0;d=f[b+4>>2]|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Xc(g,c,i,d,e);f[a>>2]=f[g>>2];u=h;return}case 3:{d=f[b+12>>2]|0;i=f[b+4>>2]|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Tc(g,c,d,i,e);f[a>>2]=f[g>>2];u=h;return}default:{f[a>>2]=0;u=h;return}}}function nd(a,b){a=a|0;b=b|0;var c=0,d=0,e=Ca;if((b|0)!=1){if(b+-1&b)b=Qa(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){sb(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Qa(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;sb(a,b);return}function od(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+8|0;e=f[l>>2]|0;g=b[e+24>>0]|0;k=g<<24>>24;m=k<<1;n=xi(k>>>0>2147483647?-1:k<<1)|0;j=f[a+16>>2]|0;j=(f[f[j>>2]>>2]|0)+(f[j+48>>2]|0)|0;if(!c){yi(n);return}if(g<<24>>24>0){e=0;g=0;h=0;while(1){a=0;i=h;while(1){d[n+(a<<1)>>1]=f[j+(i<<2)>>2];a=a+1|0;if((a|0)==(k|0))break;else i=i+1|0}Mc((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+g|0,n|0,m|0)|0;e=e+1|0;if((e|0)==(c|0))break;else{g=g+m|0;h=k+h|0}}yi(n);return}else{Mc(f[f[e+64>>2]>>2]|0,n|0,m|0)|0;if((c|0)==1){yi(n);return}else{a=0;e=1}do{a=a+m|0;Mc((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+a|0,n|0,m|0)|0;e=e+1|0}while((e|0)!=(c|0));yi(n);return}}function pd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;d=f[k>>2]|0;e=b[d+24>>0]|0;j=e<<24>>24;l=j<<2;m=xi(j>>>0>1073741823?-1:j<<2)|0;i=f[a+16>>2]|0;i=(f[f[i>>2]>>2]|0)+(f[i+48>>2]|0)|0;if(!c){yi(m);return}if(e<<24>>24>0){d=0;e=0;g=0;while(1){a=0;h=g;while(1){f[m+(a<<2)>>2]=f[i+(h<<2)>>2];a=a+1|0;if((a|0)==(j|0))break;else h=h+1|0}Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,m|0,l|0)|0;d=d+1|0;if((d|0)==(c|0))break;else{e=e+l|0;g=j+g|0}}yi(m);return}else{Mc(f[f[d+64>>2]>>2]|0,m|0,l|0)|0;if((c|0)==1){yi(m);return}else{a=0;d=1}do{a=a+l|0;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+a|0,m|0,l|0)|0;d=d+1|0}while((d|0)!=(c|0));yi(m);return}}function qd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=1268;e=a+60|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Ga[f[(f[b>>2]|0)+4>>2]&127](b);d=f[a+48>>2]|0;if(d|0){b=a+52|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d)}d=a+36|0;b=f[d>>2]|0;if(b|0){e=a+40|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Bi(b)}f[a>>2]=1164;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d);return}function rd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{d=b+-4|0;f[h>>2]=d;e=f[d>>2]|0;f[d>>2]=0;if(e|0){d=e+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){d=b+12|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Bi(c)}Bi(b)}b=f[e+68>>2]|0;if(b|0){c=e+72|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}d=e+64|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b>>2]|0;if(c|0){d=b+4|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Bi(c)}Bi(b)}Bi(e)}b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;Bi(b);return}function sd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{e=c+-4|0;f[h>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+88|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(c)}c=f[g+68>>2]|0;if(c|0){d=g+72|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Bi(c)}e=g+64|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(c)}Bi(g)}c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Bi(b);return}function td(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;d=l;c=f[d>>2]|0;d=f[d+4>>2]|0;e=Wg(c|0,d|0,4,0)|0;g=I;if((k|0)<(g|0)|(k|0)==(g|0)&j>>>0>>0)return 0;i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;b=l;f[b>>2]=e;f[b+4>>2]=g;b=Wg(c|0,d|0,8,0)|0;c=I;if((k|0)<(c|0)|(k|0)==(c|0)&j>>>0>>0)return 0;f[l>>2]=b;f[l+4>>2]=c;if(((i|0)%2|0|0)!=1)xa(8828,8861,68,9029);b=(_(i|0)|0)^31;c=b+1|0;if(!b)xa(7884,7895,60,8018);if(c>>>0<31){f[a>>2]=c;l=2<>2]=l+-1;l=l+-2|0;f[a+8>>2]=l;f[a+12>>2]=(l|0)/2|0;return (b+-1|0)>>>0<29|0}else xa(8038,7895,61,8018);return 0}function ud(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=Ca;n=u;u=u+32|0;i=n+16|0;k=n;l=a+8|0;m=b[(f[l>>2]|0)+24>>0]<<2;j=f[a+16>>2]|0;j=(f[f[j>>2]>>2]|0)+(f[j+48>>2]|0)|0;a=f[a+24>>2]|0;if((a|0)<=1)xa(7884,7895,60,8018);if((a|0)>=31)xa(8038,7895,61,8018);f[k>>2]=a;d=1<>2]=d+-1;d=d+-2|0;h=k+8|0;f[h>>2]=d;f[k+12>>2]=(d|0)/2|0;if(!c){u=n;return 1}e=0;a=0;g=0;while(1){o=$($(1.0)/$(d|0));sc(k,$($(f[j+(g<<2)>>2]|0)*o),$($(f[j+((g|1)<<2)>>2]|0)*o),i);Mc((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+e|0,i|0,m|0)|0;a=a+1|0;if((a|0)==(c|0))break;e=e+m|0;g=g+2|0;d=f[h>>2]|0}u=n;return 1}function vd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+16|0;j=m+8|0;k=m;l=f[b>>2]|0;h=f[a+12>>2]<<1;if((l|0)>(h|0))xa(8135,8180,69,8366);e=f[b+4>>2]|0;if((e|0)>(h|0))xa(8387,8180,70,8366);g=f[c>>2]|0;if((g|0)>(h|0))xa(8432,8180,71,8366);b=f[c+4>>2]|0;if((b|0)>(h|0))xa(8477,8180,72,8366);if((l|0)<=-1)xa(8522,8180,74,8366);if((e|0)<=-1)xa(8544,8180,75,8366);if((g|0)<=-1)xa(8566,8180,76,8366);if((b|0)>-1){f[j>>2]=l;f[j+4>>2]=e;f[k>>2]=g;f[k+4>>2]=b;$b(i,a,j,k);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];u=m;return}else xa(8588,8180,77,8366)}function wd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+16|0;j=m+8|0;k=m;l=f[b>>2]|0;h=f[a+12>>2]<<1;if((l|0)>(h|0))xa(8135,11613,65,8366);e=f[b+4>>2]|0;if((e|0)>(h|0))xa(8387,11613,66,8366);g=f[c>>2]|0;if((g|0)>(h|0))xa(8432,11613,67,8366);b=f[c+4>>2]|0;if((b|0)>(h|0))xa(8477,11613,68,8366);if((l|0)<=-1)xa(8522,11613,70,8366);if((e|0)<=-1)xa(8544,11613,71,8366);if((g|0)<=-1)xa(8566,11613,72,8366);if((b|0)>-1){f[i>>2]=g;f[i+4>>2]=b;f[k>>2]=l;f[k+4>>2]=e;zc(j,a,k,i);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];u=m;return}else xa(8588,11613,73,8366)}function xd(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=a+12|0;i=f[h>>2]|0;f[h>>2]=0;if(i|0){c=f[i+28>>2]|0;if(c|0)do{h=c;c=f[c>>2]|0;xd(h+8|0);Bi(h)}while((c|0)!=0);h=i+20|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0)Bi(c);c=f[i+8>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;g=f[d+20>>2]|0;if(g|0){h=d+24|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;Bi(g)}if((b[e+11>>0]|0)<0)Bi(f[e>>2]|0);Bi(d)}while((c|0)!=0);c=f[i>>2]|0;f[i>>2]=0;if(c|0)Bi(c);Bi(i)}if((b[a+11>>0]|0)>=0)return;Bi(f[a>>2]|0);return}function yd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;i=pg(32)|0;f[a>>2]=i;f[a+4>>2]=c+8;k=a+8|0;b[k>>0]=0;j=i+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;j=i+20|0;h=e+12|0;f[j>>2]=0;f[i+24>>2]=0;f[i+28>>2]=0;i=e+16|0;e=f[i>>2]|0;c=f[h>>2]|0;g=e-c|0;if(!g){g=c;c=0}else{Gd(j,g);g=f[h>>2]|0;e=f[i>>2]|0;c=f[j>>2]|0}Mc(c|0,g|0,e-g|0)|0;b[k>>0]=1;a=f[a>>2]|0;f[a+4>>2]=d;f[a>>2]=0;return}function zd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;g=j+16|0;c=j+8|0;d=j;h=a+8|0;if(f[h>>2]<<5>>>0>=b>>>0){u=j;return}f[g>>2]=0;i=g+4|0;f[i>>2]=0;e=g+8|0;f[e>>2]=0;if((b|0)<0)Yh(g);l=((b+-1|0)>>>5)+1|0;k=pg(l<<2)|0;f[g>>2]=k;f[i>>2]=0;f[e>>2]=l;l=f[a>>2]|0;f[c>>2]=l;f[c+4>>2]=0;k=a+4|0;b=f[k>>2]|0;f[d>>2]=l+(b>>>5<<2);f[d+4>>2]=b&31;Hc(g,c,d);b=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=b;g=f[k>>2]|0;f[k>>2]=f[i>>2];f[i>>2]=g;i=f[h>>2]|0;f[h>>2]=f[e>>2];f[e>>2]=i;if(b|0)Bi(b);u=j;return}function Ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=(f[b+4>>2]|0)-(f[b>>2]|0)|0;l=j>>2;k=a+8|0;d=f[(f[k>>2]|0)+40>>2]|0;m=xi((d|0)>-1?d:-1)|0;e=c+8|0;if((j|0)<=0){c=1;yi(m);return c|0}g=c+16|0;b=0;a=0;while(1){o=e;n=f[o>>2]|0;o=f[o+4>>2]|0;i=g;h=f[i>>2]|0;i=Wg(h|0,f[i+4>>2]|0,d|0,0)|0;j=I;if((o|0)<(j|0)|(o|0)==(j|0)&n>>>0>>0){b=0;a=5;break}Mc(m|0,(f[c>>2]|0)+h|0,d|0)|0;o=g;f[o>>2]=i;f[o+4>>2]=j;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+b|0,m|0,d|0)|0;a=a+1|0;if((a|0)>=(l|0)){b=1;a=5;break}else b=b+d|0}if((a|0)==5){yi(m);return b|0}return 0}function Bd(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o;if((-18-c|0)>>>0>>0)Yh(a);if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){k=d+c|0;l=c<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=pg(k)|0;if(g|0)Zg(l,m,g)|0;if(i|0)Zg(l+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)Zg(l+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)Bi(m);f[a>>2]=l;f[a+8>>2]=k|-2147483648;i=d+i|0;f[a+4>>2]=i;b[n>>0]=0;Gh(l+i|0,n);u=o;return}function Cd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;d=f[k>>2]|0;l=a+4|0;c=f[l>>2]|0;if(d-c>>2>>>0>=b>>>0){Vd(c|0,0,b<<2|0)|0;f[l>>2]=c+(b<<2);return}j=f[a>>2]|0;i=c-j|0;h=i>>2;c=h+b|0;if(c>>>0>1073741823)Yh(a);g=d-j|0;d=g>>1;d=g>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(d)if(d>>>0>1073741823){l=za(8)|0;gh(l,14257);f[l>>2]=3624;qa(l|0,952,75)}else{g=pg(d<<2)|0;break}else g=0;while(0);e=g+(h<<2)|0;Vd(e|0,0,b<<2|0)|0;c=e+(0-h<<2)|0;if((i|0)>0)Mc(c|0,j|0,i|0)|0;f[a>>2]=c;f[l>>2]=e+(b<<2);f[k>>2]=g+(d<<2);if(!j)return;Bi(j);return}function Dd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;i=j;do if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)>511){k=d+8|0;l=f[k+4>>2]|0;c=d+16|0;g=c;e=f[g>>2]|0;g=f[g+4>>2]|0;if((l|0)>(g|0)|((l|0)==(g|0)?(f[k>>2]|0)>>>0>e>>>0:0)){l=b[(f[d>>2]|0)+e>>0]|0;k=Wg(e|0,g|0,1,0)|0;f[c>>2]=k;f[c+4>>2]=I;c=l&255;f[a+24>>2]=c;break}else{l=0;u=j;return l|0}}else c=f[a+24>>2]|0;while(0);f[i>>2]=1108;f[i+4>>2]=-1;zh(i,c);l=Re(i,f[a+16>>2]|0)|0;u=j;return l|0}function Ed(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;c=g;if((h[(f[a+4>>2]|0)+36>>0]<<8&65535)>511?!(Ja[f[(f[a>>2]|0)+52>>2]&127](a)|0):0){e=0;u=g;return e|0}f[c>>2]=1136;f[c+4>>2]=-1;e=c+8|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;rf(c,f[a+24>>2]|0,f[a+28>>2]|0,b[(f[a+8>>2]|0)+24>>0]|0,$(n[a+32>>2]));a=Re(c,f[a+16>>2]|0)|0;f[c>>2]=1136;e=f[e>>2]|0;if(e|0){c=c+12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Bi(e)}e=a;u=g;return e|0}function Fd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+48|0;e=h+16|0;i=h;Bh(e);f[e+16>>2]=0;f[e+20>>2]=0;g=e+16|0;f[e+12>>2]=g;ie(i,a,e,c,d);d=a+44|0;f[d>>2]=f[i>>2];c=i+4|0;Ff(a+48|0,c)|0;if((b[c+11>>0]|0)<0)Bi(f[c>>2]|0);ae(e+12|0,f[g>>2]|0);fe(e,f[e+4>>2]|0);u=h;return d|0}function Gd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;d=f[k>>2]|0;if((g-d|0)>>>0>=c>>>0){do{b[d>>0]=0;d=(f[k>>2]|0)+1|0;f[k>>2]=d;c=c+-1|0}while((c|0)!=0);return}e=f[a>>2]|0;h=d-e|0;d=h+c|0;if((d|0)<0)Yh(a);g=g-e|0;i=g<<1;d=g>>>0<1073741823?(i>>>0>>0?d:i):2147483647;if(!d)e=0;else e=pg(d)|0;i=e+h|0;h=e+d|0;g=i;d=i;do{b[d>>0]=0;d=g+1|0;g=d;c=c+-1|0}while((c|0)!=0);c=f[a>>2]|0;e=(f[k>>2]|0)-c|0;d=i+(0-e)|0;if((e|0)>0)Mc(d|0,c|0,e|0)|0;f[a>>2]=d;f[k>>2]=g;f[j>>2]=h;if(!c)return;Bi(c);return}function Hd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if(!(td(a+8|0,c)|0)){h=0;return h|0}do if((j[c+38>>1]|0)<514){h=c+8|0;i=f[h+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((i|0)>(g|0)|((i|0)==(g|0)?(f[h>>2]|0)>>>0>e>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+e>>0]|0;g=Wg(e|0,g|0,1,0)|0;i=d;f[i>>2]=g;f[i+4>>2]=I;if((h&255)<2){f[a+68>>2]=h&255;break}else{i=0;return i|0}}while(0);i=bc(a+88|0,c)|0;return i|0}function Id(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;h=f[a>>2]|0;f[a>>2]=0;if(!h)return;a=f[h+28>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;Id(c+20|0);if((b[d+11>>0]|0)<0)Bi(f[d>>2]|0);Bi(c)}while((a|0)!=0);g=h+20|0;a=f[g>>2]|0;f[g>>2]=0;if(a|0)Bi(a);a=f[h+8>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;e=f[c+20>>2]|0;if(e|0){g=c+24|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}if((b[d+11>>0]|0)<0)Bi(f[d>>2]|0);Bi(c)}while((a|0)!=0);a=f[h>>2]|0;f[h>>2]=0;if(a|0)Bi(a);Bi(h);return}function Jd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if(!(hd(a+8|0,c)|0)){h=0;return h|0}do if((j[c+38>>1]|0)<514){h=c+8|0;i=f[h+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((i|0)>(g|0)|((i|0)==(g|0)?(f[h>>2]|0)>>>0>e>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+e>>0]|0;g=Wg(e|0,g|0,1,0)|0;i=d;f[i>>2]=g;f[i+4>>2]=I;if((h&255)<2){f[a+68>>2]=h&255;break}else{i=0;return i|0}}while(0);i=bc(a+88|0,c)|0;return i|0}function Kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+4|0;j=f[a>>2]|0;k=(f[i>>2]|0)-j|0;h=k>>2;c=h+1|0;if(c>>>0>1073741823)Yh(a);l=a+8|0;g=(f[l>>2]|0)-j|0;d=g>>1;d=g>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(d)if(d>>>0>1073741823){l=za(8)|0;gh(l,14257);f[l>>2]=3624;qa(l|0,952,75)}else{g=pg(d<<2)|0;break}else g=0;while(0);e=g+(h<<2)|0;f[e>>2]=f[b>>2];c=e+(0-h<<2)|0;if((k|0)>0)Mc(c|0,j|0,k|0)|0;f[a>>2]=c;f[i>>2]=e+4;f[l>>2]=g+(d<<2);if(!j)return;Bi(j);return}function Ld(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=a+8|0;d=f[h>>2]|0;if((d|0)<0){j=0;return j|0}j=a+4|0;e=f[j>>2]|0;g=e+4|0;c=f[g>>2]|0;b=f[e>>2]|0;a=c-b>>2;if(d>>>0<=a>>>0){if(d>>>0>>0?(i=b+(d<<2)|0,(c|0)!=(i|0)):0)f[g>>2]=c+(~((c+-4-i|0)>>>2)<<2)}else{Cd(e,d-a|0);d=f[h>>2]|0}if((d|0)<=0){j=1;return j|0}e=f[j>>2]|0;c=f[e>>2]|0;b=(f[e+4>>2]|0)-c>>2;a=0;while(1){if(b>>>0<=a>>>0){b=10;break}f[c+(a<<2)>>2]=a;a=a+1|0;if((a|0)>=(d|0)){a=1;b=12;break}}if((b|0)==10)Yh(e);else if((b|0)==12)return a|0;return 0}function Md(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=f[a+28>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;h=d+20|0;g=f[h>>2]|0;f[h>>2]=0;if(g|0){Md(g);Bi(g)}if((b[e+11>>0]|0)<0)Bi(f[e>>2]|0);Bi(d)}while((c|0)!=0);h=a+20|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0)Bi(c);c=f[a+8>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;g=f[d+20>>2]|0;if(g|0){h=d+24|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;Bi(g)}if((b[e+11>>0]|0)<0)Bi(f[e>>2]|0);Bi(d)}while((c|0)!=0);c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Bi(c);return}function Nd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;h=j+4|0;i=j;if((d|0)!=1){f[a>>2]=0;u=j;return}g=f[b+12>>2]|0;d=f[b+4>>2]|0;b=h;e=b+36|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(e|0));Nc(i,c,g,d,h);e=f[h+24>>2]|0;if(e|0){d=h+28|0;b=f[d>>2]|0;if((b|0)!=(e|0))f[d>>2]=b+(~((b+-4-e|0)>>>2)<<2);Bi(e)}f[a>>2]=f[i>>2];u=j;return}function Od(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0;do if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)<512){j=d+8|0;k=f[j+4>>2]|0;e=d+16|0;i=e;g=f[i>>2]|0;i=f[i+4>>2]|0;if((k|0)>(i|0)|((k|0)==(i|0)?(f[j>>2]|0)>>>0>g>>>0:0)){k=b[(f[d>>2]|0)+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=e;f[j>>2]=i;f[j+4>>2]=I;f[a+24>>2]=k&255;break}else{k=0;return k|0}}while(0);k=rb(a,c,d)|0;return k|0}function Pd(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+16|0;a=f[b>>2]|0;f[b>>2]=0;d=f[c>>2]|0;f[c>>2]=a;if(!d)return;b=d+88|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){a=f[c+8>>2]|0;if(a|0){b=c+12|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Bi(a)}Bi(c)}a=f[d+68>>2]|0;if(a|0){b=d+72|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);Bi(a)}c=d+64|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Bi(b)}Bi(a)}Bi(d);return}function Qd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=c+8|0;i=f[g+4>>2]|0;h=c+16|0;e=h;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((i|0)>(e|0)|((i|0)==(e|0)?(f[g>>2]|0)>>>0>d>>>0:0))){i=0;return i|0}g=b[(f[c>>2]|0)+d>>0]|0;e=Wg(d|0,e|0,1,0)|0;i=h;f[i>>2]=e;f[i+4>>2]=I;do if(g<<24>>24<0)if(Qd(a,c)|0){c=a;c=Fg(f[c>>2]|0,f[c+4>>2]|0,7)|0;d=I;i=a;f[i>>2]=c;f[i+4>>2]=d;c=c|g&127;break}else{i=0;return i|0}else{c=g&255;d=0}while(0);i=a;f[i>>2]=c;f[i+4>>2]=d;i=1;return i|0}function Rd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=a+11|0;e=b[j>>0]|0;g=e<<24>>24<0;if(g)h=(f[a+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0>=d>>>0){if(g)e=f[a>>2]|0;else e=a;Yg(e,c,d)|0;b[i>>0]=0;Gh(e+d|0,i);if((b[j>>0]|0)<0){f[a+4>>2]=d;break}else{b[j>>0]=d;break}}else{if(g)e=f[a+4>>2]|0;else e=e&255;Bd(a,h,d-h|0,e,0,e,d,c)}while(0);u=k;return a|0}function Sd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=f[a>>2]|0;if(!d){e=0;return e|0}e=f[c>>2]|0;if(!e){e=0;return e|0}g=f[e>>2]|0;be(d,g,(f[e+4>>2]|0)-g|0,0)|0;b[a+24>>0]=b[c+24>>0]|0;f[a+28>>2]=f[c+28>>2];b[a+32>>0]=b[c+32>>0]|0;d=c+40|0;e=f[d+4>>2]|0;g=a+40|0;f[g>>2]=f[d>>2];f[g+4>>2]=e;g=c+48|0;e=f[g+4>>2]|0;d=a+48|0;f[d>>2]=f[g>>2];f[d+4>>2]=e;f[a+56>>2]=f[c+56>>2];d=c+8|0;e=a+8|0;f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2];f[e+12>>2]=f[d+12>>2];e=1;return e|0}function Td(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;if(c|0){k=a+11|0;e=b[k>>0]|0;if(e<<24>>24<0){h=f[a+4>>2]|0;g=(f[a+8>>2]&2147483647)+-1|0}else{h=e&255;g=10}i=h+c|0;if((g-h|0)>>>0>>0){de(a,g,i-g|0,h,h,0,0);e=b[k>>0]|0}if(e<<24>>24<0)e=f[a>>2]|0;else e=a;Dg(e+h|0,c,d)|0;if((b[k>>0]|0)<0)f[a+4>>2]=i;else b[k>>0]=i;b[j>>0]=0;Gh(e+i|0,j)}u=l;return a|0}function Ud(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;do if(!(xh(a,f[c+8>>2]|0,g)|0)){if(xh(a,f[c>>2]|0,g)|0){a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[a>>2]=e;f[h>>2]=d;e=c+40|0;f[e>>2]=(f[e>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1;f[c+44>>2]=4;break}if((e|0)==1)f[a>>2]=1}}else cg(0,c,d,e);while(0);return}function Vd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}e=h&-4|0;g=e-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(g|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(e|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(h|0)){b[a>>0]=c;a=a+1|0}return h-d|0}function Wd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0){e=f[c>>2]|0;c=f[c+4>>2]|0;if(c>>>0>4294967279)Yh(a);if(c>>>0<11)b[a+11>>0]=c;else{i=c+16&-16;h=pg(i)|0;f[a>>2]=h;f[a+8>>2]=i|-2147483648;f[a+4>>2]=c;a=h}Zg(a,e,c)|0;b[d>>0]=0;Gh(a+c|0,d)}else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}u=g;return}function Xd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;if(!a){e=1;return e|0}j=d+8|0;k=f[j+4>>2]|0;g=d+16|0;i=g;h=f[i>>2]|0;i=f[i+4>>2]|0;if(!((k|0)>(i|0)|((k|0)==(i|0)?(f[j>>2]|0)>>>0>h>>>0:0))){k=0;return k|0}k=b[(f[d>>2]|0)+h>>0]|0;i=Wg(h|0,i|0,1,0)|0;j=g;f[j>>2]=i;f[j+4>>2]=I;switch(k<<24>>24){case 0:{k=tb(a,c,d,e)|0;return k|0}case 1:{k=Ib(a,d,e)|0;return k|0}default:{k=0;return k|0}}return 0}function Yd(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;b[c+53>>0]=1;do if((f[c+4>>2]|0)==(e|0)){b[c+52>>0]=1;e=c+16|0;h=f[e>>2]|0;j=c+54|0;k=c+48|0;i=c+24|0;a=c+36|0;if(!h){f[e>>2]=d;f[i>>2]=g;f[a>>2]=1;if(!((f[k>>2]|0)==1&(g|0)==1))break;b[j>>0]=1;break}if((h|0)!=(d|0)){f[a>>2]=(f[a>>2]|0)+1;b[j>>0]=1;break}a=f[i>>2]|0;if((a|0)==2){f[i>>2]=g;a=g}if((f[k>>2]|0)==1&(a|0)==1)b[j>>0]=1}while(0);return}function Zd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a:do if(!(xh(a,f[c+8>>2]|0,0)|0)){h=f[a+12>>2]|0;g=a+16+(h<<3)|0;of(a+16|0,c,d,e);if((h|0)>1){h=c+54|0;a=a+24|0;do{of(a,c,d,e);if(b[h>>0]|0)break a;a=a+8|0}while(a>>>0>>0)}}else Ie(0,c,d,e);while(0);return}function _d(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;if(!a)return;c=a+48|0;if((b[c+11>>0]|0)<0)Bi(f[c>>2]|0);f[a>>2]=2828;e=f[a+20>>2]|0;if(e|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Bi(e)}e=a+8|0;c=f[e>>2]|0;if(c|0){g=a+12|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{h=d+-4|0;f[g>>2]=h;d=f[h>>2]|0;f[h>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Bi(c)}Bi(a);return}function $d(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1220;c=a+16|0;d=f[c>>2]|0;f[c>>2]=0;if(!d)return;c=d+88|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){a=b+12|0;if((f[a>>2]|0)!=(c|0))f[a>>2]=c;Bi(c)}Bi(b)}a=f[d+68>>2]|0;if(a|0){b=d+72|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);Bi(a)}c=d+64|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Bi(b)}Bi(a)}Bi(d);return}function ae(a,b){a=a|0;b=b|0;if(!b)return;else{ae(a,f[b>>2]|0);ae(a,f[b+4>>2]|0);fe(b+20|0,f[b+24>>2]|0);Bi(b);return}}function be(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)<0){c=0;return c|0}do if(!b){b=a+4|0;d=f[b>>2]|0;e=f[a>>2]|0;g=d-e|0;if(c>>>0>g>>>0){Gd(a,c-g|0);break}if(c>>>0>>0?(h=e+c|0,(d|0)!=(h|0)):0)f[b>>2]=h}else Dc(a,b,b+c|0);while(0);c=a+24|0;h=c;h=Wg(f[h>>2]|0,f[h+4>>2]|0,1,0)|0;f[c>>2]=h;f[c+4>>2]=I;c=1;return c|0}function ce(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=a+64|0;if((f[h>>2]|0)==0?(g=pg(32)|0,xg(g),e=f[h>>2]|0,f[h>>2]=g,e|0):0){g=f[e>>2]|0;if(g|0){d=e+4|0;if((f[d>>2]|0)!=(g|0))f[d>>2]=g;Bi(g)}Bi(e)}d=Ef(f[a+28>>2]|0)|0;d=X(b[a+24>>0]|0,d)|0;e=((d|0)<0)<<31>>31;i=f[h>>2]|0;g=ng(d|0,e|0,c|0,0)|0;if(!(be(i,0,g,I)|0)){i=0;return i|0}Ke(a,f[h>>2]|0,d,e,0,0);f[a+80>>2]=c;i=1;return i|0}function de(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-c|0)>>>0>>0)Yh(a);if((b[a+11>>0]|0)<0)l=f[a>>2]|0;else l=a;if(c>>>0<2147483623){j=d+c|0;k=c<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=pg(j)|0;if(g|0)Zg(k,l,g)|0;d=e-h-g|0;if(d|0)Zg(k+g+i|0,l+g+h|0,d)|0;if((c|0)!=10)Bi(l);f[a>>2]=k;f[a+8>>2]=j|-2147483648;return}function ee(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;g=e>>>0>1073741823?-1:e<<2;h=xi(g)|0;Vd(h|0,0,g|0)|0;g=a+8|0;vd(g,h,b,c);if((e|0)>=(d|0)){yi(h);return 1}a=0-e|0;f=e;do{i=c+(f<<2)|0;vd(g,i+(a<<2)|0,b+(f<<2)|0,i);f=f+e|0}while((f|0)<(d|0));yi(h);return 1}function fe(a,c){a=a|0;c=c|0;var d=0;if(!c)return;fe(a,f[c>>2]|0);fe(a,f[c+4>>2]|0);a=c+16|0;d=c+28|0;if((b[d+11>>0]|0)<0)Bi(f[d>>2]|0);if((b[a+11>>0]|0)<0)Bi(f[a>>2]|0);Bi(c);return}function ge(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;e=h;if(!(xh(a,b,0)|0))if((b|0)!=0?(g=Zc(b,896,880,0)|0,(g|0)!=0):0){b=e+4|0;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=g;f[e+8>>2]=a;f[e+12>>2]=-1;f[e+48>>2]=1;Oa[f[(f[g>>2]|0)+28>>2]&7](g,e,f[c>>2]|0,1);if((f[e+24>>2]|0)==1){f[c>>2]=f[e+16>>2];b=1}else b=0}else b=0;else b=1;u=h;return b|0}function he(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;g=e>>>0>1073741823?-1:e<<2;h=xi(g)|0;Vd(h|0,0,g|0)|0;g=a+8|0;wd(g,h,b,c);if((e|0)>=(d|0)){yi(h);return 1}a=0-e|0;f=e;do{i=c+(f<<2)|0;wd(g,i+(a<<2)|0,b+(f<<2)|0,i);f=f+e|0}while((f|0)<(d|0));yi(h);return 1}function ie(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;pb(h,c,d,e,g);c=f[h>>2]|0;if(!c){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;c=h+4|0}else{f[a>>2]=c;c=h+4|0;Wd(a+4|0,c)}if((b[c+11>>0]|0)>=0){u=i;return}Bi(f[h+4>>2]|0);u=i;return}function je(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;f[a>>2]=d;if(d|0){o=d+16|0;m=f[o+4>>2]|0;n=a+8|0;f[n>>2]=f[o>>2];f[n+4>>2]=m;n=d+24|0;m=f[n+4>>2]|0;d=a+16|0;f[d>>2]=f[n>>2];f[d+4>>2]=m}b[a+24>>0]=e;f[a+28>>2]=g;b[a+32>>0]=h&1;o=a+40|0;f[o>>2]=i;f[o+4>>2]=j;o=a+48|0;f[o>>2]=k;f[o+4>>2]=l;f[a+56>>2]=c;return}function ke(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;i=f[h+4>>2]|0;g=c+16|0;e=g;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((i|0)>(e|0)|((i|0)==(e|0)?(f[h>>2]|0)>>>0>d>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+d>>0]|0;i=Wg(d|0,e|0,1,0)|0;d=g;f[d>>2]=i;f[d+4>>2]=I;d=h&255;do if(d&128)if(ke(a,c)|0){d=f[a>>2]<<7;f[a>>2]=d;d=d|h&127;break}else{i=0;return i|0}while(0);f[a>>2]=d;i=1;return i|0}function le(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;h=a+11|0;e=b[h>>0]|0;i=e<<24>>24<0;if(i)e=f[a+4>>2]|0;else e=e&255;do if(e>>>0>=c>>>0)if(i){i=(f[a>>2]|0)+c|0;b[g>>0]=0;Gh(i,g);f[a+4>>2]=c;break}else{b[g>>0]=0;Gh(a+c|0,g);b[h>>0]=c;break}else Td(a,c-e|0,d)|0;while(0);u=j;return}function me(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=2828;b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}d=a+8|0;b=f[d>>2]|0;if(!b){Bi(a);return}e=a+12|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Bi(b);Bi(a);return}function ne(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=2828;b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}e=a+8|0;b=f[e>>2]|0;if(!b)return;d=a+12|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{a=c+-4|0;f[d>>2]=a;c=f[a>>2]|0;f[a>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}Bi(b);return}function oe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1976;b=f[a+96>>2]|0;if(b|0)Bi(b);b=f[a+84>>2]|0;if(b|0)Bi(b);b=f[a+72>>2]|0;if(b|0)Bi(b);b=f[a+60>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function pe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1612;b=f[a+96>>2]|0;if(b|0)Bi(b);b=f[a+84>>2]|0;if(b|0)Bi(b);b=f[a+72>>2]|0;if(b|0)Bi(b);b=f[a+60>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function qe(a){a=a|0;var b=0,c=0;f[a>>2]=1976;b=f[a+96>>2]|0;if(b|0)Bi(b);b=f[a+84>>2]|0;if(b|0)Bi(b);b=f[a+72>>2]|0;if(b|0)Bi(b);b=f[a+60>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function re(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0,j=0;g=f[a+32>>2]|0;j=g+8|0;i=f[j>>2]|0;j=f[j+4>>2]|0;b=g+16|0;d=b;c=f[d>>2]|0;d=Wg(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((j|0)<(e|0)|(j|0)==(e|0)&i>>>0>>0){j=0;return j|0}j=(f[g>>2]|0)+c|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=b;f[i>>2]=d;f[i+4>>2]=e;f[(f[a+4>>2]|0)+80>>2]=j;j=1;return j|0}function se(a){a=a|0;var c=0,d=0,e=0,f=0,g=0,h=0;while(1){e=b[a>>0]|0;c=e<<24>>24;f=a+1|0;if(!($h(c)|0))break;else a=f}switch(c|0){case 45:{a=1;g=5;break}case 43:{a=0;g=5;break}default:{h=0;d=a;a=e}}if((g|0)==5){h=a;d=f;a=b[f>>0]|0}c=(a<<24>>24)+-48|0;if(c>>>0<10){a=0;do{d=d+1|0;a=(a*10|0)-c|0;c=(b[d>>0]|0)+-48|0}while(c>>>0<10)}else a=0;return (h|0?a:0-a|0)|0}function te(a){a=a|0;var b=0,c=0;f[a>>2]=1612;b=f[a+96>>2]|0;if(b|0)Bi(b);b=f[a+84>>2]|0;if(b|0)Bi(b);b=f[a+72>>2]|0;if(b|0)Bi(b);b=f[a+60>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function ue(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;f[a>>2]=0;h=a+4|0;f[h>>2]=0;f[a+8>>2]=0;g=b+4|0;c=(f[g>>2]|0)-(f[b>>2]|0)|0;d=c>>2;if(!d)return;if(d>>>0>1073741823)Yh(a);e=pg(c)|0;f[h>>2]=e;f[a>>2]=e;f[a+8>>2]=e+(d<<2);a=f[b>>2]|0;c=(f[g>>2]|0)-a|0;if((c|0)<=0)return;Mc(e|0,a|0,c|0)|0;f[h>>2]=e+(c>>>2<<2);return}function ve(a,c,d){a=a|0;c=c|0;d=d|0;c=Lc(a,c)|0;if((c|0)==(a+4|0)){a=-1;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}c=c+28|0;if((b[c+11>>0]|0)<0)c=f[c>>2]|0;a=se(c)|0;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}function we(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((d|0)<=0){e=1;return e|0}e=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[e>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Ea[f[(f[g>>2]|0)+20>>2]&15](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(d|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function xe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b>>2]|0;if(!c){e=0;return e|0}d=a+44|0;e=f[d>>2]|0;if(e>>>0<(f[a+48>>2]|0)>>>0){f[b>>2]=0;f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4;e=1;return e|0}else{Ic(a+40|0,b);e=1;return e|0}return 0}function ye(a){a=a|0;var c=0,d=0,e=0;e=a;a:do if(!(e&3))d=4;else{c=e;while(1){if(!(b[a>>0]|0)){a=c;break a}a=a+1|0;c=a;if(!(c&3)){d=4;break}}}while(0);if((d|0)==4){while(1){c=f[a>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009))a=a+4|0;else break}if((c&255)<<24>>24)do a=a+1|0;while((b[a>>0]|0)!=0)}return a-e|0}function ze(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((d|0)<=0){e=1;return e|0}e=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[e>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Ea[f[(f[g>>2]|0)+16>>2]&15](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(d|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function Ae(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2032;b=f[a+76>>2]|0;if(b|0)Bi(b);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)yi(b);f[a>>2]=1388;d=f[a+32>>2]|0;if(!d){Bi(a);return}b=a+36|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d);Bi(a);return}function Be(a){a=a|0;if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+24>>2]|0)){a=0;return a|0}if(!(f[a+28>>2]|0)){a=0;return a|0}if(!(f[a+32>>2]|0)){a=0;return a|0}if(!(f[a+36>>2]|0)){a=0;return a|0}a=(f[a+72>>2]|0)!=-1;return a|0}function Ce(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1668;b=f[a+76>>2]|0;if(b|0)Bi(b);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)yi(b);f[a>>2]=1388;d=f[a+32>>2]|0;if(!d){Bi(a);return}b=a+36|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d);Bi(a);return}function De(a){a=a|0;if(!(f[a+64>>2]|0)){a=0;return a|0}if(!(f[a+68>>2]|0)){a=0;return a|0}if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}if(!(f[a+56>>2]|0)){a=0;return a|0}a=(f[a+92>>2]|0)!=-1;return a|0}function Ee(a,b,c){a=a|0;b=b|0;c=c|0;switch(c<<24>>24){case 0:{b=pg(20)|0;Og(b);break}case 1:{b=pg(24)|0;Vg(b);break}case 2:{b=pg(36)|0;tg(b);break}case 3:{b=pg(28)|0;Sg(b);break}default:b=0}f[a>>2]=b;return}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;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=Jg(j^a|0,i^b|0,j|0,i|0)|0;g=I;a=f^j;b=e^i;return Jg((ub(h,g,Jg(f^c|0,e^d|0,f|0,e|0)|0,I,0)|0)^a|0,I^b|0,a|0,b|0)|0}function Ge(a,c){a=a|0;c=c|0;var d=0,e=0;f[c>>2]=2;e=a+4|0;d=c+8|0;a=f[d>>2]|0;c=(f[c+12>>2]|0)-a|0;if(c>>>0<4294967292){Ne(d,c+4|0,0);a=f[d>>2]|0}d=a+c|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[d>>0]=e;b[d+1>>0]=e>>8;b[d+2>>0]=e>>16;b[d+3>>0]=e>>24;return}function He(a){a=a|0;var b=0,c=0;f[a>>2]=2032;b=f[a+76>>2]|0;if(b|0)Bi(b);c=a+68|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)yi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function Ie(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;a=c+16|0;g=f[a>>2]|0;h=c+36|0;i=c+24|0;do if(g){if((g|0)!=(d|0)){f[h>>2]=(f[h>>2]|0)+1;f[i>>2]=2;b[c+54>>0]=1;break}if((f[i>>2]|0)==2)f[i>>2]=e}else{f[a>>2]=d;f[i>>2]=e;f[h>>2]=1}while(0);return}function Je(a){a=a|0;var b=0,c=0;f[a>>2]=1668;b=f[a+76>>2]|0;if(b|0)Bi(b);c=a+68|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)yi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function Ke(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;f[a>>2]=b;j=b+16|0;h=f[j+4>>2]|0;i=a+8|0;f[i>>2]=f[j>>2];f[i+4>>2]=h;i=b+24|0;h=f[i+4>>2]|0;b=a+16|0;f[b>>2]=f[i>>2];f[b+4>>2]=h;b=a+40|0;f[b>>2]=c;f[b+4>>2]=d;d=a+48|0;f[d>>2]=e;f[d+4>>2]=g;return}function Le(a,b,c){a=a|0;b=b|0;c=c|0;if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)<512?!(Ja[f[(f[a>>2]|0)+52>>2]&127](a)|0):0){c=0;return c|0}c=rb(a,b,c)|0;return c|0}function Me(a,b,c){a=a|0;b=b|0;c=c|0;if(!(zg(a,b,c)|0)){c=0;return c|0}b=f[b+4>>2]|0;if((c|0)<=-1)xa(13373,14023,67,14122);a=f[b+8>>2]|0;if(((f[b+12>>2]|0)-a>>2|0)<=(c|0))xa(13969,14023,68,14122);c=(f[(f[a+(c<<2)>>2]|0)+28>>2]|0)==9;return c|0}function Ne(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;c=a+4|0;g=f[c>>2]|0;e=f[a>>2]|0;d=g-e|0;if(b>>>0<=d>>>0){if(b>>>0>>0?(h=e+b|0,(g|0)!=(h|0)):0)f[c>>2]=h}else Gd(a,b-d|0);h=a+24|0;b=h;b=Wg(f[b>>2]|0,f[b+4>>2]|0,1,0)|0;f[h>>2]=b;f[h+4>>2]=I;return}function Oe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2088;b=f[a+76>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Pe(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=h[a+12>>0]|0;g=a+8|0;b=f[g>>2]|0;if(b>>>0<4096?(c=a+4|0,d=f[c>>2]|0,(d|0)>0):0){a=f[a>>2]|0;d=d+-1|0;f[c>>2]=d;b=h[a+d>>0]|0|b<<8;f[g>>2]=b}a=b&255;c=0-e&255;d=X(b>>>8,c)|0;e=a>>>0>>0;f[g>>2]=e?d+a|0:b-c-d|0;return e|0}function Qe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1724;b=f[a+76>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Re(a,b){a=a|0;b=b|0;var c=0,d=0;d=pg(40)|0;f[d>>2]=-1;xg(d+8|0);Ha[f[(f[a>>2]|0)+16>>2]&3](a,d);b=b+88|0;c=f[b>>2]|0;f[b>>2]=d;if(!c)return 1;a=f[c+8>>2]|0;if(a|0){b=c+12|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Bi(a)}Bi(c);return 1}function Se(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1164;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+4>>2]|0;if(!b){Bi(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Te(a){a=a|0;var b=0,c=0,d=0;b=f[a+8>>2]|0;c=f[a+12>>2]|0;if((b|0)==(c|0)){c=1;return c|0}a=a+32|0;while(1){d=f[b>>2]|0;b=b+4|0;if(!(Na[f[(f[d>>2]|0)+16>>2]&127](d,f[a>>2]|0)|0)){b=0;a=5;break}if((b|0)==(c|0)){b=1;a=5;break}}if((a|0)==5)return b|0;return 0}function Ue(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(xh(a,f[b+8>>2]|0,g)|0)Yd(0,b,c,d,e);else{a=f[a+8>>2]|0;Ma[f[(f[a>>2]|0)+20>>2]&3](a,b,c,d,e,g)}return}function Ve(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2144;zi(a+108|0);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function We(a){a=a|0;var b=0,c=0;f[a>>2]=2088;b=f[a+76>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function Xe(a){a=a|0;var b=0,c=0;f[a>>2]=2736;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)yi(b);f[a>>2]=1328;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){$d(a);Bi(a);return}Ga[f[(f[b>>2]|0)+4>>2]&127](b);$d(a);Bi(a);return}function Ye(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1780;zi(a+108|0);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Ze(a){a=a|0;var b=0,c=0;f[a>>2]=1724;b=f[a+76>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function _e(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1164;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d);return}function $e(a){a=a|0;var b=0,c=0;f[a>>2]=2144;zi(a+108|0);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c);return}function af(a){a=a|0;var b=0,c=0;f[a>>2]=2736;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)yi(b);f[a>>2]=1328;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){$d(a);return}Ga[f[(f[b>>2]|0)+4>>2]&127](b);$d(a);return}function bf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;f[a+4>>2]=b;d=f[b+4>>2]|0;if((c|0)<=-1)xa(13373,14023,67,14122);b=f[d+8>>2]|0;if(((f[d+12>>2]|0)-b>>2|0)>(c|0)){f[a+8>>2]=f[b+(c<<2)>>2];f[a+12>>2]=c;return 1}else xa(13969,14023,68,14122);return 0}function cf(a){a=a|0;var b=0,c=0;f[a>>2]=1780;zi(a+108|0);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c);return}function df(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0){b=0;return b|0}c=f[a+4>>2]|0;if(((f[c+12>>2]|0)-(f[c+8>>2]|0)>>2|0)<=(b|0)){c=0;return c|0}c=f[(f[a+8>>2]|0)+(f[(f[a+20>>2]|0)+(b<<2)>>2]<<2)>>2]|0;c=Na[f[(f[c>>2]|0)+32>>2]&127](c,b)|0;return c|0}function ef(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=f[a+4>>2]|0;h=i>>8;if(i&1)h=f[(f[d>>2]|0)+h>>2]|0;a=f[a>>2]|0;Ma[f[(f[a>>2]|0)+20>>2]&3](a,b,c,d+h|0,i&2|0?e:2,g);return}function ff(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(xh(a,f[b+8>>2]|0,0)|0)Ie(0,b,c,d);else{a=f[a+8>>2]|0;Oa[f[(f[a>>2]|0)+28>>2]&7](a,b,c,d)}return}function gf(a,b){a=a|0;b=b|0;var c=0;c=f[a+4>>2]|0;if(c|0?((h[c+36>>0]|0)<<8&65535)<512:0){c=1;return c|0}c=Na[f[(f[a>>2]|0)+48>>2]&127](a,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0;return c|0}function hf(a,b){a=a|0;b=b|0;var c=0;eg(a);f[a>>2]=1268;c=a+36|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;c=f[b>>2]|0;f[b>>2]=0;f[a+60>>2]=c;return}function jf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)a=0;else{while(1){e=b[a>>0]|0;f=b[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){a=0;break a}else{a=a+1|0;c=c+1|0}}a=(e&255)-(f&255)|0}while(0);return a|0}function kf(a,b,c){a=a|0;b=b|0;c=c|0;if(!(ce(f[a+8>>2]|0,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0)){c=0;return c|0}c=Ea[f[(f[a>>2]|0)+32>>2]&15](a,b,c)|0;return c|0}function lf(a,b){a=a|0;b=b|0;var c=0;c=f[a+16>>2]|0;if(((f[a+20>>2]|0)-c>>2|0)<=(b|0)){a=0;return a|0}b=f[c+(b<<2)>>2]|0;if((b|0)<0){a=0;return a|0}a=Qc(f[(f[a+36>>2]|0)+(b<<2)>>2]|0)|0;return a|0}function mf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=f[a+4>>2]|0;g=h>>8;if(h&1)g=f[(f[c>>2]|0)+g>>2]|0;a=f[a>>2]|0;Fa[f[(f[a>>2]|0)+24>>2]&3](a,b,c+g|0,h&2|0?d:2,e);return}function nf(a){a=a|0;if(!(f[a+60>>2]|0))return 0;if(!(f[a+44>>2]|0))return 0;if(!(f[a+48>>2]|0))return 0;if(!(f[a+52>>2]|0))return 0;else return (f[a+56>>2]|0)!=0|0;return 0}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=f[a+4>>2]|0;e=g>>8;if(g&1)e=f[(f[c>>2]|0)+e>>2]|0;a=f[a>>2]|0;Oa[f[(f[a>>2]|0)+28>>2]&7](a,b,c+e|0,g&2|0?d:2);return}function pf(a,c){a=a|0;c=c|0;var d=0,e=0;e=a;d=e+64|0;do{f[e>>2]=f[c>>2];e=e+4|0;c=c+4|0}while((e|0)<(d|0));e=a+64|0;f[a+88>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;b[e+20>>0]=0;return}function qf(a){a=a|0;if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}a=(f[a+56>>2]|0)!=0;return a|0}function rf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=$(e);f[a+4>>2]=b;uc(a+8|0,c,c+(d<<2)|0);n[a+20>>2]=e;return}function sf(a){a=a|0;var b=0,c=0;c=a+15&-16|0;b=f[r>>2]|0;a=b+c|0;if((c|0)>0&(a|0)<(b|0)|(a|0)<0){ea()|0;sa(12);return -1}f[r>>2]=a;if((a|0)>(da()|0)?(ca()|0)==0:0){f[r>>2]=b;sa(12);return -1}return b|0}function tf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=f[c>>2]|0;d=a;c=b-a>>2;while(1){if(!c)break;b=(c|0)/2|0;g=d+(b<<2)|0;a=(f[g>>2]|0)>>>0>>0;d=a?g+4|0:d;c=a?c+-1-b|0:b}return d|0}function uf(a,b){a=a|0;b=b|0;b=f[b+88>>2]|0;if(!b){a=0;return a|0}if((f[b>>2]|0)!=2){a=0;return a|0}b=f[b+8>>2]|0;f[a+4>>2]=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;a=1;return a|0}function vf(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;b[a+24>>0]=1;f[a+28>>2]=9;c=a+40|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+56>>2]=-1;f[a+60>>2]=0;return}function wf(a,b){a=a|0;b=b|0;if(!(Na[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){b=0;return b|0}if(!(Na[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){b=0;return b|0}b=Ja[f[(f[a>>2]|0)+44>>2]&127](a)|0;return b|0}function xf(a,c,d){a=a|0;c=c|0;d=d|0;if(!(zg(a,c,d)|0)){d=0;return d|0}a=f[a+8>>2]|0;if((b[a+24>>0]|0)!=3){d=0;return d|0}d=(f[a+28>>2]|0)==9;return d|0}function yf(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){c=0;return c|0}if((b[c+24>>0]|0)!=3){c=0;return c|0}f[a+44>>2]=c;c=1;return c|0}function zf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(xh(a,f[b+8>>2]|0,g)|0)Yd(0,b,c,d,e);return}function Af(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+11>>0]|0;e=d<<24>>24<0;if(e)d=f[a+4>>2]|0;else d=d&255;if(d>>>0<=c>>>0)Yh(a);if(e)a=f[a>>2]|0;return a+c|0}function Bf(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Cf(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){c=0;return c|0}if((b[c+24>>0]|0)!=3){c=0;return c|0}f[a+64>>2]=c;c=1;return c|0}function Df(a,c){a=a|0;c=c|0;if(((c|0)!=0?(f[c+56>>2]|0)==0:0)?(b[c+24>>0]|0)==3:0){f[a+60>>2]=c;a=1}else a=0;return a|0}function Ef(a){a=a|0;switch(a|0){case 11:case 2:case 1:{a=1;break}case 4:case 3:{a=2;break}case 6:case 5:{a=4;break}case 8:case 7:{a=8;break}case 9:{a=4;break}case 10:{a=8;break}default:a=-1}return a|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;Rd(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}return a|0}function Gf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=X(e,f)|0;d=a>>>16;a=(c>>>16)+(X(e,d)|0)|0;e=b>>>16;b=X(e,f)|0;return (I=(a>>>16)+(X(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Hf(a){a=a|0;var c=0,d=0;b[a+36>>0]=0;d=Wg(f[a+32>>2]|0,0,7,0)|0;d=Hg(d|0,I|0,3)|0;a=a+16|0;c=a;c=Wg(d|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;f[a>>2]=c;f[a+4>>2]=I;return}function If(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xa(4781,4787,76,4942);return 0}function Jf(a,b){a=a|0;b=b|0;var c=0,d=0;d=ye(b)|0;c=pg(d+13|0)|0;f[c>>2]=d;f[c+4>>2]=d;f[c+8>>2]=0;c=Lh(c)|0;Mc(c|0,b|0,d+1|0)|0;f[a>>2]=c;return}function Kf(a,b){a=a|0;b=b|0;var c=0;if((b|0)==-1|(b|0)>4){c=-1;return c|0}c=f[a+20+(b*12|0)>>2]|0;if(((f[a+20+(b*12|0)+4>>2]|0)-c|0)<=0){c=-1;return c|0}c=f[c>>2]|0;return c|0}function Lf(a){a=a|0;var b=0,c=0;f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c);return}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(xh(a,f[b+8>>2]|0,0)|0)Ie(0,b,c,d);return}function Nf(a){a=a|0;var b=0;f[a>>2]=2828;b=a+4|0;f[a+40>>2]=0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;d[b+32>>1]=0;return}function Of(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else Mc(a,c,d)|0;return a|0}function Pf(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1136;b=f[a+8>>2]|0;if(!b){Bi(a);return}c=a+12|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Qf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((b|0)>0)d=0;else return;do{e=f[a+(d<<2)>>2]|0;f[c+(d<<2)>>2]=e<<31>>31^e>>>1;d=d+1|0}while((d|0)!=(b|0));return}function Rf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=f[c>>2];a=Ea[f[(f[a>>2]|0)+16>>2]&15](a,b,d)|0;if(a)f[c>>2]=f[d>>2];u=e;return a&1|0}function Sf(a){a=a|0;var b=0,c=0;if(fi(a)|0?(b=Ph(f[a>>2]|0)|0,c=b+8|0,a=f[c>>2]|0,f[c>>2]=a+-1,(a+-1|0)<0):0)Bi(b);return}function Tf(a){a=a|0;var c=0;c=b[w+(a&255)>>0]|0;if((c|0)<8)return c|0;c=b[w+(a>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=b[w+(a>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (b[w+(a>>>24)>>0]|0)+24|0}function Uf(a){a=a|0;var b=0,c=0,d=0;if(!a)return;b=f[a>>2]|0;if(b|0){c=a+4|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}Bi(a);return}function Vf(a,c){a=a|0;c=c|0;var d=0;b[c+84>>0]=1;d=f[c+68>>2]|0;a=c+72|0;c=f[a>>2]|0;if((c|0)==(d|0))return 1;f[a>>2]=c+(~((c+-4-d|0)>>>2)<<2);return 1}function Wf(a,b){a=a|0;b=b|0;if(b>>>0>=2){b=0;return b|0}f[a+28>>2]=b;b=1;return b|0}function Xf(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;d[a+38>>1]=0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;b[c+28>>0]=0;return}function Yf(a){a=a|0;var b=0,c=0;f[a>>2]=1328;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ga[f[(f[b>>2]|0)+4>>2]&127](b);$d(a);Bi(a);return}function Zf(a){a=a|0;var b=0,c=0;f[a>>2]=1136;c=f[a+8>>2]|0;if(!c)return;a=a+12|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c);return}function _f(a,b){a=a|0;b=b|0;return td(a+8|0,b)|0}function $f(a,b,c){a=a|0;b=b|0;c=c|0;Ya(a,b,c);return}function ag(a){a=a|0;var b=0,c=0;f[a>>2]=1328;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ga[f[(f[b>>2]|0)+4>>2]&127](b);$d(a);return}function bg(a,b){a=a|0;b=b|0;if(!b)return 0;else xa(10489,5249,61,10500);return 0}function cg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if((f[b+4>>2]|0)==(c|0)?(e=b+28|0,(f[e>>2]|0)!=1):0)f[e>>2]=d;return}function dg(a,b){a=a|0;b=b|0;if(!b)return 0;else xa(10489,10082,65,10500);return 0}function eg(a){a=a|0;f[a>>2]=1164;a=a+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return}function fg(a,b){a=a|0;b=b|0;return hd(a+8|0,b)|0}function gg(a,b){a=a|0;b=b|0;if(!b)return 0;else xa(10489,5571,70,10500);return 0}function hg(a){a=a|0;f[a>>2]=2344;zi(a+88|0);Bi(a);return}function ig(a,b,c){a=a|0;b=$(b);c=c|0;var d=Ca;if((c|0)<1){c=0;return c|0}d=$($(1.0)/$(c|0));n[a+4>>2]=d;n[a>>2]=b;c=1;return c|0}function jg(a){a=a|0;var c=0;c=f[a+8>>2]|0;if(((f[a+12>>2]|0)-c|0)>4)return b[(f[c+4>>2]|0)+24>>0]|0;else xa(13969,14023,60,14122);return 0}function kg(a){a=a|0;f[a>>2]=2428;zi(a+88|0);Bi(a);return}function lg(a){a=a|0;f[a>>2]=2568;zi(a+88|0);Bi(a);return}function mg(a){a=a|0;f[a>>2]=2344;zi(a+88|0);return}function ng(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=Gf(e,f)|0;a=I;return (I=(X(b,f)|0)+(X(d,e)|0)+a|a&0,c|0|0)|0}function og(a){a=a|0;f[a>>2]=2652;zi(a+88|0);Bi(a);return}function pg(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=Pa(b)|0;if(a|0)break;a=Rh()|0;if(!a){a=0;break}La[a&1]()}return a|0}function qg(a){a=a|0;f[a>>2]=2428;zi(a+88|0);return}function rg(a){a=a|0;f[a>>2]=2568;zi(a+88|0);return}function sg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return vb(b,c,d)|0}function tg(a){a=a|0;Vg(a);f[a>>2]=2736;f[a+24>>2]=-1;f[a+28>>2]=0;n[a+32>>2]=$(0.0);return}function ug(a){a=a|0;f[a>>2]=2652;zi(a+88|0);return}function vg(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;b=a+8|0;f[b>>2]=c;f[b+4>>2]=0;c=a+16|0;f[c>>2]=0;f[c+4>>2]=0;return}function wg(a,b,c){a=a|0;b=b|0;c=c|0;return Fd(a,b,c)|0}function xg(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;a=a+16|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function yg(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function zg(a,b,c){a=a|0;b=b|0;c=c|0;return bf(a,b,c)|0}function Ag(a){a=a|0;Nf(a);f[a>>2]=1024;a=a+44|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function Bg(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 Ia[a&31](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Cg(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;Ma[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function Dg(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)Vd(a|0,(di(c)|0)&255|0,b|0)|0;return a|0}function Eg(a){a=a|0;return 4}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<>>32-c;return a<>0]|0)<0)Bi(f[c>>2]|0);Bi(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Ig(){}function Jg(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 (I=d,a-c>>>0|0)|0}function Kg(a){a=a|0;return 5}function Lg(a){a=a|0;var b=0;f[a>>2]=2872;a=a+4|0;b=a+80|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Mg(a){a=a|0;return 6}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;f[a+28>>2]=b;f[a+32>>2]=c;return 1}function Og(a){a=a|0;f[a>>2]=1220;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=-1;f[a+16>>2]=0;return}function Pg(a){a=a|0;a=a+4|0;if((b[a+11>>0]|0)<0){a=f[a>>2]|0;return a|0}else return a|0;return 0}function Qg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Fa[a&3](b|0,c|0,d|0,e|0,f|0)}function Rg(a,b){a=a|0;b=b|0;return Na[f[(f[a>>2]|0)+56>>2]&127](a,b)|0}function Sg(a){a=a|0;Vg(a);f[a>>2]=2228;f[a+24>>2]=-1;return}function Tg(a,b){a=a|0;b=b|0;f[a+8>>2]=b;f[a+12>>2]=-1;return 1}function Ug(a){a=a|0;if(!a)return;Ga[f[(f[a>>2]|0)+4>>2]&127](a);return}function Vg(a){a=a|0;Og(a);f[a>>2]=1328;f[a+20>>2]=0;return}function Wg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (I=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Xg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Oa[a&7](b|0,c|0,d|0,e|0)}function Yg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Of(a|0,b|0,c|0)|0;return a|0}function Zg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Mc(a|0,b|0,c|0)|0;return a|0}function _g(a,b){a=a|0;b=b|0;return -1}function $g(a){a=a|0;return 3}function ah(a){a=a|0;if(!a)a=0;else a=(Zc(a,896,984,0)|0)!=0;return a&1|0}function bh(a){a=a|0;if(!a)return;zi(a+24|0);Bi(a);return}function ch(a){a=a|0;qd(a);Bi(a);return}function dh(a){a=a|0;return f[a+4>>2]|0}function eh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ea[a&15](b|0,c|0,d|0)|0}function fh(a,b,c){a=a|0;b=b|0;c=c|0;vg(a,b,c);return}function gh(a,b){a=a|0;b=b|0;f[a>>2]=3604;Jf(a+4|0,b);return}function hh(a,b){a=a|0;b=b|0;return f[(f[a+4>>2]|0)+(b<<2)>>2]|0}function ih(){var a=0;a=pg(84)|0;Ih(a);return a|0}function jh(a,b){a=a|0;b=b|0;return $(lh(a,b))}function kh(a){a=a|0;return b[(f[a+8>>2]|0)+24>>0]|0}function lh(a,b){a=a|0;b=b|0;return $(n[(f[a>>2]|0)+(b<<2)>>2])}function mh(a){a=a|0;return (f[a+8>>2]|0)-(f[a+4>>2]|0)>>2|0}function nh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ka[a&15](b|0,c|0,d|0)}function oh(){var a=0;a=pg(60)|0;Ag(a);return a|0}function ph(a){a=a|0;var b=0;b=u;u=u+a|0;u=u+15&-16;return b|0}function qh(){var a=0;a=pg(12)|0;Ch(a);return a|0}function rh(){var a=0;a=pg(40)|0;Xf(a);return a|0}function sh(a,b){a=a|0;b=b|0;return 1}function th(a,b){a=a|0;b=b|0;return yh(a,b)|0}function uh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(4);return 0}function vh(a){a=a|0;$d(a);Bi(a);return}function wh(a){a=a|0;n[a>>2]=$(1.0);n[a+4>>2]=$(1.0);return}function xh(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function yh(a,b){a=a|0;b=b|0;return f[(f[a>>2]|0)+(b<<2)>>2]|0}function zh(a,b){a=a|0;b=b|0;f[a+4>>2]=b;return}function Ah(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ub(a,b,c,d,0)|0}function Bh(a){a=a|0;f[a+4>>2]=0;f[a+8>>2]=0;f[a>>2]=a+4;return}function Ch(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}function Dh(a){a=a|0;return (f[a+4>>2]|0)-(f[a>>2]|0)>>2|0}function Eh(a){a=a|0;f[a>>2]=3604;Sf(a+4|0);return}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;return Na[a&127](b|0,c|0)|0}function Gh(a,c){a=a|0;c=c|0;b[a>>0]=b[c>>0]|0;return}function Hh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(8)}function Ih(a){a=a|0;Lg(a);f[a>>2]=1084;return}function Jh(a){a=a|0;if(!a)return;Bi(a);return}function Kh(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function Lh(a){a=a|0;return a+12|0}function Mh(a,b,c){a=a|0;b=b|0;c=c|0;Ha[a&3](b|0,c|0)}function Nh(a,b){a=a|0;b=b|0;return 0}function Oh(a){a=a|0;zi(a);Bi(a);return}function Ph(a){a=a|0;return a+-12|0}function Qh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;aa(1)}function Rh(){var a=0;a=f[3796]|0;f[3796]=a+0;return a|0}function Sh(a){a=a|0;return ii(a+4|0)|0}function Th(a){a=a|0;Gc(a);Bi(a);return}function Uh(a){a=a|0;return f[a+80>>2]|0}function Vh(a){a=a|0;return f[a+28>>2]|0}function Wh(a,b){a=a|0;b=b|0;return Ja[a&127](b|0)|0}function Xh(a){a=a|0;Eh(a);Bi(a);return}function Yh(a){a=a|0;ra()}function Zh(a,b){a=a|0;b=b|0;u=a;v=b}function _h(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(10)}function $h(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function ai(a){a=a|0;return (f[a>>2]|0)==0|0}function bi(a,b){a=a|0;b=b|0;Ga[a&127](b|0)}function ci(a){a=a|0;b[a+12>>0]=0;return}function di(a){a=a|0;return a&255|0}function ei(a){a=a|0;f[a>>2]=0;return}function fi(a){a=a|0;return 1}function gi(a,b,c){a=a|0;b=b|0;c=c|0;aa(0);return 0}function hi(a){a=a|0;return 0}function ii(a){a=a|0;return f[a>>2]|0}function ji(a){a=a|0;return 2}function ki(a,b,c){a=a|0;b=b|0;c=c|0;aa(6)}function li(){return -4}function mi(){return -3}function ni(){return (ui()|0)+64|0}function oi(){return -5}function pi(a,b){a=a|0;b=b|0;aa(9);return 0}function qi(a){a=a|0;La[a&1]()}function ri(){return -2}function si(){ya()}function ti(){return -1}function ui(){return Ii()|0}function vi(a,b){a=a|0;b=b|0;aa(3)}function wi(){return 0}function xi(a){a=a|0;return pg(a)|0}function yi(a){a=a|0;Bi(a);return}function zi(a){a=a|0;return}function Ai(a){a=a|0;u=a}function Bi(a){a=a|0;$a(a);return}function Ci(a){a=a|0;I=a}function Di(){return 15120}function Ei(a){a=a|0;aa(5);return 0}function Fi(){return I|0}function Gi(){return u|0}function Hi(a){a=a|0;aa(2)}function Ii(){return 2888}function Ji(){aa(7)} + +// EMSCRIPTEN_END_FUNCS +var Ea=[gi,Ng,bf,kf,yg,Ad,zg,qc,rb,xf,Dd,Od,Me,Ed,Le,ge];var Fa=[Qh,Ud,Rc,wb];var Ga=[Hi,ne,me,Gc,Th,zi,yi,Zf,Pf,_e,Se,$d,vh,qd,ch,ag,Yf,Lf,Bf,Bf,Bf,Bf,te,pe,Je,Ce,Ze,Qe,cf,Ye,zi,yi,Bf,Bf,qe,oe,He,Ae,We,Oe,$e,Ve,zi,yi,Yf,zi,yi,mg,hg,zi,yi,qg,kg,zi,yi,yi,rg,lg,zi,yi,ug,og,zi,yi,af,Xe,zi,yi,me,Th,zi,Oh,zi,zi,Oh,Eh,Xh,Xh,Oh,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi];var Ha=[vi,ib,Ge,wc];var Ia=[uh,Ab,eb,_a,Ta,zb,Lb,If,hb,Za,Sa,yb,Jb,If,ee,lb,mb,he,nb,ob,uh,uh,uh,uh,uh,uh,uh,uh,uh,uh,uh,uh];var Ja=[Ei,hi,fi,re,Xb,Te,fi,ji,fi,mh,Vh,fi,Ob,kh,dh,hi,hi,fi,hi,fi,fi,qf,ji,qf,Eg,qf,$g,nf,fi,Kg,nf,fi,Mg,De,fi,Vh,fi,qf,ji,qf,Eg,qf,$g,nf,fi,Kg,nf,fi,Mg,De,fi,Vh,ji,hi,dh,fi,hi,fi,$g,Mg,Be,fi,Vh,Mg,Be,fi,Vh,hi,dh,fi,hi,fi,ji,Mg,Be,fi,Vh,Mg,Be,fi,Vh,oc,Ld,fi,Sh,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei];var Ka=[ki,Ac,Ee,bb,Xa,Xa,bb,Xa,bb,ki,ki,ki,ki,ki,ki,ki];var La=[Ji,si];var Ma=[Hh,zf,Ue,Sc];var Na=[pi,Cc,uf,gd,cb,wf,hh,Nh,sh,Tg,sh,Wc,dc,Oc,lf,ze,we,gf,Kb,_g,Nh,kd,Zb,gg,Df,Nb,bg,Df,cc,dg,Cf,yc,Wf,Zb,gg,Df,Nb,bg,Df,cc,dg,Cf,yc,Wf,ud,_g,Nh,_f,dg,yf,Hd,Wf,dg,yf,Hd,Wf,_g,Nh,fg,dg,yf,Jd,Wf,dg,yf,Jd,Wf,Rg,vc,Vf,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi];var Oa=[_h,Nd,md,Mf,ff,Zd,_h,_h];return{_emscripten_bind_DecoderBuffer_DecoderBuffer_0:rh,_emscripten_enum_draco_StatusCode_IO_ERROR:ri,_emscripten_bind_DracoInt32Array_size_0:Dh,getTempRet0:Fi,___udivdi3:Ah,dynCall_iiiiiii:Bg,setThrew:Kh,_emscripten_enum_draco_StatusCode_ERROR:ti,_bitshift64Lshr:Hg,_i64Subtract:Jg,_bitshift64Shl:Fg,_emscripten_enum_draco_StatusCode_INVALID_PARAMETER:mi,dynCall_vi:bi,_emscripten_enum_draco_StatusCode_OK:wi,_emscripten_bind_DecoderBuffer_Init_2:fh,_emscripten_bind_AnimationDecoder_GetTimestampAndAnimationData_3:sg,_emscripten_bind_KeyframeAnimation_KeyframeAnimation_0:ih,_emscripten_bind_VoidPtr___destroy___0:Jh,_memset:Vd,_sbrk:sf,_emscripten_bind_Status_code_0:ii,dynCall_viii:nh,_memcpy:Mc,_emscripten_bind_DecoderBuffer___destroy___0:bh,stackAlloc:ph,___muldi3:ng,_emscripten_bind_KeyframeAnimation_num_components_0:jg,_emscripten_bind_DracoInt32Array___destroy___0:Uf,dynCall_vii:Mh,_emscripten_bind_Status_ok_0:ai,_emscripten_bind_AnimationDecoder_AnimationDecoder_0:oh,___divdi3:Fe,_emscripten_bind_KeyframeAnimation___destroy___0:Ug,_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0:qh,_emscripten_bind_AnimationDecoder_DecodeBufferToKeyframeAnimation_2:wg,setTempRet0:Ci,_i64Add:Wg,___cxa_is_pointer_type:ah,_emscripten_bind_DracoInt32Array_DracoInt32Array_0:qh,dynCall_iiii:eh,_emscripten_bind_Status___destroy___0:Gg,_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION:oi,_emscripten_bind_DracoFloat32Array_GetValue_1:jh,_emscripten_bind_DracoFloat32Array___destroy___0:Uf,_emscripten_get_global_libc:Di,_emscripten_bind_KeyframeAnimation_num_frames_0:Uh,dynCall_ii:Wh,dynCall_viiii:Xg,stackSave:Gi,dynCall_viiiii:Qg,___cxa_can_catch:Rf,_emscripten_bind_DracoFloat32Array_size_0:Dh,_free:$a,runPostSets:Ig,dynCall_viiiiii:Cg,establishStackSpace:Zh,_emscripten_bind_DracoInt32Array_GetValue_1:th,_emscripten_bind_AnimationDecoder___destroy___0:_d,stackRestore:Ai,_malloc:Pa,dynCall_iii:Fh,_emscripten_replace_memory:Da,_memmove:Of,dynCall_v:qi,_emscripten_bind_Status_error_msg_0:Pg,_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION:li}}) + + +// EMSCRIPTEN_END_ASM +(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _emscripten_bind_DecoderBuffer_DecoderBuffer_0=Module["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"]=asm["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"];var _emscripten_bind_AnimationDecoder___destroy___0=Module["_emscripten_bind_AnimationDecoder___destroy___0"]=asm["_emscripten_bind_AnimationDecoder___destroy___0"];var _emscripten_bind_DracoInt32Array_size_0=Module["_emscripten_bind_DracoInt32Array_size_0"]=asm["_emscripten_bind_DracoInt32Array_size_0"];var _emscripten_bind_Status___destroy___0=Module["_emscripten_bind_Status___destroy___0"]=asm["_emscripten_bind_Status___destroy___0"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var _emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=Module["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"]=asm["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var _emscripten_enum_draco_StatusCode_ERROR=Module["_emscripten_enum_draco_StatusCode_ERROR"]=asm["_emscripten_enum_draco_StatusCode_ERROR"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _emscripten_enum_draco_StatusCode_INVALID_PARAMETER=Module["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"]=asm["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"];var _emscripten_enum_draco_StatusCode_OK=Module["_emscripten_enum_draco_StatusCode_OK"]=asm["_emscripten_enum_draco_StatusCode_OK"];var _emscripten_bind_DecoderBuffer_Init_2=Module["_emscripten_bind_DecoderBuffer_Init_2"]=asm["_emscripten_bind_DecoderBuffer_Init_2"];var _emscripten_bind_AnimationDecoder_GetTimestampAndAnimationData_3=Module["_emscripten_bind_AnimationDecoder_GetTimestampAndAnimationData_3"]=asm["_emscripten_bind_AnimationDecoder_GetTimestampAndAnimationData_3"];var _emscripten_bind_KeyframeAnimation_KeyframeAnimation_0=Module["_emscripten_bind_KeyframeAnimation_KeyframeAnimation_0"]=asm["_emscripten_bind_KeyframeAnimation_KeyframeAnimation_0"];var _emscripten_bind_VoidPtr___destroy___0=Module["_emscripten_bind_VoidPtr___destroy___0"]=asm["_emscripten_bind_VoidPtr___destroy___0"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _emscripten_bind_Status_code_0=Module["_emscripten_bind_Status_code_0"]=asm["_emscripten_bind_Status_code_0"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _emscripten_bind_DecoderBuffer___destroy___0=Module["_emscripten_bind_DecoderBuffer___destroy___0"]=asm["_emscripten_bind_DecoderBuffer___destroy___0"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var _emscripten_bind_KeyframeAnimation_num_components_0=Module["_emscripten_bind_KeyframeAnimation_num_components_0"]=asm["_emscripten_bind_KeyframeAnimation_num_components_0"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var _emscripten_bind_DracoInt32Array___destroy___0=Module["_emscripten_bind_DracoInt32Array___destroy___0"]=asm["_emscripten_bind_DracoInt32Array___destroy___0"];var _emscripten_bind_DracoInt32Array_DracoInt32Array_0=Module["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"]=asm["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"];var _emscripten_bind_AnimationDecoder_AnimationDecoder_0=Module["_emscripten_bind_AnimationDecoder_AnimationDecoder_0"]=asm["_emscripten_bind_AnimationDecoder_AnimationDecoder_0"];var ___divdi3=Module["___divdi3"]=asm["___divdi3"];var _emscripten_bind_KeyframeAnimation___destroy___0=Module["_emscripten_bind_KeyframeAnimation___destroy___0"]=asm["_emscripten_bind_KeyframeAnimation___destroy___0"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _emscripten_bind_AnimationDecoder_DecodeBufferToKeyframeAnimation_2=Module["_emscripten_bind_AnimationDecoder_DecodeBufferToKeyframeAnimation_2"]=asm["_emscripten_bind_AnimationDecoder_DecodeBufferToKeyframeAnimation_2"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _emscripten_bind_Status_ok_0=Module["_emscripten_bind_Status_ok_0"]=asm["_emscripten_bind_Status_ok_0"];var _emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=Module["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"]=asm["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"];var _emscripten_bind_DracoFloat32Array_GetValue_1=Module["_emscripten_bind_DracoFloat32Array_GetValue_1"]=asm["_emscripten_bind_DracoFloat32Array_GetValue_1"];var _emscripten_bind_DracoFloat32Array___destroy___0=Module["_emscripten_bind_DracoFloat32Array___destroy___0"]=asm["_emscripten_bind_DracoFloat32Array___destroy___0"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var _emscripten_bind_DracoFloat32Array_size_0=Module["_emscripten_bind_DracoFloat32Array_size_0"]=asm["_emscripten_bind_DracoFloat32Array_size_0"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setThrew=Module["setThrew"]=asm["setThrew"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var _emscripten_bind_DracoInt32Array_GetValue_1=Module["_emscripten_bind_DracoInt32Array_GetValue_1"]=asm["_emscripten_bind_DracoInt32Array_GetValue_1"];var _emscripten_enum_draco_StatusCode_IO_ERROR=Module["_emscripten_enum_draco_StatusCode_IO_ERROR"]=asm["_emscripten_enum_draco_StatusCode_IO_ERROR"];var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=asm["_emscripten_get_global_libc"];var _emscripten_bind_Status_error_msg_0=Module["_emscripten_bind_Status_error_msg_0"]=asm["_emscripten_bind_Status_error_msg_0"];var _malloc=Module["_malloc"]=asm["_malloc"];var _emscripten_bind_KeyframeAnimation_num_frames_0=Module["_emscripten_bind_KeyframeAnimation_num_frames_0"]=asm["_emscripten_bind_KeyframeAnimation_num_frames_0"];var _memmove=Module["_memmove"]=asm["_memmove"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var _emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=Module["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"]=asm["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_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_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=Module["stackAlloc"];Runtime.stackSave=Module["stackSave"];Runtime.stackRestore=Module["stackRestore"];Runtime.establishStackSpace=Module["establishStackSpace"];Runtime.setTempRet0=Module["setTempRet0"];Runtime.getTempRet0=Module["getTempRet0"];Module["asm"]=asm;if(memoryInitializer){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,Runtime.GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,Runtime.GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}Module["then"]=(function(func){if(Module["calledRun"]){func(Module)}else{var old=Module["onRuntimeInitialized"];Module["onRuntimeInitialized"]=(function(){if(old)old();func(Module)})}return Module});function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:(function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret}),copy:(function(array,view,offset){var offsetShifted=offset;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offsetShifted>>=1;break;case 4:offsetShifted>>=2;break;case 8:offsetShifted>>=3;break}for(var i=0;i + @@ -439,6 +440,15 @@ extensions: ['glTF', 'glTF-Embedded'], addEnvMap: true }, + { + name : 'BoxAnimated', + url: './models/gltf/BoxAnimated/%s/BoxAnimated.gltf', + cameraPos: new THREE.Vector3(0, 3, 5), + addLights: true, + addGround: true, + shadows: true, + extensions: ['glTF', 'glTF-Draco'] + }, { name : 'Duck', url: './models/gltf/Duck/%s/Duck.gltf', From 32113694b28eae39157b6e14e4df405c9f754f34 Mon Sep 17 00:00:00 2001 From: Fan Zhang Date: Wed, 20 Dec 2017 13:56:13 -0800 Subject: [PATCH 2/5] Seems working for box animated --- examples/js/loaders/GLTFLoader.js | 91 ++++++++++++++----- examples/js/loaders/draco/DRACOLoader.js | 66 +++++++------- .../loaders/draco/draco_animation_decoder.js | 10 +- 3 files changed, 105 insertions(+), 62 deletions(-) diff --git a/examples/js/loaders/GLTFLoader.js b/examples/js/loaders/GLTFLoader.js index 9a112b1e6584b0..bfbdc0b25b55bf 100644 --- a/examples/js/loaders/GLTFLoader.js +++ b/examples/js/loaders/GLTFLoader.js @@ -124,6 +124,10 @@ THREE.GLTFLoader = ( function () { } if ( json.extensionsUsed.indexOf( EXTENSIONS.DRACO_ANIMATION_COMPRESSION ) >= 0 ) { + if (json.extensions.Draco_animation_compression == undefined) { + onError( new Error( 'THREE.GLTFLoader: Animation compression extension used but not defined.' ) ); + return; + } extensions[ EXTENSIONS.DRACO_ANIMATION_COMPRESSION ] = new GLTFDracoAnimationCompressionExtension( this.dracoLoader ); @@ -535,20 +539,15 @@ THREE.GLTFLoader = ( function () { this.dracoLoader = dracoLoader; } - GLTFDracoAnimationCompressionExtension.prototype.decodeAnimation = function ( sampler, parser ) { + GLTFDracoAnimationCompressionExtension.prototype.decodeAnimation = function ( compressedAnimation, parser ) { var dracoLoader = this.dracoLoader; - var bufferViewIndex = sampler.extensions[ this.name ].bufferView; - console.log("Calling decodeAnimation in GLTF"); + var bufferViewIndex = compressedAnimation.bufferView; return parser.getDependency( 'bufferView', bufferViewIndex ).then( function ( bufferView ) { - - return new Promise( function ( resolve ) { - - dracoLoader.decodeDracoAnimation( bufferView, resolve ); - - } ); - - } ); + return new Promise(function(resolve) { + resolve(dracoLoader.decodeDracoAnimation( bufferView )); + }); + }); } /** @@ -1357,11 +1356,12 @@ THREE.GLTFLoader = ( function () { GLTFParser.prototype.parse = function ( onLoad, onError ) { + var parser = this; var json = this.json; + var extensions = this.extensions; // Clear the loader cache this.cache.removeAll(); - // Fire the callback on complete this._withDependencies( [ @@ -2112,7 +2112,7 @@ THREE.GLTFLoader = ( function () { }; - GLTFParser.prototype.loadAnimations = function () { + GLTFParser.prototype.loadCompressedAnimations = function () { var json = this.json; var parser = this; @@ -2120,13 +2120,66 @@ THREE.GLTFLoader = ( function () { return this._withDependencies( [ - 'accessors', - 'nodes' + 'bufferViews', + 'accessors' ] ).then( function ( dependencies ) { + return _each( json.extensions.Draco_animation_compression, function (compressedAnimation) { + return extensions[ EXTENSIONS.DRACO_ANIMATION_COMPRESSION ].decodeAnimation(compressedAnimation, parser); + }); + }); + }; + + GLTFParser.prototype.loadAnimations = function () { + var json = this.json; + var parser = this; + var extensions = this.extensions; + var dependenciseList = [ 'bufferViews', 'accessors', 'nodes' ]; + if (json.extensionsUsed !== undefined && + json.extensionsUsed.indexOf( EXTENSIONS.DRACO_ANIMATION_COMPRESSION ) >= 0) + dependenciseList.push('compressedAnimations'); + + return this._withDependencies( dependenciseList ).then( function ( dependencies ) { + + if (json.extensionsUsed !== undefined && + json.extensionsUsed.indexOf( EXTENSIONS.DRACO_ANIMATION_COMPRESSION ) >= 0) { + // If using Draco animation compression, need to first + // put decoded data back to all accessors of samplers. + for (var i = 0; i < json.extensions.Draco_animation_compression.length; + ++i) { + var compressedAnimation = json.extensions.Draco_animation_compression[i]; + var decodedAnimation = dependencies.compressedAnimations[i]; + + // Put timestamps to input + var inputAccessorId = compressedAnimation.input; + var inputAccessor = json.accessors[inputAccessorId]; + var itemSize = WEBGL_TYPE_SIZES[ inputAccessor.type ]; + var TypedArray = WEBGL_COMPONENT_TYPES[ inputAccessor.componentType ]; + var array = new TypedArray( decodedAnimation.timestamps, inputAccessor.byteOffset, + inputAccessor.count * itemSize ); + dependencies.accessors[inputAccessorId] = new THREE.BufferAttribute( array, itemSize ); + + + for (var j = 0; j < compressedAnimation.outputs.length; ++j) { + var outputAccessorId = compressedAnimation.outputs[j]; + var outputAccessor = json.accessors[outputAccessorId]; + var itemSize = WEBGL_TYPE_SIZES[ outputAccessor.type ]; + var TypedArray = WEBGL_COMPONENT_TYPES[ outputAccessor.componentType ]; + + // If attribute id is x, then the id in keyframes + // will actually be x - 1. + var array = new TypedArray(decodedAnimation.keyframes[compressedAnimation.attributesId[j] - 1], + outputAccessor.byteOffset, + outputAccessor.count * itemSize ); + dependencies.accessors[outputAccessorId] = new THREE.BufferAttribute( array, itemSize ); + } + } + } + return _each( json.animations, function ( animation, animationId ) { + console.log("Handle animatin in gltf"); var tracks = []; for ( var i = 0; i < animation.channels.length; i ++ ) { @@ -2146,14 +2199,6 @@ THREE.GLTFLoader = ( function () { var inputAccessor = dependencies.accessors[ input ]; var outputAccessor = dependencies.accessors[ output ]; - // If use Draco_animation_compression, then need fill the accessors with data. - if ( sampler.extensions && sampler.extensions[ EXTENSIONS.DRACO_ANIMATION_COMPRESSION ] ) { - console.log("Using draco animation extension"); - var decodedAnimation = extensions[ EXTENSIONS.DRACO_ANIMATION_COMPRESSION ].decodeAnimation( sampler, parser ); - inputAccessor["array"] = decodedAnimation.input; - outputAccessor["array"] = decodedAnimation.output; - } - var node = dependencies.nodes[ name ]; if ( node ) { diff --git a/examples/js/loaders/draco/DRACOLoader.js b/examples/js/loaders/draco/DRACOLoader.js index 6e81a8f1e5a8f2..f4fe2a23c22964 100644 --- a/examples/js/loaders/draco/DRACOLoader.js +++ b/examples/js/loaders/draco/DRACOLoader.js @@ -350,7 +350,7 @@ THREE.DRACOLoader.prototype = { return true; }, - decodeDracoAnimation: function(rawBuffer, callback) { + decodeDracoAnimation: function(rawBuffer) { console.log("Calling decodeDracoAnimation in DracoLoader"); if (typeof DracoAnimationDecoderModule === 'undefined') { @@ -373,46 +373,44 @@ THREE.DRACOLoader.prototype = { return; } - const numFrames = dracoAnimation.num_frames(); - console.log("Number of frames: " + numFrames); - const numComponents = dracoAnimation.num_components(); + const numKeyframes = dracoAnimation.num_frames(); + console.log("Number of frames: " + numKeyframes); + + // Get timestamps. const timestampAttData = new decoderModule.DracoFloat32Array(); - const animationAttData = new decoderModule.DracoFloat32Array(); - - const timestamps = new Float32Array(numFrames); - const animationData = new Float32Array(numFrames * numComponents); - for (let i = 0; i < numFrames; ++i) { + if (!decoder.GetTimestamps(dracoAnimation, timestampAttData)) { + console.log("Error: Get timestamps failed."); + return; + } + const timestamps = new Float32Array(numKeyframes); + for (let i = 0; i < numKeyframes; ++i) { timestamps[i] = timestampAttData.GetValue(i); - for (let j = 0; j < numComponents; ++j) { - animationData[i * numComponents + j] = - animationAttData.GetValue(i * numComponents + j); + } + + const numAnimations = dracoAnimation.num_animations(); + const keyframes = new Array(numAnimations); + for (let keyframeId = 0; keyframeId < numAnimations; ++keyframeId) { + const animationAttData = new decoderModule.DracoFloat32Array(); + // The id of keyframe attribute starts at 1. + if (!decoder.GetKeyframes(dracoAnimation, keyframeId + 1, + animationAttData)) { + console.log("Error: Get keyframes failed."); + return; + } + keyframes[keyframeId] = new Float32Array(animationAttData.size()); + for (let i = 0; i < animationAttData.size(); ++i) { + keyframes[keyframeId][i] = animationAttData.GetValue(i); } } + const decodedAnimation = { - input : timestamps, - output : animationData + timestamps : timestamps, + keyframes : keyframes } /* - 70 - 73 assertTrue(decoder.GetTimestampAndAnimationData(dracoAnimation, - 74 timestampAttData, animationAttData)); - 75 - 76 const timestamps = new Float32Array(numFrames); - 77 const animationData = new Float32Array(numFrames * numComponents); - 78 for (let i = 0; i < numFrames; ++i) { - 79 timestamps[i] = timestampAttData.GetValue(i); - 80 for (let j = 0; j < numComponents; ++j) { - 81 animationData[i * numComponents + j] = - 82 animationAttData.GetValue(i * numComponents + j); - 83 } - 84 } - 85 const animation = { - 86 timestamps : timestamps, - 87 animationData : animationData - 88 } - 89 - 90 return animation; - */ + if (resolve !== undefined) + resolve(); + */ return decodedAnimation; } diff --git a/examples/js/loaders/draco/draco_animation_decoder.js b/examples/js/loaders/draco/draco_animation_decoder.js index ae19b03fa51fa1..ed5c75c13e6a36 100644 --- a/examples/js/loaders/draco/draco_animation_decoder.js +++ b/examples/js/loaders/draco/draco_animation_decoder.js @@ -2,19 +2,19 @@ var DracoAnimationDecoderModule = function(DracoAnimationDecoderModule) { DracoAnimationDecoderModule = DracoAnimationDecoderModule || {}; var Module = DracoAnimationDecoderModule; -var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=(function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}});Module["onModuleParsed"]=(function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}});function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=2)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var Module;if(!Module)Module=(typeof DracoAnimationDecoderModule!=="undefined"?DracoAnimationDecoderModule:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);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"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}else{Module["read"]=function shell_read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(f);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function shell_print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function shell_printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw new Error("Unknown runtime environment. Where are we?")}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}if(!Module["quit"]){Module["quit"]=(function(status,toThrow){throw toThrow})}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value;return value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i>2];var end=(ret+size+15|0)&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>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)}}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 getValue: "+type)}return null}var ALLOC_NORMAL=0;var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(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>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)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=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}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){var __cxa_demangle_func=Module["___cxa_demangle"]||Module["__cxa_demangle"];if(__cxa_demangle_func){try{var s=func.substr(1);var len=lengthBytesUTF8(s)+1;var buf=_malloc(len);stringToUTF8(s,buf,len);var status=_malloc(4);var ret=__cxa_demangle_func(buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}return func}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var ASMJS_PAGE_SIZE=16777216;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}if(!Module["reallocBuffer"])Module["reallocBuffer"]=(function(size){var ret;try{if(ArrayBuffer.transfer){ret=ArrayBuffer.transfer(buffer,size)}else{var oldHEAP8=HEAP8;ret=new ArrayBuffer(size);var temp=new Int8Array(ret);temp.set(oldHEAP8)}}catch(e){return false}var success=_emscripten_replace_memory(ret);if(!success)return false;return ret});function enlargeMemory(){var PAGE_MULTIPLE=Module["usingWasm"]?WASM_PAGE_SIZE:ASMJS_PAGE_SIZE;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["fround"]){var froundBuffer=new Float32Array(1);Math["fround"]=(function(x){froundBuffer[0]=x;return froundBuffer[0]})}Math.fround=Math["fround"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}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["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=Runtime.GLOBAL_BASE;STATICTOP=STATIC_BASE+15200;__ATINIT__.push();memoryInitializer="data:application/octet-stream;base64,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TAAAAFQAAAAAAAAAuAMAAEsAAABNAAAAVAAAAAAAAADoAwAARgAAAE4AAABIAAAASQAAAA8AAAADAAAAAwAAAAUAAABONWRyYWNvMjRLZXlmcmFtZUFuaW1hdGlvbkRlY29kZXJFAE41ZHJhY28xN0tleWZyYW1lQW5pbWF0aW9uRQBONWRyYWNvMjhBdHRyaWJ1dGVPY3RhaGVkcm9uVHJhbnNmb3JtRQBONWRyYWNvMThBdHRyaWJ1dGVUcmFuc2Zvcm1FAE41ZHJhY28zMEF0dHJpYnV0ZVF1YW50aXphdGlvblRyYW5zZm9ybUUATjVkcmFjbzE3QXR0cmlidXRlc0RlY29kZXJFAE41ZHJhY28yNkF0dHJpYnV0ZXNEZWNvZGVySW50ZXJmYWNlRQBONWRyYWNvMjZTZXF1ZW50aWFsQXR0cmlidXRlRGVjb2RlckUAIWlkZW50aXR5X21hcHBpbmdfAC91c3IvbG9jYWwvZ29vZ2xlL2hvbWUvemhhZmFuZy9kcmFjby9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9hdHRyaWJ1dGVzL3BvaW50X2F0dHJpYnV0ZS5oAFNldFBvaW50TWFwRW50cnkAc2tpcF9hdHRyaWJ1dGVfdHJhbnNmb3JtAE41ZHJhY28zN1NlcXVlbnRpYWxBdHRyaWJ1dGVEZWNvZGVyc0NvbnRyb2xsZXJFAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUATjVkcmFjbzM3UHJlZGljdGlvblNjaGVtZVR5cGVkRGVjb2RlckludGVyZmFjZUlpaUVFAE41ZHJhY28zMlByZWRpY3Rpb25TY2hlbWVEZWNvZGVySW50ZXJmYWNlRQBONWRyYWNvMjVQcmVkaWN0aW9uU2NoZW1lSW50ZXJmYWNlRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAZmFsc2UAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL3ByZWRpY3Rpb25fc2NoZW1lX3dyYXBfdHJhbnNmb3JtX2Jhc2UuaABxdWFudGl6YXRpb25fYml0cwBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfdGV4X2Nvb3Jkc19wb3J0YWJsZV9kZWNvZGVyLmgATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAC91c3IvbG9jYWwvZ29vZ2xlL2hvbWUvemhhZmFuZy9kcmFjby9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9jb21wcmVzc2lvbi9hdHRyaWJ1dGVzL3ByZWRpY3Rpb25fc2NoZW1lcy9tZXNoX3ByZWRpY3Rpb25fc2NoZW1lX3RleF9jb29yZHNfZGVjb2Rlci5oAE41ZHJhY28zNk1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzU2TWVzaFByZWRpY3Rpb25TY2hlbWVDb25zdHJhaW5lZE11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280NU1lc2hQcmVkaWN0aW9uU2NoZW1lTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMzZNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc0RlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280NU1lc2hQcmVkaWN0aW9uU2NoZW1lTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMzNTZXF1ZW50aWFsSW50ZWdlckF0dHJpYnV0ZURlY29kZXJFAChxKSA+PSAoMikAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvbm9ybWFsX2NvbXByZXNzaW9uX3V0aWxzLmgAU2V0UXVhbnRpemF0aW9uQml0cwAocSkgPD0gKDMwKQAoaW5fcykgPj0gKDApAE9jdGFoZXJkYWxDb29yZHNUb1VuaXRWZWN0b3IAKGluX3QpID49ICgwKQAoaW5fcykgPD0gKDEpAChpbl90KSA8PSAoMSkAKHByZWRfdmFsc1swXSkgPD0gKDIgKiB0aGlzLT5jZW50ZXJfdmFsdWUoKSkAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL3ByZWRpY3Rpb25fc2NoZW1lX25vcm1hbF9vY3RhaGVkcm9uX2Nhbm9uaWNhbGl6ZWRfZGVjb2RpbmdfdHJhbnNmb3JtLmgAQ29tcHV0ZU9yaWdpbmFsVmFsdWUAKHByZWRfdmFsc1sxXSkgPD0gKDIgKiB0aGlzLT5jZW50ZXJfdmFsdWUoKSkAKGNvcnJfdmFsc1swXSkgPD0gKDIgKiB0aGlzLT5jZW50ZXJfdmFsdWUoKSkAKGNvcnJfdmFsc1sxXSkgPD0gKDIgKiB0aGlzLT5jZW50ZXJfdmFsdWUoKSkAKDApIDw9IChwcmVkX3ZhbHNbMF0pACgwKSA8PSAocHJlZF92YWxzWzFdKQAoMCkgPD0gKGNvcnJfdmFsc1swXSkAKDApIDw9IChjb3JyX3ZhbHNbMV0pAChzKSA8PSAoY2VudGVyX3ZhbHVlXykASXNJbkRpYW1vbmQAKHQpIDw9IChjZW50ZXJfdmFsdWVfKQAocykgPj0gKC1jZW50ZXJfdmFsdWVfKQAodCkgPj0gKC1jZW50ZXJfdmFsdWVfKQAoKnMpIDw9IChjZW50ZXJfdmFsdWVfKQBJbnZlcnREaWFtb25kACgqdCkgPD0gKGNlbnRlcl92YWx1ZV8pACgqcykgPj0gKC1jZW50ZXJfdmFsdWVfKQAoKnQpID49ICgtY2VudGVyX3ZhbHVlXykAKG1heF9xdWFudGl6ZWRfdmFsdWUgJSAyKSA9PSAoMSkAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL3ByZWRpY3Rpb25fc2NoZW1lX25vcm1hbF9vY3RhaGVkcm9uX3RyYW5zZm9ybV9iYXNlLmgAc2V0X21heF9xdWFudGl6ZWRfdmFsdWUATjVkcmFjbzI4UHJlZGljdGlvblNjaGVtZURlbHRhRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQB0aGlzLT5Jc0luaXRpYWxpemVkKCkAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfZ2VvbWV0cmljX25vcm1hbF9wcmVkaWN0b3JfYXJlYS5oAENvbXB1dGVQcmVkaWN0ZWRWYWx1ZQAobm9ybWFsLkFic1N1bSgpKSA8PSAodXBwZXJfYm91bmQpAC91c3IvbG9jYWwvZ29vZ2xlL2hvbWUvemhhZmFuZy9kcmFjby9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9jb21wcmVzc2lvbi9hdHRyaWJ1dGVzL3ByZWRpY3Rpb25fc2NoZW1lcy9tZXNoX3ByZWRpY3Rpb25fc2NoZW1lX2dlb21ldHJpY19ub3JtYWxfcHJlZGljdG9yX2Jhc2UuaABHZXRQb3NpdGlvbkZvckNvcm5lcgBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfZ2VvbWV0cmljX25vcm1hbF9kZWNvZGVyLmgAQ29tcHV0ZU9yaWdpbmFsVmFsdWVzAChudW1fY29tcG9uZW50cykgPT0gKDIpAChwcmVkX25vcm1hbF8zZC5BYnNTdW0oKSkgPT0gKG9jdGFoZWRyb25fdG9vbF9ib3hfLmNlbnRlcl92YWx1ZSgpKQAoc3RkOjphYnMoaW50X3ZlY1swXSkgKyBzdGQ6OmFicyhpbnRfdmVjWzFdKSArIHN0ZDo6YWJzKGludF92ZWNbMl0pKSA9PSAoY2VudGVyX3ZhbHVlXykASW50ZWdlclZlY3RvclRvUXVhbnRpemVkT2N0YWhlZHJhbENvb3JkcwAoaSkgPT0gKDApAEdldFBhcmVudEF0dHJpYnV0ZVR5cGUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAC91c3IvbG9jYWwvZ29vZ2xlL2hvbWUvemhhZmFuZy9kcmFjby9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9jb21wcmVzc2lvbi9hdHRyaWJ1dGVzL3ByZWRpY3Rpb25fc2NoZW1lcy9wcmVkaWN0aW9uX3NjaGVtZV9ub3JtYWxfb2N0YWhlZHJvbl9kZWNvZGluZ190cmFuc2Zvcm0uaABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMzJTZXF1ZW50aWFsTm9ybWFsQXR0cmlidXRlRGVjb2RlckUAKDApIDw9IChhdHRfaWQpAE41ZHJhY28zOFNlcXVlbnRpYWxRdWFudGl6YXRpb25BdHRyaWJ1dGVEZWNvZGVyRQBONWRyYWNvMTVQb2ludHNTZXF1ZW5jZXJFAE41ZHJhY28xNUxpbmVhclNlcXVlbmNlckUATjVkcmFjbzE3UG9pbnRDbG91ZERlY29kZXJFAEZhaWxlZCB0byBwYXJzZSBEcmFjbyBoZWFkZXIuAERSQUNPAE5vdCBhIERyYWNvIGZpbGUuAEZhaWxlZCB0byBkZWNvZGUgbWV0YWRhdGEuAFVzaW5nIGluY29tcGF0aWJsZSBkZWNvZGVyIGZvciB0aGUgaW5wdXQgZ2VvbWV0cnkuAFVua25vd24gbWFqb3IgdmVyc2lvbi4AVW5rbm93biBtaW5vciB2ZXJzaW9uLgBGYWlsZWQgdG8gaW5pdGlhbGl6ZSB0aGUgZGVjb2Rlci4ARmFpbGVkIHRvIGRlY29kZSBnZW9tZXRyeSBkYXRhLgBGYWlsZWQgdG8gZGVjb2RlIHBvaW50IGF0dHJpYnV0ZXMuAE41ZHJhY28yN1BvaW50Q2xvdWRTZXF1ZW50aWFsRGVjb2RlckUAKG5iaXRzKSA+PSAoMCkAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvcmUvZGVjb2Rlcl9idWZmZXIuaABHZXRCaXRzAChuYml0cykgPD0gKDMyKQAoYXR0X2lkKSA8IChzdGF0aWNfY2FzdDxpbnQzMl90PihhdHRyaWJ1dGVzXy5zaXplKCkpKQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vcG9pbnRfY2xvdWQvcG9pbnRfY2xvdWQuaABhdHRyaWJ1dGUAYXR0X2lkID49IDAAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL3BvaW50X2Nsb3VkL3BvaW50X2Nsb3VkLmNjAFNldEF0dHJpYnV0ZQBhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAE41ZHJhY28xMFBvaW50Q2xvdWRFAFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBTdDExbG9naWNfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(Runtime.setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(Runtime.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>2];info.adjusted=thrown;return(Runtime.setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(Runtime.setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function _abort(){Module["abort"]()}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}function ___gxx_personality_v0(){}function ___cxa_allocate_exception(size){return _malloc(size)}DYNAMICTOP_PTR=allocate(1,"i32",ALLOC_STATIC);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=Runtime.alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;function 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}var ASSERTIONS;var intArrayToString=ASSERTIONS?(function(array){var ret=[];for(var i=0;i255){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.");chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}):(function(array){var ret=[];for(var i=0;i255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")});var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var decodeBase64=typeof atob==="function"?atob:(function(input){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=2)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var Module;if(!Module)Module=(typeof DracoAnimationDecoderModule!=="undefined"?DracoAnimationDecoderModule:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);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"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}else{Module["read"]=function shell_read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(f);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function shell_print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function shell_printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw new Error("Unknown runtime environment. Where are we?")}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}if(!Module["quit"]){Module["quit"]=(function(status,toThrow){throw toThrow})}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value;return value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i>2];var end=(ret+size+15|0)&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>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)}}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 getValue: "+type)}return null}var ALLOC_NORMAL=0;var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(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>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)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=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}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){var __cxa_demangle_func=Module["___cxa_demangle"]||Module["__cxa_demangle"];if(__cxa_demangle_func){try{var s=func.substr(1);var len=lengthBytesUTF8(s)+1;var buf=_malloc(len);stringToUTF8(s,buf,len);var status=_malloc(4);var ret=__cxa_demangle_func(buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}return func}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var ASMJS_PAGE_SIZE=16777216;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}if(!Module["reallocBuffer"])Module["reallocBuffer"]=(function(size){var ret;try{if(ArrayBuffer.transfer){ret=ArrayBuffer.transfer(buffer,size)}else{var oldHEAP8=HEAP8;ret=new ArrayBuffer(size);var temp=new Int8Array(ret);temp.set(oldHEAP8)}}catch(e){return false}var success=_emscripten_replace_memory(ret);if(!success)return false;return ret});function enlargeMemory(){var PAGE_MULTIPLE=Module["usingWasm"]?WASM_PAGE_SIZE:ASMJS_PAGE_SIZE;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["fround"]){var froundBuffer=new Float32Array(1);Math["fround"]=(function(x){froundBuffer[0]=x;return froundBuffer[0]})}Math.fround=Math["fround"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}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["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=Runtime.GLOBAL_BASE;STATICTOP=STATIC_BASE+15184;__ATINIT__.push();memoryInitializer="data:application/octet-stream;base64,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SwAAAE0AAABUAAAAAAAAAOgDAABGAAAATgAAAEgAAABJAAAADwAAAAMAAAADAAAABQAAAE41ZHJhY28yNEtleWZyYW1lQW5pbWF0aW9uRGVjb2RlckUATjVkcmFjbzE3S2V5ZnJhbWVBbmltYXRpb25FAE41ZHJhY28yOEF0dHJpYnV0ZU9jdGFoZWRyb25UcmFuc2Zvcm1FAE41ZHJhY28xOEF0dHJpYnV0ZVRyYW5zZm9ybUUATjVkcmFjbzMwQXR0cmlidXRlUXVhbnRpemF0aW9uVHJhbnNmb3JtRQBONWRyYWNvMTdBdHRyaWJ1dGVzRGVjb2RlckUATjVkcmFjbzI2QXR0cmlidXRlc0RlY29kZXJJbnRlcmZhY2VFAE41ZHJhY28yNlNlcXVlbnRpYWxBdHRyaWJ1dGVEZWNvZGVyRQAhaWRlbnRpdHlfbWFwcGluZ18AL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2F0dHJpYnV0ZXMvcG9pbnRfYXR0cmlidXRlLmgAU2V0UG9pbnRNYXBFbnRyeQBza2lwX2F0dHJpYnV0ZV90cmFuc2Zvcm0ATjVkcmFjbzM3U2VxdWVudGlhbEF0dHJpYnV0ZURlY29kZXJzQ29udHJvbGxlckUATjVkcmFjbzI4UHJlZGljdGlvblNjaGVtZURlbHRhRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVFRQBONWRyYWNvMzdQcmVkaWN0aW9uU2NoZW1lVHlwZWREZWNvZGVySW50ZXJmYWNlSWlpRUUATjVkcmFjbzMyUHJlZGljdGlvblNjaGVtZURlY29kZXJJbnRlcmZhY2VFAE41ZHJhY28yNVByZWRpY3Rpb25TY2hlbWVJbnRlcmZhY2VFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBmYWxzZQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvcHJlZGljdGlvbl9zY2hlbWVfd3JhcF90cmFuc2Zvcm1fYmFzZS5oAHF1YW50aXphdGlvbl9iaXRzAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvbWVzaF9wcmVkaWN0aW9uX3NjaGVtZV90ZXhfY29vcmRzX3BvcnRhYmxlX2RlY29kZXIuaABONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfdGV4X2Nvb3Jkc19kZWNvZGVyLmgATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ1TWVzaFByZWRpY3Rpb25TY2hlbWVNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDBNZXNoUHJlZGljdGlvblNjaGVtZVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28zNk1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ1TWVzaFByZWRpY3Rpb25TY2hlbWVNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28zM1NlcXVlbnRpYWxJbnRlZ2VyQXR0cmlidXRlRGVjb2RlckUAKHEpID49ICgyKQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9ub3JtYWxfY29tcHJlc3Npb25fdXRpbHMuaABTZXRRdWFudGl6YXRpb25CaXRzAChxKSA8PSAoMzApAChpbl9zKSA+PSAoMCkAT2N0YWhlcmRhbENvb3Jkc1RvVW5pdFZlY3RvcgAoaW5fdCkgPj0gKDApAChpbl9zKSA8PSAoMSkAKGluX3QpIDw9ICgxKQAocHJlZF92YWxzWzBdKSA8PSAoMiAqIHRoaXMtPmNlbnRlcl92YWx1ZSgpKQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvcHJlZGljdGlvbl9zY2hlbWVfbm9ybWFsX29jdGFoZWRyb25fY2Fub25pY2FsaXplZF9kZWNvZGluZ190cmFuc2Zvcm0uaABDb21wdXRlT3JpZ2luYWxWYWx1ZQAocHJlZF92YWxzWzFdKSA8PSAoMiAqIHRoaXMtPmNlbnRlcl92YWx1ZSgpKQAoY29ycl92YWxzWzBdKSA8PSAoMiAqIHRoaXMtPmNlbnRlcl92YWx1ZSgpKQAoY29ycl92YWxzWzFdKSA8PSAoMiAqIHRoaXMtPmNlbnRlcl92YWx1ZSgpKQAoMCkgPD0gKHByZWRfdmFsc1swXSkAKDApIDw9IChwcmVkX3ZhbHNbMV0pACgwKSA8PSAoY29ycl92YWxzWzBdKQAoMCkgPD0gKGNvcnJfdmFsc1sxXSkAKHMpIDw9IChjZW50ZXJfdmFsdWVfKQBJc0luRGlhbW9uZAAodCkgPD0gKGNlbnRlcl92YWx1ZV8pAChzKSA+PSAoLWNlbnRlcl92YWx1ZV8pACh0KSA+PSAoLWNlbnRlcl92YWx1ZV8pACgqcykgPD0gKGNlbnRlcl92YWx1ZV8pAEludmVydERpYW1vbmQAKCp0KSA8PSAoY2VudGVyX3ZhbHVlXykAKCpzKSA+PSAoLWNlbnRlcl92YWx1ZV8pACgqdCkgPj0gKC1jZW50ZXJfdmFsdWVfKQAobWF4X3F1YW50aXplZF92YWx1ZSAlIDIpID09ICgxKQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvcHJlZGljdGlvbl9zY2hlbWVfbm9ybWFsX29jdGFoZWRyb25fdHJhbnNmb3JtX2Jhc2UuaABzZXRfbWF4X3F1YW50aXplZF92YWx1ZQBONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAHRoaXMtPklzSW5pdGlhbGl6ZWQoKQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvbWVzaF9wcmVkaWN0aW9uX3NjaGVtZV9nZW9tZXRyaWNfbm9ybWFsX3ByZWRpY3Rvcl9hcmVhLmgAQ29tcHV0ZVByZWRpY3RlZFZhbHVlAChub3JtYWwuQWJzU3VtKCkpIDw9ICh1cHBlcl9ib3VuZCkAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfZ2VvbWV0cmljX25vcm1hbF9wcmVkaWN0b3JfYmFzZS5oAEdldFBvc2l0aW9uRm9yQ29ybmVyAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvbWVzaF9wcmVkaWN0aW9uX3NjaGVtZV9nZW9tZXRyaWNfbm9ybWFsX2RlY29kZXIuaABDb21wdXRlT3JpZ2luYWxWYWx1ZXMAKG51bV9jb21wb25lbnRzKSA9PSAoMikAKHByZWRfbm9ybWFsXzNkLkFic1N1bSgpKSA9PSAob2N0YWhlZHJvbl90b29sX2JveF8uY2VudGVyX3ZhbHVlKCkpAChzdGQ6OmFicyhpbnRfdmVjWzBdKSArIHN0ZDo6YWJzKGludF92ZWNbMV0pICsgc3RkOjphYnMoaW50X3ZlY1syXSkpID09IChjZW50ZXJfdmFsdWVfKQBJbnRlZ2VyVmVjdG9yVG9RdWFudGl6ZWRPY3RhaGVkcmFsQ29vcmRzAChpKSA9PSAoMCkAR2V0UGFyZW50QXR0cmlidXRlVHlwZQBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAL3Vzci9sb2NhbC9nb29nbGUvaG9tZS96aGFmYW5nL2RyYWNvL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL3ByZWRpY3Rpb25fc2NoZW1lX25vcm1hbF9vY3RhaGVkcm9uX2RlY29kaW5nX3RyYW5zZm9ybS5oAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28zMlNlcXVlbnRpYWxOb3JtYWxBdHRyaWJ1dGVEZWNvZGVyRQAoMCkgPD0gKGF0dF9pZCkATjVkcmFjbzM4U2VxdWVudGlhbFF1YW50aXphdGlvbkF0dHJpYnV0ZURlY29kZXJFAE41ZHJhY28xNVBvaW50c1NlcXVlbmNlckUATjVkcmFjbzE1TGluZWFyU2VxdWVuY2VyRQBONWRyYWNvMTdQb2ludENsb3VkRGVjb2RlckUARmFpbGVkIHRvIHBhcnNlIERyYWNvIGhlYWRlci4ARFJBQ08ATm90IGEgRHJhY28gZmlsZS4ARmFpbGVkIHRvIGRlY29kZSBtZXRhZGF0YS4AVXNpbmcgaW5jb21wYXRpYmxlIGRlY29kZXIgZm9yIHRoZSBpbnB1dCBnZW9tZXRyeS4AVW5rbm93biBtYWpvciB2ZXJzaW9uLgBVbmtub3duIG1pbm9yIHZlcnNpb24uAEZhaWxlZCB0byBpbml0aWFsaXplIHRoZSBkZWNvZGVyLgBGYWlsZWQgdG8gZGVjb2RlIGdlb21ldHJ5IGRhdGEuAEZhaWxlZCB0byBkZWNvZGUgcG9pbnQgYXR0cmlidXRlcy4ATjVkcmFjbzI3UG9pbnRDbG91ZFNlcXVlbnRpYWxEZWNvZGVyRQAobmJpdHMpID49ICgwKQAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29yZS9kZWNvZGVyX2J1ZmZlci5oAEdldEJpdHMAKG5iaXRzKSA8PSAoMzIpAChhdHRfaWQpIDwgKHN0YXRpY19jYXN0PGludDMyX3Q+KGF0dHJpYnV0ZXNfLnNpemUoKSkpAC91c3IvbG9jYWwvZ29vZ2xlL2hvbWUvemhhZmFuZy9kcmFjby9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9wb2ludF9jbG91ZC9wb2ludF9jbG91ZC5oAGF0dHJpYnV0ZQBhdHRfaWQgPj0gMAAvdXNyL2xvY2FsL2dvb2dsZS9ob21lL3poYWZhbmcvZHJhY28vZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vcG9pbnRfY2xvdWQvcG9pbnRfY2xvdWQuY2MAU2V0QXR0cmlidXRlAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUATjVkcmFjbzEwUG9pbnRDbG91ZEUAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAFN0MTFsb2dpY19lcnJvcgBTdDEybGVuZ3RoX2Vycm9yAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9F";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(Runtime.setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(Runtime.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>2];info.adjusted=thrown;return(Runtime.setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(Runtime.setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function _abort(){Module["abort"]()}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}function ___gxx_personality_v0(){}function ___cxa_allocate_exception(size){return _malloc(size)}DYNAMICTOP_PTR=allocate(1,"i32",ALLOC_STATIC);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=Runtime.alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;function 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}var ASSERTIONS;var intArrayToString=ASSERTIONS?(function(array){var ret=[];for(var i=0;i255){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.");chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}):(function(array){var ret=[];for(var i=0;i255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")});var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var decodeBase64=typeof atob==="function"?atob:(function(input){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i2147483648)return false;b=new a(newBuffer);d=new c(newBuffer);f=new e(newBuffer);h=new g(newBuffer);j=new i(newBuffer);l=new k(newBuffer);n=new m(newBuffer);p=new o(newBuffer);buffer=newBuffer;return true} // EMSCRIPTEN_START_FUNCS -function Pa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;n=x;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=f[3656]|0;c=m>>>a;if(c&3|0){b=(c&1^1)+a|0;a=14664+(b<<1<<2)|0;c=a+8|0;d=f[c>>2]|0;e=d+8|0;g=f[e>>2]|0;if((a|0)==(g|0))f[3656]=m&~(1<>2]=a;f[c>>2]=g}w=b<<3;f[d+4>>2]=w|3;w=d+w+4|0;f[w>>2]=f[w>>2]|1;w=e;u=x;return w|0}l=f[3658]|0;if(k>>>0>l>>>0){if(c|0){b=2<>>12&16;b=b>>>h;c=b>>>5&8;b=b>>>c;e=b>>>2&4;b=b>>>e;a=b>>>1&2;b=b>>>a;d=b>>>1&1;d=(c|h|e|a|d)+(b>>>d)|0;b=14664+(d<<1<<2)|0;a=b+8|0;e=f[a>>2]|0;h=e+8|0;c=f[h>>2]|0;if((b|0)==(c|0)){a=m&~(1<>2]=b;f[a>>2]=c;a=m}g=(d<<3)-k|0;f[e+4>>2]=k|3;d=e+k|0;f[d+4>>2]=g|1;f[d+g>>2]=g;if(l|0){e=f[3661]|0;b=l>>>3;c=14664+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=e;f[b+12>>2]=e;f[e+8>>2]=b;f[e+12>>2]=c}f[3658]=g;f[3661]=d;w=h;u=x;return w|0}i=f[3657]|0;if(i){c=(i&0-i)+-1|0;h=c>>>12&16;c=c>>>h;g=c>>>5&8;c=c>>>g;j=c>>>2&4;c=c>>>j;d=c>>>1&2;c=c>>>d;a=c>>>1&1;a=f[14928+((g|h|j|d|a)+(c>>>a)<<2)>>2]|0;c=(f[a+4>>2]&-8)-k|0;d=f[a+16+(((f[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){j=a;g=c}else{do{h=(f[d+4>>2]&-8)-k|0;j=h>>>0>>0;c=j?h:c;a=j?d:a;d=f[d+16+(((f[d+16>>2]|0)==0&1)<<2)>>2]|0}while((d|0)!=0);j=a;g=c}h=j+k|0;if(j>>>0>>0){e=f[j+24>>2]|0;b=f[j+12>>2]|0;do if((b|0)==(j|0)){a=j+20|0;b=f[a>>2]|0;if(!b){a=j+16|0;b=f[a>>2]|0;if(!b){c=0;break}}while(1){c=b+20|0;d=f[c>>2]|0;if(d|0){b=d;a=c;continue}c=b+16|0;d=f[c>>2]|0;if(!d)break;else{b=d;a=c}}f[a>>2]=0;c=b}else{c=f[j+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);do if(e|0){b=f[j+28>>2]|0;a=14928+(b<<2)|0;if((j|0)==(f[a>>2]|0)){f[a>>2]=c;if(!c){f[3657]=i&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=e;b=f[j+16>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}b=f[j+20>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}while(0);if(g>>>0<16){w=g+k|0;f[j+4>>2]=w|3;w=j+w+4|0;f[w>>2]=f[w>>2]|1}else{f[j+4>>2]=k|3;f[h+4>>2]=g|1;f[h+g>>2]=g;if(l|0){d=f[3661]|0;b=l>>>3;c=14664+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=d;f[b+12>>2]=d;f[d+8>>2]=b;f[d+12>>2]=c}f[3658]=g;f[3661]=h}w=j+8|0;u=x;return w|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;j=f[3657]|0;if(j){d=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)i=31;else{m=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;i=14-(l|m|i)+(v<>>15)|0;i=k>>>(i+7|0)&1|i<<1}else i=0;c=f[14928+(i<<2)>>2]|0;a:do if(!c){c=0;a=0;v=57}else{a=0;h=k<<((i|0)==31?0:25-(i>>>1)|0);g=0;while(1){e=(f[c+4>>2]&-8)-k|0;if(e>>>0>>0)if(!e){a=c;d=0;e=c;v=61;break a}else{a=c;d=e}e=f[c+20>>2]|0;c=f[c+16+(h>>>31<<2)>>2]|0;g=(e|0)==0|(e|0)==(c|0)?g:e;e=(c|0)==0;if(e){c=g;v=57;break}else h=h<<((e^1)&1)}}while(0);if((v|0)==57){if((c|0)==0&(a|0)==0){a=2<>>12&16;m=m>>>h;g=m>>>5&8;m=m>>>g;i=m>>>2&4;m=m>>>i;l=m>>>1&2;m=m>>>l;c=m>>>1&1;a=0;c=f[14928+((g|h|i|l|c)+(m>>>c)<<2)>>2]|0}if(!c){i=a;h=d}else{e=c;v=61}}if((v|0)==61)while(1){v=0;c=(f[e+4>>2]&-8)-k|0;m=c>>>0>>0;c=m?c:d;a=m?e:a;e=f[e+16+(((f[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){i=a;h=c;break}else{d=c;v=61}}if((i|0)!=0?h>>>0<((f[3658]|0)-k|0)>>>0:0){g=i+k|0;if(i>>>0>=g>>>0){w=0;u=x;return w|0}e=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=f[a>>2]|0;if(!b){a=i+16|0;b=f[a>>2]|0;if(!b){b=0;break}}while(1){c=b+20|0;d=f[c>>2]|0;if(d|0){b=d;a=c;continue}c=b+16|0;d=f[c>>2]|0;if(!d)break;else{b=d;a=c}}f[a>>2]=0}else{w=f[i+8>>2]|0;f[w+12>>2]=b;f[b+8>>2]=w}while(0);do if(e){a=f[i+28>>2]|0;c=14928+(a<<2)|0;if((i|0)==(f[c>>2]|0)){f[c>>2]=b;if(!b){d=j&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){d=j;break}}f[b+24>>2]=e;a=f[i+16>>2]|0;if(a|0){f[b+16>>2]=a;f[a+24>>2]=b}a=f[i+20>>2]|0;if(a){f[b+20>>2]=a;f[a+24>>2]=b;d=j}else d=j}else d=j;while(0);do if(h>>>0>=16){f[i+4>>2]=k|3;f[g+4>>2]=h|1;f[g+h>>2]=h;b=h>>>3;if(h>>>0<256){c=14664+(b<<1<<2)|0;a=f[3656]|0;b=1<>2]|0}f[a>>2]=g;f[b+12>>2]=g;f[g+8>>2]=b;f[g+12>>2]=c;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(t|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;c=14928+(b<<2)|0;f[g+28>>2]=b;a=g+16|0;f[a+4>>2]=0;f[a>>2]=0;a=1<>2]=g;f[g+24>>2]=c;f[g+12>>2]=g;f[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);c=f[c>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(h|0)){v=97;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=96;break}else{a=a<<1;c=b}}if((v|0)==96){f[d>>2]=g;f[g+24>>2]=c;f[g+12>>2]=g;f[g+8>>2]=g;break}else if((v|0)==97){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=g;f[v>>2]=g;f[g+8>>2]=w;f[g+12>>2]=c;f[g+24>>2]=0;break}}else{w=h+k|0;f[i+4>>2]=w|3;w=i+w+4|0;f[w>>2]=f[w>>2]|1}while(0);w=i+8|0;u=x;return w|0}else m=k}else m=k}else m=-1;while(0);c=f[3658]|0;if(c>>>0>=m>>>0){b=c-m|0;a=f[3661]|0;if(b>>>0>15){w=a+m|0;f[3661]=w;f[3658]=b;f[w+4>>2]=b|1;f[w+b>>2]=b;f[a+4>>2]=m|3}else{f[3658]=0;f[3661]=0;f[a+4>>2]=c|3;w=a+c+4|0;f[w>>2]=f[w>>2]|1}w=a+8|0;u=x;return w|0}h=f[3659]|0;if(h>>>0>m>>>0){t=h-m|0;f[3659]=t;w=f[3662]|0;v=w+m|0;f[3662]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}if(!(f[3774]|0)){f[3776]=4096;f[3775]=4096;f[3777]=-1;f[3778]=-1;f[3779]=0;f[3767]=0;a=n&-16^1431655768;f[n>>2]=a;f[3774]=a;a=4096}else a=f[3776]|0;i=m+48|0;j=m+47|0;g=a+j|0;e=0-a|0;k=g&e;if(k>>>0<=m>>>0){w=0;u=x;return w|0}a=f[3766]|0;if(a|0?(l=f[3764]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){w=0;u=x;return w|0}b:do if(!(f[3767]&4)){c=f[3662]|0;c:do if(c){d=15072;while(1){a=f[d>>2]|0;if(a>>>0<=c>>>0?(q=d+4|0,(a+(f[q>>2]|0)|0)>>>0>c>>>0):0)break;a=f[d+8>>2]|0;if(!a){v=118;break c}else d=a}b=g-h&e;if(b>>>0<2147483647){a=sf(b|0)|0;if((a|0)==((f[d>>2]|0)+(f[q>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{d=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){c=sf(0)|0;if((c|0)!=(-1|0)?(b=c,o=f[3775]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=f[3764]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){q=f[3766]|0;if(q|0?p>>>0<=o>>>0|p>>>0>q>>>0:0){b=0;break}a=sf(b|0)|0;if((a|0)==(c|0)){h=b;g=c;v=135;break b}else{d=a;v=126}}else b=0}while(0);do if((v|0)==126){c=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(d|0)!=(-1|0))))if((d|0)==(-1|0)){b=0;break}else{h=b;g=d;v=135;break b}a=f[3776]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=d;v=135;break b}if((sf(a|0)|0)==(-1|0)){sf(c|0)|0;b=0;break}else{h=a+b|0;g=d;v=135;break b}}while(0);f[3767]=f[3767]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?k>>>0<2147483647:0)?(t=sf(k|0)|0,q=sf(0)|0,r=q-t|0,s=r>>>0>(m+40|0)>>>0,!((t|0)==(-1|0)|s^1|t>>>0>>0&((t|0)!=(-1|0)&(q|0)!=(-1|0))^1)):0){h=s?r:b;g=t;v=135}if((v|0)==135){b=(f[3764]|0)+h|0;f[3764]=b;if(b>>>0>(f[3765]|0)>>>0)f[3765]=b;j=f[3662]|0;do if(j){b=15072;while(1){a=f[b>>2]|0;c=b+4|0;d=f[c>>2]|0;if((g|0)==(a+d|0)){v=145;break}e=f[b+8>>2]|0;if(!e)break;else b=e}if(((v|0)==145?(f[b+12>>2]&8|0)==0:0)?j>>>0>>0&j>>>0>=a>>>0:0){f[c>>2]=d+h;w=j+8|0;w=(w&7|0)==0?0:0-w&7;v=j+w|0;w=(f[3659]|0)+(h-w)|0;f[3662]=v;f[3659]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[3663]=f[3778];break}if(g>>>0<(f[3660]|0)>>>0)f[3660]=g;c=g+h|0;b=15072;while(1){if((f[b>>2]|0)==(c|0)){v=153;break}a=f[b+8>>2]|0;if(!a)break;else b=a}if((v|0)==153?(f[b+12>>2]&8|0)==0:0){f[b>>2]=g;l=b+4|0;f[l>>2]=(f[l>>2]|0)+h;l=g+8|0;l=g+((l&7|0)==0?0:0-l&7)|0;b=c+8|0;b=c+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;f[l+4>>2]=m|3;do if((b|0)!=(j|0)){if((b|0)==(f[3661]|0)){w=(f[3658]|0)+i|0;f[3658]=w;f[3661]=k;f[k+4>>2]=w|1;f[k+w>>2]=w;break}a=f[b+4>>2]|0;if((a&3|0)==1){h=a&-8;d=a>>>3;d:do if(a>>>0<256){a=f[b+8>>2]|0;c=f[b+12>>2]|0;if((c|0)==(a|0)){f[3656]=f[3656]&~(1<>2]=c;f[c+8>>2]=a;break}}else{g=f[b+24>>2]|0;a=f[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;c=d+4|0;a=f[c>>2]|0;if(!a){a=f[d>>2]|0;if(!a){a=0;break}else c=d}while(1){d=a+20|0;e=f[d>>2]|0;if(e|0){a=e;c=d;continue}d=a+16|0;e=f[d>>2]|0;if(!e)break;else{a=e;c=d}}f[c>>2]=0}else{w=f[b+8>>2]|0;f[w+12>>2]=a;f[a+8>>2]=w}while(0);if(!g)break;c=f[b+28>>2]|0;d=14928+(c<<2)|0;do if((b|0)!=(f[d>>2]|0)){f[g+16+(((f[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{f[d>>2]=a;if(a|0)break;f[3657]=f[3657]&~(1<>2]=g;c=b+16|0;d=f[c>>2]|0;if(d|0){f[a+16>>2]=d;f[d+24>>2]=a}c=f[c+4>>2]|0;if(!c)break;f[a+20>>2]=c;f[c+24>>2]=a}while(0);b=b+h|0;e=h+i|0}else e=i;b=b+4|0;f[b>>2]=f[b>>2]&-2;f[k+4>>2]=e|1;f[k+e>>2]=e;b=e>>>3;if(e>>>0<256){c=14664+(b<<1<<2)|0;a=f[3656]|0;b=1<>2]|0}f[a>>2]=k;f[b+12>>2]=k;f[k+8>>2]=b;f[k+12>>2]=c;break}b=e>>>8;do if(!b)b=0;else{if(e>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(t|v|b)+(w<>>15)|0;b=e>>>(b+7|0)&1|b<<1}while(0);d=14928+(b<<2)|0;f[k+28>>2]=b;a=k+16|0;f[a+4>>2]=0;f[a>>2]=0;a=f[3657]|0;c=1<>2]=k;f[k+24>>2]=d;f[k+12>>2]=k;f[k+8>>2]=k;break}a=e<<((b|0)==31?0:25-(b>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){v=194;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=193;break}else{a=a<<1;c=b}}if((v|0)==193){f[d>>2]=k;f[k+24>>2]=c;f[k+12>>2]=k;f[k+8>>2]=k;break}else if((v|0)==194){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=k;f[v>>2]=k;f[k+8>>2]=w;f[k+12>>2]=c;f[k+24>>2]=0;break}}else{w=(f[3659]|0)+i|0;f[3659]=w;f[3662]=k;f[k+4>>2]=w|1}while(0);w=l+8|0;u=x;return w|0}b=15072;while(1){a=f[b>>2]|0;if(a>>>0<=j>>>0?(w=a+(f[b+4>>2]|0)|0,w>>>0>j>>>0):0)break;b=f[b+8>>2]|0}e=w+-47|0;a=e+8|0;a=e+((a&7|0)==0?0:0-a&7)|0;e=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;c=g+8|0;c=(c&7|0)==0?0:0-c&7;v=g+c|0;c=h+-40-c|0;f[3662]=v;f[3659]=c;f[v+4>>2]=c|1;f[v+c+4>>2]=40;f[3663]=f[3778];c=a+4|0;f[c>>2]=27;f[b>>2]=f[3768];f[b+4>>2]=f[3769];f[b+8>>2]=f[3770];f[b+12>>2]=f[3771];f[3768]=g;f[3769]=h;f[3771]=0;f[3770]=b;b=a+24|0;do{v=b;b=b+4|0;f[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;f[c>>2]=f[c>>2]&-2;f[j+4>>2]=g|1;f[a>>2]=g;b=g>>>3;if(g>>>0<256){c=14664+(b<<1<<2)|0;a=f[3656]|0;b=1<>2]|0}f[a>>2]=j;f[b+12>>2]=j;f[j+8>>2]=b;f[j+12>>2]=c;break}b=g>>>8;if(b)if(g>>>0>16777215)c=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;c=14-(t|v|c)+(w<>>15)|0;c=g>>>(c+7|0)&1|c<<1}else c=0;d=14928+(c<<2)|0;f[j+28>>2]=c;f[j+20>>2]=0;f[e>>2]=0;b=f[3657]|0;a=1<>2]=j;f[j+24>>2]=d;f[j+12>>2]=j;f[j+8>>2]=j;break}a=g<<((c|0)==31?0:25-(c>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(g|0)){v=216;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=215;break}else{a=a<<1;c=b}}if((v|0)==215){f[d>>2]=j;f[j+24>>2]=c;f[j+12>>2]=j;f[j+8>>2]=j;break}else if((v|0)==216){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=j;f[v>>2]=j;f[j+8>>2]=w;f[j+12>>2]=c;f[j+24>>2]=0;break}}}else{w=f[3660]|0;if((w|0)==0|g>>>0>>0)f[3660]=g;f[3768]=g;f[3769]=h;f[3771]=0;f[3665]=f[3774];f[3664]=-1;b=0;do{w=14664+(b<<1<<2)|0;f[w+12>>2]=w;f[w+8>>2]=w;b=b+1|0}while((b|0)!=32);w=g+8|0;w=(w&7|0)==0?0:0-w&7;v=g+w|0;w=h+-40-w|0;f[3662]=v;f[3659]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[3663]=f[3778]}while(0);b=f[3659]|0;if(b>>>0>m>>>0){t=b-m|0;f[3659]=t;w=f[3662]|0;v=w+m|0;f[3662]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}}w=ni()|0;f[w>>2]=12;w=0;u=x;return w|0}function Qa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;b=k;i=k+8|0;c=k+4|0;f[i>>2]=a;do if(a>>>0>=212){h=(a>>>0)/210|0;e=h*210|0;f[c>>2]=a-e;a=0;g=(tf(3324,3516,c,b)|0)-3324>>2;b=e;a:while(1){e=(f[3324+(g<<2)>>2]|0)+b|0;b=5;while(1){if(b>>>0>=47){d=211;j=8;break}c=f[3132+(b<<2)>>2]|0;d=(e>>>0)/(c>>>0)|0;if(d>>>0>>0){j=106;break a}if((e|0)==(X(d,c)|0))break;else b=b+1|0}b:do if((j|0)==8){c:while(1){j=0;b=(e>>>0)/(d>>>0)|0;do if(b>>>0>=d>>>0)if((e|0)!=(X(b,d)|0)){b=d+10|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+12|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+16|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+18|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+22|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+28|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)==(X(c,b)|0))c=9;else{b=d+30|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+36|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+40|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+42|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+46|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+52|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+58|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+60|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+66|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+70|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+72|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+78|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+82|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+88|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+96|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+100|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+102|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+106|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+108|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+112|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+120|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+126|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+130|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+136|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+138|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+142|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+148|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+150|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+156|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+162|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+166|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+168|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+172|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+178|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+180|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+186|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+190|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+192|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+196|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+198|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+208|0;c=(e>>>0)/(b>>>0)|0;l=c>>>0>>0;c=(e|0)==(X(c,b)|0);b=l|c?b:d+210|0;c=l?1:c?9:0;a=l?e:a}else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else{b=d;c=9}else{b=d;c=1;a=e}while(0);switch(c&15){case 9:break b;case 0:{d=b;j=8;break}default:break c}}if(c){j=107;break a}}while(0);l=g+1|0;e=(l|0)==48;b=(e&1)+h|0;h=b;g=e?0:l;b=b*210|0}if((j|0)==106){f[i>>2]=e;a=e;break}else if((j|0)==107){f[i>>2]=e;break}}else{a=tf(3132,3324,i,b)|0;a=f[a>>2]|0}while(0);u=k;return a|0}function Ra(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=Ca;if(!g){g=0;return g|0}do switch(f[a+28>>2]|0){case 1:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;i=a+48|0;i=Wg(l|0,I|0,f[i>>2]|0,f[i+4>>2]|0)|0;i=c+i|0;if(!(b[a+32>>0]|0)){c=i;a=0;while(1){m=$(b[c>>0]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}else{c=i;a=0;while(1){m=$($(b[c>>0]|0)/$(127.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 2:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=ng(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;i=a+48|0;i=Wg(c|0,I|0,f[i>>2]|0,f[i+4>>2]|0)|0;i=l+i|0;if(!(b[a+32>>0]|0)){c=i;a=0;while(1){m=$(h[c>>0]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}else{c=i;a=0;while(1){m=$($(h[c>>0]|0)/$(255.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 3:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(d[c>>1]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}else{a=0;while(1){m=$($(d[c>>1]|0)/$(32767.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 4:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(j[c>>1]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}else{a=0;while(1){m=$($(j[c>>1]|0)/$(65535.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 5:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(f[c>>2]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}else{a=0;while(1){m=$($(f[c>>2]|0)*$(4.65661287e-10));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 6:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$((f[c>>2]|0)>>>0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}else{a=0;while(1){m=$($((f[c>>2]|0)>>>0)*$(2.32830644e-10));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 7:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){i=c;m=$(+((f[i>>2]|0)>>>0)+4294967296.0*+(f[i+4>>2]|0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}else{a=0;while(1){i=c;m=$($(+((f[i>>2]|0)>>>0)+4294967296.0*+(f[i+4>>2]|0))*$(1.08420217e-19));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 8:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Wg(ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){i=c;m=$(+((f[i>>2]|0)>>>0)+4294967296.0*+((f[i+4>>2]|0)>>>0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}else{a=0;while(1){i=c;m=$($(+((f[i>>2]|0)>>>0)+4294967296.0*+((f[i+4>>2]|0)>>>0))*$(5.42101086e-20));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 9:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=ng(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Wg(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;a=0;while(1){f[g+(a<<2)>>2]=f[c>>2];a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 10:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=ng(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Wg(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;a=0;while(1){m=$(+p[c>>3]);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 11:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=ng(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Wg(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;a=0;while(1){m=$((b[c>>0]|0)!=0&1);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}default:{l=0;return l|0}}while(0);return 0}function Sa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=u;u=u+64|0;U=V+16|0;H=V;I=a+8|0;f[I>>2]=e;j=a+32|0;d=a+36|0;i=f[d>>2]|0;h=f[j>>2]|0;g=i-h>>2;if(g>>>0>=e>>>0){if(g>>>0>e>>>0?(k=h+(e<<2)|0,(i|0)!=(k|0)):0)f[d>>2]=i+(~((i+-4-k|0)>>>2)<<2)}else Cd(j,e-g|0);d=U;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[H>>2]=0;if(!e){d=0;g=0}else{_c(U,e,H);d=f[U+12>>2]|0;g=f[U+16>>2]|0}f[H>>2]=0;h=U+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else _c(U+12|0,e-i|0,H);d=U+24|0;f[H>>2]=0;g=U+28|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(m=i+(e<<2)|0,(j|0)!=(m|0)):0)f[g>>2]=j+(~((j+-4-m|0)>>>2)<<2)}else _c(d,e-h|0,H);d=U+36|0;f[H>>2]=0;g=U+40|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(n=i+(e<<2)|0,(j|0)!=(n|0)):0)f[g>>2]=j+(~((j+-4-n|0)>>>2)<<2)}else _c(d,e-h|0,H);j=f[U>>2]|0;if((f[I>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;h=0;do{d=f[j+(h<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(h<<2)>>2]=g}else{G=f[m>>2]|0;k=f[i>>2]|0;f[k+(h<<2)>>2]=(d|0)<(G|0)?G:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=a+20|0;g=0;do{d=(f[b+(g<<2)>>2]|0)+(f[k+(g<<2)>>2]|0)|0;i=c+(g<<2)|0;f[i>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[h>>2]|0)+d|0;r=18}}else{d=d-(f[h>>2]|0)|0;r=18}if((r|0)==18){r=0;f[i>>2]=d}g=g+1|0}while((g|0)<(f[I>>2]|0))}}B=f[a+48>>2]|0;C=f[a+52>>2]|0;F=pg(16)|0;f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;f[F+12>>2]=0;f[H>>2]=0;G=H+4|0;f[G>>2]=0;f[H+8>>2]=0;do if(e)if(e>>>0>1073741823)Yh(H);else{E=e<<2;p=pg(E)|0;f[H>>2]=p;o=p+(e<<2)|0;f[H+8>>2]=o;Vd(p|0,0,E|0)|0;f[G>>2]=o;o=p;break}else{o=0;p=0}while(0);D=a+56|0;d=f[D>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;A=g-h|0;E=A>>2;do if((A|0)>4){v=B+64|0;w=B+28|0;x=(e|0)>0;y=a+16|0;z=a+32|0;A=a+12|0;s=a+20|0;t=e<<2;if(g-h>>2>>>0>1){J=1;q=h}else{r=d;Yh(r)}while(1){o=f[q+(J<<2)>>2]|0;n=o+((o|0)<0?0:((o>>>0)%3|0|0)==0?2:-1)|0;p=n>>>5;q=1<<(n&31);r=(n|0)<0;m=1;d=0;g=o;a:while(1){do{if((g|0)<=-1){r=63;break a}i=f[U+(d*12|0)>>2]|0;if(((f[(f[B>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)|0)==0?(K=f[(f[(f[v>>2]|0)+12>>2]|0)+(g<<2)>>2]|0,(K|0)>=0):0)?(N=f[w>>2]|0,l=f[C>>2]|0,L=f[l+(f[N+(K<<2)>>2]<<2)>>2]|0,M=K+1|0,M=f[l+(f[N+((((M|0)%3|0|0)==0?K+-2|0:M)<<2)>>2]<<2)>>2]|0,N=f[l+(f[N+((((K>>>0)%3|0|0)==0?2:-1)+K<<2)>>2]<<2)>>2]|0,(L|0)<(J|0)&(M|0)<(J|0)&(N|0)<(J|0)):0){j=X(L,e)|0;k=X(M,e)|0;l=X(N,e)|0;if(x){h=0;do{f[i+(h<<2)>>2]=(f[c+(h+l<<2)>>2]|0)+(f[c+(h+k<<2)>>2]|0)-(f[c+(h+j<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;r=44;break a}}do if(m){h=g+1|0;g=((h|0)%3|0|0)==0?g+-2|0:h;h=f[B>>2]|0;if(!(f[h+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[v>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;i=g+1|0;if((g|0)>=0)g=((i|0)%3|0|0)==0?g+-2|0:i}}else g=-1073741824}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;h=f[B>>2]|0;if(!(f[h+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[v>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}else g=-1073741824}while(0);if((g|0)==(o|0)){r=63;break a}}while(!(m&(g|0)<0));g=(q&f[h+(p<<2)>>2]|0)!=0;if(g|r){m=0;g=g?-1073741824:n;continue}g=f[(f[(f[v>>2]|0)+12>>2]|0)+(n<<2)>>2]|0;if((g|0)<0){m=0;continue}if(!((g>>>0)%3|0)){m=0;g=g+2|0;continue}else{m=0;g=g+-1|0;continue}}if((r|0)==63)if((d|0)>0)r=44;else{Q=X(J,e)|0;r=75}if((r|0)==44){r=0;if(x){Vd(f[H>>2]|0,0,t|0)|0;l=d+-1|0;k=F+(l<<2)|0;l=f[a+60+(l*12|0)>>2]|0;m=f[H>>2]|0;j=0;g=0;do{q=f[k>>2]|0;f[k>>2]=q+1;if(!(f[l+(q>>>5<<2)>>2]&1<<(q&31))){i=f[U+(j*12|0)>>2]|0;h=0;do{q=m+(h<<2)|0;f[q>>2]=(f[q>>2]|0)+(f[i+(h<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0));g=g+1|0}j=j+1|0}while((j|0)!=(d|0));d=g}else{j=d+-1|0;i=F+(j<<2)|0;j=f[a+60+(j*12|0)>>2]|0;h=0;g=0;k=f[i>>2]|0;do{q=k;k=k+1|0;f[i>>2]=k;g=g+((f[j+(q>>>5<<2)>>2]&1<<(q&31)|0)==0&1)|0;h=h+1|0}while((h|0)!=(d|0));d=g}h=X(J,e)|0;if(d){j=f[H>>2]|0;if(x){g=0;do{q=j+(g<<2)|0;f[q>>2]=(f[q>>2]|0)/(d|0)|0;g=g+1|0}while((g|0)!=(e|0))}l=b+(h<<2)|0;k=c+(h<<2)|0;if((f[I>>2]|0)>0){h=0;do{d=f[j+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{q=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(q|0)?q:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[l+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;do if((d|0)>(f[y>>2]|0)){d=d-(f[s>>2]|0)|0;r=97}else{if((d|0)>=(f[A>>2]|0))break;d=(f[s>>2]|0)+d|0;r=97}while(0);if((r|0)==97){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[I>>2]|0))}}}else{Q=h;r=75}}if((r|0)==75?(r=0,O=c+((X(J+-1|0,e)|0)<<2)|0,P=b+(Q<<2)|0,R=c+(Q<<2)|0,(f[I>>2]|0)>0):0){h=0;do{d=f[O+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{q=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(q|0)?q:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[P+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=R+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[y>>2]|0)){if((d|0)<(f[A>>2]|0)){d=(f[s>>2]|0)+d|0;r=85}}else{d=d-(f[s>>2]|0)|0;r=85}if((r|0)==85){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[I>>2]|0))}}J=J+1|0;if((J|0)>=(E|0)){r=28;break}d=f[D>>2]|0;q=f[d>>2]|0;if((f[d+4>>2]|0)-q>>2>>>0<=J>>>0){r=34;break}}if((r|0)==28){T=f[H>>2]|0;S=T;break}else if((r|0)==34)Yh(d)}else{S=p;T=o}while(0);if(S|0){d=f[G>>2]|0;if((d|0)!=(S|0))f[G>>2]=d+(~((d+-4-S|0)>>>2)<<2);Bi(T)}Bi(F);d=f[U+36>>2]|0;if(d|0){g=U+40|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}d=f[U+24>>2]|0;if(d|0){g=U+28|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}d=f[U+12>>2]|0;if(d|0){g=U+16|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}h=f[U>>2]|0;if(!h){u=V;return 1}d=U+4|0;g=f[d>>2]|0;if((g|0)!=(h|0))f[d>>2]=g+(~((g+-4-h|0)>>>2)<<2);Bi(h);u=V;return 1}function Ta(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;S=u;u=u+64|0;R=S+16|0;I=S;J=a+8|0;f[J>>2]=e;j=a+32|0;d=a+36|0;i=f[d>>2]|0;h=f[j>>2]|0;g=i-h>>2;if(g>>>0>=e>>>0){if(g>>>0>e>>>0?(k=h+(e<<2)|0,(i|0)!=(k|0)):0)f[d>>2]=i+(~((i+-4-k|0)>>>2)<<2)}else Cd(j,e-g|0);d=R;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[I>>2]=0;if(!e){d=0;g=0}else{_c(R,e,I);d=f[R+12>>2]|0;g=f[R+16>>2]|0}f[I>>2]=0;h=R+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else _c(R+12|0,e-i|0,I);d=R+24|0;f[I>>2]=0;g=R+28|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(m=i+(e<<2)|0,(j|0)!=(m|0)):0)f[g>>2]=j+(~((j+-4-m|0)>>>2)<<2)}else _c(d,e-h|0,I);d=R+36|0;f[I>>2]=0;g=R+40|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(n=i+(e<<2)|0,(j|0)!=(n|0)):0)f[g>>2]=j+(~((j+-4-n|0)>>>2)<<2)}else _c(d,e-h|0,I);j=f[R>>2]|0;if((f[J>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;h=0;do{d=f[j+(h<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(h<<2)>>2]=g}else{H=f[m>>2]|0;k=f[i>>2]|0;f[k+(h<<2)>>2]=(d|0)<(H|0)?H:d}h=h+1|0;d=f[J>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=a+20|0;g=0;do{d=(f[b+(g<<2)>>2]|0)+(f[k+(g<<2)>>2]|0)|0;i=c+(g<<2)|0;f[i>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[h>>2]|0)+d|0;r=18}}else{d=d-(f[h>>2]|0)|0;r=18}if((r|0)==18){r=0;f[i>>2]=d}g=g+1|0}while((g|0)<(f[J>>2]|0))}}C=f[a+48>>2]|0;D=f[a+52>>2]|0;G=pg(16)|0;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;f[G+12>>2]=0;f[I>>2]=0;H=I+4|0;f[H>>2]=0;f[I+8>>2]=0;do if(e)if(e>>>0>1073741823)Yh(I);else{F=e<<2;p=pg(F)|0;f[I>>2]=p;o=p+(e<<2)|0;f[I+8>>2]=o;Vd(p|0,0,F|0)|0;f[H>>2]=o;o=p;break}else{o=0;p=0}while(0);E=a+56|0;d=f[E>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;B=g-h|0;F=B>>2;do if((B|0)>4){w=C+12|0;x=(e|0)>0;y=a+16|0;z=a+32|0;A=a+12|0;B=a+20|0;v=e<<2;if(g-h>>2>>>0>1){K=1;q=h}else{t=d;Yh(t)}while(1){r=f[q+(K<<2)>>2]|0;s=(((r>>>0)%3|0|0)==0?2:-1)+r|0;t=(r|s|0)<0;q=(r|0)<0?r:s;p=1;d=0;g=r;a:while(1){do{if((g|0)<=-1){r=64;break a}n=f[R+(d*12|0)>>2]|0;o=f[w>>2]|0;i=f[o+(g<<2)>>2]|0;if((i|0)>=0){j=f[C>>2]|0;k=f[D>>2]|0;m=f[k+(f[j+(i<<2)>>2]<<2)>>2]|0;h=i+1|0;h=((h|0)%3|0|0)==0?i+-2|0:h;if((h|0)<0)h=-1073741824;else h=f[j+(h<<2)>>2]|0;l=f[k+(h<<2)>>2]|0;h=(((i>>>0)%3|0|0)==0?2:-1)+i|0;if((h|0)<0)h=-1073741824;else h=f[j+(h<<2)>>2]|0;h=f[k+(h<<2)>>2]|0;if((m|0)<(K|0)&(l|0)<(K|0)&(h|0)<(K|0)){k=X(m,e)|0;j=X(l,e)|0;i=X(h,e)|0;if(x){h=0;do{f[n+(h<<2)>>2]=(f[c+(h+i<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+k<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;r=47;break a}}}do if(p){n=g+1|0;g=((n|0)%3|0|0)==0?g+-2|0:n;if((g|0)>=0){g=f[o+(g<<2)>>2]|0;h=g+1|0;if((g|0)>=0)g=((h|0)%3|0|0)==0?g+-2|0:h}}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((g|0)>=0){g=f[o+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}while(0);if((g|0)==(r|0)){r=64;break a}}while(!(p&(g|0)<0));if(t){p=0;g=q;continue}g=f[o+(s<<2)>>2]|0;if((g|0)<0){p=0;continue}if(!((g>>>0)%3|0)){p=0;g=g+2|0;continue}else{p=0;g=g+-1|0;continue}}if((r|0)==64)if((d|0)>0)r=47;else{N=X(K,e)|0;r=76}if((r|0)==47){r=0;if(x){Vd(f[I>>2]|0,0,v|0)|0;l=d+-1|0;k=G+(l<<2)|0;l=f[a+60+(l*12|0)>>2]|0;m=f[I>>2]|0;j=0;g=0;do{t=f[k>>2]|0;f[k>>2]=t+1;if(!(f[l+(t>>>5<<2)>>2]&1<<(t&31))){i=f[R+(j*12|0)>>2]|0;h=0;do{t=m+(h<<2)|0;f[t>>2]=(f[t>>2]|0)+(f[i+(h<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0));g=g+1|0}j=j+1|0}while((j|0)!=(d|0));d=g}else{j=d+-1|0;i=G+(j<<2)|0;j=f[a+60+(j*12|0)>>2]|0;h=0;g=0;k=f[i>>2]|0;do{t=k;k=k+1|0;f[i>>2]=k;g=g+((f[j+(t>>>5<<2)>>2]&1<<(t&31)|0)==0&1)|0;h=h+1|0}while((h|0)!=(d|0));d=g}h=X(K,e)|0;if(d){j=f[I>>2]|0;if(x){g=0;do{t=j+(g<<2)|0;f[t>>2]=(f[t>>2]|0)/(d|0)|0;g=g+1|0}while((g|0)!=(e|0))}l=b+(h<<2)|0;k=c+(h<<2)|0;if((f[J>>2]|0)>0){h=0;do{d=f[j+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{t=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(t|0)?t:d}h=h+1|0;d=f[J>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[l+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;do if((d|0)>(f[y>>2]|0)){d=d-(f[B>>2]|0)|0;r=98}else{if((d|0)>=(f[A>>2]|0))break;d=(f[B>>2]|0)+d|0;r=98}while(0);if((r|0)==98){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[J>>2]|0))}}}else{N=h;r=76}}if((r|0)==76?(r=0,L=c+((X(K+-1|0,e)|0)<<2)|0,M=b+(N<<2)|0,O=c+(N<<2)|0,(f[J>>2]|0)>0):0){h=0;do{d=f[L+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{t=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(t|0)?t:d}h=h+1|0;d=f[J>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[M+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=O+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[y>>2]|0)){if((d|0)<(f[A>>2]|0)){d=(f[B>>2]|0)+d|0;r=86}}else{d=d-(f[B>>2]|0)|0;r=86}if((r|0)==86){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[J>>2]|0))}}K=K+1|0;if((K|0)>=(F|0)){r=28;break}d=f[E>>2]|0;q=f[d>>2]|0;if((f[d+4>>2]|0)-q>>2>>>0<=K>>>0){r=34;break}}if((r|0)==28){Q=f[I>>2]|0;P=Q;break}else if((r|0)==34)Yh(d)}else{P=p;Q=o}while(0);if(P|0){d=f[H>>2]|0;if((d|0)!=(P|0))f[H>>2]=d+(~((d+-4-P|0)>>>2)<<2);Bi(Q)}Bi(G);d=f[R+36>>2]|0;if(d|0){g=R+40|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}d=f[R+24>>2]|0;if(d|0){g=R+28|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}d=f[R+12>>2]|0;if(d|0){g=R+16|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Bi(d)}h=f[R>>2]|0;if(!h){u=S;return 1}d=R+4|0;g=f[d>>2]|0;if((g|0)!=(h|0))f[d>>2]=g+(~((g+-4-h|0)>>>2)<<2);Bi(h);u=S;return 1}function Ua(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=0,o=Ca,q=0.0;if(!g){g=0;return g|0}do switch(f[a+28>>2]|0){case 1:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;i=ng(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(i|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=b[a>>0]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 2:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=h[a>>0];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 3:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=d[a>>1]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 4:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=j[a>>1];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 5:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=f[a>>2]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 6:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=f[a>>2];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 7:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=ng(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){m=a;l=f[m+4>>2]|0;i=g+(c<<3)|0;f[i>>2]=f[m>>2];f[i+4>>2]=l;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 8:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=ng(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=a;m=f[l+4>>2]|0;i=g+(c<<3)|0;f[i>>2]=f[l>>2];f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 9:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=ng(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){o=$(n[a>>2]);m=+K(+o)>=1.0?(+o>0.0?~~+Y(+J(+o/4294967296.0),4294967295.0)>>>0:~~+W((+o-+(~~+o>>>0))/4294967296.0)>>>0):0;i=g+(c<<3)|0;f[i>>2]=~~+o>>>0;f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 10:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=ng(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){q=+p[a>>3];m=+K(q)>=1.0?(q>0.0?~~+Y(+J(q/4294967296.0),4294967295.0)>>>0:~~+W((q-+(~~q>>>0))/4294967296.0)>>>0):0;i=g+(c<<3)|0;f[i>>2]=~~q>>>0;f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 11:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=ng(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Wg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=h[a>>0];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Vd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}default:{m=0;return m|0}}while(0);return 0}function Va(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;F=u;u=u+80|0;k=F+76|0;l=F+72|0;D=F+48|0;m=F+24|0;x=F;h=a+32|0;g=f[c>>2]|0;c=g+1|0;if((g|0)>=0){c=((c|0)%3|0|0)==0?g+-2|0:c;g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((c|0)<0)c=-1073741824;else c=f[(f[f[h>>2]>>2]|0)+(c<<2)>>2]|0;if((g|0)<0)h=-1073741824;else h=f[(f[f[h>>2]>>2]|0)+(g<<2)>>2]|0}else{c=-1073741824;h=-1073741824}i=f[a+36>>2]|0;g=f[i>>2]|0;j=(f[i+4>>2]|0)-g>>2;if(j>>>0<=c>>>0)Yh(i);w=f[g+(c<<2)>>2]|0;if(j>>>0<=h>>>0)Yh(i);h=f[g+(h<<2)>>2]|0;n=(w|0)<(e|0);do if(n&(h|0)<(e|0)){z=w<<1;q=f[d+(z<<2)>>2]|0;y=((q|0)<0)<<31>>31;z=f[d+((z|1)<<2)>>2]|0;A=((z|0)<0)<<31>>31;p=h<<1;o=f[d+(p<<2)>>2]|0;p=f[d+((p|1)<<2)>>2]|0;if(!((o|0)!=(q|0)|(p|0)!=(z|0))){f[a+8>>2]=q;f[a+12>>2]=z;u=F;return}i=a+4|0;c=f[(f[i>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;f[D+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,D)|0;c=f[(f[i>>2]|0)+(w<<2)>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,m)|0;c=f[(f[i>>2]|0)+(h<<2)>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;f[x+16>>2]=0;f[x+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;r=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,r,x)|0;r=x;i=m;h=f[i>>2]|0;i=f[i+4>>2]|0;r=Jg(f[r>>2]|0,f[r+4>>2]|0,h|0,i|0)|0;s=I;t=x+8|0;k=m+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;t=Jg(f[t>>2]|0,f[t+4>>2]|0,j|0,k|0)|0;v=I;l=x+16|0;g=m+16|0;c=f[g>>2]|0;g=f[g+4>>2]|0;l=Jg(f[l>>2]|0,f[l+4>>2]|0,c|0,g|0)|0;m=I;C=ng(r|0,s|0,r|0,s|0)|0;x=I;B=ng(t|0,v|0,t|0,v|0)|0;x=Wg(B|0,I|0,C|0,x|0)|0;C=I;B=ng(l|0,m|0,l|0,m|0)|0;B=Wg(x|0,C|0,B|0,I|0)|0;C=I;if((B|0)==0&(C|0)==0)break;K=D;K=Jg(f[K>>2]|0,f[K+4>>2]|0,h|0,i|0)|0;J=I;H=D+8|0;H=Jg(f[H>>2]|0,f[H+4>>2]|0,j|0,k|0)|0;G=I;h=D+16|0;h=Jg(f[h>>2]|0,f[h+4>>2]|0,c|0,g|0)|0;i=I;k=ng(K|0,J|0,r|0,s|0)|0;d=I;g=ng(H|0,G|0,t|0,v|0)|0;d=Wg(g|0,I|0,k|0,d|0)|0;k=I;g=ng(h|0,i|0,l|0,m|0)|0;g=Wg(d|0,k|0,g|0,I|0)|0;k=I;d=Jg(o|0,((o|0)<0)<<31>>31|0,q|0,y|0)|0;c=I;w=Jg(p|0,((p|0)<0)<<31>>31|0,z|0,A|0)|0;x=I;o=ng(B|0,C|0,q|0,y|0)|0;n=I;q=ng(B|0,C|0,z|0,A|0)|0;p=I;D=ng(g|0,k|0,d|0,c|0)|0;e=I;j=ng(g|0,k|0,w|0,x|0)|0;A=I;n=Wg(D|0,e|0,o|0,n|0)|0;o=I;p=Wg(j|0,A|0,q|0,p|0)|0;q=I;A=ng(g|0,k|0,r|0,s|0)|0;j=I;e=ng(g|0,k|0,t|0,v|0)|0;D=I;m=ng(g|0,k|0,l|0,m|0)|0;k=I;j=Fe(A|0,j|0,B|0,C|0)|0;l=I;D=Fe(e|0,D|0,B|0,C|0)|0;e=I;k=Fe(m|0,k|0,B|0,C|0)|0;m=I;l=Jg(K|0,J|0,j|0,l|0)|0;j=I;e=Jg(H|0,G|0,D|0,e|0)|0;D=I;m=Jg(h|0,i|0,k|0,m|0)|0;k=I;j=ng(l|0,j|0,l|0,j|0)|0;l=I;D=ng(e|0,D|0,e|0,D|0)|0;l=Wg(D|0,I|0,j|0,l|0)|0;j=I;k=ng(m|0,k|0,m|0,k|0)|0;k=Wg(l|0,j|0,k|0,I|0)|0;j=I;l=Jg(0,0,d|0,c|0)|0;m=I;j=ng(k|0,j|0,B|0,C|0)|0;k=I;c=k&2147483647;switch(j|0){case 0:{if(!c){g=0;c=0}else{g=1;c=0;h=j;i=k;E=23}break}case 1:{if(!c){g=1;c=0;E=24}else{g=1;c=0;h=j;i=k;E=23}break}default:{g=1;c=0;h=j;i=k;E=23}}if((E|0)==23)while(1){g=Fg(g|0,c|0,1)|0;c=I;K=h;h=Hg(h|0,i|0,2)|0;if(!(i>>>0>0|(i|0)==0&K>>>0>7)){E=24;break}else{i=I;E=23}}if((E|0)==24)while(1){K=Ah(j|0,k|0,g|0,c|0)|0;g=Wg(K|0,I|0,g|0,c|0)|0;g=Hg(g|0,I|0,1)|0;c=I;K=ng(g|0,c|0,g|0,c|0)|0;J=I;if(J>>>0>k>>>0|(J|0)==(k|0)&K>>>0>j>>>0)E=24;else break}E=ng(g|0,c|0,w|0,x|0)|0;G=I;d=ng(g|0,c|0,l|0,m|0)|0;H=I;J=a+20|0;D=(f[J>>2]|0)+-1|0;K=(1<<(D&31)&f[(f[a+16>>2]|0)+(D>>>5<<2)>>2]|0)!=0;f[J>>2]=D;J=Jg(0,0,E|0,G|0)|0;G=Wg(n|0,o|0,(K?E:J)|0,(K?G:I)|0)|0;J=I;E=Jg(0,0,d|0,H|0)|0;H=Wg(p|0,q|0,(K?d:E)|0,(K?H:I)|0)|0;K=I;J=Fe(G|0,J|0,B|0,C|0)|0;K=Fe(H|0,K|0,B|0,C|0)|0;f[a+8>>2]=J;f[a+12>>2]=K;u=F;return}while(0);do if(n)c=w<<1;else{if((e|0)>0){c=(e<<1)+-2|0;break}K=a+8|0;f[K>>2]=0;f[K+4>>2]=0;u=F;return}while(0);f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=f[d+(c+1<<2)>>2];u=F;return}function Wa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;F=u;u=u+80|0;k=F+76|0;l=F+72|0;D=F+48|0;m=F+24|0;x=F;i=a+32|0;g=f[c>>2]|0;c=g+1|0;do if((g|0)>=0){c=((c|0)%3|0|0)==0?g+-2|0:c;if(!((g>>>0)%3|0)){h=g+2|0;break}else{h=g+-1|0;break}}else{h=g;c=g}while(0);i=f[(f[i>>2]|0)+28>>2]|0;g=f[i+(c<<2)>>2]|0;h=f[i+(h<<2)>>2]|0;i=f[a+36>>2]|0;c=f[i>>2]|0;j=(f[i+4>>2]|0)-c>>2;if(j>>>0<=g>>>0)Yh(i);w=f[c+(g<<2)>>2]|0;if(j>>>0<=h>>>0)Yh(i);h=f[c+(h<<2)>>2]|0;n=(w|0)<(e|0);do if(n&(h|0)<(e|0)){z=w<<1;q=f[d+(z<<2)>>2]|0;y=((q|0)<0)<<31>>31;z=f[d+((z|1)<<2)>>2]|0;A=((z|0)<0)<<31>>31;p=h<<1;o=f[d+(p<<2)>>2]|0;p=f[d+((p|1)<<2)>>2]|0;if(!((o|0)!=(q|0)|(p|0)!=(z|0))){f[a+8>>2]=q;f[a+12>>2]=z;u=F;return}i=a+4|0;c=f[(f[i>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;f[D+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,D)|0;c=f[(f[i>>2]|0)+(w<<2)>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,m)|0;c=f[(f[i>>2]|0)+(h<<2)>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;f[x+16>>2]=0;f[x+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;r=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,r,x)|0;r=x;i=m;h=f[i>>2]|0;i=f[i+4>>2]|0;r=Jg(f[r>>2]|0,f[r+4>>2]|0,h|0,i|0)|0;s=I;t=x+8|0;k=m+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;t=Jg(f[t>>2]|0,f[t+4>>2]|0,j|0,k|0)|0;v=I;l=x+16|0;g=m+16|0;c=f[g>>2]|0;g=f[g+4>>2]|0;l=Jg(f[l>>2]|0,f[l+4>>2]|0,c|0,g|0)|0;m=I;C=ng(r|0,s|0,r|0,s|0)|0;x=I;B=ng(t|0,v|0,t|0,v|0)|0;x=Wg(B|0,I|0,C|0,x|0)|0;C=I;B=ng(l|0,m|0,l|0,m|0)|0;B=Wg(x|0,C|0,B|0,I|0)|0;C=I;if((B|0)==0&(C|0)==0)break;K=D;K=Jg(f[K>>2]|0,f[K+4>>2]|0,h|0,i|0)|0;J=I;H=D+8|0;H=Jg(f[H>>2]|0,f[H+4>>2]|0,j|0,k|0)|0;G=I;h=D+16|0;h=Jg(f[h>>2]|0,f[h+4>>2]|0,c|0,g|0)|0;i=I;k=ng(K|0,J|0,r|0,s|0)|0;d=I;g=ng(H|0,G|0,t|0,v|0)|0;d=Wg(g|0,I|0,k|0,d|0)|0;k=I;g=ng(h|0,i|0,l|0,m|0)|0;g=Wg(d|0,k|0,g|0,I|0)|0;k=I;d=Jg(o|0,((o|0)<0)<<31>>31|0,q|0,y|0)|0;c=I;w=Jg(p|0,((p|0)<0)<<31>>31|0,z|0,A|0)|0;x=I;o=ng(B|0,C|0,q|0,y|0)|0;n=I;q=ng(B|0,C|0,z|0,A|0)|0;p=I;D=ng(g|0,k|0,d|0,c|0)|0;e=I;j=ng(g|0,k|0,w|0,x|0)|0;A=I;n=Wg(D|0,e|0,o|0,n|0)|0;o=I;p=Wg(j|0,A|0,q|0,p|0)|0;q=I;A=ng(g|0,k|0,r|0,s|0)|0;j=I;e=ng(g|0,k|0,t|0,v|0)|0;D=I;m=ng(g|0,k|0,l|0,m|0)|0;k=I;j=Fe(A|0,j|0,B|0,C|0)|0;l=I;D=Fe(e|0,D|0,B|0,C|0)|0;e=I;k=Fe(m|0,k|0,B|0,C|0)|0;m=I;l=Jg(K|0,J|0,j|0,l|0)|0;j=I;e=Jg(H|0,G|0,D|0,e|0)|0;D=I;m=Jg(h|0,i|0,k|0,m|0)|0;k=I;j=ng(l|0,j|0,l|0,j|0)|0;l=I;D=ng(e|0,D|0,e|0,D|0)|0;l=Wg(D|0,I|0,j|0,l|0)|0;j=I;k=ng(m|0,k|0,m|0,k|0)|0;k=Wg(l|0,j|0,k|0,I|0)|0;j=I;l=Jg(0,0,d|0,c|0)|0;m=I;j=ng(k|0,j|0,B|0,C|0)|0;k=I;c=k&2147483647;switch(j|0){case 0:{if(!c){g=0;c=0}else{g=1;c=0;h=j;i=k;E=22}break}case 1:{if(!c){g=1;c=0;E=23}else{g=1;c=0;h=j;i=k;E=22}break}default:{g=1;c=0;h=j;i=k;E=22}}if((E|0)==22)while(1){g=Fg(g|0,c|0,1)|0;c=I;K=h;h=Hg(h|0,i|0,2)|0;if(!(i>>>0>0|(i|0)==0&K>>>0>7)){E=23;break}else{i=I;E=22}}if((E|0)==23)while(1){K=Ah(j|0,k|0,g|0,c|0)|0;g=Wg(K|0,I|0,g|0,c|0)|0;g=Hg(g|0,I|0,1)|0;c=I;K=ng(g|0,c|0,g|0,c|0)|0;J=I;if(J>>>0>k>>>0|(J|0)==(k|0)&K>>>0>j>>>0)E=23;else break}E=ng(g|0,c|0,w|0,x|0)|0;G=I;d=ng(g|0,c|0,l|0,m|0)|0;H=I;J=a+20|0;D=(f[J>>2]|0)+-1|0;K=(1<<(D&31)&f[(f[a+16>>2]|0)+(D>>>5<<2)>>2]|0)!=0;f[J>>2]=D;J=Jg(0,0,E|0,G|0)|0;G=Wg(n|0,o|0,(K?E:J)|0,(K?G:I)|0)|0;J=I;E=Jg(0,0,d|0,H|0)|0;H=Wg(p|0,q|0,(K?d:E)|0,(K?H:I)|0)|0;K=I;J=Fe(G|0,J|0,B|0,C|0)|0;K=Fe(H|0,K|0,B|0,C|0)|0;f[a+8>>2]=J;f[a+12>>2]=K;u=F;return}while(0);do if(n)c=w<<1;else{if((e|0)>0){c=(e<<1)+-2|0;break}K=a+8|0;f[K>>2]=0;f[K+4>>2]=0;u=F;return}while(0);f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=f[d+(c+1<<2)>>2];u=F;return}function Xa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;S=u;u=u+96|0;F=S+92|0;J=S+88|0;K=S+72|0;L=S+48|0;M=S+24|0;N=S;O=a+4|0;m=f[O>>2]|0;if(!m)xa(9274,9296,46,9468);G=a+8|0;l=f[G>>2]|0;if(!l)xa(9274,9296,46,9468);H=a+16|0;E=f[H>>2]|0;n=f[c>>2]|0;f[K>>2]=E;f[K+4>>2]=n;D=K+8|0;f[D>>2]=n;b[K+12>>0]=1;c=f[(f[E+28>>2]|0)+(n<<2)>>2]|0;E=a+20|0;i=f[E>>2]|0;k=f[i>>2]|0;if((f[i+4>>2]|0)-k>>2>>>0<=c>>>0)Yh(i);c=f[l+(f[k+(c<<2)>>2]<<2)>>2]|0;if(!(b[m+84>>0]|0))c=f[(f[m+68>>2]|0)+(c<<2)>>2]|0;f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;f[L+12>>2]=0;f[L+16>>2]=0;f[L+20>>2]=0;f[J>>2]=c;c=b[m+24>>0]|0;f[F>>2]=f[J>>2];Ua(m,F,c,L)|0;c=f[D>>2]|0;w=a+28|0;i=(f[w>>2]|0)==0;a:do if((c|0)>=0){x=M+8|0;y=L+8|0;z=M+16|0;A=L+16|0;B=N+8|0;C=N+16|0;k=(n|0)<0;t=n+1|0;v=n+(k?0:((n>>>0)%3|0|0)==0?2:-1)|0;t=k?n:((t|0)%3|0|0)==0?n+-2|0:t;k=0;r=0;l=0;s=0;m=0;o=0;while(1){do if(!i){i=c+1|0;i=((i|0)%3|0|0)==0?c+-2|0:i;if(!((c>>>0)%3|0)){q=c+2|0;break}else{q=c+-1|0;break}}else{q=v;i=t}while(0);p=f[O>>2]|0;if(!p){c=16;break}a=f[G>>2]|0;if(!a){c=16;break}c=f[(f[(f[H>>2]|0)+28>>2]|0)+(i<<2)>>2]|0;n=f[E>>2]|0;i=f[n>>2]|0;if((f[n+4>>2]|0)-i>>2>>>0<=c>>>0){c=18;break}c=f[a+(f[i+(c<<2)>>2]<<2)>>2]|0;if(!(b[p+84>>0]|0))c=f[(f[p+68>>2]|0)+(c<<2)>>2]|0;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;f[M+12>>2]=0;f[M+16>>2]=0;f[M+20>>2]=0;f[J>>2]=c;n=b[p+24>>0]|0;f[F>>2]=f[J>>2];Ua(p,F,n,M)|0;p=f[O>>2]|0;if(!p){c=23;break}a=f[G>>2]|0;if(!a){c=23;break}c=f[(f[(f[H>>2]|0)+28>>2]|0)+(q<<2)>>2]|0;n=f[E>>2]|0;i=f[n>>2]|0;if((f[n+4>>2]|0)-i>>2>>>0<=c>>>0){c=25;break}c=f[a+(f[i+(c<<2)>>2]<<2)>>2]|0;if(!(b[p+84>>0]|0))c=f[(f[p+68>>2]|0)+(c<<2)>>2]|0;f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=0;f[N+20>>2]=0;f[J>>2]=c;c=b[p+24>>0]|0;f[F>>2]=f[J>>2];Ua(p,F,c,N)|0;c=M;_=L;Z=f[_>>2]|0;_=f[_+4>>2]|0;c=Jg(f[c>>2]|0,f[c+4>>2]|0,Z|0,_|0)|0;i=I;q=x;aa=y;$=f[aa>>2]|0;aa=f[aa+4>>2]|0;q=Jg(f[q>>2]|0,f[q+4>>2]|0,$|0,aa|0)|0;p=I;U=z;n=A;T=f[n>>2]|0;n=f[n+4>>2]|0;U=Jg(f[U>>2]|0,f[U+4>>2]|0,T|0,n|0)|0;V=I;W=N;_=Jg(f[W>>2]|0,f[W+4>>2]|0,Z|0,_|0)|0;Z=I;W=B;aa=Jg(f[W>>2]|0,f[W+4>>2]|0,$|0,aa|0)|0;$=I;W=C;n=Jg(f[W>>2]|0,f[W+4>>2]|0,T|0,n|0)|0;T=I;W=ng(n|0,T|0,q|0,p|0)|0;a=I;Y=ng(aa|0,$|0,U|0,V|0)|0;X=I;V=ng(_|0,Z|0,U|0,V|0)|0;U=I;T=ng(n|0,T|0,c|0,i|0)|0;n=I;i=ng(aa|0,$|0,c|0,i|0)|0;c=I;p=ng(_|0,Z|0,q|0,p|0)|0;q=I;k=Jg(k|0,r|0,Y|0,X|0)|0;k=Wg(k|0,I|0,W|0,a|0)|0;a=I;l=Wg(V|0,U|0,l|0,s|0)|0;l=Jg(l|0,I|0,T|0,n|0)|0;n=I;m=Jg(m|0,o|0,p|0,q|0)|0;m=Wg(m|0,I|0,i|0,c|0)|0;o=I;rc(K);c=f[D>>2]|0;i=(f[w>>2]|0)==0;if((c|0)<0){P=i;j=a;Q=k;R=n;h=l;g=o;e=m;break a}else{r=a;s=n}}if((c|0)==16)xa(9274,9525,70,9697);else if((c|0)==18)Yh(n);else if((c|0)==23)xa(9274,9525,70,9697);else if((c|0)==25)Yh(n)}else{P=i;j=0;Q=0;R=0;h=0;g=0;e=0}while(0);aa=(j|0)>-1|(j|0)==-1&Q>>>0>4294967295;i=Jg(0,0,Q|0,j|0)|0;c=aa?j:I;X=(R|0)>-1|(R|0)==-1&h>>>0>4294967295;Y=Jg(0,0,h|0,R|0)|0;Z=X?R:I;$=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;_=Jg(0,0,e|0,g|0)|0;$=Wg((X?h:Y)|0,Z|0,($?e:_)|0,($?g:I)|0)|0;c=Wg($|0,I|0,(aa?Q:i)|0,c|0)|0;i=I;if(P)if((c|0)>536870912){aa=Hg(c|0,i|0,29)|0;aa=aa&7;i=Fe(Q|0,j|0,aa|0,0)|0;j=I;h=Fe(h|0,R|0,aa|0,0)|0;c=I;e=Fe(e|0,g|0,aa|0,0)|0;g=I}else{i=Q;c=R}else if((i|0)>0|(i|0)==0&c>>>0>536870912){$=Hg(c|0,i|0,29)|0;aa=I;i=Fe(Q|0,j|0,$|0,aa|0)|0;j=I;h=Fe(h|0,R|0,$|0,aa|0)|0;c=I;e=Fe(e|0,g|0,$|0,aa|0)|0;g=I}else{i=Q;c=R}_=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;$=Jg(0,0,i|0,j|0)|0;aa=_?j:I;V=(c|0)>-1|(c|0)==-1&h>>>0>4294967295;W=Jg(0,0,h|0,c|0)|0;X=V?c:I;Z=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;Y=Jg(0,0,e|0,g|0)|0;Z=Wg((V?h:W)|0,X|0,(Z?e:Y)|0,(Z?g:I)|0)|0;aa=Wg(Z|0,I|0,(_?i:$)|0,aa|0)|0;$=I;if(($|0)<0|($|0)==0&aa>>>0<536870913){f[d>>2]=i;f[d+4>>2]=h;f[d+8>>2]=e;u=S;return}else xa(9490,9296,95,9468)}function Ya(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=Ca,l=Ca,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=Ca;C=u;u=u+64|0;e=C+40|0;z=C+16|0;A=C;g=qb(a,c)|0;if(g|0){f[z>>2]=g;f[e>>2]=f[z>>2];pc(a,e)|0}f[A>>2]=0;B=A+4|0;f[B>>2]=0;f[A+8>>2]=0;g=f[d>>2]|0;i=(f[d+4>>2]|0)-g|0;if(!i)j=0;else{Gd(A,i);j=f[A>>2]|0;g=f[d>>2]|0}Mc(j|0,g|0,i|0)|0;Wd(z,c);c=z+12|0;f[c>>2]=0;y=z+16|0;f[y>>2]=0;f[z+20>>2]=0;j=f[B>>2]|0;g=f[A>>2]|0;i=j-g|0;if(!i){d=g;i=j;g=0}else{Gd(c,i);d=f[A>>2]|0;i=f[B>>2]|0;g=f[c>>2]|0}Mc(g|0,d|0,i-d|0)|0;x=z+11|0;t=b[x>>0]|0;v=t<<24>>24<0;s=v?f[z>>2]|0:z;t=v?f[z+4>>2]|0:t&255;if(t>>>0>3){i=s;g=t;j=t;while(1){v=X(h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24,1540483477)|0;g=(X(v>>>24^v,1540483477)|0)^(X(g,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else i=i+4|0}i=t+-4|0;j=i&-4;i=i-j|0;j=s+(j+4)|0}else{i=t;j=s;g=t}switch(i|0){case 3:{g=h[j+2>>0]<<16^g;w=12;break}case 2:{w=12;break}case 1:{w=13;break}default:{}}if((w|0)==12){g=h[j+1>>0]<<8^g;w=13}if((w|0)==13)g=X(h[j>>0]^g,1540483477)|0;v=X(g>>>13^g,1540483477)|0;v=v>>>15^v;q=a+4|0;d=f[q>>2]|0;r=(d|0)==0;a:do if(!r){p=d+-1|0;j=(p&d|0)==0;if(!j)if(v>>>0>>0)g=v;else g=(v>>>0)%(d>>>0)|0;else g=v&p;i=f[(f[a>>2]|0)+(g<<2)>>2]|0;if((i|0)!=0?(o=f[i>>2]|0,(o|0)!=0):0){i=(t|0)==0;if(j){if(i){i=o;while(1){t=f[i+4>>2]|0;if(!((t|0)==(v|0)|(t&p|0)==(g|0))){w=54;break a}t=b[i+8+11>>0]|0;if(!((t<<24>>24<0?f[i+12>>2]|0:t&255)|0))break a;i=f[i>>2]|0;if(!i){w=54;break a}}}while(1){m=f[o+4>>2]|0;if(!((m|0)==(v|0)|(m&p|0)==(g|0))){w=54;break a}c=o+8|0;i=b[c+11>>0]|0;j=i<<24>>24<0;i=i&255;do if(((j?f[o+12>>2]|0:i)|0)==(t|0)){m=f[c>>2]|0;if(j)if(!(jf(m,s,t)|0))break a;else break;if((m&255)<<24>>24==(b[s>>0]|0)){j=s;do{i=i+-1|0;c=c+1|0;if(!i)break a;j=j+1|0}while((b[c>>0]|0)==(b[j>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=54;break a}}}if(i){j=o;while(1){i=f[j+4>>2]|0;if((i|0)!=(v|0)){if(i>>>0>=d>>>0)i=(i>>>0)%(d>>>0)|0;if((i|0)!=(g|0)){w=54;break a}}t=b[j+8+11>>0]|0;if(!((t<<24>>24<0?f[j+12>>2]|0:t&255)|0))break a;j=f[j>>2]|0;if(!j){w=54;break a}}}while(1){i=f[o+4>>2]|0;if((i|0)!=(v|0)){if(i>>>0>=d>>>0)i=(i>>>0)%(d>>>0)|0;if((i|0)!=(g|0)){w=54;break a}}c=o+8|0;i=b[c+11>>0]|0;j=i<<24>>24<0;i=i&255;do if(((j?f[o+12>>2]|0:i)|0)==(t|0)){m=f[c>>2]|0;if(j)if(!(jf(m,s,t)|0))break a;else break;if((m&255)<<24>>24==(b[s>>0]|0)){j=s;do{i=i+-1|0;c=c+1|0;if(!i)break a;j=j+1|0}while((b[c>>0]|0)==(b[j>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=54;break}}}else w=54}else{g=0;w=54}while(0);if((w|0)==54){yd(e,a,v,z);c=a+12|0;k=$(((f[c>>2]|0)+1|0)>>>0);D=$(d>>>0);l=$(n[a+16>>2]);do if(r|k>$(D*l)){g=(d>>>0<3|(d+-1&d|0)!=0)&1|d<<1;i=~~$(W($(k/l)))>>>0;nd(a,g>>>0>>0?i:g);g=f[q>>2]|0;i=g+-1|0;if(!(i&g)){d=g;g=i&v;break}if(v>>>0>>0){d=g;g=v}else{d=g;g=(v>>>0)%(g>>>0)|0}}while(0);i=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!i){j=a+8|0;f[f[e>>2]>>2]=f[j>>2];f[j>>2]=f[e>>2];f[(f[a>>2]|0)+(g<<2)>>2]=j;j=f[e>>2]|0;g=f[j>>2]|0;if(g){g=f[g+4>>2]|0;i=d+-1|0;if(i&d){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0}else g=g&i;f[(f[a>>2]|0)+(g<<2)>>2]=j}}else{f[f[e>>2]>>2]=f[i>>2];f[i>>2]=f[e>>2]}f[c>>2]=(f[c>>2]|0)+1;f[e>>2]=0}e=f[z+12>>2]|0;if(e|0){if((f[y>>2]|0)!=(e|0))f[y>>2]=e;Bi(e)}if((b[x>>0]|0)<0)Bi(f[z>>2]|0);e=f[A>>2]|0;if(!e){u=C;return}if((f[B>>2]|0)!=(e|0))f[B>>2]=e;Bi(e);u=C;return}function Za(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;D=a+8|0;f[D>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0){if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0)f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2)}else Cd(i,e-d|0);d=e>>>0>1073741823?-1:e<<2;B=xi(d)|0;Vd(B|0,0,d|0)|0;C=xi(d)|0;Vd(C|0,0,d|0)|0;d=f[D>>2]|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[B+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{z=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(z|0)?z:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;J=18}}else{d=d-(f[i>>2]|0)|0;J=18}if((J|0)==18){J=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}r=f[a+48>>2]|0;s=f[a+56>>2]|0;t=s+4|0;g=f[t>>2]|0;h=f[s>>2]|0;z=g-h|0;u=z>>2;if((z|0)<=4){yi(C);yi(B);return 1}v=f[a+52>>2]|0;w=(e|0)>0;x=a+16|0;y=a+32|0;z=a+12|0;n=a+20|0;o=r+64|0;p=r+28|0;q=e<<2;if(g-h>>2>>>0>1){E=1;A=d;m=h}else Yh(s);while(1){a=f[m+(E<<2)>>2]|0;if(w)Vd(B|0,0,q|0)|0;if((a|0)>-1){l=f[r>>2]|0;j=0;k=a;do{if(((f[l+(k>>>5<<2)>>2]&1<<(k&31)|0)==0?(F=f[(f[(f[o>>2]|0)+12>>2]|0)+(k<<2)>>2]|0,(F|0)>=0):0)?(I=f[p>>2]|0,m=f[v>>2]|0,G=f[m+(f[I+(F<<2)>>2]<<2)>>2]|0,H=F+1|0,H=f[m+(f[I+((((H|0)%3|0|0)==0?F+-2|0:H)<<2)>>2]<<2)>>2]|0,I=f[m+(f[I+((((F>>>0)%3|0|0)==0?2:-1)+F<<2)>>2]<<2)>>2]|0,(G|0)<(E|0)&(H|0)<(E|0)&(I|0)<(E|0)):0){g=X(G,e)|0;h=X(H,e)|0;i=X(I,e)|0;if(w){d=0;do{f[C+(d<<2)>>2]=(f[c+(d+i<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+g<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(w){d=0;do{m=B+(d<<2)|0;f[m>>2]=(f[m>>2]|0)+(f[C+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}j=j+1|0}d=(((k>>>0)%3|0|0)==0?2:-1)+k|0;do if(!(f[l+(d>>>5<<2)>>2]&1<<(d&31))){if((d|0)>=0){d=f[(f[(f[o>>2]|0)+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}}else d=-1073741824;while(0);k=(d|0)==(a|0)?-1073741824:d}while((k|0)>-1);g=X(E,e)|0;if(j){if(w){d=0;do{m=B+(d<<2)|0;f[m>>2]=(f[m>>2]|0)/(j|0)|0;d=d+1|0}while((d|0)!=(e|0))}k=b+(g<<2)|0;j=c+(g<<2)|0;if((A|0)>0){h=0;do{d=f[B+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){i=f[y>>2]|0;f[i+(h<<2)>>2]=g}else{A=f[z>>2]|0;i=f[y>>2]|0;f[i+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[k+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=j+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[n>>2]|0)+d|0;J=68}}else{d=d-(f[n>>2]|0)|0;J=68}if((J|0)==68){J=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}else{d=g;J=46}}else{d=X(E,e)|0;J=46}if((J|0)==46){J=0;i=c+((X(E+-1|0,e)|0)<<2)|0;l=b+(d<<2)|0;k=c+(d<<2)|0;if((A|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){j=f[y>>2]|0;f[j+(h<<2)>>2]=g}else{A=f[z>>2]|0;j=f[y>>2]|0;f[j+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[l+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[n>>2]|0)+d|0;J=56}}else{d=d-(f[n>>2]|0)|0;J=56}if((J|0)==56){J=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}E=E+1|0;if((E|0)>=(u|0)){J=22;break}m=f[s>>2]|0;if((f[t>>2]|0)-m>>2>>>0<=E>>>0){J=23;break}else A=d}if((J|0)==22){yi(C);yi(B);return 1}else if((J|0)==23)Yh(s);return 0}function _a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=a+8|0;f[D>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0){if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0)f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2)}else Cd(i,e-d|0);d=e>>>0>1073741823?-1:e<<2;B=xi(d)|0;Vd(B|0,0,d|0)|0;C=xi(d)|0;Vd(C|0,0,d|0)|0;d=f[D>>2]|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[B+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{z=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(z|0)?z:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;F=18}}else{d=d-(f[i>>2]|0)|0;F=18}if((F|0)==18){F=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}r=f[a+48>>2]|0;s=f[a+56>>2]|0;t=s+4|0;g=f[t>>2]|0;h=f[s>>2]|0;z=g-h|0;u=z>>2;if((z|0)<=4){yi(C);yi(B);return 1}v=f[a+52>>2]|0;w=(e|0)>0;x=a+16|0;y=a+32|0;z=a+12|0;o=a+20|0;p=r+12|0;q=e<<2;if(g-h>>2>>>0>1){E=1;A=d;m=h}else Yh(s);while(1){n=f[m+(E<<2)>>2]|0;if(w)Vd(B|0,0,q|0)|0;if((n|0)>-1){m=f[p>>2]|0;h=0;a=n;do{g=f[m+(a<<2)>>2]|0;if((g|0)>=0){i=f[r>>2]|0;j=f[v>>2]|0;l=f[j+(f[i+(g<<2)>>2]<<2)>>2]|0;d=g+1|0;d=((d|0)%3|0|0)==0?g+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[i+(d<<2)>>2]|0;k=f[j+(d<<2)>>2]|0;d=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((d|0)<0)d=-1073741824;else d=f[i+(d<<2)>>2]|0;d=f[j+(d<<2)>>2]|0;if((l|0)<(E|0)&(k|0)<(E|0)&(d|0)<(E|0)){j=X(l,e)|0;i=X(k,e)|0;g=X(d,e)|0;if(w){d=0;do{f[C+(d<<2)>>2]=(f[c+(d+g<<2)>>2]|0)+(f[c+(d+i<<2)>>2]|0)-(f[c+(d+j<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(w){d=0;do{l=B+(d<<2)|0;f[l>>2]=(f[l>>2]|0)+(f[C+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}h=h+1|0}}d=(((a>>>0)%3|0|0)==0?2:-1)+a|0;do if((d|0)>=0){d=f[m+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}while(0);a=(d|0)==(n|0)?-1073741824:d}while((a|0)>-1);g=X(E,e)|0;if(h){if(w){d=0;do{n=B+(d<<2)|0;f[n>>2]=(f[n>>2]|0)/(h|0)|0;d=d+1|0}while((d|0)!=(e|0))}k=b+(g<<2)|0;j=c+(g<<2)|0;if((A|0)>0){h=0;do{d=f[B+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){i=f[y>>2]|0;f[i+(h<<2)>>2]=g}else{A=f[z>>2]|0;i=f[y>>2]|0;f[i+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[k+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=j+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[o>>2]|0)+d|0;F=70}}else{d=d-(f[o>>2]|0)|0;F=70}if((F|0)==70){F=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}else{d=g;F=48}}else{d=X(E,e)|0;F=48}if((F|0)==48){F=0;i=c+((X(E+-1|0,e)|0)<<2)|0;l=b+(d<<2)|0;k=c+(d<<2)|0;if((A|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){j=f[y>>2]|0;f[j+(h<<2)>>2]=g}else{A=f[z>>2]|0;j=f[y>>2]|0;f[j+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[l+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[o>>2]|0)+d|0;F=58}}else{d=d-(f[o>>2]|0)|0;F=58}if((F|0)==58){F=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}E=E+1|0;if((E|0)>=(u|0)){F=22;break}m=f[s>>2]|0;if((f[t>>2]|0)-m>>2>>>0<=E>>>0){F=23;break}else A=d}if((F|0)==22){yi(C);yi(B);return 1}else if((F|0)==23)Yh(s);return 0}function $a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;if(!a)return;c=a+-8|0;e=f[3660]|0;a=f[a+-4>>2]|0;b=a&-8;j=c+b|0;do if(!(a&1)){d=f[c>>2]|0;if(!(a&3))return;h=c+(0-d)|0;g=d+b|0;if(h>>>0>>0)return;if((h|0)==(f[3661]|0)){a=j+4|0;b=f[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}f[3658]=g;f[a>>2]=b&-2;f[h+4>>2]=g|1;f[h+g>>2]=g;return}c=d>>>3;if(d>>>0<256){a=f[h+8>>2]|0;b=f[h+12>>2]|0;if((b|0)==(a|0)){f[3656]=f[3656]&~(1<>2]=b;f[b+8>>2]=a;i=h;b=g;break}}e=f[h+24>>2]|0;a=f[h+12>>2]|0;do if((a|0)==(h|0)){c=h+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){a=0;break}else b=c}while(1){c=a+20|0;d=f[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=f[c>>2]|0;if(!d)break;else{a=d;b=c}}f[b>>2]=0}else{i=f[h+8>>2]|0;f[i+12>>2]=a;f[a+8>>2]=i}while(0);if(e){b=f[h+28>>2]|0;c=14928+(b<<2)|0;if((h|0)==(f[c>>2]|0)){f[c>>2]=a;if(!a){f[3657]=f[3657]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}f[a+24>>2]=e;b=h+16|0;c=f[b>>2]|0;if(c|0){f[a+16>>2]=c;f[c+24>>2]=a}b=f[b+4>>2]|0;if(b){f[a+20>>2]=b;f[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=c;h=c}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;d=f[a>>2]|0;if(!(d&1))return;if(!(d&2)){a=f[3661]|0;if((j|0)==(f[3662]|0)){j=(f[3659]|0)+b|0;f[3659]=j;f[3662]=i;f[i+4>>2]=j|1;if((i|0)!=(a|0))return;f[3661]=0;f[3658]=0;return}if((j|0)==(a|0)){j=(f[3658]|0)+b|0;f[3658]=j;f[3661]=h;f[i+4>>2]=j|1;f[h+j>>2]=j;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){b=f[j+8>>2]|0;a=f[j+12>>2]|0;if((a|0)==(b|0)){f[3656]=f[3656]&~(1<>2]=a;f[a+8>>2]=b;break}}else{g=f[j+24>>2]|0;a=f[j+12>>2]|0;do if((a|0)==(j|0)){c=j+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){c=0;break}else b=c}while(1){c=a+20|0;d=f[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=f[c>>2]|0;if(!d)break;else{a=d;b=c}}f[b>>2]=0;c=a}else{c=f[j+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(g|0){a=f[j+28>>2]|0;b=14928+(a<<2)|0;if((j|0)==(f[b>>2]|0)){f[b>>2]=c;if(!c){f[3657]=f[3657]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=g;a=j+16|0;b=f[a>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}a=f[a+4>>2]|0;if(a|0){f[c+20>>2]=a;f[a+24>>2]=c}}}while(0);f[i+4>>2]=e|1;f[h+e>>2]=e;if((i|0)==(f[3661]|0)){f[3658]=e;return}}else{f[a>>2]=d&-2;f[i+4>>2]=b|1;f[h+b>>2]=b;e=b}a=e>>>3;if(e>>>0<256){c=14664+(a<<1<<2)|0;b=f[3656]|0;a=1<>2]|0}f[b>>2]=i;f[a+12>>2]=i;f[i+8>>2]=a;f[i+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=e>>>(a+7|0)&1|a<<1}else a=0;d=14928+(a<<2)|0;f[i+28>>2]=a;f[i+20>>2]=0;f[i+16>>2]=0;b=f[3657]|0;c=1<>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){a=73;break}d=c+16+(b>>>31<<2)|0;a=f[d>>2]|0;if(!a){a=72;break}else{b=b<<1;c=a}}if((a|0)==72){f[d>>2]=i;f[i+24>>2]=c;f[i+12>>2]=i;f[i+8>>2]=i;break}else if((a|0)==73){h=c+8|0;j=f[h>>2]|0;f[j+12>>2]=i;f[h>>2]=i;f[i+8>>2]=j;f[i+12>>2]=c;f[i+24>>2]=0;break}}else{f[3657]=b|c;f[d>>2]=i;f[i+24>>2]=d;f[i+12>>2]=i;f[i+8>>2]=i}while(0);j=(f[3664]|0)+-1|0;f[3664]=j;if(!j)a=15080;else return;while(1){a=f[a>>2]|0;if(!a)break;else a=a+8|0}f[3664]=-1;return}function ab(a,c){a=a|0;c=c|0;var d=0,e=0,g=Ca,i=Ca,j=0,k=0,l=0,m=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=Ca;v=b[c+11>>0]|0;x=v<<24>>24<0;w=x?f[c>>2]|0:c;v=x?f[c+4>>2]|0:v&255;if(v>>>0>3){j=w;m=v;k=v;while(1){x=X(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24,1540483477)|0;m=(X(x>>>24^x,1540483477)|0)^(X(m,1540483477)|0);k=k+-4|0;if(k>>>0<=3)break;else j=j+4|0}k=v+-4|0;l=k&-4;k=k-l|0;l=w+(l+4)|0;j=m}else{k=v;l=w;j=v}switch(k|0){case 3:{o=h[l+2>>0]<<16^j;z=6;break}case 2:{o=j;z=6;break}case 1:{p=j;z=7;break}default:q=j}if((z|0)==6){p=h[l+1>>0]<<8^o;z=7}if((z|0)==7)q=X(h[l>>0]^p,1540483477)|0;x=X(q>>>13^q,1540483477)|0;x=x>>>15^x;s=a+4|0;t=f[s>>2]|0;u=(t|0)==0;a:do if(!u){q=t+-1|0;k=(q&t|0)==0;if(!k)if(x>>>0>>0)r=x;else r=(x>>>0)%(t>>>0)|0;else r=x&q;j=f[(f[a>>2]|0)+(r<<2)>>2]|0;if((j|0)!=0?(e=f[j>>2]|0,(e|0)!=0):0){p=(v|0)==0;if(k){if(p){d=e;while(1){w=f[d+4>>2]|0;if(!((w|0)==(x|0)|(w&q|0)==(r|0))){d=r;break a}w=b[d+8+11>>0]|0;if(!((w<<24>>24<0?f[d+12>>2]|0:w&255)|0)){j=d;break}d=f[d>>2]|0;if(!d){d=r;break a}}a=j+20|0;return a|0}else j=e;b:while(1){o=f[j+4>>2]|0;if(!((o|0)==(x|0)|(o&q|0)==(r|0))){d=r;break a}m=j+8|0;k=b[m+11>>0]|0;l=k<<24>>24<0;k=k&255;do if(((l?f[j+12>>2]|0:k)|0)==(v|0)){o=f[m>>2]|0;if(l)if(!(jf(o,w,v)|0)){z=63;break b}else break;if((o&255)<<24>>24==(b[w>>0]|0)){l=w;do{k=k+-1|0;m=m+1|0;if(!k){z=63;break b}l=l+1|0}while((b[m>>0]|0)==(b[l>>0]|0))}}while(0);j=f[j>>2]|0;if(!j){d=r;break a}}if((z|0)==63){a=j+20|0;return a|0}}if(p){while(1){d=f[e+4>>2]|0;if((d|0)!=(x|0)){if(d>>>0>=t>>>0)d=(d>>>0)%(t>>>0)|0;if((d|0)!=(r|0)){d=r;break a}}w=b[e+8+11>>0]|0;if(!((w<<24>>24<0?f[e+12>>2]|0:w&255)|0)){j=e;break}e=f[e>>2]|0;if(!e){d=r;break a}}a=j+20|0;return a|0}c:while(1){j=f[e+4>>2]|0;if((j|0)!=(x|0)){if(j>>>0>=t>>>0)j=(j>>>0)%(t>>>0)|0;if((j|0)!=(r|0)){d=r;break a}}l=e+8|0;j=b[l+11>>0]|0;k=j<<24>>24<0;j=j&255;do if(((k?f[e+12>>2]|0:j)|0)==(v|0)){m=f[l>>2]|0;if(k)if(!(jf(m,w,v)|0)){j=e;z=63;break c}else break;if((m&255)<<24>>24==(b[w>>0]|0)){k=w;do{j=j+-1|0;l=l+1|0;if(!j){j=e;z=63;break c}k=k+1|0}while((b[l>>0]|0)==(b[k>>0]|0))}}while(0);e=f[e>>2]|0;if(!e){d=r;break a}}if((z|0)==63){a=j+20|0;return a|0}}else d=r}else d=0;while(0);l=pg(24)|0;Wd(l+8|0,c);f[l+20>>2]=0;f[l+4>>2]=x;f[l>>2]=0;k=a+12|0;g=$(((f[k>>2]|0)+1|0)>>>0);A=$(t>>>0);i=$(n[a+16>>2]);do if(u|g>$(A*i)){d=(t>>>0<3|(t+-1&t|0)!=0)&1|t<<1;e=~~$(W($(g/i)))>>>0;nd(a,d>>>0>>0?e:d);d=f[s>>2]|0;e=d+-1|0;if(!(e&d)){j=d;d=e&x;break}if(x>>>0>>0){j=d;d=x}else{j=d;d=(x>>>0)%(d>>>0)|0}}else j=t;while(0);d=(f[a>>2]|0)+(d<<2)|0;e=f[d>>2]|0;if(!e){c=a+8|0;f[l>>2]=f[c>>2];f[c>>2]=l;f[d>>2]=c;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;y=(f[a>>2]|0)+(d<<2)|0;z=61}}else{f[l>>2]=f[e>>2];y=e;z=61}if((z|0)==61)f[y>>2]=l;f[k>>2]=(f[k>>2]|0)+1;a=l;a=a+20|0;return a|0}function bb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;F=u;u=u+112|0;y=F+100|0;z=F+80|0;A=F+48|0;e=F+96|0;B=F+24|0;C=F+76|0;D=F;E=F+72|0;if(!(f[a+4>>2]|0))xa(9274,9296,46,9468);if(!(f[a+8>>2]|0))xa(9274,9296,46,9468);c=f[c>>2]|0;f[z>>2]=f[a+16>>2];f[z+4>>2]=c;x=z+8|0;f[x>>2]=c;b[z+12>>0]=1;f[e>>2]=c;f[y>>2]=f[e>>2];jd(A,a,y);p=a+28|0;m=(f[p>>2]|0)==0;if((c|0)<0){j=0;k=0;l=0;g=0;e=0;c=0}else{n=c+1|0;n=((n|0)%3|0|0)==0?c+-2|0:n;q=B+8|0;r=A+8|0;s=B+16|0;t=A+16|0;v=D+8|0;w=D+16|0;o=c+(((c>>>0)%3|0|0)==0?2:-1)|0;i=c;k=0;j=0;g=0;l=0;c=0;e=0;do{do if(!m){h=i+1|0;h=((h|0)%3|0|0)==0?i+-2|0:h;if(!((i>>>0)%3|0)){i=i+2|0;break}else{i=i+-1|0;break}}else{i=o;h=n}while(0);f[C>>2]=h;f[y>>2]=f[C>>2];jd(B,a,y);f[E>>2]=i;f[y>>2]=f[E>>2];jd(D,a,y);i=B;R=A;Q=f[R>>2]|0;R=f[R+4>>2]|0;i=Jg(f[i>>2]|0,f[i+4>>2]|0,Q|0,R|0)|0;m=I;h=q;T=r;S=f[T>>2]|0;T=f[T+4>>2]|0;h=Jg(f[h>>2]|0,f[h+4>>2]|0,S|0,T|0)|0;G=I;K=s;H=t;J=f[H>>2]|0;H=f[H+4>>2]|0;K=Jg(f[K>>2]|0,f[K+4>>2]|0,J|0,H|0)|0;L=I;N=D;R=Jg(f[N>>2]|0,f[N+4>>2]|0,Q|0,R|0)|0;Q=I;N=v;T=Jg(f[N>>2]|0,f[N+4>>2]|0,S|0,T|0)|0;S=I;N=w;H=Jg(f[N>>2]|0,f[N+4>>2]|0,J|0,H|0)|0;J=I;N=ng(H|0,J|0,h|0,G|0)|0;M=I;P=ng(T|0,S|0,K|0,L|0)|0;O=I;L=ng(R|0,Q|0,K|0,L|0)|0;K=I;J=ng(H|0,J|0,i|0,m|0)|0;H=I;m=ng(T|0,S|0,i|0,m|0)|0;i=I;G=ng(R|0,Q|0,h|0,G|0)|0;h=I;k=Jg(k|0,j|0,P|0,O|0)|0;k=Wg(k|0,I|0,N|0,M|0)|0;j=I;g=Wg(L|0,K|0,g|0,l|0)|0;g=Jg(g|0,I|0,J|0,H|0)|0;l=I;c=Jg(c|0,e|0,G|0,h|0)|0;c=Wg(c|0,I|0,m|0,i|0)|0;e=I;Pc(z);i=f[x>>2]|0;m=(f[p>>2]|0)==0}while((i|0)>=0)}T=(j|0)>-1|(j|0)==-1&k>>>0>4294967295;i=Jg(0,0,k|0,j|0)|0;h=T?j:I;O=(l|0)>-1|(l|0)==-1&g>>>0>4294967295;P=Jg(0,0,g|0,l|0)|0;Q=O?l:I;S=(e|0)>-1|(e|0)==-1&c>>>0>4294967295;R=Jg(0,0,c|0,e|0)|0;S=Wg((O?g:P)|0,Q|0,(S?c:R)|0,(S?e:I)|0)|0;h=Wg(S|0,I|0,(T?k:i)|0,h|0)|0;i=I;if(m)if((h|0)>536870912){T=Hg(h|0,i|0,29)|0;T=T&7;i=Fe(k|0,j|0,T|0,0)|0;j=I;g=Fe(g|0,l|0,T|0,0)|0;h=I;c=Fe(c|0,e|0,T|0,0)|0;e=I}else{i=k;h=l}else if((i|0)>0|(i|0)==0&h>>>0>536870912){S=Hg(h|0,i|0,29)|0;T=I;i=Fe(k|0,j|0,S|0,T|0)|0;j=I;g=Fe(g|0,l|0,S|0,T|0)|0;h=I;c=Fe(c|0,e|0,S|0,T|0)|0;e=I}else{i=k;h=l}R=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;S=Jg(0,0,i|0,j|0)|0;T=R?j:I;M=(h|0)>-1|(h|0)==-1&g>>>0>4294967295;N=Jg(0,0,g|0,h|0)|0;O=M?h:I;Q=(e|0)>-1|(e|0)==-1&c>>>0>4294967295;P=Jg(0,0,c|0,e|0)|0;Q=Wg((M?g:N)|0,O|0,(Q?c:P)|0,(Q?e:I)|0)|0;T=Wg(Q|0,I|0,(R?i:S)|0,T|0)|0;S=I;if((S|0)<0|(S|0)==0&T>>>0<536870913){f[d>>2]=i;f[d+4>>2]=g;f[d+8>>2]=c;u=F;return}else xa(9490,9296,95,9468)}function cb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;F=u;u=u+80|0;y=F+76|0;A=F;B=F+72|0;C=F+64|0;D=F+68|0;E=a+28|0;do if(((h[(f[E>>2]|0)+36>>0]|0)<<8&65535)<512){w=c+8|0;x=f[w>>2]|0;w=f[w+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=Wg(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((w|0)<(i|0)|(w|0)==(i|0)&x>>>0>>0){E=0;u=F;return E|0}else{x=(f[c>>2]|0)+e|0;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;f[y>>2]=x;f[d>>2]=g;f[d+4>>2]=i;d=x;break}}else if(ke(y,c)|0){d=f[y>>2]|0;break}else{E=0;u=F;return E|0}while(0);if(!d){E=0;u=F;return E|0}x=a+4|0;e=a+8|0;j=f[e>>2]|0;i=f[x>>2]|0;g=j-i>>2;if(d>>>0>g>>>0){Cd(x,d-g|0);if(!(f[y>>2]|0)){E=1;u=F;return E|0}}else if(d>>>0>>0?(k=i+(d<<2)|0,(j|0)!=(k|0)):0)f[e>>2]=j+(~((j+-4-k|0)>>>2)<<2);p=f[a+32>>2]|0;q=c+8|0;r=c+16|0;s=A+60|0;t=p+8|0;v=p+12|0;w=a+16|0;o=a+20|0;n=0;while(1){i=q;e=f[i>>2]|0;i=f[i+4>>2]|0;l=r;a=f[l>>2]|0;l=f[l+4>>2]|0;if(!((i|0)>(l|0)|(i|0)==(l|0)&e>>>0>a>>>0)){d=0;e=53;break}j=f[c>>2]|0;m=b[j+a>>0]|0;d=Wg(a|0,l|0,1,0)|0;k=I;g=r;f[g>>2]=d;f[g+4>>2]=k;if(!((i|0)>(k|0)|(i|0)==(k|0)&e>>>0>d>>>0)){d=0;e=53;break}k=b[j+d>>0]|0;d=Wg(a|0,l|0,2,0)|0;g=I;G=r;f[G>>2]=d;f[G+4>>2]=g;if(!((i|0)>(g|0)|(i|0)==(g|0)&e>>>0>d>>>0)){d=0;e=53;break}g=b[j+d>>0]|0;d=Wg(a|0,l|0,3,0)|0;G=I;H=r;f[H>>2]=d;f[H+4>>2]=G;if(!((i|0)>(G|0)|(i|0)==(G|0)&e>>>0>d>>>0)){d=0;e=53;break}e=b[j+d>>0]|0;H=Wg(a|0,l|0,4,0)|0;d=r;f[d>>2]=H;f[d+4>>2]=I;d=k&255;if((k+-1&255)>10){d=0;e=53;break}vf(A);H=X(Ef(d)|0,g&255)|0;je(A,m&255,0,g,d,e<<24>>24!=0,H,((H|0)<0)<<31>>31,0,0);H=f[E>>2]|0;if((((h[H+36>>0]|0)<<8|(h[H+37>>0]|0))&65535)<259){G=q;H=f[G>>2]|0;G=f[G+4>>2]|0;e=r;d=f[e>>2]|0;e=Wg(d|0,f[e+4>>2]|0,2,0)|0;g=I;if((G|0)<(g|0)|(G|0)==(g|0)&H>>>0>>0){e=51;break}d=(f[c>>2]|0)+d|0;d=h[d>>0]|h[d+1>>0]<<8;H=r;f[H>>2]=e;f[H+4>>2]=g;d=d&65535;f[B>>2]=d}else{ke(B,c)|0;d=f[B>>2]|0}f[s>>2]=d;j=pg(96)|0;pf(j,A);f[C>>2]=j;j=Vc(p,C)|0;i=f[C>>2]|0;f[C>>2]=0;if(i|0){H=i+88|0;d=f[H>>2]|0;f[H>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d)}d=f[i+68>>2]|0;if(d|0){e=i+72|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~((g+-4-d|0)>>>2)<<2);Bi(d)}H=i+64|0;d=f[H>>2]|0;f[H>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d)}Bi(i)}if((j|0)<=-1){e=41;break}d=f[t>>2]|0;if(((f[v>>2]|0)-d>>2|0)<=(j|0)){e=43;break}f[(f[d+(j<<2)>>2]|0)+60>>2]=f[B>>2];f[(f[x>>2]|0)+(n<<2)>>2]=j;e=f[o>>2]|0;d=f[w>>2]|0;g=e-d>>2;if((j|0)>=(g|0)){i=j+1|0;f[D>>2]=-1;if(i>>>0<=g>>>0){if(i>>>0>>0?(z=d+(i<<2)|0,(e|0)!=(z|0)):0)f[o>>2]=e+(~((e+-4-z|0)>>>2)<<2)}else{_c(w,i-g|0,D);d=f[w>>2]|0}}f[d+(j<<2)>>2]=n;n=n+1|0;if(n>>>0>=(f[y>>2]|0)>>>0){d=1;e=53;break}}if((e|0)==41)xa(13373,14023,67,14122);else if((e|0)==43)xa(13969,14023,68,14122);else if((e|0)==51){H=0;u=F;return H|0}else if((e|0)==53){u=F;return d|0}return 0}function db(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+16|0;k=l;j=c+8|0;o=j;m=f[o>>2]|0;o=f[o+4>>2]|0;i=c+16|0;g=i;e=f[g>>2]|0;g=Wg(e|0,f[g+4>>2]|0,5,0)|0;n=I;if((o|0)<(n|0)|(o|0)==(n|0)&m>>>0>>0){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}e=(f[c>>2]|0)+e|0;b[d>>0]=b[e>>0]|0;b[d+1>>0]=b[e+1>>0]|0;b[d+2>>0]=b[e+2>>0]|0;b[d+3>>0]=b[e+3>>0]|0;b[d+4>>0]=b[e+4>>0]|0;e=i;e=Wg(f[e>>2]|0,f[e+4>>2]|0,5,0)|0;g=I;o=i;f[o>>2]=e;f[o+4>>2]=g;if(jf(d,13548,5)|0){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=17;g=e;c=13554;i=g+17|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+17>>0]=0;f[a>>2]=-1;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}o=j;n=f[o+4>>2]|0;if(!((n|0)>(g|0)|((n|0)==(g|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}b[d+5>>0]=b[(f[c>>2]|0)+e>>0]|0;e=i;e=Wg(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=i;f[o>>2]=e;f[o+4>>2]=n;o=j;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}b[d+6>>0]=b[(f[c>>2]|0)+e>>0]|0;e=i;e=Wg(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=i;f[o>>2]=e;f[o+4>>2]=n;o=j;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}b[d+7>>0]=b[(f[c>>2]|0)+e>>0]|0;e=i;e=Wg(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=i;f[o>>2]=e;f[o+4>>2]=n;o=j;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}b[d+8>>0]=b[(f[c>>2]|0)+e>>0]|0;o=i;m=f[o>>2]|0;o=f[o+4>>2]|0;e=Wg(m|0,o|0,1,0)|0;n=i;f[n>>2]=e;f[n+4>>2]=I;n=f[j>>2]|0;j=f[j+4>>2]|0;o=Wg(m|0,o|0,3,0)|0;m=I;if(!((j|0)<(m|0)|(j|0)==(m|0)&n>>>0>>0)){n=d+10|0;o=(f[c>>2]|0)+e|0;o=h[o>>0]|h[o+1>>0]<<8;b[n>>0]=o;b[n+1>>0]=o>>8;n=i;n=Wg(f[n>>2]|0,f[n+4>>2]|0,2,0)|0;o=i;f[o>>2]=n;f[o+4>>2]=I;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=l;return}e=pg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13518;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Wd(a+4|0,k);if((b[k+11>>0]|0)<0)Bi(f[k>>2]|0);u=l;return}function eb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=a+8|0;f[z>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0)if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0){f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2);d=e}else d=e;else{Cd(i,e-d|0);d=f[z>>2]|0}w=f[a+48>>2]|0;x=f[a+52>>2]|0;v=e>>>0>1073741823?-1:e<<2;y=xi(v)|0;Vd(y|0,0,v|0)|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[y+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{v=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(v|0)?v:d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;B=18}}else{d=d-(f[i>>2]|0)|0;B=18}if((B|0)==18){B=0;f[g>>2]=d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0))}}r=f[a+56>>2]|0;g=f[r>>2]|0;v=(f[r+4>>2]|0)-g|0;s=v>>2;if((v|0)<=4){yi(y);return 1}t=a+16|0;u=a+32|0;v=a+12|0;o=a+20|0;p=w+12|0;q=(e|0)>0;n=1;while(1){if(s>>>0<=n>>>0){B=24;break}h=f[g+(n<<2)>>2]|0;m=X(n,e)|0;if((h|0)>=0?(A=f[(f[p>>2]|0)+(h<<2)>>2]|0,(A|0)>=0):0){i=f[w>>2]|0;j=f[x>>2]|0;k=f[j+(f[i+(A<<2)>>2]<<2)>>2]|0;h=A+1|0;h=((h|0)%3|0|0)==0?A+-2|0:h;if((h|0)<0)h=-1073741824;else h=f[i+(h<<2)>>2]|0;l=f[j+(h<<2)>>2]|0;h=(((A>>>0)%3|0|0)==0?2:-1)+A|0;if((h|0)<0)h=-1073741824;else h=f[i+(h<<2)>>2]|0;h=f[j+(h<<2)>>2]|0;if((k|0)<(n|0)&(l|0)<(n|0)&(h|0)<(n|0)){k=X(k,e)|0;j=X(l,e)|0;i=X(h,e)|0;if(q){h=0;do{f[y+(h<<2)>>2]=(f[c+(h+i<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+k<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}l=b+(m<<2)|0;k=c+(m<<2)|0;if((d|0)>0){i=0;do{d=f[y+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){j=f[u>>2]|0;f[j+(i<<2)>>2]=h}else{m=f[v>>2]|0;j=f[u>>2]|0;f[j+(i<<2)>>2]=(d|0)<(m|0)?m:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[l+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;h=k+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[o>>2]|0)+d|0;B=56}}else{d=d-(f[o>>2]|0)|0;B=56}if((B|0)==56){B=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}else B=34}else B=34;if((B|0)==34){B=0;j=c+((X(n+-1|0,e)|0)<<2)|0;a=b+(m<<2)|0;l=c+(m<<2)|0;if((d|0)>0){i=0;do{d=f[j+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){k=f[u>>2]|0;f[k+(i<<2)>>2]=h}else{m=f[v>>2]|0;k=f[u>>2]|0;f[k+(i<<2)>>2]=(d|0)<(m|0)?m:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[o>>2]|0)+d|0;B=44}}else{d=d-(f[o>>2]|0)|0;B=44}if((B|0)==44){B=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}n=n+1|0;if((n|0)>=(s|0)){B=22;break}}if((B|0)==22){yi(y);return 1}else if((B|0)==24)Yh(r);return 0}function fb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=Ca,h=0,i=0,j=Ca,k=0,l=Ca,m=Ca,o=Ca,p=Ca,q=0,r=Ca,t=0,v=Ca,w=Ca,x=Ca,y=Ca,z=0,A=0,B=0,C=0,D=0,E=0,F=Ca;E=u;u=u+48|0;z=E+40|0;A=E+36|0;D=E+24|0;B=E+12|0;C=E;i=a+48|0;h=f[c>>2]|0;c=h+1|0;if((h|0)>=0){c=((c|0)%3|0|0)==0?h+-2|0:c;h=h+(((h>>>0)%3|0|0)==0?2:-1)|0;if((c|0)<0)c=-1073741824;else c=f[(f[f[i>>2]>>2]|0)+(c<<2)>>2]|0;if((h|0)<0)i=-1073741824;else i=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0}else{c=-1073741824;i=-1073741824}k=f[a+52>>2]|0;h=f[k>>2]|0;q=(f[k+4>>2]|0)-h>>2;if(q>>>0<=c>>>0)Yh(k);c=f[h+(c<<2)>>2]|0;if(q>>>0<=i>>>0)Yh(k);t=f[h+(i<<2)>>2]|0;h=(c|0)<(e|0);if(!(h&(t|0)<(e|0))){do if(!h){if((e|0)>0){c=e+-1|0;break}i=a+72|0;if((f[i>>2]|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(f[i>>2]|0));u=E;return}while(0);k=a+72|0;D=f[k>>2]|0;i=X(D,c)|0;if((D|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=f[d+(c+i<<2)>>2];c=c+1|0}while((c|0)<(f[k>>2]|0));u=E;return}q=f[a+72>>2]|0;k=X(q,c)|0;w=$(f[d+(k<<2)>>2]|0);x=$(f[d+(k+1<<2)>>2]|0);q=X(q,t)|0;y=$(f[d+(q<<2)>>2]|0);v=$(f[d+(q+1<<2)>>2]|0);if(!(y!=w|v!=x)){a=f[a+68>>2]|0;f[a>>2]=~~y;f[a+4>>2]=~~v;u=E;return}k=a+64|0;h=f[(f[k>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;q=a+60|0;i=f[q>>2]|0;if(!(b[i+84>>0]|0))h=f[(f[i+68>>2]|0)+(h<<2)>>2]|0;f[A>>2]=h;h=b[i+24>>0]|0;f[z>>2]=f[A>>2];Ra(i,z,h,D)|0;c=f[(f[k>>2]|0)+(c<<2)>>2]|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;c=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,c,B)|0;c=f[(f[k>>2]|0)+(t<<2)>>2]|0;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;d=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,d,C)|0;r=$(n[C>>2]);l=$(n[B>>2]);r=$(r-l);p=$(n[C+4>>2]);m=$(n[B+4>>2]);p=$(p-m);j=$(n[C+8>>2]);g=$(n[B+8>>2]);j=$(j-g);l=$($(n[D>>2])-l);m=$($(n[D+4>>2])-m);g=$($(n[D+8>>2])-g);o=$($($($(r*r)+$(0.0))+$(p*p))+$(j*j));if(o>$(0.0)?1:(f[a+88>>2]|0)<258){F=$($($($($(r*l)+$(0.0))+$(p*m))+$(j*g))/o);r=$(l-$(r*F));p=$(m-$(p*F));g=$(g-$(j*F));j=F;g=$(L($($($(g*g)+$($(p*p)+$($(r*r)+$(0.0))))/o)))}else{j=$(0.0);g=$(0.0)}r=$(y-w);F=$(v-x);y=$(w+$(r*j));w=$(r*g);x=$(x+$(F*j));F=$(F*g);C=a+80|0;B=(f[C>>2]|0)+-1|0;D=(1<<(B&31)&f[(f[a+76>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[C>>2]=B;j=$(-w);j=$(x+(D?j:w));g=$(-F);g=$(y+(D?F:g));if(((n[s>>2]=g,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+g+.5));h=f[a+68>>2]|0;f[h>>2]=c;if(((n[s>>2]=j,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+j+.5));f[h+4>>2]=c;u=E;return}function gb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=Ca,h=0,i=0,j=Ca,k=0,l=Ca,m=Ca,o=Ca,p=Ca,q=0,r=0,t=Ca,v=Ca,w=Ca,x=Ca,y=Ca,z=0,A=0,B=0,C=0,D=0,E=0,F=Ca;E=u;u=u+48|0;z=E+40|0;A=E+36|0;D=E+24|0;B=E+12|0;C=E;k=a+48|0;h=f[c>>2]|0;c=h+1|0;do if((h|0)>=0){c=((c|0)%3|0|0)==0?h+-2|0:c;if(!((h>>>0)%3|0)){i=h+2|0;break}else{i=h+-1|0;break}}else{i=h;c=h}while(0);q=f[(f[k>>2]|0)+28>>2]|0;k=f[q+(c<<2)>>2]|0;i=f[q+(i<<2)>>2]|0;q=f[a+52>>2]|0;c=f[q>>2]|0;r=(f[q+4>>2]|0)-c>>2;if(r>>>0<=k>>>0)Yh(q);h=c;c=f[h+(k<<2)>>2]|0;if(r>>>0<=i>>>0)Yh(q);r=f[h+(i<<2)>>2]|0;h=(c|0)<(e|0);if(!(h&(r|0)<(e|0))){do if(!h){if((e|0)>0){c=e+-1|0;break}i=a+72|0;if((f[i>>2]|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(f[i>>2]|0));u=E;return}while(0);k=a+72|0;D=f[k>>2]|0;i=X(D,c)|0;if((D|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=f[d+(c+i<<2)>>2];c=c+1|0}while((c|0)<(f[k>>2]|0));u=E;return}q=f[a+72>>2]|0;k=X(q,c)|0;w=$(f[d+(k<<2)>>2]|0);x=$(f[d+(k+1<<2)>>2]|0);q=X(q,r)|0;y=$(f[d+(q<<2)>>2]|0);v=$(f[d+(q+1<<2)>>2]|0);if(!(y!=w|v!=x)){a=f[a+68>>2]|0;f[a>>2]=~~y;f[a+4>>2]=~~v;u=E;return}k=a+64|0;h=f[(f[k>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;q=a+60|0;i=f[q>>2]|0;if(!(b[i+84>>0]|0))h=f[(f[i+68>>2]|0)+(h<<2)>>2]|0;f[A>>2]=h;h=b[i+24>>0]|0;f[z>>2]=f[A>>2];Ra(i,z,h,D)|0;c=f[(f[k>>2]|0)+(c<<2)>>2]|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;c=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,c,B)|0;c=f[(f[k>>2]|0)+(r<<2)>>2]|0;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;d=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,d,C)|0;t=$(n[C>>2]);l=$(n[B>>2]);t=$(t-l);p=$(n[C+4>>2]);m=$(n[B+4>>2]);p=$(p-m);j=$(n[C+8>>2]);g=$(n[B+8>>2]);j=$(j-g);l=$($(n[D>>2])-l);m=$($(n[D+4>>2])-m);g=$($(n[D+8>>2])-g);o=$($($($(t*t)+$(0.0))+$(p*p))+$(j*j));if(o>$(0.0)?1:(f[a+88>>2]|0)<258){F=$($($($($(t*l)+$(0.0))+$(p*m))+$(j*g))/o);t=$(l-$(t*F));p=$(m-$(p*F));g=$(g-$(j*F));j=F;g=$(L($($($(g*g)+$($(p*p)+$($(t*t)+$(0.0))))/o)))}else{j=$(0.0);g=$(0.0)}t=$(y-w);F=$(v-x);y=$(w+$(t*j));w=$(t*g);x=$(x+$(F*j));F=$(F*g);C=a+80|0;B=(f[C>>2]|0)+-1|0;D=(1<<(B&31)&f[(f[a+76>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[C>>2]=B;j=$(-w);j=$(x+(D?j:w));g=$(-F);g=$(y+(D?F:g));if(((n[s>>2]=g,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+g+.5));h=f[a+68>>2]|0;f[h>>2]=c;if(((n[s>>2]=j,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+j+.5));f[h+4>>2]=c;u=E;return}function hb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;z=a+8|0;f[z>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0)if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0){f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2);d=e}else d=e;else{Cd(i,e-d|0);d=f[z>>2]|0}w=f[a+48>>2]|0;x=f[a+52>>2]|0;v=e>>>0>1073741823?-1:e<<2;y=xi(v)|0;Vd(y|0,0,v|0)|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[y+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{v=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(v|0)?v:d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;E=18}}else{d=d-(f[i>>2]|0)|0;E=18}if((E|0)==18){E=0;f[g>>2]=d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0))}}r=f[a+56>>2]|0;g=f[r>>2]|0;v=(f[r+4>>2]|0)-g|0;s=v>>2;if((v|0)<=4){yi(y);return 1}t=a+16|0;u=a+32|0;v=a+12|0;n=a+20|0;o=w+64|0;p=w+28|0;q=(e|0)>0;m=1;while(1){if(s>>>0<=m>>>0){E=24;break}h=f[g+(m<<2)>>2]|0;l=X(m,e)|0;if((!((h|0)<0?1:(1<<(h&31)&f[(f[w>>2]|0)+(h>>>5<<2)>>2]|0)!=0)?(A=f[(f[(f[o>>2]|0)+12>>2]|0)+(h<<2)>>2]|0,(A|0)>=0):0)?(D=f[p>>2]|0,a=f[x>>2]|0,B=f[a+(f[D+(A<<2)>>2]<<2)>>2]|0,C=A+1|0,C=f[a+(f[D+((((C|0)%3|0|0)==0?A+-2|0:C)<<2)>>2]<<2)>>2]|0,D=f[a+(f[D+((((A>>>0)%3|0|0)==0?2:-1)+A<<2)>>2]<<2)>>2]|0,(B|0)<(m|0)&(C|0)<(m|0)&(D|0)<(m|0)):0){i=X(B,e)|0;j=X(C,e)|0;k=X(D,e)|0;if(q){h=0;do{f[y+(h<<2)>>2]=(f[c+(h+k<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+i<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}a=b+(l<<2)|0;k=c+(l<<2)|0;if((d|0)>0){i=0;do{d=f[y+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){j=f[u>>2]|0;f[j+(i<<2)>>2]=h}else{l=f[v>>2]|0;j=f[u>>2]|0;f[j+(i<<2)>>2]=(d|0)<(l|0)?l:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;h=k+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[n>>2]|0)+d|0;E=52}}else{d=d-(f[n>>2]|0)|0;E=52}if((E|0)==52){E=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}else{j=c+((X(m+-1|0,e)|0)<<2)|0;a=b+(l<<2)|0;l=c+(l<<2)|0;if((d|0)>0){i=0;do{d=f[j+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){k=f[u>>2]|0;f[k+(i<<2)>>2]=h}else{h=f[v>>2]|0;k=f[u>>2]|0;f[k+(i<<2)>>2]=(d|0)<(h|0)?h:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[n>>2]|0)+d|0;E=40}}else{d=d-(f[n>>2]|0)|0;E=40}if((E|0)==40){E=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}m=m+1|0;if((m|0)>=(s|0)){E=22;break}}if((E|0)==22){yi(y);return 1}else if((E|0)==24)Yh(r);return 0}function ib(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if((b|0)<0)return;l=a+12|0;c=f[l>>2]|0;d=f[a+8>>2]|0;e=c-d>>2;if(e>>>0<=b>>>0)return;g=d+(b<<2)|0;n=f[(f[g>>2]|0)+56>>2]|0;if((e|0)<=(b|0))xa(13969,14023,68,14122);m=f[(f[d+(b<<2)>>2]|0)+60>>2]|0;d=g+4|0;if((d|0)!=(c|0)){do{i=f[d>>2]|0;f[d>>2]=0;j=f[g>>2]|0;f[g>>2]=i;if(j|0){i=j+88|0;e=f[i>>2]|0;f[i>>2]=0;if(e|0){h=f[e+8>>2]|0;if(h|0){i=e+12|0;if((f[i>>2]|0)!=(h|0))f[i>>2]=h;Bi(h)}Bi(e)}e=f[j+68>>2]|0;if(e|0){h=j+72|0;i=f[h>>2]|0;if((i|0)!=(e|0))f[h>>2]=i+(~((i+-4-e|0)>>>2)<<2);Bi(e)}i=j+64|0;e=f[i>>2]|0;f[i>>2]=0;if(e|0){h=f[e>>2]|0;if(h|0){i=e+4|0;if((f[i>>2]|0)!=(h|0))f[i>>2]=h;Bi(h)}Bi(e)}Bi(j)}d=d+4|0;g=g+4|0}while((d|0)!=(c|0));c=f[l>>2]|0;if((c|0)!=(g|0))k=26}else k=26;if((k|0)==26)do{k=c+-4|0;f[l>>2]=k;h=f[k>>2]|0;f[k>>2]=0;if(h|0){k=h+88|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(c)}c=f[h+68>>2]|0;if(c|0){d=h+72|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Bi(c)}k=h+64|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(c)}Bi(h)}c=f[l>>2]|0}while((c|0)!=(g|0));d=f[a+4>>2]|0;a:do if(d|0){h=d+44|0;c=f[h>>2]|0;g=f[d+40>>2]|0;while(1){if((g|0)==(c|0))break a;d=g+4|0;if((f[(f[g>>2]|0)+40>>2]|0)==(m|0))break;else g=d}if((d|0)!=(c|0)){do{m=f[d>>2]|0;f[d>>2]=0;e=f[g>>2]|0;f[g>>2]=m;if(e|0){Md(e);Bi(e)}d=d+4|0;g=g+4|0}while((d|0)!=(c|0));c=f[h>>2]|0;if((c|0)==(g|0))break}do{m=c+-4|0;f[h>>2]=m;c=f[m>>2]|0;f[m>>2]=0;if(c|0){Md(c);Bi(c)}c=f[h>>2]|0}while((c|0)!=(g|0))}while(0);b:do if((n|0)<5){c=f[a+20+(n*12|0)>>2]|0;i=a+20+(n*12|0)+4|0;d=f[i>>2]|0;e=d;c:do if((c|0)!=(d|0))while(1){if((f[c>>2]|0)==(b|0))break c;c=c+4|0;if((c|0)==(d|0))break b}while(0);if((c|0)!=(d|0)){g=c+4|0;e=e-g|0;h=e>>2;if(h){Of(c|0,g|0,e|0)|0;d=f[i>>2]|0}c=c+(h<<2)|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-4-c|0)>>>2)<<2)}}while(0);c=f[a+24>>2]|0;d=f[a+20>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}c=f[a+36>>2]|0;d=f[a+32>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}c=f[a+48>>2]|0;d=f[a+44>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}c=f[a+60>>2]|0;d=f[a+56>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}d=f[a+72>>2]|0;c=f[a+68>>2]|0;h=c;if((d|0)==(c|0))return;d=d-c>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0);return}function jb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{h=pg(60)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1864;g=h;f[a>>2]=g;return}case 2:{h=pg(60)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1920;g=h;f[a>>2]=g;return}case 4:{h=pg(112)|0;f[h>>2]=1388;f[h+4>>2]=d;b=h+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];f[b+16>>2]=f[e+16>>2];f[b+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);b=h+44|0;f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];f[b+12>>2]=f[g+12>>2];f[h>>2]=1976;b=h+60|0;c=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));g=h;f[a>>2]=g;return}case 3:{c=pg(92)|0;f[c>>2]=1388;f[c+4>>2]=d;d=c+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(c+32|0,e+24|0);e=c+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[c>>2]=2032;g=c+60|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;f[c+88>>2]=h&65535;g=c;f[a>>2]=g;return}case 5:{h=pg(104)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=2088;f[h+60>>2]=0;f[h+64>>2]=0;f[h+76>>2]=0;f[h+80>>2]=0;f[h+84>>2]=0;e=h+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];g=h;f[a>>2]=g;return}case 6:{h=pg(124)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=2144;f[h+64>>2]=0;f[h+68>>2]=0;e=h+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h+60>>2]=2200;f[h+88>>2]=1;g=h+92|0;f[g>>2]=-1;f[g+4>>2]=-1;f[g+8>>2]=-1;f[g+12>>2]=-1;ci(h+108|0);g=h;f[a>>2]=g;return}default:{g=0;f[a>>2]=g;return}}}function kb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{h=pg(60)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1500;g=h;f[a>>2]=g;return}case 2:{h=pg(60)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1556;g=h;f[a>>2]=g;return}case 4:{h=pg(112)|0;f[h>>2]=1388;f[h+4>>2]=d;b=h+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];f[b+16>>2]=f[e+16>>2];f[b+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);b=h+44|0;f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];f[b+12>>2]=f[g+12>>2];f[h>>2]=1612;b=h+60|0;c=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));g=h;f[a>>2]=g;return}case 3:{c=pg(92)|0;f[c>>2]=1388;f[c+4>>2]=d;d=c+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(c+32|0,e+24|0);e=c+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[c>>2]=1668;g=c+60|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;f[c+88>>2]=h&65535;g=c;f[a>>2]=g;return}case 5:{h=pg(104)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1724;f[h+60>>2]=0;f[h+64>>2]=0;f[h+76>>2]=0;f[h+80>>2]=0;f[h+84>>2]=0;e=h+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];g=h;f[a>>2]=g;return}case 6:{h=pg(124)|0;f[h>>2]=1388;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ue(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1780;f[h+64>>2]=0;f[h+68>>2]=0;e=h+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h+60>>2]=1836;f[h+88>>2]=1;g=h+92|0;f[g>>2]=-1;f[g+4>>2]=-1;f[g+8>>2]=-1;f[g+12>>2]=-1;ci(h+108|0);g=h;f[a>>2]=g;return}default:{g=0;f[a>>2]=g;return}}}function lb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7884,7895,60,8018);if((d|0)>=31)xa(8038,7895,61,8018);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9274,10082,99,10247);if((e|0)!=2)xa(10269,10082,102,10247);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Yh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];Xa(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Wg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Wg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=ng(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Fe(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=ng(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Fe(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Pe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;vd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Yh(d);else if((e|0)==16)xa(10293,10082,116,10247);else if((e|0)==21)xa(10360,7895,99,10448);return 0}function mb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7884,7895,60,8018);if((d|0)>=31)xa(8038,7895,61,8018);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9274,10082,99,10247);if((e|0)!=2)xa(10269,10082,102,10247);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Yh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];bb(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Wg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Wg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=ng(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Fe(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=ng(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Fe(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Pe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;vd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Yh(d);else if((e|0)==16)xa(10293,10082,116,10247);else if((e|0)==21)xa(10360,7895,99,10448);return 0}function nb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7884,7895,60,8018);if((d|0)>=31)xa(8038,7895,61,8018);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9274,10082,99,10247);if((e|0)!=2)xa(10269,10082,102,10247);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Yh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];Xa(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Wg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Wg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=ng(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Fe(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=ng(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Fe(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Pe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;wd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Yh(d);else if((e|0)==16)xa(10293,10082,116,10247);else if((e|0)==21)xa(10360,7895,99,10448);return 0}function ob(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7884,7895,60,8018);if((d|0)>=31)xa(8038,7895,61,8018);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9274,10082,99,10247);if((e|0)!=2)xa(10269,10082,102,10247);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Yh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];bb(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Wg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Wg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=ng(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Fe(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=ng(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Fe(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Pe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;wd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Yh(d);else if((e|0)==16)xa(10293,10082,116,10247);else if((e|0)==21)xa(10360,7895,99,10448);return 0}function pb(a,c,e,g,i){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;k=n+12|0;m=n;f[c+40>>2]=e;j=c+32|0;f[j>>2]=g;f[c+4>>2]=i;db(a,g,k);if(f[a>>2]|0){u=n;return}l=a+4|0;e=l+11|0;if((b[e>>0]|0)<0)Bi(f[l>>2]|0);i=h[k+7>>0]|0;if((i|0)!=(Ja[f[(f[c>>2]|0)+8>>2]&127](c)|0)){e=pg(64)|0;f[m>>2]=e;f[m+8>>2]=-2147483584;f[m+4>>2]=50;g=e;i=13599;j=g+50|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+50>>0]=0;f[a>>2]=-1;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}g=b[k+5>>0]|0;b[c+36>>0]=g;i=b[k+6>>0]|0;b[c+37>>0]=i;if((g+-1&255)>1){e=pg(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=22;g=e;i=13650;j=g+22|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+22>>0]=0;f[a>>2]=-5;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}if(g<<24>>24==2&(i&255)>2){e=pg(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=22;g=e;i=13673;j=g+22|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+22>>0]=0;f[a>>2]=-5;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}i=(i&255|(g&255)<<8)&65535;d[(f[j>>2]|0)+38>>1]=i;if((i&65535)>258?(d[k+10>>1]|0)<0:0){ec(a,c);if(f[a>>2]|0){u=n;return}if((b[e>>0]|0)<0)Bi(f[l>>2]|0)}if(!(Ja[f[(f[c>>2]|0)+12>>2]&127](c)|0)){e=pg(48)|0;f[m>>2]=e;f[m+8>>2]=-2147483600;f[m+4>>2]=33;g=e;i=13696;j=g+33|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+33>>0]=0;f[a>>2]=-1;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}if(!(Ja[f[(f[c>>2]|0)+20>>2]&127](c)|0)){e=pg(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=31;g=e;i=13730;j=g+31|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+31>>0]=0;f[a>>2]=-1;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}if(Ja[f[(f[c>>2]|0)+24>>2]&127](c)|0){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=n;return}e=pg(48)|0;f[m>>2]=e;f[m+8>>2]=-2147483600;f[m+4>>2]=34;g=e;i=13762;j=g+34|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+34>>0]=0;f[a>>2]=-1;Wd(l,m);if((b[m+11>>0]|0)<0)Bi(f[m>>2]|0);u=n;return}function qb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=b[c+11>>0]|0;m=r<<24>>24<0;u=m?f[c>>2]|0:c;r=m?f[c+4>>2]|0:r&255;if(r>>>0>3){c=u;g=r;d=r;while(1){m=X(h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24,1540483477)|0;g=(X(m>>>24^m,1540483477)|0)^(X(g,1540483477)|0);d=d+-4|0;if(d>>>0<=3)break;else c=c+4|0}d=r+-4|0;e=d&-4;d=d-e|0;e=u+(e+4)|0;c=g}else{d=r;e=u;c=r}switch(d|0){case 3:{i=h[e+2>>0]<<16^c;q=6;break}case 2:{i=c;q=6;break}case 1:{j=c;q=7;break}default:k=c}if((q|0)==6){j=h[e+1>>0]<<8^i;q=7}if((q|0)==7)k=X(h[e>>0]^j,1540483477)|0;k=X(k>>>13^k,1540483477)|0;k=k>>>15^k;l=f[a+4>>2]|0;if(!l){w=0;return w|0}i=l+-1|0;d=(i&l|0)==0;if(!d)if(k>>>0>>0)m=k;else m=(k>>>0)%(l>>>0)|0;else m=k&i;c=f[(f[a>>2]|0)+(m<<2)>>2]|0;if(!c){w=0;return w|0}c=f[c>>2]|0;if(!c){w=0;return w|0}j=(r|0)==0;if(d){a:while(1){q=f[c+4>>2]|0;d=(q|0)==(k|0);if(!(d|(q&i|0)==(m|0))){c=0;q=41;break}do if(d?(n=c+8|0,p=b[n+11>>0]|0,o=p<<24>>24<0,p=p&255,((o?f[c+12>>2]|0:p)|0)==(r|0)):0){d=f[n>>2]|0;e=o?d:n;if(o){if(j){q=41;break a}if(!(jf(e,u,r)|0)){q=41;break a}else break}if(j){q=41;break a}if((d&255)<<24>>24==(b[u>>0]|0)){d=n;e=p;g=u;do{e=e+-1|0;d=d+1|0;if(!e){q=41;break a}g=g+1|0}while((b[d>>0]|0)==(b[g>>0]|0))}}while(0);c=f[c>>2]|0;if(!c){c=0;q=41;break}}if((q|0)==41)return c|0}else s=c;b:while(1){c=f[s+4>>2]|0;d=(c|0)==(k|0);if(!d){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0;if((c|0)!=(m|0)){c=0;q=41;break}if(d)q=33}else q=33;do if((q|0)==33?(q=0,v=s+8|0,t=b[v+11>>0]|0,w=t<<24>>24<0,t=t&255,((w?f[s+12>>2]|0:t)|0)==(r|0)):0){c=f[v>>2]|0;d=w?c:v;if(w){if(j){c=s;q=41;break b}if(!(jf(d,u,r)|0)){c=s;q=41;break b}else break}if(j){c=s;q=41;break b}if((c&255)<<24>>24==(b[u>>0]|0)){c=v;d=t;e=u;do{d=d+-1|0;c=c+1|0;if(!d){c=s;q=41;break b}e=e+1|0}while((b[c>>0]|0)==(b[e>>0]|0))}}while(0);s=f[s>>2]|0;if(!s){c=0;q=41;break}}if((q|0)==41)return c|0;return 0}function rb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=Ja[f[(f[a>>2]|0)+44>>2]&127](a)|0;if((t|0)<1){t=0;return t|0}m=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;r=X(m,t)|0;Ec(a,m,t);m=a+16|0;s=f[m>>2]|0;s=(f[f[s>>2]>>2]|0)+(f[s+48>>2]|0)|0;p=d+8|0;g=p;e=f[g>>2]|0;g=f[g+4>>2]|0;q=d+16|0;l=q;k=f[l>>2]|0;l=f[l+4>>2]|0;if(!((g|0)>(l|0)|(g|0)==(l|0)&e>>>0>k>>>0)){t=0;return t|0}h=f[d>>2]|0;o=b[h+k>>0]|0;i=Wg(k|0,l|0,1,0)|0;j=I;n=q;f[n>>2]=i;f[n+4>>2]=j;a:do if(!(o<<24>>24)){if(!((g|0)>(j|0)|(g|0)==(j|0)&e>>>0>i>>>0)){t=0;return t|0}n=b[h+i>>0]|0;l=Wg(k|0,l|0,2,0)|0;o=q;f[o>>2]=l;f[o+4>>2]=I;o=n&255;l=(o|0)==(Ef(5)|0);e=f[(f[m>>2]|0)+64>>2]|0;e=(f[e+4>>2]|0)-(f[e>>2]|0)|0;if(l){g=r<<2;if(e>>>0>>0){t=0;return t|0}m=p;o=f[m>>2]|0;m=f[m+4>>2]|0;p=q;e=f[p>>2]|0;p=Wg(e|0,f[p+4>>2]|0,g|0,0)|0;n=I;if((m|0)<(n|0)|(m|0)==(n|0)&o>>>0

>>0){t=0;return t|0}else{Mc(s|0,(f[d>>2]|0)+e|0,g|0)|0;p=q;p=Wg(f[p>>2]|0,f[p+4>>2]|0,g|0,0)|0;i=q;f[i>>2]=p;f[i+4>>2]=I;i=18;break}}i=X(o,r)|0;if(e>>>0>>0){t=0;return t|0}k=p;g=f[k>>2]|0;k=f[k+4>>2]|0;h=q;j=f[h>>2]|0;h=f[h+4>>2]|0;m=Jg(g|0,k|0,j|0,h|0)|0;l=I;if((l|0)<0|(l|0)==0&m>>>0>>0){t=0;return t|0}if(!r)i=19;else{l=n&255;e=0;i=k;while(1){n=Wg(j|0,h|0,l|0,0)|0;m=I;if((i|0)<(m|0)|(i|0)==(m|0)&g>>>0>>0)g=j;else{Mc(s+(e<<2)|0,(f[d>>2]|0)+j|0,o|0)|0;g=q;g=Wg(f[g>>2]|0,f[g+4>>2]|0,l|0,0)|0;h=I;n=q;f[n>>2]=g;f[n+4>>2]=h}e=e+1|0;if((e|0)==(r|0)){i=18;break a}n=p;j=g;i=f[n+4>>2]|0;g=f[n>>2]|0}}}else if(Xd(r,t,d,s)|0)i=18;else{t=0;return t|0}while(0);do if((i|0)==18)if(!r)i=19;else{e=a+20|0;g=f[e>>2]|0;if(g|0?Ja[f[(f[g>>2]|0)+32>>2]&127](g)|0:0){h=1;break}Qf(s,r,s);h=1}while(0);if((i|0)==19){e=a+20|0;h=0}g=f[e>>2]|0;if(g|0){if(!(Na[f[(f[g>>2]|0)+40>>2]&127](g,d)|0)){t=0;return t|0}if(h?(d=f[e>>2]|0,!(Ia[f[(f[d>>2]|0)+44>>2]&31](d,s,s,r,t,f[c>>2]|0)|0)):0){t=0;return t|0}}t=1;return t|0}function sb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)Bi(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=za(8)|0;gh(a,14257);f[a>>2]=3624;qa(a|0,952,75)}s=pg(c<<2)|0;d=f[a>>2]|0;f[a>>2]=s;if(d|0)Bi(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;i=f[e>>2]|0;if(!i)return;d=f[i+4>>2]|0;r=c+-1|0;s=(r&c|0)==0;if(!s){if(d>>>0>=c>>>0)d=(d>>>0)%(c>>>0)|0}else d=d&r;f[(f[a>>2]|0)+(d<<2)>>2]=e;e=f[i>>2]|0;if(!e)return;else{g=i;h=e;e=i}a:while(1){q=g;g=h;p=e;b:while(1){e=g;while(1){g=f[e+4>>2]|0;if(!s){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0}else g=g&r;if((g|0)==(d|0))break;h=(f[a>>2]|0)+(g<<2)|0;if(!(f[h>>2]|0))break b;i=f[e>>2]|0;c:do if(!i)h=e;else{n=e+8|0;m=b[n+11>>0]|0;k=m<<24>>24<0;m=m&255;o=k?f[e+12>>2]|0:m;l=(o|0)==0;if(k){h=e;while(1){j=i+8|0;m=b[j+11>>0]|0;k=m<<24>>24<0;if((o|0)!=((k?f[i+12>>2]|0:m&255)|0))break c;if(!l?jf(f[n>>2]|0,k?f[j>>2]|0:j,o)|0:0)break c;h=f[i>>2]|0;if(!h){h=i;break c}else{m=i;i=h;h=m}}}if(l){h=e;while(1){o=b[i+8+11>>0]|0;if((o<<24>>24<0?f[i+12>>2]|0:o&255)|0)break c;h=f[i>>2]|0;if(!h){h=i;break c}else{o=i;i=h;h=o}}}h=e;while(1){j=i+8|0;l=b[j+11>>0]|0;k=l<<24>>24<0;if((o|0)!=((k?f[i+12>>2]|0:l&255)|0))break c;j=k?f[j>>2]|0:j;if((f[n>>2]&255)<<24>>24==(b[j>>0]|0)){k=n;l=m}else break c;while(1){l=l+-1|0;k=k+1|0;if(!l)break;j=j+1|0;if((b[k>>0]|0)!=(b[j>>0]|0))break c}h=f[i>>2]|0;if(!h){h=i;break}else{l=i;i=h;h=l}}}while(0);f[p>>2]=f[h>>2];f[h>>2]=f[f[(f[a>>2]|0)+(g<<2)>>2]>>2];f[f[(f[a>>2]|0)+(g<<2)>>2]>>2]=e;e=f[q>>2]|0;if(!e){d=43;break a}}g=f[e>>2]|0;if(!g){d=43;break a}else{q=e;p=e}}f[h>>2]=p;h=f[e>>2]|0;if(!h){d=43;break}else{d=g;g=e}}if((d|0)==43)return}function tb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+64|0;E=F;g=E;i=g+40|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(i|0));a:do if(Hb(E,d)|0?Vb(E,d)|0:0){g=(a|0)==0;b:do if(!g){if(!(f[E+12>>2]|0)){k=0;break a}Jc(d,0,0)|0;if(!g){t=E+44|0;v=E+48|0;w=E+40|0;x=E+16|0;y=E+28|0;z=(c|0)>0;D=d+36|0;A=d+32|0;B=d+24|0;C=d+28|0;s=0;g=0;i=f[v>>2]|0;while(1){c:do if(i>>>0<16384){j=f[t>>2]|0;do{if((j|0)<=0)break c;r=f[w>>2]|0;j=j+-1|0;f[t>>2]=j;i=h[r+j>>0]|i<<8;f[v>>2]=i}while(i>>>0<16384)}while(0);p=i&4095;r=f[(f[x>>2]|0)+(p<<2)>>2]|0;q=f[y>>2]|0;i=(X(f[q+(r<<3)>>2]|0,i>>>12)|0)+p-(f[q+(r<<3)+4>>2]|0)|0;f[v>>2]=i;if(z){q=(r|0)>0;if((r|0)<=-1){g=22;break}if((r|0)<33)p=0;else{g=21;break}while(1){if(!(b[D>>0]|0)){k=0;break a}if(q){n=f[B>>2]|0;o=f[C>>2]|0;j=0;m=0;l=f[A>>2]|0;do{k=n+(l>>>3)|0;if(k>>>0>>0){k=(h[k>>0]|0)>>>(l&7)&1;l=l+1|0;f[A>>2]=l}else k=0;j=k<>2]=j;p=p+1|0;if((p|0)>=(c|0)){g=k;break}else g=k}}s=s+c|0;if(s>>>0>=a>>>0)break b}if((g|0)==21){if(!(b[D>>0]|0)){k=0;break a}xa(13953,13850,156,13945)}else if((g|0)==22){if(!(b[D>>0]|0)){k=0;break a}xa(13835,13850,155,13945)}}}else Jc(d,0,0)|0;while(0);Hf(d);k=1}else k=0;while(0);g=f[E+28>>2]|0;if(g|0){i=E+32|0;j=f[i>>2]|0;if((j|0)!=(g|0))f[i>>2]=j+(~((j+-8-g|0)>>>3)<<3);Bi(g)}g=f[E+16>>2]|0;if(g|0){i=E+20|0;j=f[i>>2]|0;if((j|0)!=(g|0))f[i>>2]=j+(~((j+-4-g|0)>>>2)<<2);Bi(g)}j=f[E>>2]|0;if(!j){u=F;return k|0}i=E+4|0;g=f[i>>2]|0;if((g|0)!=(j|0))f[i>>2]=g+(~((g+-4-j|0)>>>2)<<2);Bi(j);u=F;return k|0}function ub(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=c;n=d;i=n;if(!k){g=(e|0)!=0;if(!i){if(g){f[e>>2]=(l>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(l>>>0)/(h>>>0)>>>0;return (I=n,e)|0}else{if(!g){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;e=0;return (I=n,e)|0}}g=(i|0)==0;do if(h){if(!g){g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}g=h-1|0;if(g&h|0){i=(_(h|0)|0)+33-(_(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(e|0){f[e>>2]=g&l;f[e+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (I=o,p)|0}else{p=Tf(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (I=o,p)|0}}else{if(g){if(e|0){f[e>>2]=(k>>>0)%(h>>>0);f[e+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (I=o,p)|0}if(!l){if(e|0){f[e>>2]=0;f[e+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (I=o,p)|0}g=i-1|0;if(!(g&i)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=g&k|b&0}o=0;p=k>>>((Tf(i|0)|0)>>>0);return (I=o,p)|0}g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;o=0;p=0;return (I=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=c|0|0;l=n|d&0;k=Wg(m|0,l|0,-1,-1)|0;c=I;j=i;i=0;do{d=j;j=g>>>31|j<<1;g=i|g<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;Jg(k|0,c|0,d|0,n|0)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Jg(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=I;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(e|0){f[e>>2]=a;f[e+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (I=o,p)|0}function vb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+32|0;r=w+24|0;s=w+20|0;k=w+16|0;t=w;v=f[a+80>>2]|0;l=a+8|0;m=a+12|0;a=f[l>>2]|0;if(((f[m>>2]|0)-a|0)<=0)xa(13969,14023,60,14122);j=f[a>>2]|0;a=c+4|0;h=f[a>>2]|0;g=f[c>>2]|0;e=h-g>>2;if(v>>>0<=e>>>0){if(v>>>0>>0?(i=g+(v<<2)|0,(h|0)!=(i|0)):0)f[a>>2]=h+(~((h+-4-i|0)>>>2)<<2)}else Cd(c,v-e|0);n[k>>2]=$(-1.0);p=(v|0)>0;a:do if(p){g=j+84|0;h=j+68|0;i=j+24|0;a=0;while(1){if(!(b[g>>0]|0))e=f[(f[h>>2]|0)+(a<<2)>>2]|0;else e=a;f[s>>2]=e;o=b[i>>0]|0;f[r>>2]=f[s>>2];if(!(Ra(j,r,o,k)|0)){a=0;break}f[(f[c>>2]|0)+(a<<2)>>2]=f[k>>2];a=a+1|0;if((a|0)>=(v|0))break a}u=w;return a|0}while(0);a=f[l>>2]|0;if(((f[m>>2]|0)-a|0)<=4)xa(13969,14023,60,14122);m=f[a+4>>2]|0;o=m+24|0;j=b[o>>0]|0;l=j<<24>>24;a=X(l,v)|0;f[t>>2]=f[265];f[t+4>>2]=f[266];f[t+8>>2]=f[267];f[t+12>>2]=f[268];e=d+4|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>2;if(a>>>0<=g>>>0){if(a>>>0>>0?(q=h+(a<<2)|0,(i|0)!=(q|0)):0)f[e>>2]=i+(~((i+-4-q|0)>>>2)<<2)}else Cd(d,a-g|0);b:do if(p){c=m+84|0;k=m+68|0;if(j<<24>>24>0){h=0;i=0}else{e=0;while(1){if(!(b[c>>0]|0))a=f[(f[k>>2]|0)+(e<<2)>>2]|0;else a=e;f[s>>2]=a;d=b[o>>0]|0;f[r>>2]=f[s>>2];if(!(Ra(m,r,d,t)|0)){a=0;break b}e=e+1|0;if((e|0)>=(v|0)){a=1;break b}}}while(1){if(!(b[c>>0]|0))a=f[(f[k>>2]|0)+(i<<2)>>2]|0;else a=i;f[s>>2]=a;q=b[o>>0]|0;f[r>>2]=f[s>>2];if(!(Ra(m,r,q,t)|0)){a=0;break b}g=f[d>>2]|0;a=0;e=h;while(1){f[g+(e<<2)>>2]=f[t+(a<<2)>>2];a=a+1|0;if((a|0)==(l|0))break;else e=e+1|0}i=i+1|0;if((i|0)>=(v|0)){a=1;break}else h=l+h|0}}else a=1;while(0);v=a;u=w;return v|0}function wb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:do if(!(xh(a,f[c+8>>2]|0,g)|0)){i=a+12|0;q=c+24|0;r=c+36|0;s=c+54|0;o=a+8|0;m=a+16|0;if(!(xh(a,f[c>>2]|0,g)|0)){p=f[i>>2]|0;j=a+16+(p<<3)|0;mf(m,c,d,e,g);h=a+24|0;if((p|0)<=1)break;i=f[o>>2]|0;if((i&2|0)==0?(f[r>>2]|0)!=1:0){if(!(i&1))while(1){if(b[s>>0]|0)break a;if((f[r>>2]|0)==1)break a;mf(h,c,d,e,g);h=h+8|0;if(h>>>0>=j>>>0)break a}while(1){if(b[s>>0]|0)break a;if((f[r>>2]|0)==1?(f[q>>2]|0)==1:0)break a;mf(h,c,d,e,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}while(1){if(b[s>>0]|0)break a;mf(h,c,d,e,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}h=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(p=c+20|0,(f[p>>2]|0)!=(d|0)):0){f[h>>2]=e;n=c+44|0;if((f[n>>2]|0)==4)break;e=a+16+(f[i>>2]<<3)|0;k=c+52|0;l=c+53|0;h=0;a=m;j=0;b:while(1){if(a>>>0>=e>>>0){i=18;break}b[k>>0]=0;b[l>>0]=0;ef(a,c,d,d,1,g);if(b[s>>0]|0){i=18;break}do if(b[l>>0]|0){if(!(b[k>>0]|0))if(!(f[o>>2]&1)){h=1;i=18;break b}else{h=1;i=j;break}if((f[q>>2]|0)==1){i=23;break b}if(!(f[o>>2]&2)){i=23;break b}else{h=1;i=1}}else i=j;while(0);a=a+8|0;j=i}do if((i|0)==18){if((!j?(f[p>>2]=d,d=c+40|0,f[d>>2]=(f[d>>2]|0)+1,(f[r>>2]|0)==1):0)?(f[q>>2]|0)==2:0){b[s>>0]=1;if(h){i=23;break}else{h=4;break}}if(h)i=23;else h=4}while(0);if((i|0)==23)h=3;f[n>>2]=h;break}if((e|0)==1)f[h>>2]=1}else cg(0,c,d,e);while(0);return}function xb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;w=u;u=u+32|0;e=w+24|0;k=w+20|0;l=w+8|0;m=w+4|0;r=w;f[e>>2]=0;ke(e,f[a>>2]|0)|0;a:do if(f[e>>2]|0){d=0;while(1){d=d+1|0;if(!(Mb(a,c)|0)){d=0;break}if(d>>>0>=(f[e>>2]|0)>>>0)break a}u=w;return d|0}while(0);f[k>>2]=0;ke(k,f[a>>2]|0)|0;b:do if(!(f[k>>2]|0))d=1;else{j=l+11|0;i=0;while(1){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;d=f[a>>2]|0;x=d+8|0;y=f[x+4>>2]|0;e=d+16|0;h=e;g=f[h>>2]|0;h=f[h+4>>2]|0;if((y|0)>(h|0)|((y|0)==(h|0)?(f[x>>2]|0)>>>0>g>>>0:0)?(v=b[(f[d>>2]|0)+g>>0]|0,p=Wg(g|0,h|0,1,0)|0,o=e,f[o>>2]=p,f[o+4>>2]=I,o=v&255,le(l,o,0),p=f[a>>2]|0,q=Af(l,0)|0,g=p+8|0,x=f[g>>2]|0,g=f[g+4>>2]|0,s=p+16|0,y=s,t=f[y>>2]|0,v=v&255,y=Wg(t|0,f[y+4>>2]|0,v|0,0)|0,h=I,!((g|0)<(h|0)|(g|0)==(h|0)&x>>>0>>0)):0){Mc(q|0,(f[p>>2]|0)+t|0,o|0)|0;x=s;x=Wg(f[x>>2]|0,f[x+4>>2]|0,v|0,0)|0;y=s;f[y>>2]=x;f[y+4>>2]=I;y=pg(40)|0;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;f[y+12>>2]=0;n[y+16>>2]=$(1.0);x=y+20|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;n[y+36>>2]=$(1.0);f[m>>2]=y;if(xb(a,y)|0){d=f[m>>2]|0;f[m>>2]=0;f[r>>2]=d;Bc(c,l,r)|0;Id(r);d=0}else d=1;Id(m)}else d=1;if((b[j>>0]|0)<0)Bi(f[l>>2]|0);i=i+1|0;if(d|0){d=0;break b}if(i>>>0>=(f[k>>2]|0)>>>0){d=1;break}}}while(0);y=d;u=w;return y|0}function yb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;v=x+4|0;w=x;f[a+72>>2]=e;f[a+64>>2]=g;s=xi(e>>>0>1073741823?-1:e<<2)|0;t=a+68|0;d=f[t>>2]|0;f[t>>2]=s;if(d|0)yi(d);s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Cd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Yh(k)}else{y=0;l=h}while(1){f[w>>2]=f[l+(y<<2)>>2];f[v>>2]=f[w>>2];gb(a,v,c,y);l=X(y,e)|0;i=f[t>>2]|0;k=b+(l<<2)|0;l=c+(l<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){j=f[p>>2]|0;f[j+(h<<2)>>2]=g}else{g=f[q>>2]|0;j=f[p>>2]|0;f[j+(h<<2)>>2]=(d|0)<(g|0)?g:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[k+(g<<2)>>2]|0)+(f[j+(g<<2)>>2]|0)|0;h=l+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=22}}else{d=d-(f[r>>2]|0)|0;z=22}if((z|0)==22){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=10;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=11;break}}if((z|0)==10){u=x;return 1}else if((z|0)==11)Yh(d);return 0}function zb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;v=x+4|0;w=x;f[a+72>>2]=e;f[a+64>>2]=g;s=xi(e>>>0>1073741823?-1:e<<2)|0;t=a+68|0;d=f[t>>2]|0;f[t>>2]=s;if(d|0)yi(d);s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Cd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Yh(k)}else{y=0;l=h}while(1){f[w>>2]=f[l+(y<<2)>>2];f[v>>2]=f[w>>2];fb(a,v,c,y);l=X(y,e)|0;i=f[t>>2]|0;k=b+(l<<2)|0;l=c+(l<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){j=f[p>>2]|0;f[j+(h<<2)>>2]=g}else{g=f[q>>2]|0;j=f[p>>2]|0;f[j+(h<<2)>>2]=(d|0)<(g|0)?g:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[k+(g<<2)>>2]|0)+(f[j+(g<<2)>>2]|0)|0;h=l+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=22}}else{d=d-(f[r>>2]|0)|0;z=22}if((z|0)==22){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=10;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=11;break}}if((z|0)==10){u=x;return 1}else if((z|0)==11)Yh(d);return 0}function Ab(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=a+8|0;f[t>>2]=e;j=a+32|0;k=a+36|0;i=f[k>>2]|0;h=f[j>>2]|0;g=i-h>>2;if(g>>>0>=e>>>0)if(g>>>0>e>>>0?(l=h+(e<<2)|0,(i|0)!=(l|0)):0){f[k>>2]=i+(~((i+-4-l|0)>>>2)<<2);g=e}else g=e;else{Cd(j,e-g|0);g=f[t>>2]|0}r=e>>>0>1073741823?-1:e<<2;s=xi(r)|0;Vd(s|0,0,r|0)|0;if((g|0)>0){l=a+16|0;j=a+32|0;m=a+12|0;i=0;do{g=f[s+(i<<2)>>2]|0;h=f[l>>2]|0;if((g|0)>(h|0)){k=f[j>>2]|0;f[k+(i<<2)>>2]=h}else{r=f[m>>2]|0;k=f[j>>2]|0;f[k+(i<<2)>>2]=(g|0)<(r|0)?r:g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0));if((g|0)>0){j=a+20|0;i=0;do{g=(f[b+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=c+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[l>>2]|0)){if((g|0)<(f[m>>2]|0)){g=(f[j>>2]|0)+g|0;u=18}}else{g=g-(f[j>>2]|0)|0;u=18}if((u|0)==18){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}if((e|0)>=(d|0)){yi(s);return 1}o=0-e|0;p=a+16|0;q=a+32|0;r=a+12|0;n=a+20|0;a=e;do{l=c+(a<<2)|0;j=l+(o<<2)|0;m=b+(a<<2)|0;if((g|0)>0){i=0;do{g=f[j+(i<<2)>>2]|0;h=f[p>>2]|0;if((g|0)>(h|0)){k=f[q>>2]|0;f[k+(i<<2)>>2]=h}else{h=f[r>>2]|0;k=f[q>>2]|0;f[k+(i<<2)>>2]=(g|0)<(h|0)?h:g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0));if((g|0)>0){i=0;do{g=(f[m+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[p>>2]|0)){if((g|0)<(f[r>>2]|0)){g=(f[n>>2]|0)+g|0;u=33}}else{g=g-(f[n>>2]|0)|0;u=33}if((u|0)==33){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}a=a+e|0}while((a|0)<(d|0));yi(s);return 1}function Bb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=Yc(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Cb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=$c(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Db(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=ad(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Eb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=bd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Fb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=cd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Gb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=ed(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Hb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Wg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Wg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(ke(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Cd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Vd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Wg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=fd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Ib(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=c+8|0;j=f[i+4>>2]|0;e=c+16|0;h=e;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((j|0)>(h|0)|((j|0)==(h|0)?(f[i>>2]|0)>>>0>g>>>0:0))){j=0;return j|0}j=b[(f[c>>2]|0)+g>>0]|0;h=Wg(g|0,h|0,1,0)|0;i=e;f[i>>2]=h;f[i+4>>2]=I;do switch(j<<24>>24){case 1:{j=nc(a,c,d)|0;return j|0}case 2:{j=nc(a,c,d)|0;return j|0}case 3:{j=nc(a,c,d)|0;return j|0}case 4:{j=nc(a,c,d)|0;return j|0}case 5:{j=nc(a,c,d)|0;return j|0}case 6:{j=nc(a,c,d)|0;return j|0}case 7:{j=nc(a,c,d)|0;return j|0}case 8:{j=nc(a,c,d)|0;return j|0}case 9:{j=mc(a,c,d)|0;return j|0}case 10:{j=lc(a,c,d)|0;return j|0}case 11:{j=kc(a,c,d)|0;return j|0}case 12:{j=jc(a,c,d)|0;return j|0}case 13:{j=ic(a,c,d)|0;return j|0}case 14:{j=hc(a,c,d)|0;return j|0}case 15:{j=hc(a,c,d)|0;return j|0}case 16:{j=hc(a,c,d)|0;return j|0}case 17:{j=hc(a,c,d)|0;return j|0}case 18:{j=hc(a,c,d)|0;return j|0}default:{j=0;return j|0}}while(0);return 0}function Jb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;t=x+4|0;v=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Cd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Yh(k)}else{y=0;l=h}while(1){f[v>>2]=f[l+(y<<2)>>2];f[t>>2]=f[v>>2];Wa(w,t,c,y);k=X(y,e)|0;j=b+(k<<2)|0;k=c+(k<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[a+68+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){i=f[p>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[q>>2]|0;i=f[p>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[j+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=20}}else{d=d-(f[r>>2]|0)|0;z=20}if((z|0)==20){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=8;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=9;break}}if((z|0)==8){u=x;return 1}else if((z|0)==9)Yh(d);return 0}function Kb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=a+8|0;e=f[k>>2]|0;switch(f[e+28>>2]|0){case 2:{d=b[e+24>>0]|0;j=d<<24>>24;i=xi((j|0)>-1?j:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;a:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Mc(f[f[e+64>>2]>>2]|0,i|0,j|0)|0;if((c|0)==1)break;else{d=0;a=1}while(1){d=d+j|0;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+d|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break a}}while(1){d=0;g=e;while(1){b[i+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(j|0))break;else g=g+1|0}Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+j|0}}while(0);yi(i);k=1;return k|0}case 1:{d=b[e+24>>0]|0;i=d<<24>>24;j=xi((i|0)>-1?i:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;b:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Mc(f[f[e+64>>2]>>2]|0,j|0,i|0)|0;if((c|0)==1)break;else{d=0;a=1}while(1){d=d+i|0;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+d|0,j|0,i|0)|0;a=a+1|0;if((a|0)==(c|0))break b}}while(1){d=0;g=e;while(1){b[j+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(i|0))break;else g=g+1|0}Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,j|0,i|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+i|0}}while(0);yi(j);k=1;return k|0}case 4:{od(a,c);k=1;return k|0}case 3:{od(a,c);k=1;return k|0}case 6:{pd(a,c);k=1;return k|0}case 5:{pd(a,c);k=1;return k|0}default:{k=0;return k|0}}return 0}function Lb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;t=x+4|0;v=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Cd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Yh(k)}else{y=0;l=h}while(1){f[v>>2]=f[l+(y<<2)>>2];f[t>>2]=f[v>>2];Va(w,t,c,y);k=X(y,e)|0;j=b+(k<<2)|0;k=c+(k<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[a+68+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){i=f[p>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[q>>2]|0;i=f[p>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[j+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=20}}else{d=d-(f[r>>2]|0)|0;z=20}if((z|0)==20){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=8;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=9;break}}if((z|0)==8){u=x;return 1}else if((z|0)==9)Yh(d);return 0}function Mb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;q=r+16|0;o=r+12|0;p=r;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;m=f[a>>2]|0;s=m+8|0;t=f[s+4>>2]|0;d=m+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if((t|0)>(g|0)|((t|0)==(g|0)?(f[s>>2]|0)>>>0>e>>>0:0)?(n=b[(f[m>>2]|0)+e>>0]|0,i=Wg(e|0,g|0,1,0)|0,h=d,f[h>>2]=i,f[h+4>>2]=I,h=n&255,le(q,h,0),i=f[a>>2]|0,j=Af(q,0)|0,g=i+8|0,s=f[g>>2]|0,g=f[g+4>>2]|0,k=i+16|0,t=k,l=f[t>>2]|0,n=n&255,t=Wg(l|0,f[t+4>>2]|0,n|0,0)|0,m=I,!((g|0)<(m|0)|(g|0)==(m|0)&s>>>0>>0)):0){Mc(j|0,(f[i>>2]|0)+l|0,h|0)|0;d=k;d=Wg(f[d>>2]|0,f[d+4>>2]|0,n|0,0)|0;t=k;f[t>>2]=d;f[t+4>>2]=I;f[o>>2]=0;t=(ke(o,f[a>>2]|0)|0)^1;d=f[o>>2]|0;if((d|0)==0|t)d=0;else{f[p>>2]=0;i=p+4|0;f[i>>2]=0;f[p+8>>2]=0;if((d|0)<0)Yh(p);e=pg(d)|0;f[i>>2]=e;f[p>>2]=e;f[p+8>>2]=e+d;do{b[e>>0]=0;e=(f[i>>2]|0)+1|0;f[i>>2]=e;d=d+-1|0}while((d|0)!=0);h=f[o>>2]|0;d=f[a>>2]|0;o=d+8|0;s=f[o>>2]|0;o=f[o+4>>2]|0;e=d+16|0;t=e;g=f[t>>2]|0;t=Wg(g|0,f[t+4>>2]|0,h|0,0)|0;a=I;if((o|0)<(a|0)|(o|0)==(a|0)&s>>>0>>0)d=0;else{Mc(f[p>>2]|0,(f[d>>2]|0)+g|0,h|0)|0;t=e;t=Wg(f[t>>2]|0,f[t+4>>2]|0,h|0,0)|0;d=e;f[d>>2]=t;f[d+4>>2]=I;$f(c,q,p);d=1}e=f[p>>2]|0;if(e|0){if((f[i>>2]|0)!=(e|0))f[i>>2]=e;Bi(e)}}}else d=0;if((b[q+11>>0]|0)>=0){u=r;return d|0}Bi(f[q>>2]|0);u=r;return d|0}function Nb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+32|0;i=s+16|0;r=s;f[i>>2]=0;do if((j[b+38>>1]|0)<514){k=b+8|0;l=f[k>>2]|0;k=f[k+4>>2]|0;c=b+16|0;e=c;d=f[e>>2]|0;e=Wg(d|0,f[e+4>>2]|0,4,0)|0;g=I;if((k|0)<(g|0)|(k|0)==(g|0)&l>>>0>>0){r=0;u=s;return r|0}else{l=(f[b>>2]|0)+d|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;f[i>>2]=l;f[c>>2]=e;f[c+4>>2]=g;c=l;break}}else if(ke(i,b)|0){c=f[i>>2]|0;break}else{r=0;u=s;return r|0}while(0);e=a+76|0;ac(e,c,0);ci(r);if(bc(r,b)|0){if(f[i>>2]|0){c=1;d=0;do{c=c^((Pe(r)|0)^1);l=(f[e>>2]|0)+(d>>>5<<2)|0;k=1<<(d&31);g=f[l>>2]|0;f[l>>2]=c?g|k:g&~k;d=d+1|0}while(d>>>0<(f[i>>2]|0)>>>0)}d=b+8|0;c=f[d>>2]|0;d=f[d+4>>2]|0;e=b+16|0;i=e;g=f[i>>2]|0;i=f[i+4>>2]|0;k=Wg(g|0,i|0,4,0)|0;l=I;if((!((d|0)<(l|0)|(d|0)==(l|0)&c>>>0>>0)?(m=f[b>>2]|0,n=m+g|0,n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24,o=e,f[o>>2]=k,f[o+4>>2]=l,o=Wg(g|0,i|0,8,0)|0,p=I,!((d|0)<(p|0)|(d|0)==(p|0)&c>>>0>>0)):0)?(q=m+k|0,q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24,m=e,f[m>>2]=o,f[m+4>>2]=p,(n|0)<=(q|0)):0){f[a+12>>2]=n;f[a+16>>2]=q;q=q+(1-n)|0;f[a+20>>2]=q;c=(q|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(q&1)){f[d>>2]=c+-1;c=1}else c=1}else c=0}else c=0;zi(r);r=c;u=s;return r|0}function Ob(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;k=t;o=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((o|0)<=0){r=1;s=1;s=r|s;u=t;return s|0}p=a+36|0;q=a+48|0;r=k+8|0;l=k+4|0;m=k+11|0;c=0;while(1){j=(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)+40|0;if(f[j>>2]|0){j=f[(f[(f[p>>2]|0)+(c<<2)>>2]|0)+8>>2]|0;i=(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)+40|0;i=f[i>>2]|0;j=f[j+56>>2]|0;d=pg(32)|0;f[k>>2]=d;f[r>>2]=-2147483616;f[l>>2]=24;e=d;g=4088;h=e+24|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));b[d+24>>0]=0;h=i+16|0;e=f[h>>2]|0;if(e){d=h;a:while(1){g=e;while(1){if((f[g+16>>2]|0)>=(j|0))break;e=f[g+4>>2]|0;if(!e)break a;else g=e}e=f[g>>2]|0;if(!e){d=g;break}else d=g}if(((d|0)!=(h|0)?(j|0)>=(f[d+16>>2]|0):0)?(n=d+20|0,(id(n,k)|0)!=0):0)d=ve(n,k,0)|0;else s=13}else s=13;if((s|0)==13){s=0;d=ve(i,k,0)|0}if((b[m>>0]|0)<0)Bi(f[k>>2]|0);if(d){s=17;break}}j=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(!(Na[f[(f[j>>2]|0)+24>>2]&127](j,q)|0)){c=0;d=0;s=20;break}c=c+1|0;if((c|0)>=(o|0)){c=1;d=1;s=20;break}}if((s|0)==17){r=f[(f[p>>2]|0)+(c<<2)>>2]|0;s=f[r+8>>2]|0;fc(s,Qc(r)|0);r=0;s=1;s=r|s;u=t;return s|0}else if((s|0)==20){s=c|d;u=t;return s|0}return 0}function Pb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+4194304|0;f[a+48>>2]=q;q=q>>>0<1073741824;u=o;return q|0}function Qb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+2097152|0;f[a+48>>2]=q;q=q>>>0<536870912;u=o;return q|0}function Rb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+1048576|0;f[a+48>>2]=q;q=q>>>0<268435456;u=o;return q|0}function Sb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+262144|0;f[a+48>>2]=q;q=q>>>0<67108864;u=o;return q|0}function Tb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+131072|0;f[a+48>>2]=q;q=q>>>0<33554432;u=o;return q|0}function Ub(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+32768|0;f[a+48>>2]=q;q=q>>>0<8388608;u=o;return q|0}function Vb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Wg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Qd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Jg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Wg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+16384|0;f[a+48>>2]=q;q=q>>>0<4194304;u=o;return q|0}function Wb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f[b+4>>2]|0;if((d|0)<=-1)xa(13373,14023,59,14122);g=f[h+8>>2]|0;if(((f[h+12>>2]|0)-g>>2|0)<=(d|0))xa(13969,14023,60,14122);j=f[g+(d<<2)>>2]|0;if(!((c+-1|0)>>>0<6&(Ja[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1)){e=0;f[a>>2]=e;return}k=Ja[f[(f[b>>2]|0)+36>>2]&127](b)|0;l=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((k|0)==0|(l|0)==0){e=0;f[a>>2]=e;return}i=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;h=f[b+44>>2]|0;d=l+12|0;g=(c|0)==6;if(!i){if(g){c=pg(104)|0;f[c+4>>2]=j;j=c+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[j+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=k;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2428;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=k;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2484;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;ci(c+88|0);e=c;f[a>>2]=e;return}}else if(g){c=pg(104)|0;f[c+4>>2]=j;k=c+8|0;f[k>>2]=f[e>>2];f[k+4>>2]=f[e+4>>2];f[k+8>>2]=f[e+8>>2];f[k+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=i;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2344;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=i;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2400;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;ci(c+88|0);e=c;f[a>>2]=e;return}f[a>>2]=0;f[a>>2]=0;e=0;f[a>>2]=e;return}function Xb(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=a+32|0;g=f[h>>2]|0;o=g+8|0;n=f[o+4>>2]|0;c=g+16|0;e=c;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((n|0)>(e|0)|((n|0)==(e|0)?(f[o>>2]|0)>>>0>d>>>0:0))){p=0;return p|0}g=b[(f[g>>2]|0)+d>>0]|0;n=Wg(d|0,e|0,1,0)|0;o=c;f[o>>2]=n;f[o+4>>2]=I;o=g&255;g=g<<24>>24==0;a:do if(!g){c=0;while(1){if(!(Na[f[(f[a>>2]|0)+16>>2]&127](a,c)|0)){c=0;break}c=c+1|0;if((c|0)>=(o|0))break a}return c|0}while(0);n=a+8|0;c=f[n>>2]|0;d=f[a+12>>2]|0;b:do if((c|0)!=(d|0)){e=a+4|0;while(1){m=f[c>>2]|0;c=c+4|0;if(!(Ea[f[(f[m>>2]|0)+8>>2]&15](m,a,f[e>>2]|0)|0)){c=0;break}if((c|0)==(d|0))break b}return c|0}while(0);if(!g){c=0;do{m=f[(f[n>>2]|0)+(c<<2)>>2]|0;c=c+1|0;if(!(Na[f[(f[m>>2]|0)+12>>2]&127](m,f[h>>2]|0)|0)){c=0;i=26;break}}while((c|0)<(o|0));if((i|0)==26)return c|0;if(!g){j=a+20|0;k=a+24|0;i=0;do{l=f[(f[n>>2]|0)+(i<<2)>>2]|0;l=Ja[f[(f[l>>2]|0)+24>>2]&127](l)|0;if((l|0)>0){h=0;do{m=f[(f[n>>2]|0)+(i<<2)>>2]|0;m=Na[f[(f[m>>2]|0)+20>>2]&127](m,h)|0;d=f[k>>2]|0;c=f[j>>2]|0;e=d-c>>2;do if(m>>>0>=e>>>0){g=m+1|0;if(g>>>0>e>>>0){Cd(j,g-e|0);c=f[j>>2]|0;break}if(g>>>0>>0?(p=c+(g<<2)|0,(d|0)!=(p|0)):0)f[k>>2]=d+(~((d+-4-p|0)>>>2)<<2)}while(0);f[c+(m<<2)>>2]=i;h=h+1|0}while((h|0)!=(l|0))}i=i+1|0}while((i|0)!=(o|0))}}if(!(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)){p=0;return p|0}p=Ja[f[(f[a>>2]|0)+32>>2]&127](a)|0;return p|0}function Yb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f[b+4>>2]|0;if((d|0)<=-1)xa(13373,14023,59,14122);g=f[h+8>>2]|0;if(((f[h+12>>2]|0)-g>>2|0)<=(d|0))xa(13969,14023,60,14122);j=f[g+(d<<2)>>2]|0;if(!((c+-1|0)>>>0<6&(Ja[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1)){e=0;f[a>>2]=e;return}k=Ja[f[(f[b>>2]|0)+36>>2]&127](b)|0;l=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((k|0)==0|(l|0)==0){e=0;f[a>>2]=e;return}i=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;h=f[b+44>>2]|0;d=l+12|0;g=(c|0)==6;if(!i){if(g){c=pg(104)|0;f[c+4>>2]=j;j=c+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[j+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=k;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2652;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=k;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2708;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;ci(c+88|0);e=c;f[a>>2]=e;return}}else if(g){c=pg(104)|0;f[c+4>>2]=j;k=c+8|0;f[k>>2]=f[e>>2];f[k+4>>2]=f[e+4>>2];f[k+8>>2]=f[e+8>>2];f[k+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=i;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2568;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=i;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2624;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;ci(c+88|0);e=c;f[a>>2]=e;return}f[a>>2]=0;f[a>>2]=0;e=0;f[a>>2]=e;return}function Zb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;i=o+16|0;k=o;if((j[c+38>>1]|0)<514){n=c+8|0;m=f[n+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((m|0)>(g|0)|((m|0)==(g|0)?(f[n>>2]|0)>>>0>e>>>0:0))){a=0;u=o;return a|0}n=b[(f[c>>2]|0)+e>>0]|0;l=Wg(e|0,g|0,1,0)|0;m=d;f[m>>2]=l;f[m+4>>2]=I;if(n<<24>>24){a=0;u=o;return a|0}}e=0;do{ke(i,c)|0;d=f[i>>2]|0;if(d|0){g=a+60+(e*12|0)|0;ac(g,d,0);ci(k);bc(k,c)|0;if(f[i>>2]|0){d=0;do{p=Pe(k)|0;n=(f[g>>2]|0)+(d>>>5<<2)|0;m=1<<(d&31);l=f[n>>2]|0;f[n>>2]=p?l|m:l&~m;d=d+1|0}while(d>>>0<(f[i>>2]|0)>>>0)}zi(k)}e=e+1|0}while((e|0)<4);l=c+8|0;k=f[l>>2]|0;l=f[l+4>>2]|0;n=c+16|0;e=n;d=f[e>>2]|0;e=f[e+4>>2]|0;m=Wg(d|0,e|0,4,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){p=0;u=o;return p|0}i=f[c>>2]|0;c=i+d|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;p=n;f[p>>2]=m;f[p+4>>2]=g;e=Wg(d|0,e|0,8,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){p=0;u=o;return p|0}d=i+m|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;p=n;f[p>>2]=e;f[p+4>>2]=g;if((c|0)>(d|0)){p=0;u=o;return p|0}f[a+12>>2]=c;f[a+16>>2]=d;p=d+(1-c)|0;f[a+20>>2]=p;d=(p|0)/2|0;e=a+24|0;f[e>>2]=d;f[a+28>>2]=0-d;if(p&1|0){p=1;u=o;return p|0}f[e>>2]=d+-1;p=1;u=o;return p|0}function _b(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=f[b>>2]|0;m=b+4|0;e=f[m>>2]|0;i=((f[c>>2]|0)-l<<3)+(f[c+4>>2]|0)-e|0;c=l;if((i|0)<=0){b=d+4|0;d=f[d>>2]|0;f[a>>2]=d;d=a+4|0;a=f[b>>2]|0;f[d>>2]=a;return}if(!e){e=d+4|0;k=e;e=f[e>>2]|0}else{g=32-e|0;l=(i|0)<(g|0)?i:g;g=-1>>>(g-l|0)&-1<>2];k=d+4|0;e=f[k>>2]|0;j=32-e|0;c=j>>>0>>0?j:l;h=f[d>>2]|0;e=f[h>>2]&~(-1>>>(j-c|0)&-1<>2]=e;j=f[k>>2]|0;n=f[m>>2]|0;f[h>>2]=(j>>>0>n>>>0?g<>>(n-j|0))|e;e=(f[k>>2]|0)+c|0;h=h+(e>>>5<<2)|0;f[d>>2]=h;e=e&31;f[k>>2]=e;j=l-c|0;if((j|0)>0){e=f[h>>2]&~(-1>>>(32-j|0));f[h>>2]=e;f[h>>2]=g>>>((f[m>>2]|0)+c|0)|e;f[k>>2]=j;e=j}c=(f[b>>2]|0)+4|0;f[b>>2]=c;i=i-l|0}j=32-e|0;g=-1<31){h=~g;e=i;do{m=f[c>>2]|0;n=f[d>>2]|0;l=f[n>>2]&h;f[n>>2]=l;f[n>>2]=m<>2]|l;n=n+4|0;f[d>>2]=n;f[n>>2]=f[n>>2]&g|m>>>j;e=e+-32|0;c=(f[b>>2]|0)+4|0;f[b>>2]=c}while((e|0)>31);i=i&31}if((i|0)<=0){b=k;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;d=f[b>>2]|0;f[n>>2]=d;return}h=f[c>>2]&-1>>>(32-i|0);g=(j|0)<(i|0)?j:i;e=f[d>>2]|0;c=f[e>>2]&~(-1<>2]&-1>>>(j-g|0));f[e>>2]=c;f[e>>2]=c|h<>2];c=(f[k>>2]|0)+g|0;e=e+(c>>>5<<2)|0;f[d>>2]=e;f[k>>2]=c&31;c=i-g|0;if((c|0)<=0){b=k;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;d=f[b>>2]|0;f[n>>2]=d;return}f[e>>2]=f[e>>2]&~(-1>>>(32-c|0))|h>>>g;f[k>>2]=c;b=k;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;d=f[b>>2]|0;f[n>>2]=d;return}function $b(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+12|0;n=f[l>>2]|0;i=(f[c>>2]|0)-n|0;j=c+4|0;e=(f[j>>2]|0)-n|0;g=c;f[g>>2]=i;f[g+4>>2]=e;g=f[l>>2]|0;if((g|0)<(i|0))xa(8610,7895,250,8633);if((g|0)<(e|0))xa(8645,7895,251,8633);h=0-g|0;if((i|0)<(h|0))xa(8668,7895,252,8633);if((e|0)<(h|0))xa(8692,7895,253,8633);m=(((e|0)>-1?e:0-e|0)+((i|0)>-1?i:0-i|0)|0)<=(g|0);if(m)e=i;else{ld(b,c,j);e=f[c>>2]|0}if(!e){g=f[j>>2]|0;h=g;g=(g|0)==0}else{g=f[j>>2]|0;h=g;g=(e|0)<0&(g|0)<1}if(!e)k=(h|0)==0?0:(h|0)>0?3:1;else k=(e|0)>0?(h>>31)+2|0:(h|0)<1?0:3;if(g){j=1;g=e;e=h}else{switch(k|0){case 1:{g=h;e=0-e|0;break}case 2:{g=0-e|0;e=0-h|0;break}case 3:{g=0-h|0;break}default:{g=e;e=h}}j=c;f[j>>2]=g;f[j+4>>2]=e;j=0}h=(f[d>>2]|0)+g|0;f[a>>2]=h;e=(f[d+4>>2]|0)+e|0;i=a+4|0;f[i>>2]=e;g=f[l>>2]|0;if((g|0)>=(h|0)){if((h|0)<(0-g|0))h=(f[b+4>>2]|0)+h|0}else h=h-(f[b+4>>2]|0)|0;f[a>>2]=h;if((g|0)>=(e|0)){if((e|0)<(0-g|0))e=(f[b+4>>2]|0)+e|0}else e=e-(f[b+4>>2]|0)|0;f[i>>2]=e;if(j)g=h;else{switch((4-k|0)%4|0|0){case 1:{g=e;e=0-h|0;break}case 2:{g=0-h|0;e=0-e|0;break}case 3:{g=0-e|0;e=h;break}default:g=h}l=a;f[l>>2]=g;f[l+4>>2]=e}if(m){m=g;b=e;m=m+n|0;b=b+n|0;n=a;a=n;f[a>>2]=m;n=n+4|0;f[n>>2]=b;return}ld(b,a,i);m=f[a>>2]|0;b=f[i>>2]|0;m=m+n|0;b=b+n|0;n=a;a=n;f[a>>2]=m;n=n+4|0;f[n>>2]=b;return}function ac(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;m=p+8|0;j=p;n=a+4|0;e=f[n>>2]|0;if(e>>>0>=b>>>0){f[n>>2]=b;u=p;return}o=a+8|0;h=f[o>>2]|0;g=h<<5;d=b-e|0;if(g>>>0>>0|e>>>0>(g-d|0)>>>0){f[m>>2]=0;k=m+4|0;f[k>>2]=0;l=m+8|0;f[l>>2]=0;if((b|0)<0)Yh(a);e=h<<6;h=b+31&-32;zd(m,g>>>0<1073741823?(e>>>0>>0?h:e):2147483647);g=f[n>>2]|0;f[k>>2]=g+d;e=f[a>>2]|0;h=e;b=f[m>>2]|0;g=(h+(g>>>5<<2)-e<<3)+(g&31)|0;if((g|0)>0){i=g>>>5;Of(b|0,e|0,i<<2|0)|0;e=g-(i<<5)|0;g=b+(i<<2)|0;b=g;if((e|0)>0){q=-1>>>(32-e|0);f[g>>2]=f[g>>2]&~q|f[h+(i<<2)>>2]&q}else e=0}else e=0;f[j>>2]=b;f[j+4>>2]=e;g=j;b=f[g>>2]|0;g=f[g+4>>2]|0;e=f[a>>2]|0;f[a>>2]=f[m>>2];f[m>>2]=e;q=f[n>>2]|0;f[n>>2]=f[k>>2];f[k>>2]=q;q=f[o>>2]|0;f[o>>2]=f[l>>2];f[l>>2]=q;if(e|0)Bi(e)}else{g=(f[a>>2]|0)+(e>>>5<<2)|0;f[n>>2]=b;b=g;g=e&31}if(!d){u=p;return}h=(g|0)==0;e=b;if(c){if(!h){q=32-g|0;b=q>>>0>d>>>0?d:q;f[e>>2]=f[e>>2]|-1>>>(q-b|0)&-1<>>5;Vd(b|0,-1,q<<2|0)|0;d=d-(q<<5)|0;b=e+(q<<2)|0;if(!d){u=p;return}f[b>>2]=f[b>>2]|-1>>>(32-d|0);u=p;return}else{if(!h){q=32-g|0;b=q>>>0>d>>>0?d:q;f[e>>2]=f[e>>2]&~(-1>>>(q-b|0)&-1<>>5;Vd(b|0,0,q<<2|0)|0;d=d-(q<<5)|0;b=e+(q<<2)|0;if(!d){u=p;return}f[b>>2]=f[b>>2]&~(-1>>>(32-d|0));u=p;return}}function bc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;m=q;e=c+8|0;l=e;i=f[l+4>>2]|0;p=c+16|0;k=p;d=f[k>>2]|0;k=f[k+4>>2]|0;if(!((i|0)>(k|0)|((i|0)==(k|0)?(f[l>>2]|0)>>>0>d>>>0:0))){p=0;u=q;return p|0}b[a+12>>0]=b[(f[c>>2]|0)+d>>0]|0;g=p;d=f[g>>2]|0;g=f[g+4>>2]|0;i=Wg(d|0,g|0,1,0)|0;l=p;f[l>>2]=i;f[l+4>>2]=I;if((j[c+38>>1]|0)<514){k=e;e=f[k>>2]|0;k=f[k+4>>2]|0;d=Wg(d|0,g|0,5,0)|0;l=I;if((k|0)<(l|0)|(k|0)==(l|0)&e>>>0>>0)d=0;else{i=(f[c>>2]|0)+i|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;f[m>>2]=i;g=p;f[g>>2]=d;f[g+4>>2]=l;g=k;k=d;n=7}}else if(ke(m,c)|0){g=e;l=p;e=f[g>>2]|0;g=f[g+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;i=f[m>>2]|0;n=7}else d=0;a:do if((n|0)==7){n=Jg(e|0,g|0,k|0,l|0)|0;m=I;if(!(0>(m|0)|0==(m|0)&i>>>0>n>>>0)?(o=(f[c>>2]|0)+k|0,(i|0)>=1):0){f[a>>2]=o;d=i+-1|0;e=o+d|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[a+4>>2]=d;d=b[e>>0]&63;break}case 1:{if((i|0)<2){d=0;break a}f[a+4>>2]=i+-2;d=o+i+-2|0;d=(h[d+1>>0]|0)<<8&16128|(h[d>>0]|0);break}case 2:{if((i|0)<3){d=0;break a}f[a+4>>2]=i+-3;d=o+i+-3|0;d=(h[d+1>>0]|0)<<8|(h[d>>0]|0)|(h[d+2>>0]|0)<<16&4128768;break}default:{d=0;break a}}o=d+4096|0;f[a+8>>2]=o;if(o>>>0<=1048575){a=Wg(k|0,l|0,i|0,0)|0;d=p;f[d>>2]=a;f[d+4>>2]=I;d=1}else d=0}else d=0}while(0);p=d;u=q;return p|0}function cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+16|0;q=r;i=b+8|0;g=i;j=f[g>>2]|0;g=f[g+4>>2]|0;k=b+16|0;d=k;c=f[d>>2]|0;d=Wg(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((g|0)<(e|0)|(g|0)==(e|0)&j>>>0>>0){q=0;u=r;return q|0}g=(f[b>>2]|0)+c|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;j=k;f[j>>2]=d;f[j+4>>2]=e;if((g|0)<0){q=0;u=r;return q|0}ac(a+76|0,g,0);ci(q);if(bc(q,b)|0){if((g|0)>0){e=a+76|0;c=1;d=0;do{c=c^((Pe(q)|0)^1);j=(f[e>>2]|0)+(d>>>5<<2)|0;s=1<<(d&31);t=f[j>>2]|0;f[j>>2]=c?t|s:t&~s;d=d+1|0}while((d|0)<(g|0))}d=i;c=f[d>>2]|0;d=f[d+4>>2]|0;g=k;e=f[g>>2]|0;g=f[g+4>>2]|0;i=Wg(e|0,g|0,4,0)|0;j=I;if((!((d|0)<(j|0)|(d|0)==(j|0)&c>>>0>>0)?(l=f[b>>2]|0,m=l+e|0,m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24,n=k,f[n>>2]=i,f[n+4>>2]=j,n=Wg(e|0,g|0,8,0)|0,o=I,!((d|0)<(o|0)|(d|0)==(o|0)&c>>>0>>0)):0)?(p=l+i|0,p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24,t=k,f[t>>2]=n,f[t+4>>2]=o,(m|0)<=(p|0)):0){f[a+12>>2]=m;f[a+16>>2]=p;t=p+(1-m)|0;f[a+20>>2]=t;c=(t|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(t&1)){f[d>>2]=c+-1;c=1}else c=1}else c=0}else c=0;zi(q);t=c;u=r;return t|0}function dc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+16|0;j=m;if(!(cb(a,c)|0)){l=0;u=m;return l|0}k=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;l=a+36|0;i=a+40|0;d=f[i>>2]|0;g=f[l>>2]|0;e=d-g>>2;if(k>>>0<=e>>>0){if(k>>>0>>0?(h=g+(k<<2)|0,(d|0)!=(h|0)):0)do{g=d+-4|0;f[i>>2]=g;d=f[g>>2]|0;f[g>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[i>>2]|0}while((d|0)!=(h|0))}else Fc(l,k-e|0);h=c+8|0;if((k|0)<=0){l=1;u=m;return l|0}i=c+16|0;g=0;while(1){n=h;o=f[n+4>>2]|0;e=i;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((o|0)>(e|0)|((o|0)==(e|0)?(f[n>>2]|0)>>>0>d>>>0:0))){d=0;e=19;break}o=b[(f[c>>2]|0)+d>>0]|0;d=Wg(d|0,e|0,1,0)|0;n=i;f[n>>2]=d;f[n+4>>2]=I;Ka[f[(f[a>>2]|0)+48>>2]&15](j,a,o);o=(f[l>>2]|0)+(g<<2)|0;n=f[j>>2]|0;f[j>>2]=0;d=f[o>>2]|0;f[o>>2]=n;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[j>>2]|0;f[j>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[(f[l>>2]|0)+(g<<2)>>2]|0;if(!d){d=0;e=19;break}e=f[(f[d>>2]|0)+8>>2]|0;n=Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0;o=Na[f[(f[a>>2]|0)+20>>2]&127](a,g)|0;g=g+1|0;if(!(Ea[e&15](d,n,o)|0)){d=0;e=19;break}if((g|0)>=(k|0)){d=1;e=19;break}}if((e|0)==19){u=m;return d|0}return 0}function ec(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j+12|0;h=j;i=pg(52)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[i+16>>2]=$(1.0);e=i+20|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+36>>2]=$(1.0);f[i+40>>2]=0;f[i+44>>2]=0;f[i+48>>2]=0;ei(g);if(Kc(g,f[c+32>>2]|0,i)|0){g=(f[c+4>>2]|0)+4|0;h=f[g>>2]|0;f[g>>2]=i;if(h|0){e=h+40|0;c=f[e>>2]|0;if(c|0){g=h+44|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{i=d+-4|0;f[g>>2]=i;d=f[i>>2]|0;f[i>>2]=0;if(d|0){Md(d);Bi(d)}d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Bi(c)}Md(h);Bi(h)}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=j;return}else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;c=pg(32)|0;f[h>>2]=c;f[h+8>>2]=-2147483616;f[h+4>>2]=26;d=c;e=13572;g=d+26|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+26>>0]=0;f[a>>2]=-1;Wd(a+4|0,h);if((b[h+11>>0]|0)<0)Bi(f[h>>2]|0);e=i+40|0;c=f[e>>2]|0;if(c|0){g=i+44|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{a=d+-4|0;f[g>>2]=a;d=f[a>>2]|0;f[a>>2]=0;if(d|0){Md(d);Bi(d)}d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Bi(c)}Md(i);Bi(i);u=j;return}}function fc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!(f[a+64>>2]|0)){d=pg(32)|0;xg(d);g=a+64|0;h=f[g>>2]|0;f[g>>2]=d;if(h){d=f[h>>2]|0;if(d|0){e=h+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(h);d=f[g>>2]|0}Ke(a,d,0,0,0,0);d=a}else d=a;if(!(Sd(d,c)|0))return;b[a+84>>0]=b[c+84>>0]|0;f[a+80>>2]=f[c+80>>2];if((a|0)!=(c|0))xc(a+68|0,f[c+68>>2]|0,f[c+72>>2]|0);i=f[c+88>>2]|0;if(!i){a=a+88|0;d=f[a>>2]|0;f[a>>2]=0;if(!d)return;e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d);return}l=pg(40)|0;f[l>>2]=f[i>>2];d=l+8|0;e=i+8|0;f[d>>2]=0;j=l+12|0;f[j>>2]=0;g=l+16|0;f[g>>2]=0;c=i+12|0;h=(f[c>>2]|0)-(f[e>>2]|0)|0;if(h|0){if((h|0)<0)Yh(d);k=pg(h)|0;f[j>>2]=k;f[d>>2]=k;f[g>>2]=k+h;e=f[e>>2]|0;d=(f[c>>2]|0)-e|0;if((d|0)>0){Mc(k|0,e|0,d|0)|0;f[j>>2]=k+d}}g=l+24|0;k=i+24|0;f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[g+12>>2]=f[k+12>>2];a=a+88|0;g=f[a>>2]|0;f[a>>2]=l;if(!g)return;d=f[g+8>>2]|0;if(d|0){e=g+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(g);return}function gc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;l=n+16|0;m=n;i=f[b+4>>2]|0;if((d|0)<=-1)xa(13373,14023,59,14122);h=f[i+8>>2]|0;if(((f[i+12>>2]|0)-h>>2|0)<=(d|0))xa(13969,14023,60,14122);i=f[h+(d<<2)>>2]|0;do if((c+-1|0)>>>0<6&(Ja[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1){j=Ja[f[(f[b>>2]|0)+36>>2]&127](b)|0;k=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((j|0)==0|(k|0)==0){f[a>>2]=0;u=n;return}h=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;if(!h){f[m>>2]=f[b+44>>2];f[m+4>>2]=j;f[m+12>>2]=k;f[m+8>>2]=k+12;kb(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}else{f[m>>2]=f[b+44>>2];f[m+4>>2]=h;f[m+12>>2]=k;f[m+8>>2]=k+12;jb(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}}while(0);f[a>>2]=0;u=n;return}function hc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Bb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Pb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<4194304){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<4194304)}while(0);p=d&1048575;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>20)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function ic(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Cb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Qb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<2097152){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<2097152)}while(0);p=d&524287;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>19)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function jc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Db(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Rb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<1048576){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<1048576)}while(0);p=d&262143;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>18)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Eb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Sb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<262144){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<262144)}while(0);p=d&65535;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>16)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function lc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Fb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Tb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<131072){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<131072)}while(0);p=d&32767;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>15)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function mc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Gb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Ub(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<32768){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<32768)}while(0);p=d&8191;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>13)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Hb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Vb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<16384){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<16384)}while(0);p=d&4095;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>12)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Bi(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Bi(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Bi(b);u=n;return g|0}function oc(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;d=b[(f[a+8>>2]|0)+24>>0]|0;i=xi(d>>>0>1073741823?-1:d<<2)|0;j=a+28|0;c=f[j>>2]|0;f[j>>2]=i;if(c|0)yi(c);g=a+4|0;i=f[(f[g>>2]|0)+32>>2]|0;c=d<<2;n=i+8|0;l=f[n>>2]|0;n=f[n+4>>2]|0;d=i+16|0;k=d;e=f[k>>2]|0;k=Wg(e|0,f[k+4>>2]|0,c|0,0)|0;m=I;if((n|0)<(m|0)|(n|0)==(m|0)&l>>>0>>0){n=0;return n|0}Mc(f[j>>2]|0,(f[i>>2]|0)+e|0,c|0)|0;k=d;k=Wg(f[k>>2]|0,f[k+4>>2]|0,c|0,0)|0;c=d;f[c>>2]=k;f[c+4>>2]=I;c=(f[g>>2]|0)+32|0;d=f[c>>2]|0;k=d+8|0;m=f[k>>2]|0;k=f[k+4>>2]|0;e=d+16|0;n=e;g=f[n>>2]|0;n=Wg(g|0,f[n+4>>2]|0,4,0)|0;l=I;if((k|0)<(l|0)|(k|0)==(l|0)&m>>>0>>0){n=0;return n|0}m=a+32|0;n=(f[d>>2]|0)+g|0;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;b[m>>0]=n;b[m+1>>0]=n>>8;b[m+2>>0]=n>>16;b[m+3>>0]=n>>24;m=e;m=Wg(f[m>>2]|0,f[m+4>>2]|0,4,0)|0;n=e;f[n>>2]=m;f[n+4>>2]=I;c=f[c>>2]|0;n=c+8|0;m=f[n+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((m|0)>(g|0)|((m|0)==(g|0)?(f[n>>2]|0)>>>0>e>>>0:0))){n=0;return n|0}c=b[(f[c>>2]|0)+e>>0]|0;m=Wg(e|0,g|0,1,0)|0;n=d;f[n>>2]=m;f[n+4>>2]=I;if((c&255)>31){n=0;return n|0}f[a+24>>2]=c&255;n=1;return n|0}function pc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=f[c>>2]|0;m=f[l>>2]|0;i=f[a+4>>2]|0;c=f[l+4>>2]|0;j=i+-1|0;g=(j&i|0)==0;if(!g)if(c>>>0>>0)h=c;else h=(c>>>0)%(i>>>0)|0;else h=j&c;d=(f[a>>2]|0)+(h<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(l|0))break;else k=c}if((k|0)!=(a+8|0)){c=f[k+4>>2]|0;if(!g){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&j;if((c|0)==(h|0)){d=m;e=21}else e=13}else e=13;do if((e|0)==13){if(m|0){c=f[m+4>>2]|0;if(!g){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&j;if((c|0)==(h|0)){d=m;c=m;e=22;break}}f[d>>2]=0;d=f[l>>2]|0;e=21}while(0);if((e|0)==21){c=d;if(d)e=22}if((e|0)==22){d=f[d+4>>2]|0;if(!g){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&j;if((d|0)!=(h|0)){f[(f[a>>2]|0)+(d<<2)>>2]=k;c=f[l>>2]|0}}f[k>>2]=c;f[l>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!l)return m|0;c=l+8|0;d=f[l+20>>2]|0;if(d|0){e=l+24|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}if((b[c+11>>0]|0)<0)Bi(f[c>>2]|0);Bi(l);return m|0}function qc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;n=o;j=d+8|0;l=f[j>>2]|0;j=f[j+4>>2]|0;k=d+16|0;g=k;e=f[g>>2]|0;g=f[g+4>>2]|0;if((j|0)>(g|0)|(j|0)==(g|0)&l>>>0>e>>>0){i=b[(f[d>>2]|0)+e>>0]|0;e=Wg(e|0,g|0,1,0)|0;g=I;p=k;f[p>>2]=e;f[p+4>>2]=g;if(i<<24>>24!=-2)m=3}else{i=0;m=3}if((m|0)==3){if((j|0)>(g|0)|(j|0)==(g|0)&l>>>0>e>>>0){p=b[(f[d>>2]|0)+e>>0]|0;m=Wg(e|0,g|0,1,0)|0;e=k;f[e>>2]=m;f[e+4>>2]=I;e=p}else e=0;Oa[f[(f[a>>2]|0)+40>>2]&7](n,a,i<<24>>24,e<<24>>24);p=a+20|0;m=f[n>>2]|0;f[n>>2]=0;e=f[p>>2]|0;f[p>>2]=m;if(e){Ga[f[(f[e>>2]|0)+4>>2]&127](e);e=f[n>>2]|0;f[n>>2]=0;if(e|0)Ga[f[(f[e>>2]|0)+4>>2]&127](e)}else f[n>>2]=0}e=f[a+20>>2]|0;if(e|0?!(Na[f[(f[a>>2]|0)+28>>2]&127](a,e)|0):0){p=0;u=o;return p|0}if(!(Ea[f[(f[a>>2]|0)+36>>2]&15](a,c,d)|0)){p=0;u=o;return p|0}e=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;p=f[a+4>>2]|0;if((p|0?((h[p+36>>0]|0)<<8&65535)<512:0)?!(Na[f[(f[a>>2]|0)+48>>2]&127](a,e)|0):0){p=0;u=o;return p|0}p=1;u=o;return p|0}function rc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[(f[h>>2]|0)+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;return}e=c+1|0;if(!d)c=((e|0)%3|0|0)==0?c+-2|0:e;e=f[h>>2]|0;if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2]))if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=7}else g=7;else{c=-1073741824;g=7}if((g|0)==7)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;b[i>>0]=0;return}function sc(a,b,c,d){a=a|0;b=$(b);c=$(c);d=d|0;var e=Ca,f=Ca,g=Ca,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0;if(!(b>=$(0.0)))xa(8050,7895,191,8064);if(!(c>=$(0.0)))xa(8093,7895,192,8064);if(!(b<=$(1.0)))xa(8107,7895,193,8064);if(!(c<=$(1.0)))xa(8121,7895,194,8064);e=$(b+c);f=$(b-c);if(!(f<=$(.5))|(!(f>=$(-.5))|(!(e>=$(.5))|!(e<=$(1.5))))){do if(!(e<=$(.5))){if(e>=$(1.5)){g=$($(1.5)-c);c=$($(1.5)-b);break}if(!(f<=$(-.5))){g=$(c+$(.5));c=$(b+$(-.5));break}else{g=$(c+$(-.5));c=$(b+$(.5));break}}else{g=$($(.5)-c);c=$($(.5)-b)}while(0);e=$(c+g);f=$(g-c);h=-1.0}else{h=1.0;g=b}b=$(+g*2.0+-1.0);g=$(+c*2.0+-1.0);k=+e*2.0;i=k+-1.0;k=3.0-k;l=+f*2.0;j=l+1.0;l=1.0-l;j=l>2]=$(0.0);b=$(0.0);c=$(0.0);a=d+4|0;n[a>>2]=c;d=d+8|0;n[d>>2]=b;return}else{f=$($(1.0)/$(L($(f))));c=$(e*f);n[d>>2]=c;c=$(g*f);b=$(b*f);a=d+4|0;n[a>>2]=b;d=d+8|0;n[d>>2]=c;return}}function tc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;k=n;l=a+8|0;e=f[l>>2]|0;m=a+4|0;c=f[m>>2]|0;if(e-c>>2>>>0>=b>>>0){Vd(c|0,0,b<<2|0)|0;f[m>>2]=c+(b<<2);u=n;return}d=f[a>>2]|0;g=c-d>>2;c=g+b|0;if(c>>>0>1073741823)Yh(a);i=e-d|0;j=i>>1;c=i>>2>>>0<536870911?(j>>>0>>0?c:j):1073741823;f[k+12>>2]=0;f[k+16>>2]=a+8;do if(c)if(c>>>0>1073741823){n=za(8)|0;gh(n,14257);f[n>>2]=3624;qa(n|0,952,75)}else{d=pg(c<<2)|0;break}else d=0;while(0);f[k>>2]=d;e=d+(g<<2)|0;i=k+8|0;h=k+4|0;f[h>>2]=e;j=k+12|0;f[j>>2]=d+(c<<2);Vd(e|0,0,b<<2|0)|0;f[i>>2]=e+(b<<2);e=f[a>>2]|0;c=f[m>>2]|0;if((c|0)==(e|0)){g=h;d=f[h>>2]|0}else{d=f[h>>2]|0;do{c=c+-4|0;b=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=b;d=(f[h>>2]|0)+-4|0;f[h>>2]=d}while((c|0)!=(e|0));g=h;e=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=d;f[g>>2]=e;f[m>>2]=f[i>>2];f[i>>2]=c;m=f[l>>2]|0;f[l>>2]=f[j>>2];f[j>>2]=m;f[k>>2]=f[g>>2];rd(k);u=n;return}function uc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=b;h=c-m>>2;i=a+8|0;d=f[i>>2]|0;l=f[a>>2]|0;j=l;if(h>>>0<=d-l>>2>>>0){k=a+4|0;i=(f[k>>2]|0)-l>>2;h=h>>>0>i>>>0;i=b+(i<<2)|0;g=h?i:c;a=g;d=a-m|0;e=d>>2;if(e|0)Of(l|0,b|0,d|0)|0;d=j+(e<<2)|0;if(!h){b=f[k>>2]|0;if((b|0)==(d|0))return;f[k>>2]=b+(~((b+-4-d|0)>>>2)<<2);return}if((g|0)==(c|0))return;g=f[k>>2]|0;e=((c+-4-a|0)>>>2)+1|0;b=i;d=g;while(1){f[d>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else d=d+4|0}f[k>>2]=g+(e<<2);return}g=l;if(l){d=a+4|0;e=f[d>>2]|0;if((e|0)!=(j|0))f[d>>2]=e+(~((e+-4-l|0)>>>2)<<2);Bi(g);f[i>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823)Yh(a);l=d>>1;d=d>>2>>>0<536870911?(l>>>0>>0?h:l):1073741823;if(d>>>0>1073741823)Yh(a);g=pg(d<<2)|0;h=a+4|0;f[h>>2]=g;f[a>>2]=g;f[i>>2]=g+(d<<2);if((b|0)==(c|0))return;e=((c+-4-m|0)>>>2)+1|0;d=g;while(1){f[d>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else d=d+4|0}f[h>>2]=g+(e<<2);return}function vc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=Ca,j=Ca,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=Ca,x=Ca,y=0,z=0;v=u;u=u+16|0;m=v;p=f[a+24>>2]|0;s=a+8|0;d=b[(f[s>>2]|0)+24>>0]|0;q=d<<24>>24;r=q<<2;t=xi(q>>>0>1073741823?-1:q<<2)|0;wh(m);if(!(ig(m,$(n[a+32>>2]),(1<>2]|0;o=(f[f[o>>2]>>2]|0)+(f[o+48>>2]|0)|0;if(!c){s=1;yi(t);u=v;return s|0}p=m+4|0;l=a+28|0;if(d<<24>>24>0){d=0;e=0;g=0}else{a=0;d=0;while(1){Mc((f[f[(f[s>>2]|0)+64>>2]>>2]|0)+d|0,t|0,r|0)|0;a=a+1|0;if((a|0)==(c|0)){a=1;break}else d=d+r|0}yi(t);u=v;return a|0}while(1){k=f[l>>2]|0;i=$(n[p>>2]);j=$(n[m>>2]);a=0;h=e;while(1){z=f[o+(h<<2)>>2]|0;y=(z|0)<0;w=$(i*$((y?0-z|0:z)|0));x=$(-w);w=$(j*(y?x:w));w=$($(n[k+(a<<2)>>2])+w);n[t+(a<<2)>>2]=w;a=a+1|0;if((a|0)==(q|0))break;else h=h+1|0}Mc((f[f[(f[s>>2]|0)+64>>2]>>2]|0)+g|0,t|0,r|0)|0;d=d+1|0;if((d|0)==(c|0)){a=1;break}else{e=q+e|0;g=g+r|0}}yi(t);u=v;return a|0}function wc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;f[c>>2]=1;e=a+4|0;l=c+8|0;k=c+12|0;c=f[l>>2]|0;d=(f[k>>2]|0)-c|0;if(d>>>0<4294967292){Ne(l,d+4|0,0);c=f[l>>2]|0}i=c+d|0;j=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[i>>0]=j;b[i+1>>0]=j>>8;b[i+2>>0]=j>>16;b[i+3>>0]=j>>24;i=a+8|0;j=a+12|0;c=f[i>>2]|0;if((f[j>>2]|0)!=(c|0)){g=0;do{d=c+(g<<2)|0;c=f[l>>2]|0;e=(f[k>>2]|0)-c|0;if(e>>>0<4294967292){Ne(l,e+4|0,0);c=f[l>>2]|0}c=c+e|0;e=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[c>>0]=e;b[c+1>>0]=e>>8;b[c+2>>0]=e>>16;b[c+3>>0]=e>>24;g=g+1|0;c=f[i>>2]|0}while(g>>>0<(f[j>>2]|0)-c>>2>>>0)}d=a+20|0;e=f[l>>2]|0;c=(f[k>>2]|0)-e|0;if(c>>>0<4294967292){Ne(l,c+4|0,0);l=f[l>>2]|0;l=l+c|0;k=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}else{l=e;l=l+c|0;k=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}}function xc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=c;e=b;i=k-e|0;h=i>>2;j=a+8|0;d=f[j>>2]|0;g=f[a>>2]|0;l=g;if(h>>>0>d-g>>2>>>0){e=g;if(g){d=a+4|0;c=f[d>>2]|0;if((c|0)!=(l|0))f[d>>2]=c+(~((c+-4-g|0)>>>2)<<2);Bi(e);f[j>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823)Yh(a);l=d>>1;d=d>>2>>>0<536870911?(l>>>0>>0?h:l):1073741823;if(d>>>0>1073741823)Yh(a);c=pg(d<<2)|0;e=a+4|0;f[e>>2]=c;f[a>>2]=c;f[j>>2]=c+(d<<2);if((i|0)<=0)return;Mc(c|0,b|0,i|0)|0;f[e>>2]=c+(i>>>2<<2);return}j=a+4|0;i=f[j>>2]|0;g=i-g>>2;a=h>>>0>g>>>0;h=a?b+(g<<2)|0:c;g=i;if((h|0)==(b|0))d=l;else{e=h+-4-e|0;d=b;c=l;while(1){f[c>>2]=f[d>>2];d=d+4|0;if((d|0)==(h|0))break;else c=c+4|0}d=l+((e>>>2)+1<<2)|0}if(a){d=k-h|0;if((d|0)<=0)return;Mc(i|0,h|0,d|0)|0;f[j>>2]=(f[j>>2]|0)+(d>>>2<<2);return}else{if((g|0)==(d|0))return;f[j>>2]=g+(~((g+-4-d|0)>>>2)<<2);return}}function yc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=c+8|0;m=f[n>>2]|0;n=f[n+4>>2]|0;q=c+16|0;p=q;o=f[p>>2]|0;p=f[p+4>>2]|0;e=Wg(o|0,p|0,4,0)|0;d=I;if((n|0)<(d|0)|(n|0)==(d|0)&m>>>0>>0){q=0;return q|0}l=f[c>>2]|0;g=l+o|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=q;f[i>>2]=e;f[i+4>>2]=d;i=Wg(o|0,p|0,8,0)|0;k=I;if((n|0)<(k|0)|(n|0)==(k|0)&m>>>0>>0){q=0;return q|0}d=l+e|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=q;f[e>>2]=i;f[e+4>>2]=k;if((g|0)>(d|0)){q=0;return q|0}f[a+12>>2]=g;f[a+16>>2]=d;g=d+(1-g)|0;f[a+20>>2]=g;d=(g|0)/2|0;e=a+24|0;f[e>>2]=d;f[a+28>>2]=0-d;if(!(g&1))f[e>>2]=d+-1;do if((j[c+38>>1]|0)<514){if(!((n|0)>(k|0)|(n|0)==(k|0)&m>>>0>i>>>0)){q=0;return q|0}d=b[l+i>>0]|0;p=Wg(o|0,p|0,9,0)|0;f[q>>2]=p;f[q+4>>2]=I;if((d&255)<2){f[a+88>>2]=d&255;break}else{q=0;return q|0}}while(0);q=bc(a+108|0,c)|0;return q|0}function zc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=b+12|0;m=f[k>>2]|0;g=(f[c>>2]|0)-m|0;j=c+4|0;i=(f[j>>2]|0)-m|0;h=c;f[h>>2]=g;f[h+4>>2]=i;h=f[k>>2]|0;if((h|0)<(g|0))xa(8610,7895,250,8633);if((h|0)<(i|0))xa(8645,7895,251,8633);e=0-h|0;if((g|0)<(e|0))xa(8668,7895,252,8633);if((i|0)<(e|0))xa(8692,7895,253,8633);if((((i|0)>-1?i:0-i|0)+((g|0)>-1?g:0-g|0)|0)>(h|0)){ld(b,c,j);l=0;c=f[c>>2]|0;e=f[j>>2]|0;h=f[k>>2]|0}else{l=1;c=g;e=i}c=(f[d>>2]|0)+c|0;f[a>>2]=c;e=(f[d+4>>2]|0)+e|0;g=a+4|0;f[g>>2]=e;if((h|0)>=(c|0)){if((c|0)<(0-h|0))c=(f[b+4>>2]|0)+c|0}else c=c-(f[b+4>>2]|0)|0;f[a>>2]=c;if((h|0)>=(e|0)){if((e|0)<(0-h|0))e=(f[b+4>>2]|0)+e|0}else e=e-(f[b+4>>2]|0)|0;f[g>>2]=e;if(l){l=c;b=e;l=l+m|0;b=b+m|0;m=a;a=m;f[a>>2]=l;m=m+4|0;f[m>>2]=b;return}ld(b,a,g);l=f[a>>2]|0;b=f[g>>2]|0;l=l+m|0;b=b+m|0;m=a;a=m;f[a>>2]=l;m=m+4|0;f[m>>2]=b;return}function Ac(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;f[h>>2]=b;if((b|0)<=-1)xa(14132,14144,110,14244);i=a+8|0;if(((f[a+12>>2]|0)-(f[i>>2]|0)>>2|0)<=(b|0))dd(i,b+1|0);d=f[(f[c>>2]|0)+56>>2]|0;do if((d|0)<5){e=a+20+(d*12|0)+4|0;g=f[e>>2]|0;if((g|0)==(f[a+20+(d*12|0)+8>>2]|0)){Kd(a+20+(d*12|0)|0,h);break}else{f[g>>2]=b;f[e>>2]=g+4;break}}while(0);g=f[c>>2]|0;e=f[h>>2]|0;f[g+60>>2]=e;i=(f[i>>2]|0)+(e<<2)|0;f[c>>2]=0;e=f[i>>2]|0;f[i>>2]=g;if(!e){u=j;return}i=e+88|0;a=f[i>>2]|0;f[i>>2]=0;if(a|0){b=f[a+8>>2]|0;if(b|0){d=a+12|0;if((f[d>>2]|0)!=(b|0))f[d>>2]=b;Bi(b)}Bi(a)}a=f[e+68>>2]|0;if(a|0){b=e+72|0;d=f[b>>2]|0;if((d|0)!=(a|0))f[b>>2]=d+(~((d+-4-a|0)>>>2)<<2);Bi(a)}i=e+64|0;a=f[i>>2]|0;f[i>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){d=a+4|0;if((f[d>>2]|0)!=(b|0))f[d>>2]=b;Bi(b)}Bi(a)}Bi(e);u=j;return}function Bc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a=a+20|0;if(qb(a,c)|0){h=0;return h|0}g=ab(a,c)|0;e=f[d>>2]|0;f[d>>2]=0;h=f[g>>2]|0;f[g>>2]=e;if(!h){h=1;return h|0}a=f[h+28>>2]|0;if(a|0)do{g=a;a=f[a>>2]|0;xd(g+8|0);Bi(g)}while((a|0)!=0);g=h+20|0;a=f[g>>2]|0;f[g>>2]=0;if(a|0)Bi(a);a=f[h+8>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;e=f[c+20>>2]|0;if(e|0){g=c+24|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}if((b[d+11>>0]|0)<0)Bi(f[d>>2]|0);Bi(c)}while((a|0)!=0);a=f[h>>2]|0;f[h>>2]=0;if(a|0)Bi(a);Bi(h);h=1;return h|0}function Cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;c=pg(64)|0;j=pg(12)|0;h=f[(f[a+4>>2]|0)+80>>2]|0;f[j+4>>2]=0;f[j>>2]=2804;f[j+8>>2]=h;f[k>>2]=j;hf(c,k);j=c;if((b|0)>=0){h=a+8|0;g=a+12|0;c=f[g>>2]|0;a=f[h>>2]|0;d=c-a>>2;do if((d|0)<=(b|0)){e=b+1|0;if(e>>>0>d>>>0){Fc(h,e-d|0);break}if(e>>>0>>0?(i=a+(e<<2)|0,(c|0)!=(i|0)):0)do{e=c+-4|0;f[g>>2]=e;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[g>>2]|0}while((c|0)!=(i|0))}while(0);i=(f[h>>2]|0)+(b<<2)|0;c=f[i>>2]|0;f[i>>2]=j;if(!c)c=1;else{Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=1}}else{Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=0}a=f[k>>2]|0;f[k>>2]=0;if(!a){u=l;return c|0}Ga[f[(f[a>>2]|0)+4>>2]&127](a);u=l;return c|0}function Dc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=c;h=d-i|0;j=a+8|0;e=f[j>>2]|0;g=f[a>>2]|0;k=g;if(h>>>0>(e-g|0)>>>0){if(g){e=a+4|0;if((f[e>>2]|0)!=(k|0))f[e>>2]=k;Bi(k);f[j>>2]=0;f[e>>2]=0;f[a>>2]=0;e=0}if((h|0)<0)Yh(a);g=e<<1;g=e>>>0<1073741823?(g>>>0>>0?h:g):2147483647;if((g|0)<0)Yh(a);e=pg(g)|0;h=a+4|0;f[h>>2]=e;f[a>>2]=e;f[j>>2]=e+g;if((c|0)==(d|0))return;do{b[e>>0]=b[c>>0]|0;c=c+1|0;e=(f[h>>2]|0)+1|0;f[h>>2]=e}while((c|0)!=(d|0));return}else{j=a+4|0;e=(f[j>>2]|0)-g|0;a=h>>>0>e>>>0;e=c+e|0;h=a?e:d;g=h-i|0;if(g|0)Of(k|0,c|0,g|0)|0;c=k+g|0;if(!a){if((f[j>>2]|0)==(c|0))return;f[j>>2]=c;return}if((h|0)==(d|0))return;c=f[j>>2]|0;do{b[c>>0]=b[e>>0]|0;e=e+1|0;c=(f[j>>2]|0)+1|0;f[j>>2]=c}while((e|0)!=(d|0));return}}function Ec(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+80|0;e=j;i=j+64|0;vf(e);h=f[(f[a+8>>2]|0)+56>>2]|0;g=X(Ef(5)|0,d)|0;je(e,h,0,d&255,5,0,g,((g|0)<0)<<31>>31,0,0);d=pg(96)|0;pf(d,e);b[d+84>>0]=1;e=f[d+68>>2]|0;g=d+72|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-4-e|0)>>>2)<<2);ce(d,c)|0;f[i>>2]=d;Pd(a,i);h=f[i>>2]|0;f[i>>2]=0;if(!h){u=j;return}i=h+88|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d)}d=f[h+68>>2]|0;if(d|0){e=h+72|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~((g+-4-d|0)>>>2)<<2);Bi(d)}i=h+64|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}Bi(d)}Bi(h);u=j;return}function Fc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;e=f[l>>2]|0;m=a+4|0;d=f[m>>2]|0;c=d;if(e-d>>2>>>0>=b>>>0){Vd(d|0,0,b<<2|0)|0;f[m>>2]=d+(b<<2);return}g=f[a>>2]|0;d=d-g>>2;j=d+b|0;k=g;if(j>>>0>1073741823)Yh(a);i=e-g|0;h=i>>1;h=i>>2>>>0<536870911?(h>>>0>>0?j:h):1073741823;do if(h)if(h>>>0>1073741823){m=za(8)|0;gh(m,14257);f[m>>2]=3624;qa(m|0,952,75)}else{i=pg(h<<2)|0;break}else i=0;while(0);d=i+(d<<2)|0;Vd(d|0,0,b<<2|0)|0;e=d;b=i+(h<<2)|0;h=i+(j<<2)|0;if((c|0)!=(k|0)){do{c=c+-4|0;j=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=j;d=e+-4|0;e=d}while((c|0)!=(k|0));g=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=e;f[m>>2]=h;f[l>>2]=b;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d)}while((c|0)!=(e|0));if(!g)return;Bi(g);return}function Gc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=2872;b=f[a+68>>2]|0;if(b|0){c=a+72|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+56>>2]|0;if(b|0){c=a+60|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+44>>2]|0;if(b|0){c=a+48|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+32>>2]|0;if(b|0){c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}sd(a+8|0);a=a+4|0;e=f[a>>2]|0;f[a>>2]=0;if(!e)return;d=e+40|0;b=f[d>>2]|0;if(b|0){a=e+44|0;c=f[a>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[a>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0){Md(c);Bi(c)}c=f[a>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Bi(b)}Md(e);Bi(e);return}function Hc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+24|0;k=o+16|0;l=o+8|0;n=o;e=a+4|0;p=f[e>>2]|0;m=f[b>>2]|0;d=f[b+4>>2]|0;i=f[c>>2]|0;g=f[c+4>>2]|0;h=i-m<<3;f[e>>2]=p-d+g+h;e=(f[a>>2]|0)+(p>>>5<<2)|0;c=p&31;b=e;if((d|0)!=(c|0)){f[j>>2]=m;f[j+4>>2]=d;f[k>>2]=i;f[k+4>>2]=g;f[l>>2]=b;f[l+4>>2]=c;_b(n,j,k,l);u=o;return}c=g-d+h|0;h=m;if((c|0)>0){if(!d){d=0;b=m}else{p=32-d|0;b=(c|0)<(p|0)?c:p;p=-1>>>(p-b|0)&-1<>2]=f[e>>2]&~p|f[h>>2]&p;d=b+d|0;h=h+4|0;c=c-b|0;e=e+(d>>>5<<2)|0;d=d&31;b=h}g=(c|0)/32|0;Of(e|0,b|0,g<<2|0)|0;a=c-(g<<5)|0;c=e+(g<<2)|0;b=c;if((a|0)>0){d=-1>>>(32-a|0);f[c>>2]=f[c>>2]&~d|f[h+(g<<2)>>2]&d;d=a}}f[n>>2]=b;f[n+4>>2]=d;u=o;return}function Ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+4|0;c=f[a>>2]|0;e=(f[k>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)Yh(a);l=a+8|0;j=(f[l>>2]|0)-c|0;c=j>>1;c=j>>2>>>0<536870911?(c>>>0>>0?d:c):1073741823;do if(c)if(c>>>0>1073741823){l=za(8)|0;gh(l,14257);f[l>>2]=3624;qa(l|0,952,75)}else{d=pg(c<<2)|0;break}else d=0;while(0);g=d+(e<<2)|0;e=g;j=d+(c<<2)|0;i=f[b>>2]|0;f[b>>2]=0;f[g>>2]=i;i=g+4|0;h=f[a>>2]|0;c=f[k>>2]|0;if((c|0)==(h|0)){d=e;b=h;c=h}else{d=g;do{c=c+-4|0;g=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=g;d=e+-4|0;e=d}while((c|0)!=(h|0));d=e;b=f[a>>2]|0;c=f[k>>2]|0}f[a>>2]=d;f[k>>2]=i;f[l>>2]=j;e=b;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){Md(d);Bi(d)}}while((c|0)!=(e|0));if(!b)return;Bi(b);return}function Jc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0;do if(c){if((j[a+38>>1]|0)>=514){if(Qd(d,a)|0)break;else c=0;return c|0}l=a+8|0;i=f[l>>2]|0;l=f[l+4>>2]|0;c=a+16|0;g=c;e=f[g>>2]|0;g=Wg(e|0,f[g+4>>2]|0,8,0)|0;k=I;if((l|0)<(k|0)|(l|0)==(k|0)&i>>>0>>0){l=0;return l|0}else{l=(f[a>>2]|0)+e|0;g=l;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;l=l+4|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;k=d;i=k;b[i>>0]=g;b[i+1>>0]=g>>8;b[i+2>>0]=g>>16;b[i+3>>0]=g>>24;k=k+4|0;b[k>>0]=l;b[k+1>>0]=l>>8;b[k+2>>0]=l>>16;b[k+3>>0]=l>>24;k=c;k=Wg(f[k>>2]|0,f[k+4>>2]|0,8,0)|0;l=c;f[l>>2]=k;f[l+4>>2]=I;break}}while(0);b[a+36>>0]=1;l=a+16|0;i=f[l>>2]|0;k=(f[a>>2]|0)+i|0;g=a+8|0;l=Jg(f[g>>2]|0,f[g+4>>2]|0,i|0,f[l+4>>2]|0)|0;f[a+32>>2]=0;f[a+24>>2]=k;f[a+28>>2]=k+l;l=1;return l|0}function Kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;e=j+8|0;g=j+4|0;h=j;if(!c){i=0;u=j;return i|0}f[a>>2]=b;f[e>>2]=0;ke(e,b)|0;a:do if(!(f[e>>2]|0))i=8;else{d=0;while(1){ke(g,f[a>>2]|0)|0;b=pg(44)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[b+16>>2]=$(1.0);k=b+20|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[b+36>>2]=$(1.0);f[b+40>>2]=f[g>>2];if(!(xb(a,b)|0))break;f[h>>2]=b;xe(c,h)|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0){Md(b);Bi(b)}d=d+1|0;if(d>>>0>=(f[e>>2]|0)>>>0){i=8;break a}}Md(b);Bi(b);b=0}while(0);if((i|0)==8)b=xb(a,c)|0;k=b;u=j;return k|0}function Lc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=a+4|0;d=f[m>>2]|0;do if(d|0){l=b[c+11>>0]|0;k=l<<24>>24<0;l=k?f[c+4>>2]|0:l&255;k=k?f[c>>2]|0:c;a=m;a:while(1){c=d;while(1){e=c+16|0;h=b[e+11>>0]|0;g=h<<24>>24<0;h=g?f[c+20>>2]|0:h&255;d=l>>>0>>0?l:h;if((d|0)!=0?(i=jf(g?f[e>>2]|0:e,k,d)|0,(i|0)!=0):0){if((i|0)>=0)break}else j=6;if((j|0)==6?(j=0,h>>>0>=l>>>0):0)break;c=f[c+4>>2]|0;if(!c)break a}d=f[c>>2]|0;if(!d){a=c;break}else a=c}if((a|0)!=(m|0)){d=a+16|0;g=b[d+11>>0]|0;e=g<<24>>24<0;g=e?f[a+20>>2]|0:g&255;c=g>>>0>>0?g:l;if(c|0?(n=jf(k,e?f[d>>2]|0:d,c)|0,n|0):0){if((n|0)<0)break;return a|0}if(l>>>0>=g>>>0){n=a;return n|0}}}while(0);n=m;return n|0}function Mc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return ta(a|0,c|0,d|0)|0;h=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return h|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}d=g&-4|0;e=d-64|0;while((a|0)<=(e|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(d|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{d=g-4|0;while((a|0)<(d|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return h|0}function Nc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{i=f[d+4>>2]|0;if((c|0)<=-1)xa(13373,14023,59,14122);g=f[i+8>>2]|0;if(((f[i+12>>2]|0)-g>>2|0)<=(c|0))xa(13969,14023,60,14122);g=f[g+(c<<2)>>2]|0;do if((Ja[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){gc(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);d=pg(44)|0;f[d>>2]=1388;f[d+4>>2]=g;g=d+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[g+16>>2]=f[e+16>>2];f[g+20>>2]=f[e+20>>2];ue(d+32|0,e+24|0);f[d>>2]=1444;g=d}f[a>>2]=g;return}function Oc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+60|0;c=f[i>>2]|0;if(!c){b=0;return b|0}f[c+4>>2]=a+48;if(!(Ja[f[(f[c>>2]|0)+12>>2]&127](c)|0)){b=0;return b|0}d=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;a:do if((d|0)>0){c=0;while(1){e=(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)+4|0;e=f[e>>2]|0;g=Na[f[(f[a>>2]|0)+20>>2]&127](a,c)|0;if((g|0)<=-1){d=7;break}h=f[e+8>>2]|0;if(((f[e+12>>2]|0)-h>>2|0)<=(g|0)){d=9;break}e=f[i>>2]|0;c=c+1|0;if(!(Na[f[(f[e>>2]|0)+8>>2]&127](e,f[h+(g<<2)>>2]|0)|0)){c=0;d=14;break}if((c|0)>=(d|0))break a}if((d|0)==7)xa(13373,14023,67,14122);else if((d|0)==9)xa(13969,14023,68,14122);else if((d|0)==14)return c|0}while(0);if(!(Na[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){b=0;return b|0}if(!(Na[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){b=0;return b|0}b=Ja[f[(f[a>>2]|0)+44>>2]&127](a)|0;return b|0}function Pc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;return}e=c+1|0;if(!d){c=((e|0)%3|0|0)==0?c+-2|0:e;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=5}else g=5}else g=5;if((g|0)==5)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;b[i>>0]=0;return}function Qc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+8|0;c=f[j>>2]|0;l=a+16|0;if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}d=f[l>>2]|0;if(!d){l=f[l>>2]|0;return l|0}a=d+84|0;if(!(b[a>>0]|0)){l=f[l>>2]|0;return l|0}i=(f[c+72>>2]|0)-(f[c+68>>2]|0)>>2;b[a>>0]=0;h=d+68|0;a=d+72|0;g=f[a>>2]|0;e=f[h>>2]|0;d=g-e>>2;if(i>>>0<=d>>>0){if(i>>>0>>0?(k=e+(i<<2)|0,(g|0)!=(k|0)):0)f[a>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else{_c(h,i-d|0,1256);c=f[j>>2]|0}if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}k=f[c+68>>2]|0;g=k;k=(f[c+72>>2]|0)-k|0;a=k>>2;if((k|0)<=0){l=f[l>>2]|0;return l|0}e=f[l>>2]|0;d=(b[e+84>>0]|0)==0;e=e+68|0;c=0;while(1){if(!d){c=14;break}f[(f[e>>2]|0)+(c<<2)>>2]=f[g+(c<<2)>>2];c=c+1|0;if((c|0)>=(a|0)){c=15;break}}if((c|0)==14)xa(3950,3969,89,4071);else if((c|0)==15){l=f[l>>2]|0;return l|0}return 0}function Rc(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(xh(a,f[c+8>>2]|0,g)|0)){h=a+8|0;if(!(xh(a,f[c>>2]|0,g)|0)){j=f[h>>2]|0;Fa[f[(f[j>>2]|0)+24>>2]&3](j,c,d,e,g);break}a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(i=c+20|0,(f[i>>2]|0)!=(d|0)):0){f[a>>2]=e;e=c+44|0;if((f[e>>2]|0)==4)break;a=c+52|0;b[a>>0]=0;k=c+53|0;b[k>>0]=0;h=f[h>>2]|0;Ma[f[(f[h>>2]|0)+20>>2]&3](h,c,d,d,1,g);if(b[k>>0]|0)if(!(b[a>>0]|0)){a=3;j=11}else a=3;else{a=4;j=11}if((j|0)==11){f[i>>2]=d;k=c+40|0;f[k>>2]=(f[k>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1}f[e>>2]=a;break}if((e|0)==1)f[a>>2]=1}else cg(0,c,d,e);while(0);return}function Sc(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(xh(a,f[c+8>>2]|0,h)|0)Yd(0,c,d,e,g);else{p=c+52|0;i=b[p>>0]|0;j=c+53|0;k=b[j>>0]|0;o=f[a+12>>2]|0;l=a+16+(o<<3)|0;b[p>>0]=0;b[j>>0]=0;ef(a+16|0,c,d,e,g,h);a:do if((o|0)>1){m=c+24|0;n=c+54|0;o=a+8|0;a=a+24|0;do{if(b[n>>0]|0)break a;if(!(b[p>>0]|0)){if(b[j>>0]|0?(f[o>>2]&1|0)==0:0)break a}else{if((f[m>>2]|0)==1)break a;if(!(f[o>>2]&2))break a}b[p>>0]=0;b[j>>0]=0;ef(a,c,d,e,g,h);a=a+8|0}while(a>>>0>>0)}while(0);b[p>>0]=i;b[j>>0]=k}return}function Tc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{i=f[d+4>>2]|0;if((c|0)<=-1)xa(13373,14023,59,14122);g=f[i+8>>2]|0;if(((f[i+12>>2]|0)-g>>2|0)<=(c|0))xa(13969,14023,60,14122);g=f[g+(c<<2)>>2]|0;do if((Ja[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){Wb(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);d=pg(24)|0;f[d+4>>2]=g;g=d+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[d>>2]=2288;g=d}f[a>>2]=g;return}function Uc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+8|0;e=f[i>>2]|0;j=a+4|0;c=f[j>>2]|0;if(e-c>>3>>>0>=b>>>0){do{i=c;f[i>>2]=0;f[i+4>>2]=0;c=(f[j>>2]|0)+8|0;f[j>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;g=c-d>>3;c=g+b|0;if(c>>>0>536870911)Yh(a);e=e-d|0;h=e>>2;c=e>>3>>>0<268435455?(h>>>0>>0?c:h):536870911;do if(c)if(c>>>0>536870911){j=za(8)|0;gh(j,14257);f[j>>2]=3624;qa(j|0,952,75)}else{d=pg(c<<3)|0;break}else d=0;while(0);h=d+(g<<3)|0;g=d+(c<<3)|0;c=h;e=h;do{d=c;f[d>>2]=0;f[d+4>>2]=0;c=e+8|0;e=c;b=b+-1|0}while((b|0)!=0);b=f[a>>2]|0;d=(f[j>>2]|0)-b|0;c=h+(0-(d>>3)<<3)|0;if((d|0)>0)Mc(c|0,b|0,d|0)|0;f[a>>2]=c;f[j>>2]=e;f[i>>2]=g;if(!b)return;Bi(b);return}function Vc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h;i=f[(f[a>>2]|0)+8>>2]|0;e=a+8|0;g=a+12|0;d=(f[g>>2]|0)-(f[e>>2]|0)>>2;j=f[b>>2]|0;f[b>>2]=0;f[c>>2]=j;Ka[i&15](a,d,c);d=f[c>>2]|0;f[c>>2]=0;if(!d){i=f[g>>2]|0;j=f[e>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}j=d+88|0;a=f[j>>2]|0;f[j>>2]=0;if(a|0){b=f[a+8>>2]|0;if(b|0){c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Bi(b)}Bi(a)}a=f[d+68>>2]|0;if(a|0){b=d+72|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);Bi(a)}j=d+64|0;a=f[j>>2]|0;f[j>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Bi(b)}Bi(a)}Bi(d);i=f[g>>2]|0;j=f[e>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}function Wc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;if((Ja[f[(f[b>>2]|0)+20>>2]&127](b)|0)<=0){b=1;return b|0}i=a+4|0;d=0;while(1){e=f[(f[i>>2]|0)+4>>2]|0;e=Kf(e,Na[f[(f[b>>2]|0)+24>>2]&127](b,d)|0)|0;if((e|0)==-1){a=0;c=12;break}a=f[i>>2]|0;g=f[(f[b>>2]|0)+28>>2]|0;if(((h[a+36>>0]|0)<<8&65535)<512){a=f[a+4>>2]|0;if((e|0)<=-1){c=6;break}c=f[a+8>>2]|0;if(((f[a+12>>2]|0)-c>>2|0)<=(e|0)){c=8;break}if(!(Na[g&127](b,f[c+(e<<2)>>2]|0)|0)){a=0;c=12;break}}else{e=df(a,e)|0;if(!(Na[g&127](b,e)|0)){a=0;c=12;break}}d=d+1|0;if((d|0)>=(Ja[f[(f[b>>2]|0)+20>>2]&127](b)|0)){a=1;c=12;break}}if((c|0)==6)xa(13373,14023,67,14122);else if((c|0)==8)xa(13969,14023,68,14122);else if((c|0)==12)return a|0;return 0}function Xc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{i=f[d+4>>2]|0;if((c|0)<=-1)xa(13373,14023,59,14122);g=f[i+8>>2]|0;if(((f[i+12>>2]|0)-g>>2|0)<=(c|0))xa(13969,14023,60,14122);g=f[g+(c<<2)>>2]|0;do if((Ja[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){Yb(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);d=pg(24)|0;f[d+4>>2]=g;g=d+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[d>>2]=2512;g=d}f[a>>2]=g;return}function Yc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=1048576){if((h|0)!=1048576?(e=i+4194304|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,1048576-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>1048576){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==1048576;return k|0} -function Zc(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+64|0;n=p;m=f[a>>2]|0;o=a+(f[m+-8>>2]|0)|0;m=f[m+-4>>2]|0;f[n>>2]=e;f[n+4>>2]=a;f[n+8>>2]=c;f[n+12>>2]=g;a=n+16|0;c=n+20|0;g=n+24|0;h=n+28|0;i=n+32|0;j=n+40|0;k=a;l=k+36|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));d[a+36>>1]=0;b[a+38>>0]=0;a:do if(xh(m,e,0)|0){f[n+48>>2]=1;Ma[f[(f[m>>2]|0)+20>>2]&3](m,n,o,o,1,0);a=(f[g>>2]|0)==1?o:0}else{Fa[f[(f[m>>2]|0)+24>>2]&3](m,n,o,1,0);switch(f[n+36>>2]|0){case 0:{a=(f[j>>2]|0)==1&(f[h>>2]|0)==1&(f[i>>2]|0)==1?f[c>>2]|0:0;break a}case 1:break;default:{a=0;break a}}if((f[g>>2]|0)!=1?!((f[j>>2]|0)==0&(f[h>>2]|0)==1&(f[i>>2]|0)==1):0){a=0;break}a=f[a>>2]|0}while(0);u=p;return a|0}function _c(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;e=f[l>>2]|0;m=a+4|0;d=f[m>>2]|0;g=d;if(e-d>>2>>>0>=b>>>0){d=b;e=g;while(1){f[e>>2]=f[c>>2];d=d+-1|0;if(!d)break;else e=e+4|0}f[m>>2]=g+(b<<2);return}k=f[a>>2]|0;j=d-k|0;i=j>>2;d=i+b|0;if(d>>>0>1073741823)Yh(a);g=e-k|0;h=g>>1;d=g>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823;do if(d)if(d>>>0>1073741823){m=za(8)|0;gh(m,14257);f[m>>2]=3624;qa(m|0,952,75)}else{e=pg(d<<2)|0;break}else e=0;while(0);h=e+(i<<2)|0;g=e+(d<<2)|0;d=b;e=h;while(1){f[e>>2]=f[c>>2];d=d+-1|0;if(!d)break;else e=e+4|0}d=h+(0-i<<2)|0;if((j|0)>0)Mc(d|0,k|0,j|0)|0;f[a>>2]=d;f[m>>2]=h+(b<<2);f[l>>2]=g;if(!k)return;Bi(k);return}function $c(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=524288){if((h|0)!=524288?(e=i+2097152|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,524288-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>524288){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==524288;return k|0}function ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=262144){if((h|0)!=262144?(e=i+1048576|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,262144-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>262144){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==262144;return k|0}function bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=65536){if((h|0)!=65536?(e=i+262144|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,65536-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>65536){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==65536;return k|0}function cd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=32768){if((h|0)!=32768?(e=i+131072|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,32768-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>32768){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==32768;return k|0}function dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;d=f[a>>2]|0;e=c-d>>2;if(e>>>0>>0){tc(a,b-e|0);return}if(e>>>0<=b>>>0)return;e=d+(b<<2)|0;if((c|0)==(e|0))return;do{b=c+-4|0;f[g>>2]=b;d=f[b>>2]|0;f[b>>2]=0;if(d|0){b=d+88|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){a=f[c+8>>2]|0;if(a|0){b=c+12|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Bi(a)}Bi(c)}c=f[d+68>>2]|0;if(c|0){a=d+72|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c)}b=d+64|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){a=f[c>>2]|0;if(a|0){b=c+4|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Bi(a)}Bi(c)}Bi(d)}c=f[g>>2]|0}while((c|0)!=(e|0));return}function ed(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=8192){if((h|0)!=8192?(e=i+32768|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,8192-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>8192){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==8192;return k|0}function fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=4096){if((h|0)!=4096?(e=i+16384|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Cd(a,4096-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Uc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>4096){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==4096;return k|0}function gd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=f[c+88>>2]|0;if(!d){a=0;return a|0}if((f[d>>2]|0)!=1){a=0;return a|0}n=d+8|0;j=f[n>>2]|0;f[a+4>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;o=a+8|0;d=c+24|0;c=b[d>>0]|0;e=c<<24>>24;g=a+12|0;l=f[g>>2]|0;k=f[o>>2]|0;i=l-k>>2;if(e>>>0<=i>>>0){if(e>>>0>>0?(m=k+(e<<2)|0,(l|0)!=(m|0)):0)f[g>>2]=l+(~((l+-4-m|0)>>>2)<<2)}else{Cd(o,e-i|0);c=b[d>>0]|0;j=f[n>>2]|0}d=j+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;if(c<<24>>24>0){i=f[o>>2]|0;g=c<<24>>24;c=4;e=0;do{f[i+(e<<2)>>2]=d;c=c+4|0;e=e+1|0;d=j+c|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24}while((e|0)<(g|0))}f[a+20>>2]=d;a=1;return a|0}function hd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;l=b+8|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=b+16|0;d=m;c=f[d>>2]|0;d=f[d+4>>2]|0;e=Wg(c|0,d|0,4,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){a=0;return a|0}i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;n=m;f[n>>2]=e;f[n+4>>2]=g;do if((j[b+38>>1]|0)<514){b=Wg(c|0,d|0,8,0)|0;c=I;if((l|0)<(c|0)|(l|0)==(c|0)&k>>>0>>0){n=0;return n|0}else{n=m;f[n>>2]=b;f[n+4>>2]=c;break}}while(0);if(((i|0)%2|0|0)!=1)xa(8828,8861,68,9029);b=(_(i|0)|0)^31;c=b+1|0;if(!b)xa(7884,7895,60,8018);if(c>>>0>=31)xa(8038,7895,61,8018);f[a>>2]=c;n=2<>2]=n+-1;n=n+-2|0;f[a+8>>2]=n;f[a+12>>2]=(n|0)/2|0;n=1;return n|0}function id(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a=f[a+4>>2]|0;if(!a){m=0;return m|0}k=b[c+11>>0]|0;j=k<<24>>24<0;k=j?f[c+4>>2]|0:k&255;j=j?f[c>>2]|0:c;while(1){e=a+16|0;d=b[e+11>>0]|0;g=d<<24>>24<0;d=g?f[a+20>>2]|0:d&255;h=d>>>0>>0;c=h?d:k;if((c|0)!=0?(l=jf(j,g?f[e>>2]|0:e,c)|0,(l|0)!=0):0)if((l|0)<0)i=7;else i=8;else if(k>>>0>>0)i=7;else i=8;if((i|0)!=7)if((i|0)==8){i=0;c=k>>>0>>0?k:d;if((c|0)!=0?(m=jf(g?f[e>>2]|0:e,j,c)|0,(m|0)!=0):0){if((m|0)>=0){a=1;i=14;break}}else i=10;if((i|0)==10?(0,!h):0){a=1;i=14;break}a=a+4|0}a=f[a>>2]|0;if(!a){a=0;i=14;break}}if((i|0)==14)return a|0;return 0}function jd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;i=k;j=f[c+4>>2]|0;if(!j)xa(9274,9525,70,9697);g=f[c+8>>2]|0;if(!g)xa(9274,9525,70,9697);d=f[d>>2]|0;if((d|0)<0)e=-1073741824;else e=f[(f[f[c+16>>2]>>2]|0)+(d<<2)>>2]|0;d=f[c+20>>2]|0;c=f[d>>2]|0;if((f[d+4>>2]|0)-c>>2>>>0<=e>>>0)Yh(d);d=f[g+(f[c+(e<<2)>>2]<<2)>>2]|0;if(!(b[j+84>>0]|0))d=f[(f[j+68>>2]|0)+(d<<2)>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[i>>2]=d;g=b[j+24>>0]|0;f[h>>2]=f[i>>2];Ua(j,h,g,a)|0;u=k;return}function kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;d=l;c=f[d>>2]|0;d=f[d+4>>2]|0;g=Wg(c|0,d|0,4,0)|0;e=I;if((k|0)<(e|0)|(k|0)==(e|0)&j>>>0>>0){a=0;return a|0}b=f[b>>2]|0;i=b+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;m=l;f[m>>2]=g;f[m+4>>2]=e;c=Wg(c|0,d|0,8,0)|0;d=I;if((k|0)<(d|0)|(k|0)==(d|0)&j>>>0>>0){m=0;return m|0}b=b+g|0;b=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;m=l;f[m>>2]=c;f[m+4>>2]=d;if((i|0)>(b|0)){m=0;return m|0}f[a+12>>2]=i;f[a+16>>2]=b;m=b+(1-i)|0;f[a+20>>2]=m;b=(m|0)/2|0;c=a+24|0;f[c>>2]=b;f[a+28>>2]=0-b;if(m&1|0){m=1;return m|0}f[c>>2]=b+-1;m=1;return m|0}function ld(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[b>>2]|0;e=f[a+12>>2]|0;if((i|0)>(e|0))xa(8716,7895,259,8740);d=f[c>>2]|0;if((d|0)>(e|0))xa(8754,7895,260,8740);a=0-e|0;if((i|0)<(a|0))xa(8778,7895,261,8740);if((d|0)<(a|0))xa(8803,7895,262,8740);if((d|i|0)>-1){g=1;a=1}else{a=(i|0)<1&(d|0)<1;g=a?-1:(i|0)>0?1:-1;a=a?-1:(d|0)>0?1:-1}h=X(e,g)|0;e=X(e,a)|0;f[b>>2]=(i<<1)-h;d=(f[c>>2]<<1)-e|0;f[c>>2]=d;i=(X(g,a)|0)>-1;a=f[b>>2]|0;if(i){f[b>>2]=0-d;i=0-a|0;f[c>>2]=i;i=f[b>>2]|0;i=i+h|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}else{f[b>>2]=d;i=a;f[c>>2]=i;i=f[b>>2]|0;i=i+h|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}}function md(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;e=h+8|0;g=h;switch(d|0){case 2:{i=f[b+12>>2]|0;d=f[b+4>>2]|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Xc(g,c,i,d,e);f[a>>2]=f[g>>2];u=h;return}case 3:{d=f[b+12>>2]|0;i=f[b+4>>2]|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Tc(g,c,d,i,e);f[a>>2]=f[g>>2];u=h;return}default:{f[a>>2]=0;u=h;return}}}function nd(a,b){a=a|0;b=b|0;var c=0,d=0,e=Ca;if((b|0)!=1){if(b+-1&b)b=Qa(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){sb(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Qa(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;sb(a,b);return}function od(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+8|0;e=f[l>>2]|0;g=b[e+24>>0]|0;k=g<<24>>24;m=k<<1;n=xi(k>>>0>2147483647?-1:k<<1)|0;j=f[a+16>>2]|0;j=(f[f[j>>2]>>2]|0)+(f[j+48>>2]|0)|0;if(!c){yi(n);return}if(g<<24>>24>0){e=0;g=0;h=0;while(1){a=0;i=h;while(1){d[n+(a<<1)>>1]=f[j+(i<<2)>>2];a=a+1|0;if((a|0)==(k|0))break;else i=i+1|0}Mc((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+g|0,n|0,m|0)|0;e=e+1|0;if((e|0)==(c|0))break;else{g=g+m|0;h=k+h|0}}yi(n);return}else{Mc(f[f[e+64>>2]>>2]|0,n|0,m|0)|0;if((c|0)==1){yi(n);return}else{a=0;e=1}do{a=a+m|0;Mc((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+a|0,n|0,m|0)|0;e=e+1|0}while((e|0)!=(c|0));yi(n);return}}function pd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;d=f[k>>2]|0;e=b[d+24>>0]|0;j=e<<24>>24;l=j<<2;m=xi(j>>>0>1073741823?-1:j<<2)|0;i=f[a+16>>2]|0;i=(f[f[i>>2]>>2]|0)+(f[i+48>>2]|0)|0;if(!c){yi(m);return}if(e<<24>>24>0){d=0;e=0;g=0;while(1){a=0;h=g;while(1){f[m+(a<<2)>>2]=f[i+(h<<2)>>2];a=a+1|0;if((a|0)==(j|0))break;else h=h+1|0}Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,m|0,l|0)|0;d=d+1|0;if((d|0)==(c|0))break;else{e=e+l|0;g=j+g|0}}yi(m);return}else{Mc(f[f[d+64>>2]>>2]|0,m|0,l|0)|0;if((c|0)==1){yi(m);return}else{a=0;d=1}do{a=a+l|0;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+a|0,m|0,l|0)|0;d=d+1|0}while((d|0)!=(c|0));yi(m);return}}function qd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=1268;e=a+60|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Ga[f[(f[b>>2]|0)+4>>2]&127](b);d=f[a+48>>2]|0;if(d|0){b=a+52|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d)}d=a+36|0;b=f[d>>2]|0;if(b|0){e=a+40|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Bi(b)}f[a>>2]=1164;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d);return}function rd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{d=b+-4|0;f[h>>2]=d;e=f[d>>2]|0;f[d>>2]=0;if(e|0){d=e+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){d=b+12|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Bi(c)}Bi(b)}b=f[e+68>>2]|0;if(b|0){c=e+72|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}d=e+64|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b>>2]|0;if(c|0){d=b+4|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Bi(c)}Bi(b)}Bi(e)}b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;Bi(b);return}function sd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{e=c+-4|0;f[h>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+88|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(c)}c=f[g+68>>2]|0;if(c|0){d=g+72|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Bi(c)}e=g+64|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Bi(d)}Bi(c)}Bi(g)}c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Bi(b);return}function td(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;d=l;c=f[d>>2]|0;d=f[d+4>>2]|0;e=Wg(c|0,d|0,4,0)|0;g=I;if((k|0)<(g|0)|(k|0)==(g|0)&j>>>0>>0)return 0;i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;b=l;f[b>>2]=e;f[b+4>>2]=g;b=Wg(c|0,d|0,8,0)|0;c=I;if((k|0)<(c|0)|(k|0)==(c|0)&j>>>0>>0)return 0;f[l>>2]=b;f[l+4>>2]=c;if(((i|0)%2|0|0)!=1)xa(8828,8861,68,9029);b=(_(i|0)|0)^31;c=b+1|0;if(!b)xa(7884,7895,60,8018);if(c>>>0<31){f[a>>2]=c;l=2<>2]=l+-1;l=l+-2|0;f[a+8>>2]=l;f[a+12>>2]=(l|0)/2|0;return (b+-1|0)>>>0<29|0}else xa(8038,7895,61,8018);return 0}function ud(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=Ca;n=u;u=u+32|0;i=n+16|0;k=n;l=a+8|0;m=b[(f[l>>2]|0)+24>>0]<<2;j=f[a+16>>2]|0;j=(f[f[j>>2]>>2]|0)+(f[j+48>>2]|0)|0;a=f[a+24>>2]|0;if((a|0)<=1)xa(7884,7895,60,8018);if((a|0)>=31)xa(8038,7895,61,8018);f[k>>2]=a;d=1<>2]=d+-1;d=d+-2|0;h=k+8|0;f[h>>2]=d;f[k+12>>2]=(d|0)/2|0;if(!c){u=n;return 1}e=0;a=0;g=0;while(1){o=$($(1.0)/$(d|0));sc(k,$($(f[j+(g<<2)>>2]|0)*o),$($(f[j+((g|1)<<2)>>2]|0)*o),i);Mc((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+e|0,i|0,m|0)|0;a=a+1|0;if((a|0)==(c|0))break;e=e+m|0;g=g+2|0;d=f[h>>2]|0}u=n;return 1}function vd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+16|0;j=m+8|0;k=m;l=f[b>>2]|0;h=f[a+12>>2]<<1;if((l|0)>(h|0))xa(8135,8180,69,8366);e=f[b+4>>2]|0;if((e|0)>(h|0))xa(8387,8180,70,8366);g=f[c>>2]|0;if((g|0)>(h|0))xa(8432,8180,71,8366);b=f[c+4>>2]|0;if((b|0)>(h|0))xa(8477,8180,72,8366);if((l|0)<=-1)xa(8522,8180,74,8366);if((e|0)<=-1)xa(8544,8180,75,8366);if((g|0)<=-1)xa(8566,8180,76,8366);if((b|0)>-1){f[j>>2]=l;f[j+4>>2]=e;f[k>>2]=g;f[k+4>>2]=b;$b(i,a,j,k);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];u=m;return}else xa(8588,8180,77,8366)}function wd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+16|0;j=m+8|0;k=m;l=f[b>>2]|0;h=f[a+12>>2]<<1;if((l|0)>(h|0))xa(8135,11613,65,8366);e=f[b+4>>2]|0;if((e|0)>(h|0))xa(8387,11613,66,8366);g=f[c>>2]|0;if((g|0)>(h|0))xa(8432,11613,67,8366);b=f[c+4>>2]|0;if((b|0)>(h|0))xa(8477,11613,68,8366);if((l|0)<=-1)xa(8522,11613,70,8366);if((e|0)<=-1)xa(8544,11613,71,8366);if((g|0)<=-1)xa(8566,11613,72,8366);if((b|0)>-1){f[i>>2]=g;f[i+4>>2]=b;f[k>>2]=l;f[k+4>>2]=e;zc(j,a,k,i);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];u=m;return}else xa(8588,11613,73,8366)}function xd(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=a+12|0;i=f[h>>2]|0;f[h>>2]=0;if(i|0){c=f[i+28>>2]|0;if(c|0)do{h=c;c=f[c>>2]|0;xd(h+8|0);Bi(h)}while((c|0)!=0);h=i+20|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0)Bi(c);c=f[i+8>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;g=f[d+20>>2]|0;if(g|0){h=d+24|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;Bi(g)}if((b[e+11>>0]|0)<0)Bi(f[e>>2]|0);Bi(d)}while((c|0)!=0);c=f[i>>2]|0;f[i>>2]=0;if(c|0)Bi(c);Bi(i)}if((b[a+11>>0]|0)>=0)return;Bi(f[a>>2]|0);return}function yd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;i=pg(32)|0;f[a>>2]=i;f[a+4>>2]=c+8;k=a+8|0;b[k>>0]=0;j=i+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;j=i+20|0;h=e+12|0;f[j>>2]=0;f[i+24>>2]=0;f[i+28>>2]=0;i=e+16|0;e=f[i>>2]|0;c=f[h>>2]|0;g=e-c|0;if(!g){g=c;c=0}else{Gd(j,g);g=f[h>>2]|0;e=f[i>>2]|0;c=f[j>>2]|0}Mc(c|0,g|0,e-g|0)|0;b[k>>0]=1;a=f[a>>2]|0;f[a+4>>2]=d;f[a>>2]=0;return}function zd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;g=j+16|0;c=j+8|0;d=j;h=a+8|0;if(f[h>>2]<<5>>>0>=b>>>0){u=j;return}f[g>>2]=0;i=g+4|0;f[i>>2]=0;e=g+8|0;f[e>>2]=0;if((b|0)<0)Yh(g);l=((b+-1|0)>>>5)+1|0;k=pg(l<<2)|0;f[g>>2]=k;f[i>>2]=0;f[e>>2]=l;l=f[a>>2]|0;f[c>>2]=l;f[c+4>>2]=0;k=a+4|0;b=f[k>>2]|0;f[d>>2]=l+(b>>>5<<2);f[d+4>>2]=b&31;Hc(g,c,d);b=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=b;g=f[k>>2]|0;f[k>>2]=f[i>>2];f[i>>2]=g;i=f[h>>2]|0;f[h>>2]=f[e>>2];f[e>>2]=i;if(b|0)Bi(b);u=j;return}function Ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=(f[b+4>>2]|0)-(f[b>>2]|0)|0;l=j>>2;k=a+8|0;d=f[(f[k>>2]|0)+40>>2]|0;m=xi((d|0)>-1?d:-1)|0;e=c+8|0;if((j|0)<=0){c=1;yi(m);return c|0}g=c+16|0;b=0;a=0;while(1){o=e;n=f[o>>2]|0;o=f[o+4>>2]|0;i=g;h=f[i>>2]|0;i=Wg(h|0,f[i+4>>2]|0,d|0,0)|0;j=I;if((o|0)<(j|0)|(o|0)==(j|0)&n>>>0>>0){b=0;a=5;break}Mc(m|0,(f[c>>2]|0)+h|0,d|0)|0;o=g;f[o>>2]=i;f[o+4>>2]=j;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+b|0,m|0,d|0)|0;a=a+1|0;if((a|0)>=(l|0)){b=1;a=5;break}else b=b+d|0}if((a|0)==5){yi(m);return b|0}return 0}function Bd(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o;if((-18-c|0)>>>0>>0)Yh(a);if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){k=d+c|0;l=c<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=pg(k)|0;if(g|0)Zg(l,m,g)|0;if(i|0)Zg(l+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)Zg(l+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)Bi(m);f[a>>2]=l;f[a+8>>2]=k|-2147483648;i=d+i|0;f[a+4>>2]=i;b[n>>0]=0;Gh(l+i|0,n);u=o;return}function Cd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;d=f[k>>2]|0;l=a+4|0;c=f[l>>2]|0;if(d-c>>2>>>0>=b>>>0){Vd(c|0,0,b<<2|0)|0;f[l>>2]=c+(b<<2);return}j=f[a>>2]|0;i=c-j|0;h=i>>2;c=h+b|0;if(c>>>0>1073741823)Yh(a);g=d-j|0;d=g>>1;d=g>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(d)if(d>>>0>1073741823){l=za(8)|0;gh(l,14257);f[l>>2]=3624;qa(l|0,952,75)}else{g=pg(d<<2)|0;break}else g=0;while(0);e=g+(h<<2)|0;Vd(e|0,0,b<<2|0)|0;c=e+(0-h<<2)|0;if((i|0)>0)Mc(c|0,j|0,i|0)|0;f[a>>2]=c;f[l>>2]=e+(b<<2);f[k>>2]=g+(d<<2);if(!j)return;Bi(j);return}function Dd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;i=j;do if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)>511){k=d+8|0;l=f[k+4>>2]|0;c=d+16|0;g=c;e=f[g>>2]|0;g=f[g+4>>2]|0;if((l|0)>(g|0)|((l|0)==(g|0)?(f[k>>2]|0)>>>0>e>>>0:0)){l=b[(f[d>>2]|0)+e>>0]|0;k=Wg(e|0,g|0,1,0)|0;f[c>>2]=k;f[c+4>>2]=I;c=l&255;f[a+24>>2]=c;break}else{l=0;u=j;return l|0}}else c=f[a+24>>2]|0;while(0);f[i>>2]=1108;f[i+4>>2]=-1;zh(i,c);l=Re(i,f[a+16>>2]|0)|0;u=j;return l|0}function Ed(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;c=g;if((h[(f[a+4>>2]|0)+36>>0]<<8&65535)>511?!(Ja[f[(f[a>>2]|0)+52>>2]&127](a)|0):0){e=0;u=g;return e|0}f[c>>2]=1136;f[c+4>>2]=-1;e=c+8|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;rf(c,f[a+24>>2]|0,f[a+28>>2]|0,b[(f[a+8>>2]|0)+24>>0]|0,$(n[a+32>>2]));a=Re(c,f[a+16>>2]|0)|0;f[c>>2]=1136;e=f[e>>2]|0;if(e|0){c=c+12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Bi(e)}e=a;u=g;return e|0}function Fd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+48|0;e=h+16|0;i=h;Bh(e);f[e+16>>2]=0;f[e+20>>2]=0;g=e+16|0;f[e+12>>2]=g;ie(i,a,e,c,d);d=a+44|0;f[d>>2]=f[i>>2];c=i+4|0;Ff(a+48|0,c)|0;if((b[c+11>>0]|0)<0)Bi(f[c>>2]|0);ae(e+12|0,f[g>>2]|0);fe(e,f[e+4>>2]|0);u=h;return d|0}function Gd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;d=f[k>>2]|0;if((g-d|0)>>>0>=c>>>0){do{b[d>>0]=0;d=(f[k>>2]|0)+1|0;f[k>>2]=d;c=c+-1|0}while((c|0)!=0);return}e=f[a>>2]|0;h=d-e|0;d=h+c|0;if((d|0)<0)Yh(a);g=g-e|0;i=g<<1;d=g>>>0<1073741823?(i>>>0>>0?d:i):2147483647;if(!d)e=0;else e=pg(d)|0;i=e+h|0;h=e+d|0;g=i;d=i;do{b[d>>0]=0;d=g+1|0;g=d;c=c+-1|0}while((c|0)!=0);c=f[a>>2]|0;e=(f[k>>2]|0)-c|0;d=i+(0-e)|0;if((e|0)>0)Mc(d|0,c|0,e|0)|0;f[a>>2]=d;f[k>>2]=g;f[j>>2]=h;if(!c)return;Bi(c);return}function Hd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if(!(td(a+8|0,c)|0)){h=0;return h|0}do if((j[c+38>>1]|0)<514){h=c+8|0;i=f[h+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((i|0)>(g|0)|((i|0)==(g|0)?(f[h>>2]|0)>>>0>e>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+e>>0]|0;g=Wg(e|0,g|0,1,0)|0;i=d;f[i>>2]=g;f[i+4>>2]=I;if((h&255)<2){f[a+68>>2]=h&255;break}else{i=0;return i|0}}while(0);i=bc(a+88|0,c)|0;return i|0}function Id(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;h=f[a>>2]|0;f[a>>2]=0;if(!h)return;a=f[h+28>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;Id(c+20|0);if((b[d+11>>0]|0)<0)Bi(f[d>>2]|0);Bi(c)}while((a|0)!=0);g=h+20|0;a=f[g>>2]|0;f[g>>2]=0;if(a|0)Bi(a);a=f[h+8>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;e=f[c+20>>2]|0;if(e|0){g=c+24|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Bi(e)}if((b[d+11>>0]|0)<0)Bi(f[d>>2]|0);Bi(c)}while((a|0)!=0);a=f[h>>2]|0;f[h>>2]=0;if(a|0)Bi(a);Bi(h);return}function Jd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if(!(hd(a+8|0,c)|0)){h=0;return h|0}do if((j[c+38>>1]|0)<514){h=c+8|0;i=f[h+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((i|0)>(g|0)|((i|0)==(g|0)?(f[h>>2]|0)>>>0>e>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+e>>0]|0;g=Wg(e|0,g|0,1,0)|0;i=d;f[i>>2]=g;f[i+4>>2]=I;if((h&255)<2){f[a+68>>2]=h&255;break}else{i=0;return i|0}}while(0);i=bc(a+88|0,c)|0;return i|0}function Kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+4|0;j=f[a>>2]|0;k=(f[i>>2]|0)-j|0;h=k>>2;c=h+1|0;if(c>>>0>1073741823)Yh(a);l=a+8|0;g=(f[l>>2]|0)-j|0;d=g>>1;d=g>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(d)if(d>>>0>1073741823){l=za(8)|0;gh(l,14257);f[l>>2]=3624;qa(l|0,952,75)}else{g=pg(d<<2)|0;break}else g=0;while(0);e=g+(h<<2)|0;f[e>>2]=f[b>>2];c=e+(0-h<<2)|0;if((k|0)>0)Mc(c|0,j|0,k|0)|0;f[a>>2]=c;f[i>>2]=e+4;f[l>>2]=g+(d<<2);if(!j)return;Bi(j);return}function Ld(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=a+8|0;d=f[h>>2]|0;if((d|0)<0){j=0;return j|0}j=a+4|0;e=f[j>>2]|0;g=e+4|0;c=f[g>>2]|0;b=f[e>>2]|0;a=c-b>>2;if(d>>>0<=a>>>0){if(d>>>0>>0?(i=b+(d<<2)|0,(c|0)!=(i|0)):0)f[g>>2]=c+(~((c+-4-i|0)>>>2)<<2)}else{Cd(e,d-a|0);d=f[h>>2]|0}if((d|0)<=0){j=1;return j|0}e=f[j>>2]|0;c=f[e>>2]|0;b=(f[e+4>>2]|0)-c>>2;a=0;while(1){if(b>>>0<=a>>>0){b=10;break}f[c+(a<<2)>>2]=a;a=a+1|0;if((a|0)>=(d|0)){a=1;b=12;break}}if((b|0)==10)Yh(e);else if((b|0)==12)return a|0;return 0}function Md(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=f[a+28>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;h=d+20|0;g=f[h>>2]|0;f[h>>2]=0;if(g|0){Md(g);Bi(g)}if((b[e+11>>0]|0)<0)Bi(f[e>>2]|0);Bi(d)}while((c|0)!=0);h=a+20|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0)Bi(c);c=f[a+8>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;g=f[d+20>>2]|0;if(g|0){h=d+24|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;Bi(g)}if((b[e+11>>0]|0)<0)Bi(f[e>>2]|0);Bi(d)}while((c|0)!=0);c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Bi(c);return}function Nd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;h=j+4|0;i=j;if((d|0)!=1){f[a>>2]=0;u=j;return}g=f[b+12>>2]|0;d=f[b+4>>2]|0;b=h;e=b+36|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(e|0));Nc(i,c,g,d,h);e=f[h+24>>2]|0;if(e|0){d=h+28|0;b=f[d>>2]|0;if((b|0)!=(e|0))f[d>>2]=b+(~((b+-4-e|0)>>>2)<<2);Bi(e)}f[a>>2]=f[i>>2];u=j;return}function Od(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0;do if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)<512){j=d+8|0;k=f[j+4>>2]|0;e=d+16|0;i=e;g=f[i>>2]|0;i=f[i+4>>2]|0;if((k|0)>(i|0)|((k|0)==(i|0)?(f[j>>2]|0)>>>0>g>>>0:0)){k=b[(f[d>>2]|0)+g>>0]|0;i=Wg(g|0,i|0,1,0)|0;j=e;f[j>>2]=i;f[j+4>>2]=I;f[a+24>>2]=k&255;break}else{k=0;return k|0}}while(0);k=rb(a,c,d)|0;return k|0}function Pd(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+16|0;a=f[b>>2]|0;f[b>>2]=0;d=f[c>>2]|0;f[c>>2]=a;if(!d)return;b=d+88|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){a=f[c+8>>2]|0;if(a|0){b=c+12|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Bi(a)}Bi(c)}a=f[d+68>>2]|0;if(a|0){b=d+72|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);Bi(a)}c=d+64|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Bi(b)}Bi(a)}Bi(d);return}function Qd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=c+8|0;i=f[g+4>>2]|0;h=c+16|0;e=h;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((i|0)>(e|0)|((i|0)==(e|0)?(f[g>>2]|0)>>>0>d>>>0:0))){i=0;return i|0}g=b[(f[c>>2]|0)+d>>0]|0;e=Wg(d|0,e|0,1,0)|0;i=h;f[i>>2]=e;f[i+4>>2]=I;do if(g<<24>>24<0)if(Qd(a,c)|0){c=a;c=Fg(f[c>>2]|0,f[c+4>>2]|0,7)|0;d=I;i=a;f[i>>2]=c;f[i+4>>2]=d;c=c|g&127;break}else{i=0;return i|0}else{c=g&255;d=0}while(0);i=a;f[i>>2]=c;f[i+4>>2]=d;i=1;return i|0}function Rd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=a+11|0;e=b[j>>0]|0;g=e<<24>>24<0;if(g)h=(f[a+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0>=d>>>0){if(g)e=f[a>>2]|0;else e=a;Yg(e,c,d)|0;b[i>>0]=0;Gh(e+d|0,i);if((b[j>>0]|0)<0){f[a+4>>2]=d;break}else{b[j>>0]=d;break}}else{if(g)e=f[a+4>>2]|0;else e=e&255;Bd(a,h,d-h|0,e,0,e,d,c)}while(0);u=k;return a|0}function Sd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=f[a>>2]|0;if(!d){e=0;return e|0}e=f[c>>2]|0;if(!e){e=0;return e|0}g=f[e>>2]|0;be(d,g,(f[e+4>>2]|0)-g|0,0)|0;b[a+24>>0]=b[c+24>>0]|0;f[a+28>>2]=f[c+28>>2];b[a+32>>0]=b[c+32>>0]|0;d=c+40|0;e=f[d+4>>2]|0;g=a+40|0;f[g>>2]=f[d>>2];f[g+4>>2]=e;g=c+48|0;e=f[g+4>>2]|0;d=a+48|0;f[d>>2]=f[g>>2];f[d+4>>2]=e;f[a+56>>2]=f[c+56>>2];d=c+8|0;e=a+8|0;f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2];f[e+12>>2]=f[d+12>>2];e=1;return e|0}function Td(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;if(c|0){k=a+11|0;e=b[k>>0]|0;if(e<<24>>24<0){h=f[a+4>>2]|0;g=(f[a+8>>2]&2147483647)+-1|0}else{h=e&255;g=10}i=h+c|0;if((g-h|0)>>>0>>0){de(a,g,i-g|0,h,h,0,0);e=b[k>>0]|0}if(e<<24>>24<0)e=f[a>>2]|0;else e=a;Dg(e+h|0,c,d)|0;if((b[k>>0]|0)<0)f[a+4>>2]=i;else b[k>>0]=i;b[j>>0]=0;Gh(e+i|0,j)}u=l;return a|0}function Ud(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;do if(!(xh(a,f[c+8>>2]|0,g)|0)){if(xh(a,f[c>>2]|0,g)|0){a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[a>>2]=e;f[h>>2]=d;e=c+40|0;f[e>>2]=(f[e>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1;f[c+44>>2]=4;break}if((e|0)==1)f[a>>2]=1}}else cg(0,c,d,e);while(0);return}function Vd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}e=h&-4|0;g=e-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(g|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(e|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(h|0)){b[a>>0]=c;a=a+1|0}return h-d|0}function Wd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0){e=f[c>>2]|0;c=f[c+4>>2]|0;if(c>>>0>4294967279)Yh(a);if(c>>>0<11)b[a+11>>0]=c;else{i=c+16&-16;h=pg(i)|0;f[a>>2]=h;f[a+8>>2]=i|-2147483648;f[a+4>>2]=c;a=h}Zg(a,e,c)|0;b[d>>0]=0;Gh(a+c|0,d)}else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}u=g;return}function Xd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;if(!a){e=1;return e|0}j=d+8|0;k=f[j+4>>2]|0;g=d+16|0;i=g;h=f[i>>2]|0;i=f[i+4>>2]|0;if(!((k|0)>(i|0)|((k|0)==(i|0)?(f[j>>2]|0)>>>0>h>>>0:0))){k=0;return k|0}k=b[(f[d>>2]|0)+h>>0]|0;i=Wg(h|0,i|0,1,0)|0;j=g;f[j>>2]=i;f[j+4>>2]=I;switch(k<<24>>24){case 0:{k=tb(a,c,d,e)|0;return k|0}case 1:{k=Ib(a,d,e)|0;return k|0}default:{k=0;return k|0}}return 0}function Yd(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;b[c+53>>0]=1;do if((f[c+4>>2]|0)==(e|0)){b[c+52>>0]=1;e=c+16|0;h=f[e>>2]|0;j=c+54|0;k=c+48|0;i=c+24|0;a=c+36|0;if(!h){f[e>>2]=d;f[i>>2]=g;f[a>>2]=1;if(!((f[k>>2]|0)==1&(g|0)==1))break;b[j>>0]=1;break}if((h|0)!=(d|0)){f[a>>2]=(f[a>>2]|0)+1;b[j>>0]=1;break}a=f[i>>2]|0;if((a|0)==2){f[i>>2]=g;a=g}if((f[k>>2]|0)==1&(a|0)==1)b[j>>0]=1}while(0);return}function Zd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a:do if(!(xh(a,f[c+8>>2]|0,0)|0)){h=f[a+12>>2]|0;g=a+16+(h<<3)|0;of(a+16|0,c,d,e);if((h|0)>1){h=c+54|0;a=a+24|0;do{of(a,c,d,e);if(b[h>>0]|0)break a;a=a+8|0}while(a>>>0>>0)}}else Ie(0,c,d,e);while(0);return}function _d(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;if(!a)return;c=a+48|0;if((b[c+11>>0]|0)<0)Bi(f[c>>2]|0);f[a>>2]=2828;e=f[a+20>>2]|0;if(e|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Bi(e)}e=a+8|0;c=f[e>>2]|0;if(c|0){g=a+12|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{h=d+-4|0;f[g>>2]=h;d=f[h>>2]|0;f[h>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Bi(c)}Bi(a);return}function $d(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1220;c=a+16|0;d=f[c>>2]|0;f[c>>2]=0;if(!d)return;c=d+88|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){a=b+12|0;if((f[a>>2]|0)!=(c|0))f[a>>2]=c;Bi(c)}Bi(b)}a=f[d+68>>2]|0;if(a|0){b=d+72|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);Bi(a)}c=d+64|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Bi(b)}Bi(a)}Bi(d);return}function ae(a,b){a=a|0;b=b|0;if(!b)return;else{ae(a,f[b>>2]|0);ae(a,f[b+4>>2]|0);fe(b+20|0,f[b+24>>2]|0);Bi(b);return}}function be(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)<0){c=0;return c|0}do if(!b){b=a+4|0;d=f[b>>2]|0;e=f[a>>2]|0;g=d-e|0;if(c>>>0>g>>>0){Gd(a,c-g|0);break}if(c>>>0>>0?(h=e+c|0,(d|0)!=(h|0)):0)f[b>>2]=h}else Dc(a,b,b+c|0);while(0);c=a+24|0;h=c;h=Wg(f[h>>2]|0,f[h+4>>2]|0,1,0)|0;f[c>>2]=h;f[c+4>>2]=I;c=1;return c|0}function ce(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=a+64|0;if((f[h>>2]|0)==0?(g=pg(32)|0,xg(g),e=f[h>>2]|0,f[h>>2]=g,e|0):0){g=f[e>>2]|0;if(g|0){d=e+4|0;if((f[d>>2]|0)!=(g|0))f[d>>2]=g;Bi(g)}Bi(e)}d=Ef(f[a+28>>2]|0)|0;d=X(b[a+24>>0]|0,d)|0;e=((d|0)<0)<<31>>31;i=f[h>>2]|0;g=ng(d|0,e|0,c|0,0)|0;if(!(be(i,0,g,I)|0)){i=0;return i|0}Ke(a,f[h>>2]|0,d,e,0,0);f[a+80>>2]=c;i=1;return i|0}function de(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-c|0)>>>0>>0)Yh(a);if((b[a+11>>0]|0)<0)l=f[a>>2]|0;else l=a;if(c>>>0<2147483623){j=d+c|0;k=c<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=pg(j)|0;if(g|0)Zg(k,l,g)|0;d=e-h-g|0;if(d|0)Zg(k+g+i|0,l+g+h|0,d)|0;if((c|0)!=10)Bi(l);f[a>>2]=k;f[a+8>>2]=j|-2147483648;return}function ee(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;g=e>>>0>1073741823?-1:e<<2;h=xi(g)|0;Vd(h|0,0,g|0)|0;g=a+8|0;vd(g,h,b,c);if((e|0)>=(d|0)){yi(h);return 1}a=0-e|0;f=e;do{i=c+(f<<2)|0;vd(g,i+(a<<2)|0,b+(f<<2)|0,i);f=f+e|0}while((f|0)<(d|0));yi(h);return 1}function fe(a,c){a=a|0;c=c|0;var d=0;if(!c)return;fe(a,f[c>>2]|0);fe(a,f[c+4>>2]|0);a=c+16|0;d=c+28|0;if((b[d+11>>0]|0)<0)Bi(f[d>>2]|0);if((b[a+11>>0]|0)<0)Bi(f[a>>2]|0);Bi(c);return}function ge(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;e=h;if(!(xh(a,b,0)|0))if((b|0)!=0?(g=Zc(b,896,880,0)|0,(g|0)!=0):0){b=e+4|0;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=g;f[e+8>>2]=a;f[e+12>>2]=-1;f[e+48>>2]=1;Oa[f[(f[g>>2]|0)+28>>2]&7](g,e,f[c>>2]|0,1);if((f[e+24>>2]|0)==1){f[c>>2]=f[e+16>>2];b=1}else b=0}else b=0;else b=1;u=h;return b|0}function he(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;g=e>>>0>1073741823?-1:e<<2;h=xi(g)|0;Vd(h|0,0,g|0)|0;g=a+8|0;wd(g,h,b,c);if((e|0)>=(d|0)){yi(h);return 1}a=0-e|0;f=e;do{i=c+(f<<2)|0;wd(g,i+(a<<2)|0,b+(f<<2)|0,i);f=f+e|0}while((f|0)<(d|0));yi(h);return 1}function ie(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;pb(h,c,d,e,g);c=f[h>>2]|0;if(!c){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;c=h+4|0}else{f[a>>2]=c;c=h+4|0;Wd(a+4|0,c)}if((b[c+11>>0]|0)>=0){u=i;return}Bi(f[h+4>>2]|0);u=i;return}function je(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;f[a>>2]=d;if(d|0){o=d+16|0;m=f[o+4>>2]|0;n=a+8|0;f[n>>2]=f[o>>2];f[n+4>>2]=m;n=d+24|0;m=f[n+4>>2]|0;d=a+16|0;f[d>>2]=f[n>>2];f[d+4>>2]=m}b[a+24>>0]=e;f[a+28>>2]=g;b[a+32>>0]=h&1;o=a+40|0;f[o>>2]=i;f[o+4>>2]=j;o=a+48|0;f[o>>2]=k;f[o+4>>2]=l;f[a+56>>2]=c;return}function ke(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;i=f[h+4>>2]|0;g=c+16|0;e=g;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((i|0)>(e|0)|((i|0)==(e|0)?(f[h>>2]|0)>>>0>d>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+d>>0]|0;i=Wg(d|0,e|0,1,0)|0;d=g;f[d>>2]=i;f[d+4>>2]=I;d=h&255;do if(d&128)if(ke(a,c)|0){d=f[a>>2]<<7;f[a>>2]=d;d=d|h&127;break}else{i=0;return i|0}while(0);f[a>>2]=d;i=1;return i|0}function le(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;h=a+11|0;e=b[h>>0]|0;i=e<<24>>24<0;if(i)e=f[a+4>>2]|0;else e=e&255;do if(e>>>0>=c>>>0)if(i){i=(f[a>>2]|0)+c|0;b[g>>0]=0;Gh(i,g);f[a+4>>2]=c;break}else{b[g>>0]=0;Gh(a+c|0,g);b[h>>0]=c;break}else Td(a,c-e|0,d)|0;while(0);u=j;return}function me(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=2828;b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}d=a+8|0;b=f[d>>2]|0;if(!b){Bi(a);return}e=a+12|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Bi(b);Bi(a);return}function ne(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=2828;b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}e=a+8|0;b=f[e>>2]|0;if(!b)return;d=a+12|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{a=c+-4|0;f[d>>2]=a;c=f[a>>2]|0;f[a>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}Bi(b);return}function oe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1976;b=f[a+96>>2]|0;if(b|0)Bi(b);b=f[a+84>>2]|0;if(b|0)Bi(b);b=f[a+72>>2]|0;if(b|0)Bi(b);b=f[a+60>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function pe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1612;b=f[a+96>>2]|0;if(b|0)Bi(b);b=f[a+84>>2]|0;if(b|0)Bi(b);b=f[a+72>>2]|0;if(b|0)Bi(b);b=f[a+60>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function qe(a){a=a|0;var b=0,c=0;f[a>>2]=1976;b=f[a+96>>2]|0;if(b|0)Bi(b);b=f[a+84>>2]|0;if(b|0)Bi(b);b=f[a+72>>2]|0;if(b|0)Bi(b);b=f[a+60>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function re(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0,j=0;g=f[a+32>>2]|0;j=g+8|0;i=f[j>>2]|0;j=f[j+4>>2]|0;b=g+16|0;d=b;c=f[d>>2]|0;d=Wg(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((j|0)<(e|0)|(j|0)==(e|0)&i>>>0>>0){j=0;return j|0}j=(f[g>>2]|0)+c|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=b;f[i>>2]=d;f[i+4>>2]=e;f[(f[a+4>>2]|0)+80>>2]=j;j=1;return j|0}function se(a){a=a|0;var c=0,d=0,e=0,f=0,g=0,h=0;while(1){e=b[a>>0]|0;c=e<<24>>24;f=a+1|0;if(!($h(c)|0))break;else a=f}switch(c|0){case 45:{a=1;g=5;break}case 43:{a=0;g=5;break}default:{h=0;d=a;a=e}}if((g|0)==5){h=a;d=f;a=b[f>>0]|0}c=(a<<24>>24)+-48|0;if(c>>>0<10){a=0;do{d=d+1|0;a=(a*10|0)-c|0;c=(b[d>>0]|0)+-48|0}while(c>>>0<10)}else a=0;return (h|0?a:0-a|0)|0}function te(a){a=a|0;var b=0,c=0;f[a>>2]=1612;b=f[a+96>>2]|0;if(b|0)Bi(b);b=f[a+84>>2]|0;if(b|0)Bi(b);b=f[a+72>>2]|0;if(b|0)Bi(b);b=f[a+60>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function ue(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;f[a>>2]=0;h=a+4|0;f[h>>2]=0;f[a+8>>2]=0;g=b+4|0;c=(f[g>>2]|0)-(f[b>>2]|0)|0;d=c>>2;if(!d)return;if(d>>>0>1073741823)Yh(a);e=pg(c)|0;f[h>>2]=e;f[a>>2]=e;f[a+8>>2]=e+(d<<2);a=f[b>>2]|0;c=(f[g>>2]|0)-a|0;if((c|0)<=0)return;Mc(e|0,a|0,c|0)|0;f[h>>2]=e+(c>>>2<<2);return}function ve(a,c,d){a=a|0;c=c|0;d=d|0;c=Lc(a,c)|0;if((c|0)==(a+4|0)){a=-1;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}c=c+28|0;if((b[c+11>>0]|0)<0)c=f[c>>2]|0;a=se(c)|0;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}function we(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((d|0)<=0){e=1;return e|0}e=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[e>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Ea[f[(f[g>>2]|0)+20>>2]&15](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(d|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function xe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b>>2]|0;if(!c){e=0;return e|0}d=a+44|0;e=f[d>>2]|0;if(e>>>0<(f[a+48>>2]|0)>>>0){f[b>>2]=0;f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4;e=1;return e|0}else{Ic(a+40|0,b);e=1;return e|0}return 0}function ye(a){a=a|0;var c=0,d=0,e=0;e=a;a:do if(!(e&3))d=4;else{c=e;while(1){if(!(b[a>>0]|0)){a=c;break a}a=a+1|0;c=a;if(!(c&3)){d=4;break}}}while(0);if((d|0)==4){while(1){c=f[a>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009))a=a+4|0;else break}if((c&255)<<24>>24)do a=a+1|0;while((b[a>>0]|0)!=0)}return a-e|0}function ze(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((d|0)<=0){e=1;return e|0}e=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[e>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Ea[f[(f[g>>2]|0)+16>>2]&15](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(d|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function Ae(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2032;b=f[a+76>>2]|0;if(b|0)Bi(b);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)yi(b);f[a>>2]=1388;d=f[a+32>>2]|0;if(!d){Bi(a);return}b=a+36|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d);Bi(a);return}function Be(a){a=a|0;if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+24>>2]|0)){a=0;return a|0}if(!(f[a+28>>2]|0)){a=0;return a|0}if(!(f[a+32>>2]|0)){a=0;return a|0}if(!(f[a+36>>2]|0)){a=0;return a|0}a=(f[a+72>>2]|0)!=-1;return a|0}function Ce(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1668;b=f[a+76>>2]|0;if(b|0)Bi(b);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)yi(b);f[a>>2]=1388;d=f[a+32>>2]|0;if(!d){Bi(a);return}b=a+36|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d);Bi(a);return}function De(a){a=a|0;if(!(f[a+64>>2]|0)){a=0;return a|0}if(!(f[a+68>>2]|0)){a=0;return a|0}if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}if(!(f[a+56>>2]|0)){a=0;return a|0}a=(f[a+92>>2]|0)!=-1;return a|0}function Ee(a,b,c){a=a|0;b=b|0;c=c|0;switch(c<<24>>24){case 0:{b=pg(20)|0;Og(b);break}case 1:{b=pg(24)|0;Vg(b);break}case 2:{b=pg(36)|0;tg(b);break}case 3:{b=pg(28)|0;Sg(b);break}default:b=0}f[a>>2]=b;return}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;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=Jg(j^a|0,i^b|0,j|0,i|0)|0;g=I;a=f^j;b=e^i;return Jg((ub(h,g,Jg(f^c|0,e^d|0,f|0,e|0)|0,I,0)|0)^a|0,I^b|0,a|0,b|0)|0}function Ge(a,c){a=a|0;c=c|0;var d=0,e=0;f[c>>2]=2;e=a+4|0;d=c+8|0;a=f[d>>2]|0;c=(f[c+12>>2]|0)-a|0;if(c>>>0<4294967292){Ne(d,c+4|0,0);a=f[d>>2]|0}d=a+c|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[d>>0]=e;b[d+1>>0]=e>>8;b[d+2>>0]=e>>16;b[d+3>>0]=e>>24;return}function He(a){a=a|0;var b=0,c=0;f[a>>2]=2032;b=f[a+76>>2]|0;if(b|0)Bi(b);c=a+68|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)yi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function Ie(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;a=c+16|0;g=f[a>>2]|0;h=c+36|0;i=c+24|0;do if(g){if((g|0)!=(d|0)){f[h>>2]=(f[h>>2]|0)+1;f[i>>2]=2;b[c+54>>0]=1;break}if((f[i>>2]|0)==2)f[i>>2]=e}else{f[a>>2]=d;f[i>>2]=e;f[h>>2]=1}while(0);return}function Je(a){a=a|0;var b=0,c=0;f[a>>2]=1668;b=f[a+76>>2]|0;if(b|0)Bi(b);c=a+68|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)yi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function Ke(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;f[a>>2]=b;j=b+16|0;h=f[j+4>>2]|0;i=a+8|0;f[i>>2]=f[j>>2];f[i+4>>2]=h;i=b+24|0;h=f[i+4>>2]|0;b=a+16|0;f[b>>2]=f[i>>2];f[b+4>>2]=h;b=a+40|0;f[b>>2]=c;f[b+4>>2]=d;d=a+48|0;f[d>>2]=e;f[d+4>>2]=g;return}function Le(a,b,c){a=a|0;b=b|0;c=c|0;if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)<512?!(Ja[f[(f[a>>2]|0)+52>>2]&127](a)|0):0){c=0;return c|0}c=rb(a,b,c)|0;return c|0}function Me(a,b,c){a=a|0;b=b|0;c=c|0;if(!(zg(a,b,c)|0)){c=0;return c|0}b=f[b+4>>2]|0;if((c|0)<=-1)xa(13373,14023,67,14122);a=f[b+8>>2]|0;if(((f[b+12>>2]|0)-a>>2|0)<=(c|0))xa(13969,14023,68,14122);c=(f[(f[a+(c<<2)>>2]|0)+28>>2]|0)==9;return c|0}function Ne(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;c=a+4|0;g=f[c>>2]|0;e=f[a>>2]|0;d=g-e|0;if(b>>>0<=d>>>0){if(b>>>0>>0?(h=e+b|0,(g|0)!=(h|0)):0)f[c>>2]=h}else Gd(a,b-d|0);h=a+24|0;b=h;b=Wg(f[b>>2]|0,f[b+4>>2]|0,1,0)|0;f[h>>2]=b;f[h+4>>2]=I;return}function Oe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2088;b=f[a+76>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Pe(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=h[a+12>>0]|0;g=a+8|0;b=f[g>>2]|0;if(b>>>0<4096?(c=a+4|0,d=f[c>>2]|0,(d|0)>0):0){a=f[a>>2]|0;d=d+-1|0;f[c>>2]=d;b=h[a+d>>0]|0|b<<8;f[g>>2]=b}a=b&255;c=0-e&255;d=X(b>>>8,c)|0;e=a>>>0>>0;f[g>>2]=e?d+a|0:b-c-d|0;return e|0}function Qe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1724;b=f[a+76>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Re(a,b){a=a|0;b=b|0;var c=0,d=0;d=pg(40)|0;f[d>>2]=-1;xg(d+8|0);Ha[f[(f[a>>2]|0)+16>>2]&3](a,d);b=b+88|0;c=f[b>>2]|0;f[b>>2]=d;if(!c)return 1;a=f[c+8>>2]|0;if(a|0){b=c+12|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Bi(a)}Bi(c);return 1}function Se(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1164;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}b=f[a+4>>2]|0;if(!b){Bi(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Te(a){a=a|0;var b=0,c=0,d=0;b=f[a+8>>2]|0;c=f[a+12>>2]|0;if((b|0)==(c|0)){c=1;return c|0}a=a+32|0;while(1){d=f[b>>2]|0;b=b+4|0;if(!(Na[f[(f[d>>2]|0)+16>>2]&127](d,f[a>>2]|0)|0)){b=0;a=5;break}if((b|0)==(c|0)){b=1;a=5;break}}if((a|0)==5)return b|0;return 0}function Ue(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(xh(a,f[b+8>>2]|0,g)|0)Yd(0,b,c,d,e);else{a=f[a+8>>2]|0;Ma[f[(f[a>>2]|0)+20>>2]&3](a,b,c,d,e,g)}return}function Ve(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2144;zi(a+108|0);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function We(a){a=a|0;var b=0,c=0;f[a>>2]=2088;b=f[a+76>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function Xe(a){a=a|0;var b=0,c=0;f[a>>2]=2736;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)yi(b);f[a>>2]=1328;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){$d(a);Bi(a);return}Ga[f[(f[b>>2]|0)+4>>2]&127](b);$d(a);Bi(a);return}function Ye(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1780;zi(a+108|0);f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Ze(a){a=a|0;var b=0,c=0;f[a>>2]=1724;b=f[a+76>>2]|0;if(b|0)Bi(b);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Bi(c);return}function _e(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1164;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Bi(d);return}function $e(a){a=a|0;var b=0,c=0;f[a>>2]=2144;zi(a+108|0);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c);return}function af(a){a=a|0;var b=0,c=0;f[a>>2]=2736;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)yi(b);f[a>>2]=1328;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){$d(a);return}Ga[f[(f[b>>2]|0)+4>>2]&127](b);$d(a);return}function bf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;f[a+4>>2]=b;d=f[b+4>>2]|0;if((c|0)<=-1)xa(13373,14023,67,14122);b=f[d+8>>2]|0;if(((f[d+12>>2]|0)-b>>2|0)>(c|0)){f[a+8>>2]=f[b+(c<<2)>>2];f[a+12>>2]=c;return 1}else xa(13969,14023,68,14122);return 0}function cf(a){a=a|0;var b=0,c=0;f[a>>2]=1780;zi(a+108|0);f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c);return}function df(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0){b=0;return b|0}c=f[a+4>>2]|0;if(((f[c+12>>2]|0)-(f[c+8>>2]|0)>>2|0)<=(b|0)){c=0;return c|0}c=f[(f[a+8>>2]|0)+(f[(f[a+20>>2]|0)+(b<<2)>>2]<<2)>>2]|0;c=Na[f[(f[c>>2]|0)+32>>2]&127](c,b)|0;return c|0}function ef(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=f[a+4>>2]|0;h=i>>8;if(i&1)h=f[(f[d>>2]|0)+h>>2]|0;a=f[a>>2]|0;Ma[f[(f[a>>2]|0)+20>>2]&3](a,b,c,d+h|0,i&2|0?e:2,g);return}function ff(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(xh(a,f[b+8>>2]|0,0)|0)Ie(0,b,c,d);else{a=f[a+8>>2]|0;Oa[f[(f[a>>2]|0)+28>>2]&7](a,b,c,d)}return}function gf(a,b){a=a|0;b=b|0;var c=0;c=f[a+4>>2]|0;if(c|0?((h[c+36>>0]|0)<<8&65535)<512:0){c=1;return c|0}c=Na[f[(f[a>>2]|0)+48>>2]&127](a,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0;return c|0}function hf(a,b){a=a|0;b=b|0;var c=0;eg(a);f[a>>2]=1268;c=a+36|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;c=f[b>>2]|0;f[b>>2]=0;f[a+60>>2]=c;return}function jf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)a=0;else{while(1){e=b[a>>0]|0;f=b[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){a=0;break a}else{a=a+1|0;c=c+1|0}}a=(e&255)-(f&255)|0}while(0);return a|0}function kf(a,b,c){a=a|0;b=b|0;c=c|0;if(!(ce(f[a+8>>2]|0,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0)){c=0;return c|0}c=Ea[f[(f[a>>2]|0)+32>>2]&15](a,b,c)|0;return c|0}function lf(a,b){a=a|0;b=b|0;var c=0;c=f[a+16>>2]|0;if(((f[a+20>>2]|0)-c>>2|0)<=(b|0)){a=0;return a|0}b=f[c+(b<<2)>>2]|0;if((b|0)<0){a=0;return a|0}a=Qc(f[(f[a+36>>2]|0)+(b<<2)>>2]|0)|0;return a|0}function mf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=f[a+4>>2]|0;g=h>>8;if(h&1)g=f[(f[c>>2]|0)+g>>2]|0;a=f[a>>2]|0;Fa[f[(f[a>>2]|0)+24>>2]&3](a,b,c+g|0,h&2|0?d:2,e);return}function nf(a){a=a|0;if(!(f[a+60>>2]|0))return 0;if(!(f[a+44>>2]|0))return 0;if(!(f[a+48>>2]|0))return 0;if(!(f[a+52>>2]|0))return 0;else return (f[a+56>>2]|0)!=0|0;return 0}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=f[a+4>>2]|0;e=g>>8;if(g&1)e=f[(f[c>>2]|0)+e>>2]|0;a=f[a>>2]|0;Oa[f[(f[a>>2]|0)+28>>2]&7](a,b,c+e|0,g&2|0?d:2);return}function pf(a,c){a=a|0;c=c|0;var d=0,e=0;e=a;d=e+64|0;do{f[e>>2]=f[c>>2];e=e+4|0;c=c+4|0}while((e|0)<(d|0));e=a+64|0;f[a+88>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;b[e+20>>0]=0;return}function qf(a){a=a|0;if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}a=(f[a+56>>2]|0)!=0;return a|0}function rf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=$(e);f[a+4>>2]=b;uc(a+8|0,c,c+(d<<2)|0);n[a+20>>2]=e;return}function sf(a){a=a|0;var b=0,c=0;c=a+15&-16|0;b=f[r>>2]|0;a=b+c|0;if((c|0)>0&(a|0)<(b|0)|(a|0)<0){ea()|0;sa(12);return -1}f[r>>2]=a;if((a|0)>(da()|0)?(ca()|0)==0:0){f[r>>2]=b;sa(12);return -1}return b|0}function tf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=f[c>>2]|0;d=a;c=b-a>>2;while(1){if(!c)break;b=(c|0)/2|0;g=d+(b<<2)|0;a=(f[g>>2]|0)>>>0>>0;d=a?g+4|0:d;c=a?c+-1-b|0:b}return d|0}function uf(a,b){a=a|0;b=b|0;b=f[b+88>>2]|0;if(!b){a=0;return a|0}if((f[b>>2]|0)!=2){a=0;return a|0}b=f[b+8>>2]|0;f[a+4>>2]=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;a=1;return a|0}function vf(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;b[a+24>>0]=1;f[a+28>>2]=9;c=a+40|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+56>>2]=-1;f[a+60>>2]=0;return}function wf(a,b){a=a|0;b=b|0;if(!(Na[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){b=0;return b|0}if(!(Na[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){b=0;return b|0}b=Ja[f[(f[a>>2]|0)+44>>2]&127](a)|0;return b|0}function xf(a,c,d){a=a|0;c=c|0;d=d|0;if(!(zg(a,c,d)|0)){d=0;return d|0}a=f[a+8>>2]|0;if((b[a+24>>0]|0)!=3){d=0;return d|0}d=(f[a+28>>2]|0)==9;return d|0}function yf(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){c=0;return c|0}if((b[c+24>>0]|0)!=3){c=0;return c|0}f[a+44>>2]=c;c=1;return c|0}function zf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(xh(a,f[b+8>>2]|0,g)|0)Yd(0,b,c,d,e);return}function Af(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+11>>0]|0;e=d<<24>>24<0;if(e)d=f[a+4>>2]|0;else d=d&255;if(d>>>0<=c>>>0)Yh(a);if(e)a=f[a>>2]|0;return a+c|0}function Bf(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1388;b=f[a+32>>2]|0;if(!b){Bi(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Cf(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){c=0;return c|0}if((b[c+24>>0]|0)!=3){c=0;return c|0}f[a+64>>2]=c;c=1;return c|0}function Df(a,c){a=a|0;c=c|0;if(((c|0)!=0?(f[c+56>>2]|0)==0:0)?(b[c+24>>0]|0)==3:0){f[a+60>>2]=c;a=1}else a=0;return a|0}function Ef(a){a=a|0;switch(a|0){case 11:case 2:case 1:{a=1;break}case 4:case 3:{a=2;break}case 6:case 5:{a=4;break}case 8:case 7:{a=8;break}case 9:{a=4;break}case 10:{a=8;break}default:a=-1}return a|0}function Ff(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;Rd(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}return a|0}function Gf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=X(e,f)|0;d=a>>>16;a=(c>>>16)+(X(e,d)|0)|0;e=b>>>16;b=X(e,f)|0;return (I=(a>>>16)+(X(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Hf(a){a=a|0;var c=0,d=0;b[a+36>>0]=0;d=Wg(f[a+32>>2]|0,0,7,0)|0;d=Hg(d|0,I|0,3)|0;a=a+16|0;c=a;c=Wg(d|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;f[a>>2]=c;f[a+4>>2]=I;return}function If(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xa(4781,4787,76,4942);return 0}function Jf(a,b){a=a|0;b=b|0;var c=0,d=0;d=ye(b)|0;c=pg(d+13|0)|0;f[c>>2]=d;f[c+4>>2]=d;f[c+8>>2]=0;c=Lh(c)|0;Mc(c|0,b|0,d+1|0)|0;f[a>>2]=c;return}function Kf(a,b){a=a|0;b=b|0;var c=0;if((b|0)==-1|(b|0)>4){c=-1;return c|0}c=f[a+20+(b*12|0)>>2]|0;if(((f[a+20+(b*12|0)+4>>2]|0)-c|0)<=0){c=-1;return c|0}c=f[c>>2]|0;return c|0}function Lf(a){a=a|0;var b=0,c=0;f[a>>2]=1388;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c);return}function Mf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(xh(a,f[b+8>>2]|0,0)|0)Ie(0,b,c,d);return}function Nf(a){a=a|0;var b=0;f[a>>2]=2828;b=a+4|0;f[a+40>>2]=0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;d[b+32>>1]=0;return}function Of(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else Mc(a,c,d)|0;return a|0}function Pf(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1136;b=f[a+8>>2]|0;if(!b){Bi(a);return}c=a+12|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b);Bi(a);return}function Qf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((b|0)>0)d=0;else return;do{e=f[a+(d<<2)>>2]|0;f[c+(d<<2)>>2]=e<<31>>31^e>>>1;d=d+1|0}while((d|0)!=(b|0));return}function Rf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=f[c>>2];a=Ea[f[(f[a>>2]|0)+16>>2]&15](a,b,d)|0;if(a)f[c>>2]=f[d>>2];u=e;return a&1|0}function Sf(a){a=a|0;var b=0,c=0;if(fi(a)|0?(b=Ph(f[a>>2]|0)|0,c=b+8|0,a=f[c>>2]|0,f[c>>2]=a+-1,(a+-1|0)<0):0)Bi(b);return}function Tf(a){a=a|0;var c=0;c=b[w+(a&255)>>0]|0;if((c|0)<8)return c|0;c=b[w+(a>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=b[w+(a>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (b[w+(a>>>24)>>0]|0)+24|0}function Uf(a){a=a|0;var b=0,c=0,d=0;if(!a)return;b=f[a>>2]|0;if(b|0){c=a+4|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Bi(b)}Bi(a);return}function Vf(a,c){a=a|0;c=c|0;var d=0;b[c+84>>0]=1;d=f[c+68>>2]|0;a=c+72|0;c=f[a>>2]|0;if((c|0)==(d|0))return 1;f[a>>2]=c+(~((c+-4-d|0)>>>2)<<2);return 1}function Wf(a,b){a=a|0;b=b|0;if(b>>>0>=2){b=0;return b|0}f[a+28>>2]=b;b=1;return b|0}function Xf(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;d[a+38>>1]=0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;b[c+28>>0]=0;return}function Yf(a){a=a|0;var b=0,c=0;f[a>>2]=1328;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ga[f[(f[b>>2]|0)+4>>2]&127](b);$d(a);Bi(a);return}function Zf(a){a=a|0;var b=0,c=0;f[a>>2]=1136;c=f[a+8>>2]|0;if(!c)return;a=a+12|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Bi(c);return}function _f(a,b){a=a|0;b=b|0;return td(a+8|0,b)|0}function $f(a,b,c){a=a|0;b=b|0;c=c|0;Ya(a,b,c);return}function ag(a){a=a|0;var b=0,c=0;f[a>>2]=1328;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ga[f[(f[b>>2]|0)+4>>2]&127](b);$d(a);return}function bg(a,b){a=a|0;b=b|0;if(!b)return 0;else xa(10489,5249,61,10500);return 0}function cg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if((f[b+4>>2]|0)==(c|0)?(e=b+28|0,(f[e>>2]|0)!=1):0)f[e>>2]=d;return}function dg(a,b){a=a|0;b=b|0;if(!b)return 0;else xa(10489,10082,65,10500);return 0}function eg(a){a=a|0;f[a>>2]=1164;a=a+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return}function fg(a,b){a=a|0;b=b|0;return hd(a+8|0,b)|0}function gg(a,b){a=a|0;b=b|0;if(!b)return 0;else xa(10489,5571,70,10500);return 0}function hg(a){a=a|0;f[a>>2]=2344;zi(a+88|0);Bi(a);return}function ig(a,b,c){a=a|0;b=$(b);c=c|0;var d=Ca;if((c|0)<1){c=0;return c|0}d=$($(1.0)/$(c|0));n[a+4>>2]=d;n[a>>2]=b;c=1;return c|0}function jg(a){a=a|0;var c=0;c=f[a+8>>2]|0;if(((f[a+12>>2]|0)-c|0)>4)return b[(f[c+4>>2]|0)+24>>0]|0;else xa(13969,14023,60,14122);return 0}function kg(a){a=a|0;f[a>>2]=2428;zi(a+88|0);Bi(a);return}function lg(a){a=a|0;f[a>>2]=2568;zi(a+88|0);Bi(a);return}function mg(a){a=a|0;f[a>>2]=2344;zi(a+88|0);return}function ng(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=Gf(e,f)|0;a=I;return (I=(X(b,f)|0)+(X(d,e)|0)+a|a&0,c|0|0)|0}function og(a){a=a|0;f[a>>2]=2652;zi(a+88|0);Bi(a);return}function pg(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=Pa(b)|0;if(a|0)break;a=Rh()|0;if(!a){a=0;break}La[a&1]()}return a|0}function qg(a){a=a|0;f[a>>2]=2428;zi(a+88|0);return}function rg(a){a=a|0;f[a>>2]=2568;zi(a+88|0);return}function sg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return vb(b,c,d)|0}function tg(a){a=a|0;Vg(a);f[a>>2]=2736;f[a+24>>2]=-1;f[a+28>>2]=0;n[a+32>>2]=$(0.0);return}function ug(a){a=a|0;f[a>>2]=2652;zi(a+88|0);return}function vg(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;b=a+8|0;f[b>>2]=c;f[b+4>>2]=0;c=a+16|0;f[c>>2]=0;f[c+4>>2]=0;return}function wg(a,b,c){a=a|0;b=b|0;c=c|0;return Fd(a,b,c)|0}function xg(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;a=a+16|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function yg(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function zg(a,b,c){a=a|0;b=b|0;c=c|0;return bf(a,b,c)|0}function Ag(a){a=a|0;Nf(a);f[a>>2]=1024;a=a+44|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function Bg(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 Ia[a&31](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Cg(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;Ma[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function Dg(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)Vd(a|0,(di(c)|0)&255|0,b|0)|0;return a|0}function Eg(a){a=a|0;return 4}function Fg(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<>>32-c;return a<>0]|0)<0)Bi(f[c>>2]|0);Bi(a);return}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Ig(){}function Jg(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 (I=d,a-c>>>0|0)|0}function Kg(a){a=a|0;return 5}function Lg(a){a=a|0;var b=0;f[a>>2]=2872;a=a+4|0;b=a+80|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Mg(a){a=a|0;return 6}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;f[a+28>>2]=b;f[a+32>>2]=c;return 1}function Og(a){a=a|0;f[a>>2]=1220;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=-1;f[a+16>>2]=0;return}function Pg(a){a=a|0;a=a+4|0;if((b[a+11>>0]|0)<0){a=f[a>>2]|0;return a|0}else return a|0;return 0}function Qg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Fa[a&3](b|0,c|0,d|0,e|0,f|0)}function Rg(a,b){a=a|0;b=b|0;return Na[f[(f[a>>2]|0)+56>>2]&127](a,b)|0}function Sg(a){a=a|0;Vg(a);f[a>>2]=2228;f[a+24>>2]=-1;return}function Tg(a,b){a=a|0;b=b|0;f[a+8>>2]=b;f[a+12>>2]=-1;return 1}function Ug(a){a=a|0;if(!a)return;Ga[f[(f[a>>2]|0)+4>>2]&127](a);return}function Vg(a){a=a|0;Og(a);f[a>>2]=1328;f[a+20>>2]=0;return}function Wg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (I=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Xg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Oa[a&7](b|0,c|0,d|0,e|0)}function Yg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Of(a|0,b|0,c|0)|0;return a|0}function Zg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Mc(a|0,b|0,c|0)|0;return a|0}function _g(a,b){a=a|0;b=b|0;return -1}function $g(a){a=a|0;return 3}function ah(a){a=a|0;if(!a)a=0;else a=(Zc(a,896,984,0)|0)!=0;return a&1|0}function bh(a){a=a|0;if(!a)return;zi(a+24|0);Bi(a);return}function ch(a){a=a|0;qd(a);Bi(a);return}function dh(a){a=a|0;return f[a+4>>2]|0}function eh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ea[a&15](b|0,c|0,d|0)|0}function fh(a,b,c){a=a|0;b=b|0;c=c|0;vg(a,b,c);return}function gh(a,b){a=a|0;b=b|0;f[a>>2]=3604;Jf(a+4|0,b);return}function hh(a,b){a=a|0;b=b|0;return f[(f[a+4>>2]|0)+(b<<2)>>2]|0}function ih(){var a=0;a=pg(84)|0;Ih(a);return a|0}function jh(a,b){a=a|0;b=b|0;return $(lh(a,b))}function kh(a){a=a|0;return b[(f[a+8>>2]|0)+24>>0]|0}function lh(a,b){a=a|0;b=b|0;return $(n[(f[a>>2]|0)+(b<<2)>>2])}function mh(a){a=a|0;return (f[a+8>>2]|0)-(f[a+4>>2]|0)>>2|0}function nh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ka[a&15](b|0,c|0,d|0)}function oh(){var a=0;a=pg(60)|0;Ag(a);return a|0}function ph(a){a=a|0;var b=0;b=u;u=u+a|0;u=u+15&-16;return b|0}function qh(){var a=0;a=pg(12)|0;Ch(a);return a|0}function rh(){var a=0;a=pg(40)|0;Xf(a);return a|0}function sh(a,b){a=a|0;b=b|0;return 1}function th(a,b){a=a|0;b=b|0;return yh(a,b)|0}function uh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(4);return 0}function vh(a){a=a|0;$d(a);Bi(a);return}function wh(a){a=a|0;n[a>>2]=$(1.0);n[a+4>>2]=$(1.0);return}function xh(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function yh(a,b){a=a|0;b=b|0;return f[(f[a>>2]|0)+(b<<2)>>2]|0}function zh(a,b){a=a|0;b=b|0;f[a+4>>2]=b;return}function Ah(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ub(a,b,c,d,0)|0}function Bh(a){a=a|0;f[a+4>>2]=0;f[a+8>>2]=0;f[a>>2]=a+4;return}function Ch(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}function Dh(a){a=a|0;return (f[a+4>>2]|0)-(f[a>>2]|0)>>2|0}function Eh(a){a=a|0;f[a>>2]=3604;Sf(a+4|0);return}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;return Na[a&127](b|0,c|0)|0}function Gh(a,c){a=a|0;c=c|0;b[a>>0]=b[c>>0]|0;return}function Hh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(8)}function Ih(a){a=a|0;Lg(a);f[a>>2]=1084;return}function Jh(a){a=a|0;if(!a)return;Bi(a);return}function Kh(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function Lh(a){a=a|0;return a+12|0}function Mh(a,b,c){a=a|0;b=b|0;c=c|0;Ha[a&3](b|0,c|0)}function Nh(a,b){a=a|0;b=b|0;return 0}function Oh(a){a=a|0;zi(a);Bi(a);return}function Ph(a){a=a|0;return a+-12|0}function Qh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;aa(1)}function Rh(){var a=0;a=f[3796]|0;f[3796]=a+0;return a|0}function Sh(a){a=a|0;return ii(a+4|0)|0}function Th(a){a=a|0;Gc(a);Bi(a);return}function Uh(a){a=a|0;return f[a+80>>2]|0}function Vh(a){a=a|0;return f[a+28>>2]|0}function Wh(a,b){a=a|0;b=b|0;return Ja[a&127](b|0)|0}function Xh(a){a=a|0;Eh(a);Bi(a);return}function Yh(a){a=a|0;ra()}function Zh(a,b){a=a|0;b=b|0;u=a;v=b}function _h(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(10)}function $h(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function ai(a){a=a|0;return (f[a>>2]|0)==0|0}function bi(a,b){a=a|0;b=b|0;Ga[a&127](b|0)}function ci(a){a=a|0;b[a+12>>0]=0;return}function di(a){a=a|0;return a&255|0}function ei(a){a=a|0;f[a>>2]=0;return}function fi(a){a=a|0;return 1}function gi(a,b,c){a=a|0;b=b|0;c=c|0;aa(0);return 0}function hi(a){a=a|0;return 0}function ii(a){a=a|0;return f[a>>2]|0}function ji(a){a=a|0;return 2}function ki(a,b,c){a=a|0;b=b|0;c=c|0;aa(6)}function li(){return -4}function mi(){return -3}function ni(){return (ui()|0)+64|0}function oi(){return -5}function pi(a,b){a=a|0;b=b|0;aa(9);return 0}function qi(a){a=a|0;La[a&1]()}function ri(){return -2}function si(){ya()}function ti(){return -1}function ui(){return Ii()|0}function vi(a,b){a=a|0;b=b|0;aa(3)}function wi(){return 0}function xi(a){a=a|0;return pg(a)|0}function yi(a){a=a|0;Bi(a);return}function zi(a){a=a|0;return}function Ai(a){a=a|0;u=a}function Bi(a){a=a|0;$a(a);return}function Ci(a){a=a|0;I=a}function Di(){return 15120}function Ei(a){a=a|0;aa(5);return 0}function Fi(){return I|0}function Gi(){return u|0}function Hi(a){a=a|0;aa(2)}function Ii(){return 2888}function Ji(){aa(7)} +function Pa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;n=x;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=f[3652]|0;c=m>>>a;if(c&3|0){b=(c&1^1)+a|0;a=14648+(b<<1<<2)|0;c=a+8|0;d=f[c>>2]|0;e=d+8|0;g=f[e>>2]|0;if((a|0)==(g|0))f[3652]=m&~(1<>2]=a;f[c>>2]=g}w=b<<3;f[d+4>>2]=w|3;w=d+w+4|0;f[w>>2]=f[w>>2]|1;w=e;u=x;return w|0}l=f[3654]|0;if(k>>>0>l>>>0){if(c|0){b=2<>>12&16;b=b>>>h;c=b>>>5&8;b=b>>>c;e=b>>>2&4;b=b>>>e;a=b>>>1&2;b=b>>>a;d=b>>>1&1;d=(c|h|e|a|d)+(b>>>d)|0;b=14648+(d<<1<<2)|0;a=b+8|0;e=f[a>>2]|0;h=e+8|0;c=f[h>>2]|0;if((b|0)==(c|0)){a=m&~(1<>2]=b;f[a>>2]=c;a=m}g=(d<<3)-k|0;f[e+4>>2]=k|3;d=e+k|0;f[d+4>>2]=g|1;f[d+g>>2]=g;if(l|0){e=f[3657]|0;b=l>>>3;c=14648+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=e;f[b+12>>2]=e;f[e+8>>2]=b;f[e+12>>2]=c}f[3654]=g;f[3657]=d;w=h;u=x;return w|0}i=f[3653]|0;if(i){c=(i&0-i)+-1|0;h=c>>>12&16;c=c>>>h;g=c>>>5&8;c=c>>>g;j=c>>>2&4;c=c>>>j;d=c>>>1&2;c=c>>>d;a=c>>>1&1;a=f[14912+((g|h|j|d|a)+(c>>>a)<<2)>>2]|0;c=(f[a+4>>2]&-8)-k|0;d=f[a+16+(((f[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){j=a;g=c}else{do{h=(f[d+4>>2]&-8)-k|0;j=h>>>0>>0;c=j?h:c;a=j?d:a;d=f[d+16+(((f[d+16>>2]|0)==0&1)<<2)>>2]|0}while((d|0)!=0);j=a;g=c}h=j+k|0;if(j>>>0>>0){e=f[j+24>>2]|0;b=f[j+12>>2]|0;do if((b|0)==(j|0)){a=j+20|0;b=f[a>>2]|0;if(!b){a=j+16|0;b=f[a>>2]|0;if(!b){c=0;break}}while(1){c=b+20|0;d=f[c>>2]|0;if(d|0){b=d;a=c;continue}c=b+16|0;d=f[c>>2]|0;if(!d)break;else{b=d;a=c}}f[a>>2]=0;c=b}else{c=f[j+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);do if(e|0){b=f[j+28>>2]|0;a=14912+(b<<2)|0;if((j|0)==(f[a>>2]|0)){f[a>>2]=c;if(!c){f[3653]=i&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=e;b=f[j+16>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}b=f[j+20>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}while(0);if(g>>>0<16){w=g+k|0;f[j+4>>2]=w|3;w=j+w+4|0;f[w>>2]=f[w>>2]|1}else{f[j+4>>2]=k|3;f[h+4>>2]=g|1;f[h+g>>2]=g;if(l|0){d=f[3657]|0;b=l>>>3;c=14648+(b<<1<<2)|0;b=1<>2]|0}f[a>>2]=d;f[b+12>>2]=d;f[d+8>>2]=b;f[d+12>>2]=c}f[3654]=g;f[3657]=h}w=j+8|0;u=x;return w|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;j=f[3653]|0;if(j){d=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)i=31;else{m=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;i=14-(l|m|i)+(v<>>15)|0;i=k>>>(i+7|0)&1|i<<1}else i=0;c=f[14912+(i<<2)>>2]|0;a:do if(!c){c=0;a=0;v=57}else{a=0;h=k<<((i|0)==31?0:25-(i>>>1)|0);g=0;while(1){e=(f[c+4>>2]&-8)-k|0;if(e>>>0>>0)if(!e){a=c;d=0;e=c;v=61;break a}else{a=c;d=e}e=f[c+20>>2]|0;c=f[c+16+(h>>>31<<2)>>2]|0;g=(e|0)==0|(e|0)==(c|0)?g:e;e=(c|0)==0;if(e){c=g;v=57;break}else h=h<<((e^1)&1)}}while(0);if((v|0)==57){if((c|0)==0&(a|0)==0){a=2<>>12&16;m=m>>>h;g=m>>>5&8;m=m>>>g;i=m>>>2&4;m=m>>>i;l=m>>>1&2;m=m>>>l;c=m>>>1&1;a=0;c=f[14912+((g|h|i|l|c)+(m>>>c)<<2)>>2]|0}if(!c){i=a;h=d}else{e=c;v=61}}if((v|0)==61)while(1){v=0;c=(f[e+4>>2]&-8)-k|0;m=c>>>0>>0;c=m?c:d;a=m?e:a;e=f[e+16+(((f[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){i=a;h=c;break}else{d=c;v=61}}if((i|0)!=0?h>>>0<((f[3654]|0)-k|0)>>>0:0){g=i+k|0;if(i>>>0>=g>>>0){w=0;u=x;return w|0}e=f[i+24>>2]|0;b=f[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=f[a>>2]|0;if(!b){a=i+16|0;b=f[a>>2]|0;if(!b){b=0;break}}while(1){c=b+20|0;d=f[c>>2]|0;if(d|0){b=d;a=c;continue}c=b+16|0;d=f[c>>2]|0;if(!d)break;else{b=d;a=c}}f[a>>2]=0}else{w=f[i+8>>2]|0;f[w+12>>2]=b;f[b+8>>2]=w}while(0);do if(e){a=f[i+28>>2]|0;c=14912+(a<<2)|0;if((i|0)==(f[c>>2]|0)){f[c>>2]=b;if(!b){d=j&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){d=j;break}}f[b+24>>2]=e;a=f[i+16>>2]|0;if(a|0){f[b+16>>2]=a;f[a+24>>2]=b}a=f[i+20>>2]|0;if(a){f[b+20>>2]=a;f[a+24>>2]=b;d=j}else d=j}else d=j;while(0);do if(h>>>0>=16){f[i+4>>2]=k|3;f[g+4>>2]=h|1;f[g+h>>2]=h;b=h>>>3;if(h>>>0<256){c=14648+(b<<1<<2)|0;a=f[3652]|0;b=1<>2]|0}f[a>>2]=g;f[b+12>>2]=g;f[g+8>>2]=b;f[g+12>>2]=c;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(t|v|b)+(w<>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;c=14912+(b<<2)|0;f[g+28>>2]=b;a=g+16|0;f[a+4>>2]=0;f[a>>2]=0;a=1<>2]=g;f[g+24>>2]=c;f[g+12>>2]=g;f[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);c=f[c>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(h|0)){v=97;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=96;break}else{a=a<<1;c=b}}if((v|0)==96){f[d>>2]=g;f[g+24>>2]=c;f[g+12>>2]=g;f[g+8>>2]=g;break}else if((v|0)==97){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=g;f[v>>2]=g;f[g+8>>2]=w;f[g+12>>2]=c;f[g+24>>2]=0;break}}else{w=h+k|0;f[i+4>>2]=w|3;w=i+w+4|0;f[w>>2]=f[w>>2]|1}while(0);w=i+8|0;u=x;return w|0}else m=k}else m=k}else m=-1;while(0);c=f[3654]|0;if(c>>>0>=m>>>0){b=c-m|0;a=f[3657]|0;if(b>>>0>15){w=a+m|0;f[3657]=w;f[3654]=b;f[w+4>>2]=b|1;f[w+b>>2]=b;f[a+4>>2]=m|3}else{f[3654]=0;f[3657]=0;f[a+4>>2]=c|3;w=a+c+4|0;f[w>>2]=f[w>>2]|1}w=a+8|0;u=x;return w|0}h=f[3655]|0;if(h>>>0>m>>>0){t=h-m|0;f[3655]=t;w=f[3658]|0;v=w+m|0;f[3658]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}if(!(f[3770]|0)){f[3772]=4096;f[3771]=4096;f[3773]=-1;f[3774]=-1;f[3775]=0;f[3763]=0;a=n&-16^1431655768;f[n>>2]=a;f[3770]=a;a=4096}else a=f[3772]|0;i=m+48|0;j=m+47|0;g=a+j|0;e=0-a|0;k=g&e;if(k>>>0<=m>>>0){w=0;u=x;return w|0}a=f[3762]|0;if(a|0?(l=f[3760]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){w=0;u=x;return w|0}b:do if(!(f[3763]&4)){c=f[3658]|0;c:do if(c){d=15056;while(1){a=f[d>>2]|0;if(a>>>0<=c>>>0?(q=d+4|0,(a+(f[q>>2]|0)|0)>>>0>c>>>0):0)break;a=f[d+8>>2]|0;if(!a){v=118;break c}else d=a}b=g-h&e;if(b>>>0<2147483647){a=uf(b|0)|0;if((a|0)==((f[d>>2]|0)+(f[q>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{d=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){c=uf(0)|0;if((c|0)!=(-1|0)?(b=c,o=f[3771]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=f[3760]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){q=f[3762]|0;if(q|0?p>>>0<=o>>>0|p>>>0>q>>>0:0){b=0;break}a=uf(b|0)|0;if((a|0)==(c|0)){h=b;g=c;v=135;break b}else{d=a;v=126}}else b=0}while(0);do if((v|0)==126){c=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(d|0)!=(-1|0))))if((d|0)==(-1|0)){b=0;break}else{h=b;g=d;v=135;break b}a=f[3772]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=d;v=135;break b}if((uf(a|0)|0)==(-1|0)){uf(c|0)|0;b=0;break}else{h=a+b|0;g=d;v=135;break b}}while(0);f[3763]=f[3763]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?k>>>0<2147483647:0)?(t=uf(k|0)|0,q=uf(0)|0,r=q-t|0,s=r>>>0>(m+40|0)>>>0,!((t|0)==(-1|0)|s^1|t>>>0>>0&((t|0)!=(-1|0)&(q|0)!=(-1|0))^1)):0){h=s?r:b;g=t;v=135}if((v|0)==135){b=(f[3760]|0)+h|0;f[3760]=b;if(b>>>0>(f[3761]|0)>>>0)f[3761]=b;j=f[3658]|0;do if(j){b=15056;while(1){a=f[b>>2]|0;c=b+4|0;d=f[c>>2]|0;if((g|0)==(a+d|0)){v=145;break}e=f[b+8>>2]|0;if(!e)break;else b=e}if(((v|0)==145?(f[b+12>>2]&8|0)==0:0)?j>>>0>>0&j>>>0>=a>>>0:0){f[c>>2]=d+h;w=j+8|0;w=(w&7|0)==0?0:0-w&7;v=j+w|0;w=(f[3655]|0)+(h-w)|0;f[3658]=v;f[3655]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[3659]=f[3774];break}if(g>>>0<(f[3656]|0)>>>0)f[3656]=g;c=g+h|0;b=15056;while(1){if((f[b>>2]|0)==(c|0)){v=153;break}a=f[b+8>>2]|0;if(!a)break;else b=a}if((v|0)==153?(f[b+12>>2]&8|0)==0:0){f[b>>2]=g;l=b+4|0;f[l>>2]=(f[l>>2]|0)+h;l=g+8|0;l=g+((l&7|0)==0?0:0-l&7)|0;b=c+8|0;b=c+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;f[l+4>>2]=m|3;do if((b|0)!=(j|0)){if((b|0)==(f[3657]|0)){w=(f[3654]|0)+i|0;f[3654]=w;f[3657]=k;f[k+4>>2]=w|1;f[k+w>>2]=w;break}a=f[b+4>>2]|0;if((a&3|0)==1){h=a&-8;d=a>>>3;d:do if(a>>>0<256){a=f[b+8>>2]|0;c=f[b+12>>2]|0;if((c|0)==(a|0)){f[3652]=f[3652]&~(1<>2]=c;f[c+8>>2]=a;break}}else{g=f[b+24>>2]|0;a=f[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;c=d+4|0;a=f[c>>2]|0;if(!a){a=f[d>>2]|0;if(!a){a=0;break}else c=d}while(1){d=a+20|0;e=f[d>>2]|0;if(e|0){a=e;c=d;continue}d=a+16|0;e=f[d>>2]|0;if(!e)break;else{a=e;c=d}}f[c>>2]=0}else{w=f[b+8>>2]|0;f[w+12>>2]=a;f[a+8>>2]=w}while(0);if(!g)break;c=f[b+28>>2]|0;d=14912+(c<<2)|0;do if((b|0)!=(f[d>>2]|0)){f[g+16+(((f[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{f[d>>2]=a;if(a|0)break;f[3653]=f[3653]&~(1<>2]=g;c=b+16|0;d=f[c>>2]|0;if(d|0){f[a+16>>2]=d;f[d+24>>2]=a}c=f[c+4>>2]|0;if(!c)break;f[a+20>>2]=c;f[c+24>>2]=a}while(0);b=b+h|0;e=h+i|0}else e=i;b=b+4|0;f[b>>2]=f[b>>2]&-2;f[k+4>>2]=e|1;f[k+e>>2]=e;b=e>>>3;if(e>>>0<256){c=14648+(b<<1<<2)|0;a=f[3652]|0;b=1<>2]|0}f[a>>2]=k;f[b+12>>2]=k;f[k+8>>2]=b;f[k+12>>2]=c;break}b=e>>>8;do if(!b)b=0;else{if(e>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(t|v|b)+(w<>>15)|0;b=e>>>(b+7|0)&1|b<<1}while(0);d=14912+(b<<2)|0;f[k+28>>2]=b;a=k+16|0;f[a+4>>2]=0;f[a>>2]=0;a=f[3653]|0;c=1<>2]=k;f[k+24>>2]=d;f[k+12>>2]=k;f[k+8>>2]=k;break}a=e<<((b|0)==31?0:25-(b>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){v=194;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=193;break}else{a=a<<1;c=b}}if((v|0)==193){f[d>>2]=k;f[k+24>>2]=c;f[k+12>>2]=k;f[k+8>>2]=k;break}else if((v|0)==194){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=k;f[v>>2]=k;f[k+8>>2]=w;f[k+12>>2]=c;f[k+24>>2]=0;break}}else{w=(f[3655]|0)+i|0;f[3655]=w;f[3658]=k;f[k+4>>2]=w|1}while(0);w=l+8|0;u=x;return w|0}b=15056;while(1){a=f[b>>2]|0;if(a>>>0<=j>>>0?(w=a+(f[b+4>>2]|0)|0,w>>>0>j>>>0):0)break;b=f[b+8>>2]|0}e=w+-47|0;a=e+8|0;a=e+((a&7|0)==0?0:0-a&7)|0;e=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;c=g+8|0;c=(c&7|0)==0?0:0-c&7;v=g+c|0;c=h+-40-c|0;f[3658]=v;f[3655]=c;f[v+4>>2]=c|1;f[v+c+4>>2]=40;f[3659]=f[3774];c=a+4|0;f[c>>2]=27;f[b>>2]=f[3764];f[b+4>>2]=f[3765];f[b+8>>2]=f[3766];f[b+12>>2]=f[3767];f[3764]=g;f[3765]=h;f[3767]=0;f[3766]=b;b=a+24|0;do{v=b;b=b+4|0;f[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;f[c>>2]=f[c>>2]&-2;f[j+4>>2]=g|1;f[a>>2]=g;b=g>>>3;if(g>>>0<256){c=14648+(b<<1<<2)|0;a=f[3652]|0;b=1<>2]|0}f[a>>2]=j;f[b+12>>2]=j;f[j+8>>2]=b;f[j+12>>2]=c;break}b=g>>>8;if(b)if(g>>>0>16777215)c=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;c=14-(t|v|c)+(w<>>15)|0;c=g>>>(c+7|0)&1|c<<1}else c=0;d=14912+(c<<2)|0;f[j+28>>2]=c;f[j+20>>2]=0;f[e>>2]=0;b=f[3653]|0;a=1<>2]=j;f[j+24>>2]=d;f[j+12>>2]=j;f[j+8>>2]=j;break}a=g<<((c|0)==31?0:25-(c>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(g|0)){v=216;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=215;break}else{a=a<<1;c=b}}if((v|0)==215){f[d>>2]=j;f[j+24>>2]=c;f[j+12>>2]=j;f[j+8>>2]=j;break}else if((v|0)==216){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=j;f[v>>2]=j;f[j+8>>2]=w;f[j+12>>2]=c;f[j+24>>2]=0;break}}}else{w=f[3656]|0;if((w|0)==0|g>>>0>>0)f[3656]=g;f[3764]=g;f[3765]=h;f[3767]=0;f[3661]=f[3770];f[3660]=-1;b=0;do{w=14648+(b<<1<<2)|0;f[w+12>>2]=w;f[w+8>>2]=w;b=b+1|0}while((b|0)!=32);w=g+8|0;w=(w&7|0)==0?0:0-w&7;v=g+w|0;w=h+-40-w|0;f[3658]=v;f[3655]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[3659]=f[3774]}while(0);b=f[3655]|0;if(b>>>0>m>>>0){t=b-m|0;f[3655]=t;w=f[3658]|0;v=w+m|0;f[3658]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}}w=oi()|0;f[w>>2]=12;w=0;u=x;return w|0}function Qa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=u;u=u+16|0;b=k;i=k+8|0;c=k+4|0;f[i>>2]=a;do if(a>>>0>=212){h=(a>>>0)/210|0;e=h*210|0;f[c>>2]=a-e;a=0;g=(vf(3308,3500,c,b)|0)-3308>>2;b=e;a:while(1){e=(f[3308+(g<<2)>>2]|0)+b|0;b=5;while(1){if(b>>>0>=47){d=211;j=8;break}c=f[3116+(b<<2)>>2]|0;d=(e>>>0)/(c>>>0)|0;if(d>>>0>>0){j=106;break a}if((e|0)==(X(d,c)|0))break;else b=b+1|0}b:do if((j|0)==8){c:while(1){j=0;b=(e>>>0)/(d>>>0)|0;do if(b>>>0>=d>>>0)if((e|0)!=(X(b,d)|0)){b=d+10|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+12|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+16|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+18|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+22|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)!=(X(c,b)|0)){b=d+28|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>=b>>>0)if((e|0)==(X(c,b)|0))c=9;else{b=d+30|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+36|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+40|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+42|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+46|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+52|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+58|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+60|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+66|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+70|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+72|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+78|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+82|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+88|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+96|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+100|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+102|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+106|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+108|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+112|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+120|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+126|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+130|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+136|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+138|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+142|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+148|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+150|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+156|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+162|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+166|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+168|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+172|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+178|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+180|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+186|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+190|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+192|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+196|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+198|0;c=(e>>>0)/(b>>>0)|0;if(c>>>0>>0){c=1;a=e;break}if((e|0)==(X(c,b)|0)){c=9;break}b=d+208|0;c=(e>>>0)/(b>>>0)|0;l=c>>>0>>0;c=(e|0)==(X(c,b)|0);b=l|c?b:d+210|0;c=l?1:c?9:0;a=l?e:a}else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else c=9;else{c=1;a=e}}else{b=d;c=9}else{b=d;c=1;a=e}while(0);switch(c&15){case 9:break b;case 0:{d=b;j=8;break}default:break c}}if(c){j=107;break a}}while(0);l=g+1|0;e=(l|0)==48;b=(e&1)+h|0;h=b;g=e?0:l;b=b*210|0}if((j|0)==106){f[i>>2]=e;a=e;break}else if((j|0)==107){f[i>>2]=e;break}}else{a=vf(3116,3308,i,b)|0;a=f[a>>2]|0}while(0);u=k;return a|0}function Ra(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=Ca;if(!g){g=0;return g|0}do switch(f[a+28>>2]|0){case 1:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=og(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;i=a+48|0;i=Yg(l|0,I|0,f[i>>2]|0,f[i+4>>2]|0)|0;i=c+i|0;if(!(b[a+32>>0]|0)){c=i;a=0;while(1){m=$(b[c>>0]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}else{c=i;a=0;while(1){m=$($(b[c>>0]|0)/$(127.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 2:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=og(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;i=a+48|0;i=Yg(c|0,I|0,f[i>>2]|0,f[i+4>>2]|0)|0;i=l+i|0;if(!(b[a+32>>0]|0)){c=i;a=0;while(1){m=$(h[c>>0]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}else{c=i;a=0;while(1){m=$($(h[c>>0]|0)/$(255.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 3:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Yg(og(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(d[c>>1]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}else{a=0;while(1){m=$($(d[c>>1]|0)/$(32767.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 4:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Yg(og(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(j[c>>1]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}else{a=0;while(1){m=$($(j[c>>1]|0)/$(65535.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 5:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Yg(og(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(f[c>>2]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}else{a=0;while(1){m=$($(f[c>>2]|0)*$(4.65661287e-10));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 6:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Yg(og(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$((f[c>>2]|0)>>>0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}else{a=0;while(1){m=$($((f[c>>2]|0)>>>0)*$(2.32830644e-10));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 7:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Yg(og(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){i=c;m=$(+((f[i>>2]|0)>>>0)+4294967296.0*+(f[i+4>>2]|0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}else{a=0;while(1){i=c;m=$($(+((f[i>>2]|0)>>>0)+4294967296.0*+(f[i+4>>2]|0))*$(1.08420217e-19));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 8:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Yg(og(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){i=c;m=$(+((f[i>>2]|0)>>>0)+4294967296.0*+((f[i+4>>2]|0)>>>0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}else{a=0;while(1){i=c;m=$($(+((f[i>>2]|0)>>>0)+4294967296.0*+((f[i+4>>2]|0)>>>0))*$(5.42101086e-20));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 9:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=og(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Yg(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;a=0;while(1){f[g+(a<<2)>>2]=f[c>>2];a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 10:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=og(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Yg(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;a=0;while(1){m=$(+p[c>>3]);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 11:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=og(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Yg(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;a=0;while(1){m=$((b[c>>0]|0)!=0&1);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}default:{l=0;return l|0}}while(0);return 0}function Sa(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=u;u=u+64|0;U=V+16|0;H=V;I=a+8|0;f[I>>2]=e;j=a+32|0;d=a+36|0;i=f[d>>2]|0;h=f[j>>2]|0;g=i-h>>2;if(g>>>0>=e>>>0){if(g>>>0>e>>>0?(k=h+(e<<2)|0,(i|0)!=(k|0)):0)f[d>>2]=i+(~((i+-4-k|0)>>>2)<<2)}else Dd(j,e-g|0);d=U;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[H>>2]=0;if(!e){d=0;g=0}else{_c(U,e,H);d=f[U+12>>2]|0;g=f[U+16>>2]|0}f[H>>2]=0;h=U+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else _c(U+12|0,e-i|0,H);d=U+24|0;f[H>>2]=0;g=U+28|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(m=i+(e<<2)|0,(j|0)!=(m|0)):0)f[g>>2]=j+(~((j+-4-m|0)>>>2)<<2)}else _c(d,e-h|0,H);d=U+36|0;f[H>>2]=0;g=U+40|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(n=i+(e<<2)|0,(j|0)!=(n|0)):0)f[g>>2]=j+(~((j+-4-n|0)>>>2)<<2)}else _c(d,e-h|0,H);j=f[U>>2]|0;if((f[I>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;h=0;do{d=f[j+(h<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(h<<2)>>2]=g}else{G=f[m>>2]|0;k=f[i>>2]|0;f[k+(h<<2)>>2]=(d|0)<(G|0)?G:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=a+20|0;g=0;do{d=(f[b+(g<<2)>>2]|0)+(f[k+(g<<2)>>2]|0)|0;i=c+(g<<2)|0;f[i>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[h>>2]|0)+d|0;r=18}}else{d=d-(f[h>>2]|0)|0;r=18}if((r|0)==18){r=0;f[i>>2]=d}g=g+1|0}while((g|0)<(f[I>>2]|0))}}B=f[a+48>>2]|0;C=f[a+52>>2]|0;F=qg(16)|0;f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;f[F+12>>2]=0;f[H>>2]=0;G=H+4|0;f[G>>2]=0;f[H+8>>2]=0;do if(e)if(e>>>0>1073741823)Zh(H);else{E=e<<2;p=qg(E)|0;f[H>>2]=p;o=p+(e<<2)|0;f[H+8>>2]=o;Wd(p|0,0,E|0)|0;f[G>>2]=o;o=p;break}else{o=0;p=0}while(0);D=a+56|0;d=f[D>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;A=g-h|0;E=A>>2;do if((A|0)>4){v=B+64|0;w=B+28|0;x=(e|0)>0;y=a+16|0;z=a+32|0;A=a+12|0;s=a+20|0;t=e<<2;if(g-h>>2>>>0>1){J=1;q=h}else{r=d;Zh(r)}while(1){o=f[q+(J<<2)>>2]|0;n=o+((o|0)<0?0:((o>>>0)%3|0|0)==0?2:-1)|0;p=n>>>5;q=1<<(n&31);r=(n|0)<0;m=1;d=0;g=o;a:while(1){do{if((g|0)<=-1){r=63;break a}i=f[U+(d*12|0)>>2]|0;if(((f[(f[B>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)|0)==0?(K=f[(f[(f[v>>2]|0)+12>>2]|0)+(g<<2)>>2]|0,(K|0)>=0):0)?(N=f[w>>2]|0,l=f[C>>2]|0,L=f[l+(f[N+(K<<2)>>2]<<2)>>2]|0,M=K+1|0,M=f[l+(f[N+((((M|0)%3|0|0)==0?K+-2|0:M)<<2)>>2]<<2)>>2]|0,N=f[l+(f[N+((((K>>>0)%3|0|0)==0?2:-1)+K<<2)>>2]<<2)>>2]|0,(L|0)<(J|0)&(M|0)<(J|0)&(N|0)<(J|0)):0){j=X(L,e)|0;k=X(M,e)|0;l=X(N,e)|0;if(x){h=0;do{f[i+(h<<2)>>2]=(f[c+(h+l<<2)>>2]|0)+(f[c+(h+k<<2)>>2]|0)-(f[c+(h+j<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;r=44;break a}}do if(m){h=g+1|0;g=((h|0)%3|0|0)==0?g+-2|0:h;h=f[B>>2]|0;if(!(f[h+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[v>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;i=g+1|0;if((g|0)>=0)g=((i|0)%3|0|0)==0?g+-2|0:i}}else g=-1073741824}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;h=f[B>>2]|0;if(!(f[h+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[v>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}else g=-1073741824}while(0);if((g|0)==(o|0)){r=63;break a}}while(!(m&(g|0)<0));g=(q&f[h+(p<<2)>>2]|0)!=0;if(g|r){m=0;g=g?-1073741824:n;continue}g=f[(f[(f[v>>2]|0)+12>>2]|0)+(n<<2)>>2]|0;if((g|0)<0){m=0;continue}if(!((g>>>0)%3|0)){m=0;g=g+2|0;continue}else{m=0;g=g+-1|0;continue}}if((r|0)==63)if((d|0)>0)r=44;else{Q=X(J,e)|0;r=75}if((r|0)==44){r=0;if(x){Wd(f[H>>2]|0,0,t|0)|0;l=d+-1|0;k=F+(l<<2)|0;l=f[a+60+(l*12|0)>>2]|0;m=f[H>>2]|0;j=0;g=0;do{q=f[k>>2]|0;f[k>>2]=q+1;if(!(f[l+(q>>>5<<2)>>2]&1<<(q&31))){i=f[U+(j*12|0)>>2]|0;h=0;do{q=m+(h<<2)|0;f[q>>2]=(f[q>>2]|0)+(f[i+(h<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0));g=g+1|0}j=j+1|0}while((j|0)!=(d|0));d=g}else{j=d+-1|0;i=F+(j<<2)|0;j=f[a+60+(j*12|0)>>2]|0;h=0;g=0;k=f[i>>2]|0;do{q=k;k=k+1|0;f[i>>2]=k;g=g+((f[j+(q>>>5<<2)>>2]&1<<(q&31)|0)==0&1)|0;h=h+1|0}while((h|0)!=(d|0));d=g}h=X(J,e)|0;if(d){j=f[H>>2]|0;if(x){g=0;do{q=j+(g<<2)|0;f[q>>2]=(f[q>>2]|0)/(d|0)|0;g=g+1|0}while((g|0)!=(e|0))}l=b+(h<<2)|0;k=c+(h<<2)|0;if((f[I>>2]|0)>0){h=0;do{d=f[j+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{q=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(q|0)?q:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[l+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;do if((d|0)>(f[y>>2]|0)){d=d-(f[s>>2]|0)|0;r=97}else{if((d|0)>=(f[A>>2]|0))break;d=(f[s>>2]|0)+d|0;r=97}while(0);if((r|0)==97){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[I>>2]|0))}}}else{Q=h;r=75}}if((r|0)==75?(r=0,O=c+((X(J+-1|0,e)|0)<<2)|0,P=b+(Q<<2)|0,R=c+(Q<<2)|0,(f[I>>2]|0)>0):0){h=0;do{d=f[O+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{q=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(q|0)?q:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[P+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=R+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[y>>2]|0)){if((d|0)<(f[A>>2]|0)){d=(f[s>>2]|0)+d|0;r=85}}else{d=d-(f[s>>2]|0)|0;r=85}if((r|0)==85){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[I>>2]|0))}}J=J+1|0;if((J|0)>=(E|0)){r=28;break}d=f[D>>2]|0;q=f[d>>2]|0;if((f[d+4>>2]|0)-q>>2>>>0<=J>>>0){r=34;break}}if((r|0)==28){T=f[H>>2]|0;S=T;break}else if((r|0)==34)Zh(d)}else{S=p;T=o}while(0);if(S|0){d=f[G>>2]|0;if((d|0)!=(S|0))f[G>>2]=d+(~((d+-4-S|0)>>>2)<<2);Ci(T)}Ci(F);d=f[U+36>>2]|0;if(d|0){g=U+40|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Ci(d)}d=f[U+24>>2]|0;if(d|0){g=U+28|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Ci(d)}d=f[U+12>>2]|0;if(d|0){g=U+16|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Ci(d)}h=f[U>>2]|0;if(!h){u=V;return 1}d=U+4|0;g=f[d>>2]|0;if((g|0)!=(h|0))f[d>>2]=g+(~((g+-4-h|0)>>>2)<<2);Ci(h);u=V;return 1}function Ta(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;S=u;u=u+64|0;R=S+16|0;I=S;J=a+8|0;f[J>>2]=e;j=a+32|0;d=a+36|0;i=f[d>>2]|0;h=f[j>>2]|0;g=i-h>>2;if(g>>>0>=e>>>0){if(g>>>0>e>>>0?(k=h+(e<<2)|0,(i|0)!=(k|0)):0)f[d>>2]=i+(~((i+-4-k|0)>>>2)<<2)}else Dd(j,e-g|0);d=R;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[I>>2]=0;if(!e){d=0;g=0}else{_c(R,e,I);d=f[R+12>>2]|0;g=f[R+16>>2]|0}f[I>>2]=0;h=R+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else _c(R+12|0,e-i|0,I);d=R+24|0;f[I>>2]=0;g=R+28|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(m=i+(e<<2)|0,(j|0)!=(m|0)):0)f[g>>2]=j+(~((j+-4-m|0)>>>2)<<2)}else _c(d,e-h|0,I);d=R+36|0;f[I>>2]=0;g=R+40|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(n=i+(e<<2)|0,(j|0)!=(n|0)):0)f[g>>2]=j+(~((j+-4-n|0)>>>2)<<2)}else _c(d,e-h|0,I);j=f[R>>2]|0;if((f[J>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;h=0;do{d=f[j+(h<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(h<<2)>>2]=g}else{H=f[m>>2]|0;k=f[i>>2]|0;f[k+(h<<2)>>2]=(d|0)<(H|0)?H:d}h=h+1|0;d=f[J>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=a+20|0;g=0;do{d=(f[b+(g<<2)>>2]|0)+(f[k+(g<<2)>>2]|0)|0;i=c+(g<<2)|0;f[i>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[h>>2]|0)+d|0;r=18}}else{d=d-(f[h>>2]|0)|0;r=18}if((r|0)==18){r=0;f[i>>2]=d}g=g+1|0}while((g|0)<(f[J>>2]|0))}}C=f[a+48>>2]|0;D=f[a+52>>2]|0;G=qg(16)|0;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;f[G+12>>2]=0;f[I>>2]=0;H=I+4|0;f[H>>2]=0;f[I+8>>2]=0;do if(e)if(e>>>0>1073741823)Zh(I);else{F=e<<2;p=qg(F)|0;f[I>>2]=p;o=p+(e<<2)|0;f[I+8>>2]=o;Wd(p|0,0,F|0)|0;f[H>>2]=o;o=p;break}else{o=0;p=0}while(0);E=a+56|0;d=f[E>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;B=g-h|0;F=B>>2;do if((B|0)>4){w=C+12|0;x=(e|0)>0;y=a+16|0;z=a+32|0;A=a+12|0;B=a+20|0;v=e<<2;if(g-h>>2>>>0>1){K=1;q=h}else{t=d;Zh(t)}while(1){r=f[q+(K<<2)>>2]|0;s=(((r>>>0)%3|0|0)==0?2:-1)+r|0;t=(r|s|0)<0;q=(r|0)<0?r:s;p=1;d=0;g=r;a:while(1){do{if((g|0)<=-1){r=64;break a}n=f[R+(d*12|0)>>2]|0;o=f[w>>2]|0;i=f[o+(g<<2)>>2]|0;if((i|0)>=0){j=f[C>>2]|0;k=f[D>>2]|0;m=f[k+(f[j+(i<<2)>>2]<<2)>>2]|0;h=i+1|0;h=((h|0)%3|0|0)==0?i+-2|0:h;if((h|0)<0)h=-1073741824;else h=f[j+(h<<2)>>2]|0;l=f[k+(h<<2)>>2]|0;h=(((i>>>0)%3|0|0)==0?2:-1)+i|0;if((h|0)<0)h=-1073741824;else h=f[j+(h<<2)>>2]|0;h=f[k+(h<<2)>>2]|0;if((m|0)<(K|0)&(l|0)<(K|0)&(h|0)<(K|0)){k=X(m,e)|0;j=X(l,e)|0;i=X(h,e)|0;if(x){h=0;do{f[n+(h<<2)>>2]=(f[c+(h+i<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+k<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;r=47;break a}}}do if(p){n=g+1|0;g=((n|0)%3|0|0)==0?g+-2|0:n;if((g|0)>=0){g=f[o+(g<<2)>>2]|0;h=g+1|0;if((g|0)>=0)g=((h|0)%3|0|0)==0?g+-2|0:h}}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((g|0)>=0){g=f[o+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}while(0);if((g|0)==(r|0)){r=64;break a}}while(!(p&(g|0)<0));if(t){p=0;g=q;continue}g=f[o+(s<<2)>>2]|0;if((g|0)<0){p=0;continue}if(!((g>>>0)%3|0)){p=0;g=g+2|0;continue}else{p=0;g=g+-1|0;continue}}if((r|0)==64)if((d|0)>0)r=47;else{N=X(K,e)|0;r=76}if((r|0)==47){r=0;if(x){Wd(f[I>>2]|0,0,v|0)|0;l=d+-1|0;k=G+(l<<2)|0;l=f[a+60+(l*12|0)>>2]|0;m=f[I>>2]|0;j=0;g=0;do{t=f[k>>2]|0;f[k>>2]=t+1;if(!(f[l+(t>>>5<<2)>>2]&1<<(t&31))){i=f[R+(j*12|0)>>2]|0;h=0;do{t=m+(h<<2)|0;f[t>>2]=(f[t>>2]|0)+(f[i+(h<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0));g=g+1|0}j=j+1|0}while((j|0)!=(d|0));d=g}else{j=d+-1|0;i=G+(j<<2)|0;j=f[a+60+(j*12|0)>>2]|0;h=0;g=0;k=f[i>>2]|0;do{t=k;k=k+1|0;f[i>>2]=k;g=g+((f[j+(t>>>5<<2)>>2]&1<<(t&31)|0)==0&1)|0;h=h+1|0}while((h|0)!=(d|0));d=g}h=X(K,e)|0;if(d){j=f[I>>2]|0;if(x){g=0;do{t=j+(g<<2)|0;f[t>>2]=(f[t>>2]|0)/(d|0)|0;g=g+1|0}while((g|0)!=(e|0))}l=b+(h<<2)|0;k=c+(h<<2)|0;if((f[J>>2]|0)>0){h=0;do{d=f[j+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{t=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(t|0)?t:d}h=h+1|0;d=f[J>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[l+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;do if((d|0)>(f[y>>2]|0)){d=d-(f[B>>2]|0)|0;r=98}else{if((d|0)>=(f[A>>2]|0))break;d=(f[B>>2]|0)+d|0;r=98}while(0);if((r|0)==98){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[J>>2]|0))}}}else{N=h;r=76}}if((r|0)==76?(r=0,L=c+((X(K+-1|0,e)|0)<<2)|0,M=b+(N<<2)|0,O=c+(N<<2)|0,(f[J>>2]|0)>0):0){h=0;do{d=f[L+(h<<2)>>2]|0;g=f[y>>2]|0;if((d|0)>(g|0)){i=f[z>>2]|0;f[i+(h<<2)>>2]=g}else{t=f[A>>2]|0;i=f[z>>2]|0;f[i+(h<<2)>>2]=(d|0)<(t|0)?t:d}h=h+1|0;d=f[J>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[M+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=O+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[y>>2]|0)){if((d|0)<(f[A>>2]|0)){d=(f[B>>2]|0)+d|0;r=86}}else{d=d-(f[B>>2]|0)|0;r=86}if((r|0)==86){r=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[J>>2]|0))}}K=K+1|0;if((K|0)>=(F|0)){r=28;break}d=f[E>>2]|0;q=f[d>>2]|0;if((f[d+4>>2]|0)-q>>2>>>0<=K>>>0){r=34;break}}if((r|0)==28){Q=f[I>>2]|0;P=Q;break}else if((r|0)==34)Zh(d)}else{P=p;Q=o}while(0);if(P|0){d=f[H>>2]|0;if((d|0)!=(P|0))f[H>>2]=d+(~((d+-4-P|0)>>>2)<<2);Ci(Q)}Ci(G);d=f[R+36>>2]|0;if(d|0){g=R+40|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Ci(d)}d=f[R+24>>2]|0;if(d|0){g=R+28|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Ci(d)}d=f[R+12>>2]|0;if(d|0){g=R+16|0;h=f[g>>2]|0;if((h|0)!=(d|0))f[g>>2]=h+(~((h+-4-d|0)>>>2)<<2);Ci(d)}h=f[R>>2]|0;if(!h){u=S;return 1}d=R+4|0;g=f[d>>2]|0;if((g|0)!=(h|0))f[d>>2]=g+(~((g+-4-h|0)>>>2)<<2);Ci(h);u=S;return 1}function Ua(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=0,o=Ca,q=0.0;if(!g){g=0;return g|0}do switch(f[a+28>>2]|0){case 1:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;i=og(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(i|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=b[a>>0]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 2:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=og(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=h[a>>0];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 3:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=og(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=d[a>>1]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 4:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=og(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=j[a>>1];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 5:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=og(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=f[a>>2]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 6:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=og(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=f[a>>2];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;l=1;return l|0}case 7:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;c=f[f[a>>2]>>2]|0;i=a+40|0;l=og(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(l|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){m=a;l=f[m+4>>2]|0;i=g+(c<<3)|0;f[i>>2]=f[m>>2];f[i+4>>2]=l;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 8:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=og(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){l=a;m=f[l+4>>2]|0;i=g+(c<<3)|0;f[i>>2]=f[l>>2];f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 9:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=og(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){o=$(n[a>>2]);m=+K(+o)>=1.0?(+o>0.0?~~+Y(+J(+o/4294967296.0),4294967295.0)>>>0:~~+W((+o-+(~~+o>>>0))/4294967296.0)>>>0):0;i=g+(c<<3)|0;f[i>>2]=~~+o>>>0;f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 10:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=og(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){q=+p[a>>3];m=+K(q)>=1.0?(q>0.0?~~+Y(+J(q/4294967296.0),4294967295.0)>>>0:~~+W((q-+(~~q>>>0))/4294967296.0)>>>0):0;i=g+(c<<3)|0;f[i>>2]=~~q>>>0;f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}case 11:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){m=f[c>>2]|0;c=f[f[a>>2]>>2]|0;l=a+40|0;m=og(f[l>>2]|0,f[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;a=a+48|0;a=Yg(m|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;a=c+a|0;c=0;while(1){i=g+(c<<3)|0;f[i>>2]=h[a>>0];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}a=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Wd(g+(a<<3)|0,0,(e<<24>>24)-a<<3|0)|0;m=1;return m|0}default:{m=0;return m|0}}while(0);return 0}function Va(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;F=u;u=u+80|0;k=F+76|0;l=F+72|0;D=F+48|0;m=F+24|0;x=F;h=a+32|0;g=f[c>>2]|0;c=g+1|0;if((g|0)>=0){c=((c|0)%3|0|0)==0?g+-2|0:c;g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((c|0)<0)c=-1073741824;else c=f[(f[f[h>>2]>>2]|0)+(c<<2)>>2]|0;if((g|0)<0)h=-1073741824;else h=f[(f[f[h>>2]>>2]|0)+(g<<2)>>2]|0}else{c=-1073741824;h=-1073741824}i=f[a+36>>2]|0;g=f[i>>2]|0;j=(f[i+4>>2]|0)-g>>2;if(j>>>0<=c>>>0)Zh(i);w=f[g+(c<<2)>>2]|0;if(j>>>0<=h>>>0)Zh(i);h=f[g+(h<<2)>>2]|0;n=(w|0)<(e|0);do if(n&(h|0)<(e|0)){z=w<<1;q=f[d+(z<<2)>>2]|0;y=((q|0)<0)<<31>>31;z=f[d+((z|1)<<2)>>2]|0;A=((z|0)<0)<<31>>31;p=h<<1;o=f[d+(p<<2)>>2]|0;p=f[d+((p|1)<<2)>>2]|0;if(!((o|0)!=(q|0)|(p|0)!=(z|0))){f[a+8>>2]=q;f[a+12>>2]=z;u=F;return}i=a+4|0;c=f[(f[i>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;f[D+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,D)|0;c=f[(f[i>>2]|0)+(w<<2)>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,m)|0;c=f[(f[i>>2]|0)+(h<<2)>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;f[x+16>>2]=0;f[x+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;r=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,r,x)|0;r=x;i=m;h=f[i>>2]|0;i=f[i+4>>2]|0;r=Lg(f[r>>2]|0,f[r+4>>2]|0,h|0,i|0)|0;s=I;t=x+8|0;k=m+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;t=Lg(f[t>>2]|0,f[t+4>>2]|0,j|0,k|0)|0;v=I;l=x+16|0;g=m+16|0;c=f[g>>2]|0;g=f[g+4>>2]|0;l=Lg(f[l>>2]|0,f[l+4>>2]|0,c|0,g|0)|0;m=I;C=og(r|0,s|0,r|0,s|0)|0;x=I;B=og(t|0,v|0,t|0,v|0)|0;x=Yg(B|0,I|0,C|0,x|0)|0;C=I;B=og(l|0,m|0,l|0,m|0)|0;B=Yg(x|0,C|0,B|0,I|0)|0;C=I;if((B|0)==0&(C|0)==0)break;K=D;K=Lg(f[K>>2]|0,f[K+4>>2]|0,h|0,i|0)|0;J=I;H=D+8|0;H=Lg(f[H>>2]|0,f[H+4>>2]|0,j|0,k|0)|0;G=I;h=D+16|0;h=Lg(f[h>>2]|0,f[h+4>>2]|0,c|0,g|0)|0;i=I;k=og(K|0,J|0,r|0,s|0)|0;d=I;g=og(H|0,G|0,t|0,v|0)|0;d=Yg(g|0,I|0,k|0,d|0)|0;k=I;g=og(h|0,i|0,l|0,m|0)|0;g=Yg(d|0,k|0,g|0,I|0)|0;k=I;d=Lg(o|0,((o|0)<0)<<31>>31|0,q|0,y|0)|0;c=I;w=Lg(p|0,((p|0)<0)<<31>>31|0,z|0,A|0)|0;x=I;o=og(B|0,C|0,q|0,y|0)|0;n=I;q=og(B|0,C|0,z|0,A|0)|0;p=I;D=og(g|0,k|0,d|0,c|0)|0;e=I;j=og(g|0,k|0,w|0,x|0)|0;A=I;n=Yg(D|0,e|0,o|0,n|0)|0;o=I;p=Yg(j|0,A|0,q|0,p|0)|0;q=I;A=og(g|0,k|0,r|0,s|0)|0;j=I;e=og(g|0,k|0,t|0,v|0)|0;D=I;m=og(g|0,k|0,l|0,m|0)|0;k=I;j=Ge(A|0,j|0,B|0,C|0)|0;l=I;D=Ge(e|0,D|0,B|0,C|0)|0;e=I;k=Ge(m|0,k|0,B|0,C|0)|0;m=I;l=Lg(K|0,J|0,j|0,l|0)|0;j=I;e=Lg(H|0,G|0,D|0,e|0)|0;D=I;m=Lg(h|0,i|0,k|0,m|0)|0;k=I;j=og(l|0,j|0,l|0,j|0)|0;l=I;D=og(e|0,D|0,e|0,D|0)|0;l=Yg(D|0,I|0,j|0,l|0)|0;j=I;k=og(m|0,k|0,m|0,k|0)|0;k=Yg(l|0,j|0,k|0,I|0)|0;j=I;l=Lg(0,0,d|0,c|0)|0;m=I;j=og(k|0,j|0,B|0,C|0)|0;k=I;c=k&2147483647;switch(j|0){case 0:{if(!c){g=0;c=0}else{g=1;c=0;h=j;i=k;E=23}break}case 1:{if(!c){g=1;c=0;E=24}else{g=1;c=0;h=j;i=k;E=23}break}default:{g=1;c=0;h=j;i=k;E=23}}if((E|0)==23)while(1){g=Gg(g|0,c|0,1)|0;c=I;K=h;h=Ig(h|0,i|0,2)|0;if(!(i>>>0>0|(i|0)==0&K>>>0>7)){E=24;break}else{i=I;E=23}}if((E|0)==24)while(1){K=Bh(j|0,k|0,g|0,c|0)|0;g=Yg(K|0,I|0,g|0,c|0)|0;g=Ig(g|0,I|0,1)|0;c=I;K=og(g|0,c|0,g|0,c|0)|0;J=I;if(J>>>0>k>>>0|(J|0)==(k|0)&K>>>0>j>>>0)E=24;else break}E=og(g|0,c|0,w|0,x|0)|0;G=I;d=og(g|0,c|0,l|0,m|0)|0;H=I;J=a+20|0;D=(f[J>>2]|0)+-1|0;K=(1<<(D&31)&f[(f[a+16>>2]|0)+(D>>>5<<2)>>2]|0)!=0;f[J>>2]=D;J=Lg(0,0,E|0,G|0)|0;G=Yg(n|0,o|0,(K?E:J)|0,(K?G:I)|0)|0;J=I;E=Lg(0,0,d|0,H|0)|0;H=Yg(p|0,q|0,(K?d:E)|0,(K?H:I)|0)|0;K=I;J=Ge(G|0,J|0,B|0,C|0)|0;K=Ge(H|0,K|0,B|0,C|0)|0;f[a+8>>2]=J;f[a+12>>2]=K;u=F;return}while(0);do if(n)c=w<<1;else{if((e|0)>0){c=(e<<1)+-2|0;break}K=a+8|0;f[K>>2]=0;f[K+4>>2]=0;u=F;return}while(0);f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=f[d+(c+1<<2)>>2];u=F;return}function Wa(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;F=u;u=u+80|0;k=F+76|0;l=F+72|0;D=F+48|0;m=F+24|0;x=F;i=a+32|0;g=f[c>>2]|0;c=g+1|0;do if((g|0)>=0){c=((c|0)%3|0|0)==0?g+-2|0:c;if(!((g>>>0)%3|0)){h=g+2|0;break}else{h=g+-1|0;break}}else{h=g;c=g}while(0);i=f[(f[i>>2]|0)+28>>2]|0;g=f[i+(c<<2)>>2]|0;h=f[i+(h<<2)>>2]|0;i=f[a+36>>2]|0;c=f[i>>2]|0;j=(f[i+4>>2]|0)-c>>2;if(j>>>0<=g>>>0)Zh(i);w=f[c+(g<<2)>>2]|0;if(j>>>0<=h>>>0)Zh(i);h=f[c+(h<<2)>>2]|0;n=(w|0)<(e|0);do if(n&(h|0)<(e|0)){z=w<<1;q=f[d+(z<<2)>>2]|0;y=((q|0)<0)<<31>>31;z=f[d+((z|1)<<2)>>2]|0;A=((z|0)<0)<<31>>31;p=h<<1;o=f[d+(p<<2)>>2]|0;p=f[d+((p|1)<<2)>>2]|0;if(!((o|0)!=(q|0)|(p|0)!=(z|0))){f[a+8>>2]=q;f[a+12>>2]=z;u=F;return}i=a+4|0;c=f[(f[i>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;f[D+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,D)|0;c=f[(f[i>>2]|0)+(w<<2)>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,c,m)|0;c=f[(f[i>>2]|0)+(h<<2)>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;f[x+16>>2]=0;f[x+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;r=b[g+24>>0]|0;f[k>>2]=f[l>>2];Ua(g,k,r,x)|0;r=x;i=m;h=f[i>>2]|0;i=f[i+4>>2]|0;r=Lg(f[r>>2]|0,f[r+4>>2]|0,h|0,i|0)|0;s=I;t=x+8|0;k=m+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;t=Lg(f[t>>2]|0,f[t+4>>2]|0,j|0,k|0)|0;v=I;l=x+16|0;g=m+16|0;c=f[g>>2]|0;g=f[g+4>>2]|0;l=Lg(f[l>>2]|0,f[l+4>>2]|0,c|0,g|0)|0;m=I;C=og(r|0,s|0,r|0,s|0)|0;x=I;B=og(t|0,v|0,t|0,v|0)|0;x=Yg(B|0,I|0,C|0,x|0)|0;C=I;B=og(l|0,m|0,l|0,m|0)|0;B=Yg(x|0,C|0,B|0,I|0)|0;C=I;if((B|0)==0&(C|0)==0)break;K=D;K=Lg(f[K>>2]|0,f[K+4>>2]|0,h|0,i|0)|0;J=I;H=D+8|0;H=Lg(f[H>>2]|0,f[H+4>>2]|0,j|0,k|0)|0;G=I;h=D+16|0;h=Lg(f[h>>2]|0,f[h+4>>2]|0,c|0,g|0)|0;i=I;k=og(K|0,J|0,r|0,s|0)|0;d=I;g=og(H|0,G|0,t|0,v|0)|0;d=Yg(g|0,I|0,k|0,d|0)|0;k=I;g=og(h|0,i|0,l|0,m|0)|0;g=Yg(d|0,k|0,g|0,I|0)|0;k=I;d=Lg(o|0,((o|0)<0)<<31>>31|0,q|0,y|0)|0;c=I;w=Lg(p|0,((p|0)<0)<<31>>31|0,z|0,A|0)|0;x=I;o=og(B|0,C|0,q|0,y|0)|0;n=I;q=og(B|0,C|0,z|0,A|0)|0;p=I;D=og(g|0,k|0,d|0,c|0)|0;e=I;j=og(g|0,k|0,w|0,x|0)|0;A=I;n=Yg(D|0,e|0,o|0,n|0)|0;o=I;p=Yg(j|0,A|0,q|0,p|0)|0;q=I;A=og(g|0,k|0,r|0,s|0)|0;j=I;e=og(g|0,k|0,t|0,v|0)|0;D=I;m=og(g|0,k|0,l|0,m|0)|0;k=I;j=Ge(A|0,j|0,B|0,C|0)|0;l=I;D=Ge(e|0,D|0,B|0,C|0)|0;e=I;k=Ge(m|0,k|0,B|0,C|0)|0;m=I;l=Lg(K|0,J|0,j|0,l|0)|0;j=I;e=Lg(H|0,G|0,D|0,e|0)|0;D=I;m=Lg(h|0,i|0,k|0,m|0)|0;k=I;j=og(l|0,j|0,l|0,j|0)|0;l=I;D=og(e|0,D|0,e|0,D|0)|0;l=Yg(D|0,I|0,j|0,l|0)|0;j=I;k=og(m|0,k|0,m|0,k|0)|0;k=Yg(l|0,j|0,k|0,I|0)|0;j=I;l=Lg(0,0,d|0,c|0)|0;m=I;j=og(k|0,j|0,B|0,C|0)|0;k=I;c=k&2147483647;switch(j|0){case 0:{if(!c){g=0;c=0}else{g=1;c=0;h=j;i=k;E=22}break}case 1:{if(!c){g=1;c=0;E=23}else{g=1;c=0;h=j;i=k;E=22}break}default:{g=1;c=0;h=j;i=k;E=22}}if((E|0)==22)while(1){g=Gg(g|0,c|0,1)|0;c=I;K=h;h=Ig(h|0,i|0,2)|0;if(!(i>>>0>0|(i|0)==0&K>>>0>7)){E=23;break}else{i=I;E=22}}if((E|0)==23)while(1){K=Bh(j|0,k|0,g|0,c|0)|0;g=Yg(K|0,I|0,g|0,c|0)|0;g=Ig(g|0,I|0,1)|0;c=I;K=og(g|0,c|0,g|0,c|0)|0;J=I;if(J>>>0>k>>>0|(J|0)==(k|0)&K>>>0>j>>>0)E=23;else break}E=og(g|0,c|0,w|0,x|0)|0;G=I;d=og(g|0,c|0,l|0,m|0)|0;H=I;J=a+20|0;D=(f[J>>2]|0)+-1|0;K=(1<<(D&31)&f[(f[a+16>>2]|0)+(D>>>5<<2)>>2]|0)!=0;f[J>>2]=D;J=Lg(0,0,E|0,G|0)|0;G=Yg(n|0,o|0,(K?E:J)|0,(K?G:I)|0)|0;J=I;E=Lg(0,0,d|0,H|0)|0;H=Yg(p|0,q|0,(K?d:E)|0,(K?H:I)|0)|0;K=I;J=Ge(G|0,J|0,B|0,C|0)|0;K=Ge(H|0,K|0,B|0,C|0)|0;f[a+8>>2]=J;f[a+12>>2]=K;u=F;return}while(0);do if(n)c=w<<1;else{if((e|0)>0){c=(e<<1)+-2|0;break}K=a+8|0;f[K>>2]=0;f[K+4>>2]=0;u=F;return}while(0);f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=f[d+(c+1<<2)>>2];u=F;return}function Xa(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;S=u;u=u+96|0;F=S+92|0;J=S+88|0;K=S+72|0;L=S+48|0;M=S+24|0;N=S;O=a+4|0;m=f[O>>2]|0;if(!m)xa(9258,9280,46,9452);G=a+8|0;l=f[G>>2]|0;if(!l)xa(9258,9280,46,9452);H=a+16|0;E=f[H>>2]|0;n=f[c>>2]|0;f[K>>2]=E;f[K+4>>2]=n;D=K+8|0;f[D>>2]=n;b[K+12>>0]=1;c=f[(f[E+28>>2]|0)+(n<<2)>>2]|0;E=a+20|0;i=f[E>>2]|0;k=f[i>>2]|0;if((f[i+4>>2]|0)-k>>2>>>0<=c>>>0)Zh(i);c=f[l+(f[k+(c<<2)>>2]<<2)>>2]|0;if(!(b[m+84>>0]|0))c=f[(f[m+68>>2]|0)+(c<<2)>>2]|0;f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;f[L+12>>2]=0;f[L+16>>2]=0;f[L+20>>2]=0;f[J>>2]=c;c=b[m+24>>0]|0;f[F>>2]=f[J>>2];Ua(m,F,c,L)|0;c=f[D>>2]|0;w=a+28|0;i=(f[w>>2]|0)==0;a:do if((c|0)>=0){x=M+8|0;y=L+8|0;z=M+16|0;A=L+16|0;B=N+8|0;C=N+16|0;k=(n|0)<0;t=n+1|0;v=n+(k?0:((n>>>0)%3|0|0)==0?2:-1)|0;t=k?n:((t|0)%3|0|0)==0?n+-2|0:t;k=0;r=0;l=0;s=0;m=0;o=0;while(1){do if(!i){i=c+1|0;i=((i|0)%3|0|0)==0?c+-2|0:i;if(!((c>>>0)%3|0)){q=c+2|0;break}else{q=c+-1|0;break}}else{q=v;i=t}while(0);p=f[O>>2]|0;if(!p){c=16;break}a=f[G>>2]|0;if(!a){c=16;break}c=f[(f[(f[H>>2]|0)+28>>2]|0)+(i<<2)>>2]|0;n=f[E>>2]|0;i=f[n>>2]|0;if((f[n+4>>2]|0)-i>>2>>>0<=c>>>0){c=18;break}c=f[a+(f[i+(c<<2)>>2]<<2)>>2]|0;if(!(b[p+84>>0]|0))c=f[(f[p+68>>2]|0)+(c<<2)>>2]|0;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;f[M+12>>2]=0;f[M+16>>2]=0;f[M+20>>2]=0;f[J>>2]=c;n=b[p+24>>0]|0;f[F>>2]=f[J>>2];Ua(p,F,n,M)|0;p=f[O>>2]|0;if(!p){c=23;break}a=f[G>>2]|0;if(!a){c=23;break}c=f[(f[(f[H>>2]|0)+28>>2]|0)+(q<<2)>>2]|0;n=f[E>>2]|0;i=f[n>>2]|0;if((f[n+4>>2]|0)-i>>2>>>0<=c>>>0){c=25;break}c=f[a+(f[i+(c<<2)>>2]<<2)>>2]|0;if(!(b[p+84>>0]|0))c=f[(f[p+68>>2]|0)+(c<<2)>>2]|0;f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=0;f[N+20>>2]=0;f[J>>2]=c;c=b[p+24>>0]|0;f[F>>2]=f[J>>2];Ua(p,F,c,N)|0;c=M;_=L;Z=f[_>>2]|0;_=f[_+4>>2]|0;c=Lg(f[c>>2]|0,f[c+4>>2]|0,Z|0,_|0)|0;i=I;q=x;aa=y;$=f[aa>>2]|0;aa=f[aa+4>>2]|0;q=Lg(f[q>>2]|0,f[q+4>>2]|0,$|0,aa|0)|0;p=I;U=z;n=A;T=f[n>>2]|0;n=f[n+4>>2]|0;U=Lg(f[U>>2]|0,f[U+4>>2]|0,T|0,n|0)|0;V=I;W=N;_=Lg(f[W>>2]|0,f[W+4>>2]|0,Z|0,_|0)|0;Z=I;W=B;aa=Lg(f[W>>2]|0,f[W+4>>2]|0,$|0,aa|0)|0;$=I;W=C;n=Lg(f[W>>2]|0,f[W+4>>2]|0,T|0,n|0)|0;T=I;W=og(n|0,T|0,q|0,p|0)|0;a=I;Y=og(aa|0,$|0,U|0,V|0)|0;X=I;V=og(_|0,Z|0,U|0,V|0)|0;U=I;T=og(n|0,T|0,c|0,i|0)|0;n=I;i=og(aa|0,$|0,c|0,i|0)|0;c=I;p=og(_|0,Z|0,q|0,p|0)|0;q=I;k=Lg(k|0,r|0,Y|0,X|0)|0;k=Yg(k|0,I|0,W|0,a|0)|0;a=I;l=Yg(V|0,U|0,l|0,s|0)|0;l=Lg(l|0,I|0,T|0,n|0)|0;n=I;m=Lg(m|0,o|0,p|0,q|0)|0;m=Yg(m|0,I|0,i|0,c|0)|0;o=I;rc(K);c=f[D>>2]|0;i=(f[w>>2]|0)==0;if((c|0)<0){P=i;j=a;Q=k;R=n;h=l;g=o;e=m;break a}else{r=a;s=n}}if((c|0)==16)xa(9258,9509,70,9681);else if((c|0)==18)Zh(n);else if((c|0)==23)xa(9258,9509,70,9681);else if((c|0)==25)Zh(n)}else{P=i;j=0;Q=0;R=0;h=0;g=0;e=0}while(0);aa=(j|0)>-1|(j|0)==-1&Q>>>0>4294967295;i=Lg(0,0,Q|0,j|0)|0;c=aa?j:I;X=(R|0)>-1|(R|0)==-1&h>>>0>4294967295;Y=Lg(0,0,h|0,R|0)|0;Z=X?R:I;$=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;_=Lg(0,0,e|0,g|0)|0;$=Yg((X?h:Y)|0,Z|0,($?e:_)|0,($?g:I)|0)|0;c=Yg($|0,I|0,(aa?Q:i)|0,c|0)|0;i=I;if(P)if((c|0)>536870912){aa=Ig(c|0,i|0,29)|0;aa=aa&7;i=Ge(Q|0,j|0,aa|0,0)|0;j=I;h=Ge(h|0,R|0,aa|0,0)|0;c=I;e=Ge(e|0,g|0,aa|0,0)|0;g=I}else{i=Q;c=R}else if((i|0)>0|(i|0)==0&c>>>0>536870912){$=Ig(c|0,i|0,29)|0;aa=I;i=Ge(Q|0,j|0,$|0,aa|0)|0;j=I;h=Ge(h|0,R|0,$|0,aa|0)|0;c=I;e=Ge(e|0,g|0,$|0,aa|0)|0;g=I}else{i=Q;c=R}_=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;$=Lg(0,0,i|0,j|0)|0;aa=_?j:I;V=(c|0)>-1|(c|0)==-1&h>>>0>4294967295;W=Lg(0,0,h|0,c|0)|0;X=V?c:I;Z=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;Y=Lg(0,0,e|0,g|0)|0;Z=Yg((V?h:W)|0,X|0,(Z?e:Y)|0,(Z?g:I)|0)|0;aa=Yg(Z|0,I|0,(_?i:$)|0,aa|0)|0;$=I;if(($|0)<0|($|0)==0&aa>>>0<536870913){f[d>>2]=i;f[d+4>>2]=h;f[d+8>>2]=e;u=S;return}else xa(9474,9280,95,9452)}function Ya(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=Ca,l=Ca,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=Ca;C=u;u=u+64|0;e=C+40|0;z=C+16|0;A=C;g=qb(a,c)|0;if(g|0){f[z>>2]=g;f[e>>2]=f[z>>2];pc(a,e)|0}f[A>>2]=0;B=A+4|0;f[B>>2]=0;f[A+8>>2]=0;g=f[d>>2]|0;i=(f[d+4>>2]|0)-g|0;if(!i)j=0;else{Hd(A,i);j=f[A>>2]|0;g=f[d>>2]|0}Mc(j|0,g|0,i|0)|0;Xd(z,c);c=z+12|0;f[c>>2]=0;y=z+16|0;f[y>>2]=0;f[z+20>>2]=0;j=f[B>>2]|0;g=f[A>>2]|0;i=j-g|0;if(!i){d=g;i=j;g=0}else{Hd(c,i);d=f[A>>2]|0;i=f[B>>2]|0;g=f[c>>2]|0}Mc(g|0,d|0,i-d|0)|0;x=z+11|0;t=b[x>>0]|0;v=t<<24>>24<0;s=v?f[z>>2]|0:z;t=v?f[z+4>>2]|0:t&255;if(t>>>0>3){i=s;g=t;j=t;while(1){v=X(h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24,1540483477)|0;g=(X(v>>>24^v,1540483477)|0)^(X(g,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else i=i+4|0}i=t+-4|0;j=i&-4;i=i-j|0;j=s+(j+4)|0}else{i=t;j=s;g=t}switch(i|0){case 3:{g=h[j+2>>0]<<16^g;w=12;break}case 2:{w=12;break}case 1:{w=13;break}default:{}}if((w|0)==12){g=h[j+1>>0]<<8^g;w=13}if((w|0)==13)g=X(h[j>>0]^g,1540483477)|0;v=X(g>>>13^g,1540483477)|0;v=v>>>15^v;q=a+4|0;d=f[q>>2]|0;r=(d|0)==0;a:do if(!r){p=d+-1|0;j=(p&d|0)==0;if(!j)if(v>>>0>>0)g=v;else g=(v>>>0)%(d>>>0)|0;else g=v&p;i=f[(f[a>>2]|0)+(g<<2)>>2]|0;if((i|0)!=0?(o=f[i>>2]|0,(o|0)!=0):0){i=(t|0)==0;if(j){if(i){i=o;while(1){t=f[i+4>>2]|0;if(!((t|0)==(v|0)|(t&p|0)==(g|0))){w=54;break a}t=b[i+8+11>>0]|0;if(!((t<<24>>24<0?f[i+12>>2]|0:t&255)|0))break a;i=f[i>>2]|0;if(!i){w=54;break a}}}while(1){m=f[o+4>>2]|0;if(!((m|0)==(v|0)|(m&p|0)==(g|0))){w=54;break a}c=o+8|0;i=b[c+11>>0]|0;j=i<<24>>24<0;i=i&255;do if(((j?f[o+12>>2]|0:i)|0)==(t|0)){m=f[c>>2]|0;if(j)if(!(lf(m,s,t)|0))break a;else break;if((m&255)<<24>>24==(b[s>>0]|0)){j=s;do{i=i+-1|0;c=c+1|0;if(!i)break a;j=j+1|0}while((b[c>>0]|0)==(b[j>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=54;break a}}}if(i){j=o;while(1){i=f[j+4>>2]|0;if((i|0)!=(v|0)){if(i>>>0>=d>>>0)i=(i>>>0)%(d>>>0)|0;if((i|0)!=(g|0)){w=54;break a}}t=b[j+8+11>>0]|0;if(!((t<<24>>24<0?f[j+12>>2]|0:t&255)|0))break a;j=f[j>>2]|0;if(!j){w=54;break a}}}while(1){i=f[o+4>>2]|0;if((i|0)!=(v|0)){if(i>>>0>=d>>>0)i=(i>>>0)%(d>>>0)|0;if((i|0)!=(g|0)){w=54;break a}}c=o+8|0;i=b[c+11>>0]|0;j=i<<24>>24<0;i=i&255;do if(((j?f[o+12>>2]|0:i)|0)==(t|0)){m=f[c>>2]|0;if(j)if(!(lf(m,s,t)|0))break a;else break;if((m&255)<<24>>24==(b[s>>0]|0)){j=s;do{i=i+-1|0;c=c+1|0;if(!i)break a;j=j+1|0}while((b[c>>0]|0)==(b[j>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=54;break}}}else w=54}else{g=0;w=54}while(0);if((w|0)==54){zd(e,a,v,z);c=a+12|0;k=$(((f[c>>2]|0)+1|0)>>>0);D=$(d>>>0);l=$(n[a+16>>2]);do if(r|k>$(D*l)){g=(d>>>0<3|(d+-1&d|0)!=0)&1|d<<1;i=~~$(W($(k/l)))>>>0;od(a,g>>>0>>0?i:g);g=f[q>>2]|0;i=g+-1|0;if(!(i&g)){d=g;g=i&v;break}if(v>>>0>>0){d=g;g=v}else{d=g;g=(v>>>0)%(g>>>0)|0}}while(0);i=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!i){j=a+8|0;f[f[e>>2]>>2]=f[j>>2];f[j>>2]=f[e>>2];f[(f[a>>2]|0)+(g<<2)>>2]=j;j=f[e>>2]|0;g=f[j>>2]|0;if(g){g=f[g+4>>2]|0;i=d+-1|0;if(i&d){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0}else g=g&i;f[(f[a>>2]|0)+(g<<2)>>2]=j}}else{f[f[e>>2]>>2]=f[i>>2];f[i>>2]=f[e>>2]}f[c>>2]=(f[c>>2]|0)+1;f[e>>2]=0}e=f[z+12>>2]|0;if(e|0){if((f[y>>2]|0)!=(e|0))f[y>>2]=e;Ci(e)}if((b[x>>0]|0)<0)Ci(f[z>>2]|0);e=f[A>>2]|0;if(!e){u=C;return}if((f[B>>2]|0)!=(e|0))f[B>>2]=e;Ci(e);u=C;return}function Za(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;D=a+8|0;f[D>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0){if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0)f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2)}else Dd(i,e-d|0);d=e>>>0>1073741823?-1:e<<2;B=yi(d)|0;Wd(B|0,0,d|0)|0;C=yi(d)|0;Wd(C|0,0,d|0)|0;d=f[D>>2]|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[B+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{z=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(z|0)?z:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;J=18}}else{d=d-(f[i>>2]|0)|0;J=18}if((J|0)==18){J=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}r=f[a+48>>2]|0;s=f[a+56>>2]|0;t=s+4|0;g=f[t>>2]|0;h=f[s>>2]|0;z=g-h|0;u=z>>2;if((z|0)<=4){zi(C);zi(B);return 1}v=f[a+52>>2]|0;w=(e|0)>0;x=a+16|0;y=a+32|0;z=a+12|0;n=a+20|0;o=r+64|0;p=r+28|0;q=e<<2;if(g-h>>2>>>0>1){E=1;A=d;m=h}else Zh(s);while(1){a=f[m+(E<<2)>>2]|0;if(w)Wd(B|0,0,q|0)|0;if((a|0)>-1){l=f[r>>2]|0;j=0;k=a;do{if(((f[l+(k>>>5<<2)>>2]&1<<(k&31)|0)==0?(F=f[(f[(f[o>>2]|0)+12>>2]|0)+(k<<2)>>2]|0,(F|0)>=0):0)?(I=f[p>>2]|0,m=f[v>>2]|0,G=f[m+(f[I+(F<<2)>>2]<<2)>>2]|0,H=F+1|0,H=f[m+(f[I+((((H|0)%3|0|0)==0?F+-2|0:H)<<2)>>2]<<2)>>2]|0,I=f[m+(f[I+((((F>>>0)%3|0|0)==0?2:-1)+F<<2)>>2]<<2)>>2]|0,(G|0)<(E|0)&(H|0)<(E|0)&(I|0)<(E|0)):0){g=X(G,e)|0;h=X(H,e)|0;i=X(I,e)|0;if(w){d=0;do{f[C+(d<<2)>>2]=(f[c+(d+i<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+g<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(w){d=0;do{m=B+(d<<2)|0;f[m>>2]=(f[m>>2]|0)+(f[C+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}j=j+1|0}d=(((k>>>0)%3|0|0)==0?2:-1)+k|0;do if(!(f[l+(d>>>5<<2)>>2]&1<<(d&31))){if((d|0)>=0){d=f[(f[(f[o>>2]|0)+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}}else d=-1073741824;while(0);k=(d|0)==(a|0)?-1073741824:d}while((k|0)>-1);g=X(E,e)|0;if(j){if(w){d=0;do{m=B+(d<<2)|0;f[m>>2]=(f[m>>2]|0)/(j|0)|0;d=d+1|0}while((d|0)!=(e|0))}k=b+(g<<2)|0;j=c+(g<<2)|0;if((A|0)>0){h=0;do{d=f[B+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){i=f[y>>2]|0;f[i+(h<<2)>>2]=g}else{A=f[z>>2]|0;i=f[y>>2]|0;f[i+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[k+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=j+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[n>>2]|0)+d|0;J=68}}else{d=d-(f[n>>2]|0)|0;J=68}if((J|0)==68){J=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}else{d=g;J=46}}else{d=X(E,e)|0;J=46}if((J|0)==46){J=0;i=c+((X(E+-1|0,e)|0)<<2)|0;l=b+(d<<2)|0;k=c+(d<<2)|0;if((A|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){j=f[y>>2]|0;f[j+(h<<2)>>2]=g}else{A=f[z>>2]|0;j=f[y>>2]|0;f[j+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[l+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[n>>2]|0)+d|0;J=56}}else{d=d-(f[n>>2]|0)|0;J=56}if((J|0)==56){J=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}E=E+1|0;if((E|0)>=(u|0)){J=22;break}m=f[s>>2]|0;if((f[t>>2]|0)-m>>2>>>0<=E>>>0){J=23;break}else A=d}if((J|0)==22){zi(C);zi(B);return 1}else if((J|0)==23)Zh(s);return 0}function _a(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=a+8|0;f[D>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0){if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0)f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2)}else Dd(i,e-d|0);d=e>>>0>1073741823?-1:e<<2;B=yi(d)|0;Wd(B|0,0,d|0)|0;C=yi(d)|0;Wd(C|0,0,d|0)|0;d=f[D>>2]|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[B+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{z=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(z|0)?z:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;F=18}}else{d=d-(f[i>>2]|0)|0;F=18}if((F|0)==18){F=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}r=f[a+48>>2]|0;s=f[a+56>>2]|0;t=s+4|0;g=f[t>>2]|0;h=f[s>>2]|0;z=g-h|0;u=z>>2;if((z|0)<=4){zi(C);zi(B);return 1}v=f[a+52>>2]|0;w=(e|0)>0;x=a+16|0;y=a+32|0;z=a+12|0;o=a+20|0;p=r+12|0;q=e<<2;if(g-h>>2>>>0>1){E=1;A=d;m=h}else Zh(s);while(1){n=f[m+(E<<2)>>2]|0;if(w)Wd(B|0,0,q|0)|0;if((n|0)>-1){m=f[p>>2]|0;h=0;a=n;do{g=f[m+(a<<2)>>2]|0;if((g|0)>=0){i=f[r>>2]|0;j=f[v>>2]|0;l=f[j+(f[i+(g<<2)>>2]<<2)>>2]|0;d=g+1|0;d=((d|0)%3|0|0)==0?g+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[i+(d<<2)>>2]|0;k=f[j+(d<<2)>>2]|0;d=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((d|0)<0)d=-1073741824;else d=f[i+(d<<2)>>2]|0;d=f[j+(d<<2)>>2]|0;if((l|0)<(E|0)&(k|0)<(E|0)&(d|0)<(E|0)){j=X(l,e)|0;i=X(k,e)|0;g=X(d,e)|0;if(w){d=0;do{f[C+(d<<2)>>2]=(f[c+(d+g<<2)>>2]|0)+(f[c+(d+i<<2)>>2]|0)-(f[c+(d+j<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(w){d=0;do{l=B+(d<<2)|0;f[l>>2]=(f[l>>2]|0)+(f[C+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}h=h+1|0}}d=(((a>>>0)%3|0|0)==0?2:-1)+a|0;do if((d|0)>=0){d=f[m+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}while(0);a=(d|0)==(n|0)?-1073741824:d}while((a|0)>-1);g=X(E,e)|0;if(h){if(w){d=0;do{n=B+(d<<2)|0;f[n>>2]=(f[n>>2]|0)/(h|0)|0;d=d+1|0}while((d|0)!=(e|0))}k=b+(g<<2)|0;j=c+(g<<2)|0;if((A|0)>0){h=0;do{d=f[B+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){i=f[y>>2]|0;f[i+(h<<2)>>2]=g}else{A=f[z>>2]|0;i=f[y>>2]|0;f[i+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[k+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=j+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[o>>2]|0)+d|0;F=70}}else{d=d-(f[o>>2]|0)|0;F=70}if((F|0)==70){F=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}else{d=g;F=48}}else{d=X(E,e)|0;F=48}if((F|0)==48){F=0;i=c+((X(E+-1|0,e)|0)<<2)|0;l=b+(d<<2)|0;k=c+(d<<2)|0;if((A|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){j=f[y>>2]|0;f[j+(h<<2)>>2]=g}else{A=f[z>>2]|0;j=f[y>>2]|0;f[j+(h<<2)>>2]=(d|0)<(A|0)?A:d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[l+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[z>>2]|0)){d=(f[o>>2]|0)+d|0;F=58}}else{d=d-(f[o>>2]|0)|0;F=58}if((F|0)==58){F=0;f[g>>2]=d}h=h+1|0;d=f[D>>2]|0}while((h|0)<(d|0))}}else d=A}E=E+1|0;if((E|0)>=(u|0)){F=22;break}m=f[s>>2]|0;if((f[t>>2]|0)-m>>2>>>0<=E>>>0){F=23;break}else A=d}if((F|0)==22){zi(C);zi(B);return 1}else if((F|0)==23)Zh(s);return 0}function $a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;if(!a)return;c=a+-8|0;e=f[3656]|0;a=f[a+-4>>2]|0;b=a&-8;j=c+b|0;do if(!(a&1)){d=f[c>>2]|0;if(!(a&3))return;h=c+(0-d)|0;g=d+b|0;if(h>>>0>>0)return;if((h|0)==(f[3657]|0)){a=j+4|0;b=f[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}f[3654]=g;f[a>>2]=b&-2;f[h+4>>2]=g|1;f[h+g>>2]=g;return}c=d>>>3;if(d>>>0<256){a=f[h+8>>2]|0;b=f[h+12>>2]|0;if((b|0)==(a|0)){f[3652]=f[3652]&~(1<>2]=b;f[b+8>>2]=a;i=h;b=g;break}}e=f[h+24>>2]|0;a=f[h+12>>2]|0;do if((a|0)==(h|0)){c=h+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){a=0;break}else b=c}while(1){c=a+20|0;d=f[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=f[c>>2]|0;if(!d)break;else{a=d;b=c}}f[b>>2]=0}else{i=f[h+8>>2]|0;f[i+12>>2]=a;f[a+8>>2]=i}while(0);if(e){b=f[h+28>>2]|0;c=14912+(b<<2)|0;if((h|0)==(f[c>>2]|0)){f[c>>2]=a;if(!a){f[3653]=f[3653]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}f[a+24>>2]=e;b=h+16|0;c=f[b>>2]|0;if(c|0){f[a+16>>2]=c;f[c+24>>2]=a}b=f[b+4>>2]|0;if(b){f[a+20>>2]=b;f[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=c;h=c}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;d=f[a>>2]|0;if(!(d&1))return;if(!(d&2)){a=f[3657]|0;if((j|0)==(f[3658]|0)){j=(f[3655]|0)+b|0;f[3655]=j;f[3658]=i;f[i+4>>2]=j|1;if((i|0)!=(a|0))return;f[3657]=0;f[3654]=0;return}if((j|0)==(a|0)){j=(f[3654]|0)+b|0;f[3654]=j;f[3657]=h;f[i+4>>2]=j|1;f[h+j>>2]=j;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){b=f[j+8>>2]|0;a=f[j+12>>2]|0;if((a|0)==(b|0)){f[3652]=f[3652]&~(1<>2]=a;f[a+8>>2]=b;break}}else{g=f[j+24>>2]|0;a=f[j+12>>2]|0;do if((a|0)==(j|0)){c=j+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){c=0;break}else b=c}while(1){c=a+20|0;d=f[c>>2]|0;if(d|0){a=d;b=c;continue}c=a+16|0;d=f[c>>2]|0;if(!d)break;else{a=d;b=c}}f[b>>2]=0;c=a}else{c=f[j+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(g|0){a=f[j+28>>2]|0;b=14912+(a<<2)|0;if((j|0)==(f[b>>2]|0)){f[b>>2]=c;if(!c){f[3653]=f[3653]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=g;a=j+16|0;b=f[a>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}a=f[a+4>>2]|0;if(a|0){f[c+20>>2]=a;f[a+24>>2]=c}}}while(0);f[i+4>>2]=e|1;f[h+e>>2]=e;if((i|0)==(f[3657]|0)){f[3654]=e;return}}else{f[a>>2]=d&-2;f[i+4>>2]=b|1;f[h+b>>2]=b;e=b}a=e>>>3;if(e>>>0<256){c=14648+(a<<1<<2)|0;b=f[3652]|0;a=1<>2]|0}f[b>>2]=i;f[a+12>>2]=i;f[i+8>>2]=a;f[i+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<>>16&4;j=j<>>16&2;a=14-(g|h|a)+(j<>>15)|0;a=e>>>(a+7|0)&1|a<<1}else a=0;d=14912+(a<<2)|0;f[i+28>>2]=a;f[i+20>>2]=0;f[i+16>>2]=0;b=f[3653]|0;c=1<>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){a=73;break}d=c+16+(b>>>31<<2)|0;a=f[d>>2]|0;if(!a){a=72;break}else{b=b<<1;c=a}}if((a|0)==72){f[d>>2]=i;f[i+24>>2]=c;f[i+12>>2]=i;f[i+8>>2]=i;break}else if((a|0)==73){h=c+8|0;j=f[h>>2]|0;f[j+12>>2]=i;f[h>>2]=i;f[i+8>>2]=j;f[i+12>>2]=c;f[i+24>>2]=0;break}}else{f[3653]=b|c;f[d>>2]=i;f[i+24>>2]=d;f[i+12>>2]=i;f[i+8>>2]=i}while(0);j=(f[3660]|0)+-1|0;f[3660]=j;if(!j)a=15064;else return;while(1){a=f[a>>2]|0;if(!a)break;else a=a+8|0}f[3660]=-1;return}function ab(a,c){a=a|0;c=c|0;var d=0,e=0,g=Ca,i=Ca,j=0,k=0,l=0,m=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=Ca;v=b[c+11>>0]|0;x=v<<24>>24<0;w=x?f[c>>2]|0:c;v=x?f[c+4>>2]|0:v&255;if(v>>>0>3){j=w;m=v;k=v;while(1){x=X(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24,1540483477)|0;m=(X(x>>>24^x,1540483477)|0)^(X(m,1540483477)|0);k=k+-4|0;if(k>>>0<=3)break;else j=j+4|0}k=v+-4|0;l=k&-4;k=k-l|0;l=w+(l+4)|0;j=m}else{k=v;l=w;j=v}switch(k|0){case 3:{o=h[l+2>>0]<<16^j;z=6;break}case 2:{o=j;z=6;break}case 1:{p=j;z=7;break}default:q=j}if((z|0)==6){p=h[l+1>>0]<<8^o;z=7}if((z|0)==7)q=X(h[l>>0]^p,1540483477)|0;x=X(q>>>13^q,1540483477)|0;x=x>>>15^x;s=a+4|0;t=f[s>>2]|0;u=(t|0)==0;a:do if(!u){q=t+-1|0;k=(q&t|0)==0;if(!k)if(x>>>0>>0)r=x;else r=(x>>>0)%(t>>>0)|0;else r=x&q;j=f[(f[a>>2]|0)+(r<<2)>>2]|0;if((j|0)!=0?(e=f[j>>2]|0,(e|0)!=0):0){p=(v|0)==0;if(k){if(p){d=e;while(1){w=f[d+4>>2]|0;if(!((w|0)==(x|0)|(w&q|0)==(r|0))){d=r;break a}w=b[d+8+11>>0]|0;if(!((w<<24>>24<0?f[d+12>>2]|0:w&255)|0)){j=d;break}d=f[d>>2]|0;if(!d){d=r;break a}}a=j+20|0;return a|0}else j=e;b:while(1){o=f[j+4>>2]|0;if(!((o|0)==(x|0)|(o&q|0)==(r|0))){d=r;break a}m=j+8|0;k=b[m+11>>0]|0;l=k<<24>>24<0;k=k&255;do if(((l?f[j+12>>2]|0:k)|0)==(v|0)){o=f[m>>2]|0;if(l)if(!(lf(o,w,v)|0)){z=63;break b}else break;if((o&255)<<24>>24==(b[w>>0]|0)){l=w;do{k=k+-1|0;m=m+1|0;if(!k){z=63;break b}l=l+1|0}while((b[m>>0]|0)==(b[l>>0]|0))}}while(0);j=f[j>>2]|0;if(!j){d=r;break a}}if((z|0)==63){a=j+20|0;return a|0}}if(p){while(1){d=f[e+4>>2]|0;if((d|0)!=(x|0)){if(d>>>0>=t>>>0)d=(d>>>0)%(t>>>0)|0;if((d|0)!=(r|0)){d=r;break a}}w=b[e+8+11>>0]|0;if(!((w<<24>>24<0?f[e+12>>2]|0:w&255)|0)){j=e;break}e=f[e>>2]|0;if(!e){d=r;break a}}a=j+20|0;return a|0}c:while(1){j=f[e+4>>2]|0;if((j|0)!=(x|0)){if(j>>>0>=t>>>0)j=(j>>>0)%(t>>>0)|0;if((j|0)!=(r|0)){d=r;break a}}l=e+8|0;j=b[l+11>>0]|0;k=j<<24>>24<0;j=j&255;do if(((k?f[e+12>>2]|0:j)|0)==(v|0)){m=f[l>>2]|0;if(k)if(!(lf(m,w,v)|0)){j=e;z=63;break c}else break;if((m&255)<<24>>24==(b[w>>0]|0)){k=w;do{j=j+-1|0;l=l+1|0;if(!j){j=e;z=63;break c}k=k+1|0}while((b[l>>0]|0)==(b[k>>0]|0))}}while(0);e=f[e>>2]|0;if(!e){d=r;break a}}if((z|0)==63){a=j+20|0;return a|0}}else d=r}else d=0;while(0);l=qg(24)|0;Xd(l+8|0,c);f[l+20>>2]=0;f[l+4>>2]=x;f[l>>2]=0;k=a+12|0;g=$(((f[k>>2]|0)+1|0)>>>0);A=$(t>>>0);i=$(n[a+16>>2]);do if(u|g>$(A*i)){d=(t>>>0<3|(t+-1&t|0)!=0)&1|t<<1;e=~~$(W($(g/i)))>>>0;od(a,d>>>0>>0?e:d);d=f[s>>2]|0;e=d+-1|0;if(!(e&d)){j=d;d=e&x;break}if(x>>>0>>0){j=d;d=x}else{j=d;d=(x>>>0)%(d>>>0)|0}}else j=t;while(0);d=(f[a>>2]|0)+(d<<2)|0;e=f[d>>2]|0;if(!e){c=a+8|0;f[l>>2]=f[c>>2];f[c>>2]=l;f[d>>2]=c;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;y=(f[a>>2]|0)+(d<<2)|0;z=61}}else{f[l>>2]=f[e>>2];y=e;z=61}if((z|0)==61)f[y>>2]=l;f[k>>2]=(f[k>>2]|0)+1;a=l;a=a+20|0;return a|0}function bb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;F=u;u=u+112|0;y=F+100|0;z=F+80|0;A=F+48|0;e=F+96|0;B=F+24|0;C=F+76|0;D=F;E=F+72|0;if(!(f[a+4>>2]|0))xa(9258,9280,46,9452);if(!(f[a+8>>2]|0))xa(9258,9280,46,9452);c=f[c>>2]|0;f[z>>2]=f[a+16>>2];f[z+4>>2]=c;x=z+8|0;f[x>>2]=c;b[z+12>>0]=1;f[e>>2]=c;f[y>>2]=f[e>>2];kd(A,a,y);p=a+28|0;m=(f[p>>2]|0)==0;if((c|0)<0){j=0;k=0;l=0;g=0;e=0;c=0}else{n=c+1|0;n=((n|0)%3|0|0)==0?c+-2|0:n;q=B+8|0;r=A+8|0;s=B+16|0;t=A+16|0;v=D+8|0;w=D+16|0;o=c+(((c>>>0)%3|0|0)==0?2:-1)|0;i=c;k=0;j=0;g=0;l=0;c=0;e=0;do{do if(!m){h=i+1|0;h=((h|0)%3|0|0)==0?i+-2|0:h;if(!((i>>>0)%3|0)){i=i+2|0;break}else{i=i+-1|0;break}}else{i=o;h=n}while(0);f[C>>2]=h;f[y>>2]=f[C>>2];kd(B,a,y);f[E>>2]=i;f[y>>2]=f[E>>2];kd(D,a,y);i=B;R=A;Q=f[R>>2]|0;R=f[R+4>>2]|0;i=Lg(f[i>>2]|0,f[i+4>>2]|0,Q|0,R|0)|0;m=I;h=q;T=r;S=f[T>>2]|0;T=f[T+4>>2]|0;h=Lg(f[h>>2]|0,f[h+4>>2]|0,S|0,T|0)|0;G=I;K=s;H=t;J=f[H>>2]|0;H=f[H+4>>2]|0;K=Lg(f[K>>2]|0,f[K+4>>2]|0,J|0,H|0)|0;L=I;N=D;R=Lg(f[N>>2]|0,f[N+4>>2]|0,Q|0,R|0)|0;Q=I;N=v;T=Lg(f[N>>2]|0,f[N+4>>2]|0,S|0,T|0)|0;S=I;N=w;H=Lg(f[N>>2]|0,f[N+4>>2]|0,J|0,H|0)|0;J=I;N=og(H|0,J|0,h|0,G|0)|0;M=I;P=og(T|0,S|0,K|0,L|0)|0;O=I;L=og(R|0,Q|0,K|0,L|0)|0;K=I;J=og(H|0,J|0,i|0,m|0)|0;H=I;m=og(T|0,S|0,i|0,m|0)|0;i=I;G=og(R|0,Q|0,h|0,G|0)|0;h=I;k=Lg(k|0,j|0,P|0,O|0)|0;k=Yg(k|0,I|0,N|0,M|0)|0;j=I;g=Yg(L|0,K|0,g|0,l|0)|0;g=Lg(g|0,I|0,J|0,H|0)|0;l=I;c=Lg(c|0,e|0,G|0,h|0)|0;c=Yg(c|0,I|0,m|0,i|0)|0;e=I;Pc(z);i=f[x>>2]|0;m=(f[p>>2]|0)==0}while((i|0)>=0)}T=(j|0)>-1|(j|0)==-1&k>>>0>4294967295;i=Lg(0,0,k|0,j|0)|0;h=T?j:I;O=(l|0)>-1|(l|0)==-1&g>>>0>4294967295;P=Lg(0,0,g|0,l|0)|0;Q=O?l:I;S=(e|0)>-1|(e|0)==-1&c>>>0>4294967295;R=Lg(0,0,c|0,e|0)|0;S=Yg((O?g:P)|0,Q|0,(S?c:R)|0,(S?e:I)|0)|0;h=Yg(S|0,I|0,(T?k:i)|0,h|0)|0;i=I;if(m)if((h|0)>536870912){T=Ig(h|0,i|0,29)|0;T=T&7;i=Ge(k|0,j|0,T|0,0)|0;j=I;g=Ge(g|0,l|0,T|0,0)|0;h=I;c=Ge(c|0,e|0,T|0,0)|0;e=I}else{i=k;h=l}else if((i|0)>0|(i|0)==0&h>>>0>536870912){S=Ig(h|0,i|0,29)|0;T=I;i=Ge(k|0,j|0,S|0,T|0)|0;j=I;g=Ge(g|0,l|0,S|0,T|0)|0;h=I;c=Ge(c|0,e|0,S|0,T|0)|0;e=I}else{i=k;h=l}R=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;S=Lg(0,0,i|0,j|0)|0;T=R?j:I;M=(h|0)>-1|(h|0)==-1&g>>>0>4294967295;N=Lg(0,0,g|0,h|0)|0;O=M?h:I;Q=(e|0)>-1|(e|0)==-1&c>>>0>4294967295;P=Lg(0,0,c|0,e|0)|0;Q=Yg((M?g:N)|0,O|0,(Q?c:P)|0,(Q?e:I)|0)|0;T=Yg(Q|0,I|0,(R?i:S)|0,T|0)|0;S=I;if((S|0)<0|(S|0)==0&T>>>0<536870913){f[d>>2]=i;f[d+4>>2]=g;f[d+8>>2]=c;u=F;return}else xa(9474,9280,95,9452)}function cb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;F=u;u=u+80|0;y=F+76|0;A=F;B=F+72|0;C=F+64|0;D=F+68|0;E=a+28|0;do if(((h[(f[E>>2]|0)+36>>0]|0)<<8&65535)<512){w=c+8|0;x=f[w>>2]|0;w=f[w+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=Yg(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((w|0)<(i|0)|(w|0)==(i|0)&x>>>0>>0){E=0;u=F;return E|0}else{x=(f[c>>2]|0)+e|0;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;f[y>>2]=x;f[d>>2]=g;f[d+4>>2]=i;d=x;break}}else if(le(y,c)|0){d=f[y>>2]|0;break}else{E=0;u=F;return E|0}while(0);if(!d){E=0;u=F;return E|0}x=a+4|0;e=a+8|0;j=f[e>>2]|0;i=f[x>>2]|0;g=j-i>>2;if(d>>>0>g>>>0){Dd(x,d-g|0);if(!(f[y>>2]|0)){E=1;u=F;return E|0}}else if(d>>>0>>0?(k=i+(d<<2)|0,(j|0)!=(k|0)):0)f[e>>2]=j+(~((j+-4-k|0)>>>2)<<2);p=f[a+32>>2]|0;q=c+8|0;r=c+16|0;s=A+60|0;t=p+8|0;v=p+12|0;w=a+16|0;o=a+20|0;n=0;while(1){i=q;e=f[i>>2]|0;i=f[i+4>>2]|0;l=r;a=f[l>>2]|0;l=f[l+4>>2]|0;if(!((i|0)>(l|0)|(i|0)==(l|0)&e>>>0>a>>>0)){d=0;e=53;break}j=f[c>>2]|0;m=b[j+a>>0]|0;d=Yg(a|0,l|0,1,0)|0;k=I;g=r;f[g>>2]=d;f[g+4>>2]=k;if(!((i|0)>(k|0)|(i|0)==(k|0)&e>>>0>d>>>0)){d=0;e=53;break}k=b[j+d>>0]|0;d=Yg(a|0,l|0,2,0)|0;g=I;G=r;f[G>>2]=d;f[G+4>>2]=g;if(!((i|0)>(g|0)|(i|0)==(g|0)&e>>>0>d>>>0)){d=0;e=53;break}g=b[j+d>>0]|0;d=Yg(a|0,l|0,3,0)|0;G=I;H=r;f[H>>2]=d;f[H+4>>2]=G;if(!((i|0)>(G|0)|(i|0)==(G|0)&e>>>0>d>>>0)){d=0;e=53;break}e=b[j+d>>0]|0;H=Yg(a|0,l|0,4,0)|0;d=r;f[d>>2]=H;f[d+4>>2]=I;d=k&255;if((k+-1&255)>10){d=0;e=53;break}xf(A);H=X(Gf(d)|0,g&255)|0;ke(A,m&255,0,g,d,e<<24>>24!=0,H,((H|0)<0)<<31>>31,0,0);H=f[E>>2]|0;if((((h[H+36>>0]|0)<<8|(h[H+37>>0]|0))&65535)<259){G=q;H=f[G>>2]|0;G=f[G+4>>2]|0;e=r;d=f[e>>2]|0;e=Yg(d|0,f[e+4>>2]|0,2,0)|0;g=I;if((G|0)<(g|0)|(G|0)==(g|0)&H>>>0>>0){e=51;break}d=(f[c>>2]|0)+d|0;d=h[d>>0]|h[d+1>>0]<<8;H=r;f[H>>2]=e;f[H+4>>2]=g;d=d&65535;f[B>>2]=d}else{le(B,c)|0;d=f[B>>2]|0}f[s>>2]=d;j=qg(96)|0;rf(j,A);f[C>>2]=j;j=Wc(p,C)|0;i=f[C>>2]|0;f[C>>2]=0;if(i|0){H=i+88|0;d=f[H>>2]|0;f[H>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Ci(e)}Ci(d)}d=f[i+68>>2]|0;if(d|0){e=i+72|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~((g+-4-d|0)>>>2)<<2);Ci(d)}H=i+64|0;d=f[H>>2]|0;f[H>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Ci(e)}Ci(d)}Ci(i)}if((j|0)<=-1){e=41;break}d=f[t>>2]|0;if(((f[v>>2]|0)-d>>2|0)<=(j|0)){e=43;break}f[(f[d+(j<<2)>>2]|0)+60>>2]=f[B>>2];f[(f[x>>2]|0)+(n<<2)>>2]=j;e=f[o>>2]|0;d=f[w>>2]|0;g=e-d>>2;if((j|0)>=(g|0)){i=j+1|0;f[D>>2]=-1;if(i>>>0<=g>>>0){if(i>>>0>>0?(z=d+(i<<2)|0,(e|0)!=(z|0)):0)f[o>>2]=e+(~((e+-4-z|0)>>>2)<<2)}else{_c(w,i-g|0,D);d=f[w>>2]|0}}f[d+(j<<2)>>2]=n;n=n+1|0;if(n>>>0>=(f[y>>2]|0)>>>0){d=1;e=53;break}}if((e|0)==41)xa(13357,14007,67,14106);else if((e|0)==43)xa(13953,14007,68,14106);else if((e|0)==51){H=0;u=F;return H|0}else if((e|0)==53){u=F;return d|0}return 0}function db(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+16|0;k=l;j=c+8|0;o=j;m=f[o>>2]|0;o=f[o+4>>2]|0;i=c+16|0;g=i;e=f[g>>2]|0;g=Yg(e|0,f[g+4>>2]|0,5,0)|0;n=I;if((o|0)<(n|0)|(o|0)==(n|0)&m>>>0>>0){e=qg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13502;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Xd(a+4|0,k);if((b[k+11>>0]|0)<0)Ci(f[k>>2]|0);u=l;return}e=(f[c>>2]|0)+e|0;b[d>>0]=b[e>>0]|0;b[d+1>>0]=b[e+1>>0]|0;b[d+2>>0]=b[e+2>>0]|0;b[d+3>>0]=b[e+3>>0]|0;b[d+4>>0]=b[e+4>>0]|0;e=i;e=Yg(f[e>>2]|0,f[e+4>>2]|0,5,0)|0;g=I;o=i;f[o>>2]=e;f[o+4>>2]=g;if(lf(d,13532,5)|0){e=qg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=17;g=e;c=13538;i=g+17|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+17>>0]=0;f[a>>2]=-1;Xd(a+4|0,k);if((b[k+11>>0]|0)<0)Ci(f[k>>2]|0);u=l;return}o=j;n=f[o+4>>2]|0;if(!((n|0)>(g|0)|((n|0)==(g|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=qg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13502;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Xd(a+4|0,k);if((b[k+11>>0]|0)<0)Ci(f[k>>2]|0);u=l;return}b[d+5>>0]=b[(f[c>>2]|0)+e>>0]|0;e=i;e=Yg(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=i;f[o>>2]=e;f[o+4>>2]=n;o=j;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=qg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13502;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Xd(a+4|0,k);if((b[k+11>>0]|0)<0)Ci(f[k>>2]|0);u=l;return}b[d+6>>0]=b[(f[c>>2]|0)+e>>0]|0;e=i;e=Yg(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=i;f[o>>2]=e;f[o+4>>2]=n;o=j;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=qg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13502;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Xd(a+4|0,k);if((b[k+11>>0]|0)<0)Ci(f[k>>2]|0);u=l;return}b[d+7>>0]=b[(f[c>>2]|0)+e>>0]|0;e=i;e=Yg(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=i;f[o>>2]=e;f[o+4>>2]=n;o=j;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=qg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13502;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Xd(a+4|0,k);if((b[k+11>>0]|0)<0)Ci(f[k>>2]|0);u=l;return}b[d+8>>0]=b[(f[c>>2]|0)+e>>0]|0;o=i;m=f[o>>2]|0;o=f[o+4>>2]|0;e=Yg(m|0,o|0,1,0)|0;n=i;f[n>>2]=e;f[n+4>>2]=I;n=f[j>>2]|0;j=f[j+4>>2]|0;o=Yg(m|0,o|0,3,0)|0;m=I;if(!((j|0)<(m|0)|(j|0)==(m|0)&n>>>0>>0)){n=d+10|0;o=(f[c>>2]|0)+e|0;o=h[o>>0]|h[o+1>>0]<<8;b[n>>0]=o;b[n+1>>0]=o>>8;n=i;n=Yg(f[n>>2]|0,f[n+4>>2]|0,2,0)|0;o=i;f[o>>2]=n;f[o+4>>2]=I;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=l;return}e=qg(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=13502;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Xd(a+4|0,k);if((b[k+11>>0]|0)<0)Ci(f[k>>2]|0);u=l;return}function eb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=a+8|0;f[z>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0)if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0){f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2);d=e}else d=e;else{Dd(i,e-d|0);d=f[z>>2]|0}w=f[a+48>>2]|0;x=f[a+52>>2]|0;v=e>>>0>1073741823?-1:e<<2;y=yi(v)|0;Wd(y|0,0,v|0)|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[y+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{v=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(v|0)?v:d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;B=18}}else{d=d-(f[i>>2]|0)|0;B=18}if((B|0)==18){B=0;f[g>>2]=d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0))}}r=f[a+56>>2]|0;g=f[r>>2]|0;v=(f[r+4>>2]|0)-g|0;s=v>>2;if((v|0)<=4){zi(y);return 1}t=a+16|0;u=a+32|0;v=a+12|0;o=a+20|0;p=w+12|0;q=(e|0)>0;n=1;while(1){if(s>>>0<=n>>>0){B=24;break}h=f[g+(n<<2)>>2]|0;m=X(n,e)|0;if((h|0)>=0?(A=f[(f[p>>2]|0)+(h<<2)>>2]|0,(A|0)>=0):0){i=f[w>>2]|0;j=f[x>>2]|0;k=f[j+(f[i+(A<<2)>>2]<<2)>>2]|0;h=A+1|0;h=((h|0)%3|0|0)==0?A+-2|0:h;if((h|0)<0)h=-1073741824;else h=f[i+(h<<2)>>2]|0;l=f[j+(h<<2)>>2]|0;h=(((A>>>0)%3|0|0)==0?2:-1)+A|0;if((h|0)<0)h=-1073741824;else h=f[i+(h<<2)>>2]|0;h=f[j+(h<<2)>>2]|0;if((k|0)<(n|0)&(l|0)<(n|0)&(h|0)<(n|0)){k=X(k,e)|0;j=X(l,e)|0;i=X(h,e)|0;if(q){h=0;do{f[y+(h<<2)>>2]=(f[c+(h+i<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+k<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}l=b+(m<<2)|0;k=c+(m<<2)|0;if((d|0)>0){i=0;do{d=f[y+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){j=f[u>>2]|0;f[j+(i<<2)>>2]=h}else{m=f[v>>2]|0;j=f[u>>2]|0;f[j+(i<<2)>>2]=(d|0)<(m|0)?m:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[l+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;h=k+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[o>>2]|0)+d|0;B=56}}else{d=d-(f[o>>2]|0)|0;B=56}if((B|0)==56){B=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}else B=34}else B=34;if((B|0)==34){B=0;j=c+((X(n+-1|0,e)|0)<<2)|0;a=b+(m<<2)|0;l=c+(m<<2)|0;if((d|0)>0){i=0;do{d=f[j+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){k=f[u>>2]|0;f[k+(i<<2)>>2]=h}else{m=f[v>>2]|0;k=f[u>>2]|0;f[k+(i<<2)>>2]=(d|0)<(m|0)?m:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[o>>2]|0)+d|0;B=44}}else{d=d-(f[o>>2]|0)|0;B=44}if((B|0)==44){B=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}n=n+1|0;if((n|0)>=(s|0)){B=22;break}}if((B|0)==22){zi(y);return 1}else if((B|0)==24)Zh(r);return 0}function fb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=Ca,h=0,i=0,j=Ca,k=0,l=Ca,m=Ca,o=Ca,p=Ca,q=0,r=Ca,t=0,v=Ca,w=Ca,x=Ca,y=Ca,z=0,A=0,B=0,C=0,D=0,E=0,F=Ca;E=u;u=u+48|0;z=E+40|0;A=E+36|0;D=E+24|0;B=E+12|0;C=E;i=a+48|0;h=f[c>>2]|0;c=h+1|0;if((h|0)>=0){c=((c|0)%3|0|0)==0?h+-2|0:c;h=h+(((h>>>0)%3|0|0)==0?2:-1)|0;if((c|0)<0)c=-1073741824;else c=f[(f[f[i>>2]>>2]|0)+(c<<2)>>2]|0;if((h|0)<0)i=-1073741824;else i=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0}else{c=-1073741824;i=-1073741824}k=f[a+52>>2]|0;h=f[k>>2]|0;q=(f[k+4>>2]|0)-h>>2;if(q>>>0<=c>>>0)Zh(k);c=f[h+(c<<2)>>2]|0;if(q>>>0<=i>>>0)Zh(k);t=f[h+(i<<2)>>2]|0;h=(c|0)<(e|0);if(!(h&(t|0)<(e|0))){do if(!h){if((e|0)>0){c=e+-1|0;break}i=a+72|0;if((f[i>>2]|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(f[i>>2]|0));u=E;return}while(0);k=a+72|0;D=f[k>>2]|0;i=X(D,c)|0;if((D|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=f[d+(c+i<<2)>>2];c=c+1|0}while((c|0)<(f[k>>2]|0));u=E;return}q=f[a+72>>2]|0;k=X(q,c)|0;w=$(f[d+(k<<2)>>2]|0);x=$(f[d+(k+1<<2)>>2]|0);q=X(q,t)|0;y=$(f[d+(q<<2)>>2]|0);v=$(f[d+(q+1<<2)>>2]|0);if(!(y!=w|v!=x)){a=f[a+68>>2]|0;f[a>>2]=~~y;f[a+4>>2]=~~v;u=E;return}k=a+64|0;h=f[(f[k>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;q=a+60|0;i=f[q>>2]|0;if(!(b[i+84>>0]|0))h=f[(f[i+68>>2]|0)+(h<<2)>>2]|0;f[A>>2]=h;h=b[i+24>>0]|0;f[z>>2]=f[A>>2];Ra(i,z,h,D)|0;c=f[(f[k>>2]|0)+(c<<2)>>2]|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;c=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,c,B)|0;c=f[(f[k>>2]|0)+(t<<2)>>2]|0;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;d=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,d,C)|0;r=$(n[C>>2]);l=$(n[B>>2]);r=$(r-l);p=$(n[C+4>>2]);m=$(n[B+4>>2]);p=$(p-m);j=$(n[C+8>>2]);g=$(n[B+8>>2]);j=$(j-g);l=$($(n[D>>2])-l);m=$($(n[D+4>>2])-m);g=$($(n[D+8>>2])-g);o=$($($($(r*r)+$(0.0))+$(p*p))+$(j*j));if(o>$(0.0)?1:(f[a+88>>2]|0)<258){F=$($($($($(r*l)+$(0.0))+$(p*m))+$(j*g))/o);r=$(l-$(r*F));p=$(m-$(p*F));g=$(g-$(j*F));j=F;g=$(L($($($(g*g)+$($(p*p)+$($(r*r)+$(0.0))))/o)))}else{j=$(0.0);g=$(0.0)}r=$(y-w);F=$(v-x);y=$(w+$(r*j));w=$(r*g);x=$(x+$(F*j));F=$(F*g);C=a+80|0;B=(f[C>>2]|0)+-1|0;D=(1<<(B&31)&f[(f[a+76>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[C>>2]=B;j=$(-w);j=$(x+(D?j:w));g=$(-F);g=$(y+(D?F:g));if(((n[s>>2]=g,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+g+.5));h=f[a+68>>2]|0;f[h>>2]=c;if(((n[s>>2]=j,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+j+.5));f[h+4>>2]=c;u=E;return}function gb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=Ca,h=0,i=0,j=Ca,k=0,l=Ca,m=Ca,o=Ca,p=Ca,q=0,r=0,t=Ca,v=Ca,w=Ca,x=Ca,y=Ca,z=0,A=0,B=0,C=0,D=0,E=0,F=Ca;E=u;u=u+48|0;z=E+40|0;A=E+36|0;D=E+24|0;B=E+12|0;C=E;k=a+48|0;h=f[c>>2]|0;c=h+1|0;do if((h|0)>=0){c=((c|0)%3|0|0)==0?h+-2|0:c;if(!((h>>>0)%3|0)){i=h+2|0;break}else{i=h+-1|0;break}}else{i=h;c=h}while(0);q=f[(f[k>>2]|0)+28>>2]|0;k=f[q+(c<<2)>>2]|0;i=f[q+(i<<2)>>2]|0;q=f[a+52>>2]|0;c=f[q>>2]|0;r=(f[q+4>>2]|0)-c>>2;if(r>>>0<=k>>>0)Zh(q);h=c;c=f[h+(k<<2)>>2]|0;if(r>>>0<=i>>>0)Zh(q);r=f[h+(i<<2)>>2]|0;h=(c|0)<(e|0);if(!(h&(r|0)<(e|0))){do if(!h){if((e|0)>0){c=e+-1|0;break}i=a+72|0;if((f[i>>2]|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=0;c=c+1|0}while((c|0)<(f[i>>2]|0));u=E;return}while(0);k=a+72|0;D=f[k>>2]|0;i=X(D,c)|0;if((D|0)<=0){u=E;return}h=f[a+68>>2]|0;c=0;do{f[h+(c<<2)>>2]=f[d+(c+i<<2)>>2];c=c+1|0}while((c|0)<(f[k>>2]|0));u=E;return}q=f[a+72>>2]|0;k=X(q,c)|0;w=$(f[d+(k<<2)>>2]|0);x=$(f[d+(k+1<<2)>>2]|0);q=X(q,r)|0;y=$(f[d+(q<<2)>>2]|0);v=$(f[d+(q+1<<2)>>2]|0);if(!(y!=w|v!=x)){a=f[a+68>>2]|0;f[a>>2]=~~y;f[a+4>>2]=~~v;u=E;return}k=a+64|0;h=f[(f[k>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;q=a+60|0;i=f[q>>2]|0;if(!(b[i+84>>0]|0))h=f[(f[i+68>>2]|0)+(h<<2)>>2]|0;f[A>>2]=h;h=b[i+24>>0]|0;f[z>>2]=f[A>>2];Ra(i,z,h,D)|0;c=f[(f[k>>2]|0)+(c<<2)>>2]|0;f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;c=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,c,B)|0;c=f[(f[k>>2]|0)+(r<<2)>>2]|0;f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;h=f[q>>2]|0;if(!(b[h+84>>0]|0))c=f[(f[h+68>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;d=b[h+24>>0]|0;f[z>>2]=f[A>>2];Ra(h,z,d,C)|0;t=$(n[C>>2]);l=$(n[B>>2]);t=$(t-l);p=$(n[C+4>>2]);m=$(n[B+4>>2]);p=$(p-m);j=$(n[C+8>>2]);g=$(n[B+8>>2]);j=$(j-g);l=$($(n[D>>2])-l);m=$($(n[D+4>>2])-m);g=$($(n[D+8>>2])-g);o=$($($($(t*t)+$(0.0))+$(p*p))+$(j*j));if(o>$(0.0)?1:(f[a+88>>2]|0)<258){F=$($($($($(t*l)+$(0.0))+$(p*m))+$(j*g))/o);t=$(l-$(t*F));p=$(m-$(p*F));g=$(g-$(j*F));j=F;g=$(L($($($(g*g)+$($(p*p)+$($(t*t)+$(0.0))))/o)))}else{j=$(0.0);g=$(0.0)}t=$(y-w);F=$(v-x);y=$(w+$(t*j));w=$(t*g);x=$(x+$(F*j));F=$(F*g);C=a+80|0;B=(f[C>>2]|0)+-1|0;D=(1<<(B&31)&f[(f[a+76>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[C>>2]=B;j=$(-w);j=$(x+(D?j:w));g=$(-F);g=$(y+(D?F:g));if(((n[s>>2]=g,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+g+.5));h=f[a+68>>2]|0;f[h>>2]=c;if(((n[s>>2]=j,f[s>>2]|0)&2147483647)>>>0>2139095040)c=-2147483648;else c=~~+J(+(+j+.5));f[h+4>>2]=c;u=E;return}function hb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;z=a+8|0;f[z>>2]=e;i=a+32|0;j=a+36|0;h=f[j>>2]|0;g=f[i>>2]|0;d=h-g>>2;if(d>>>0>=e>>>0)if(d>>>0>e>>>0?(k=g+(e<<2)|0,(h|0)!=(k|0)):0){f[j>>2]=h+(~((h+-4-k|0)>>>2)<<2);d=e}else d=e;else{Dd(i,e-d|0);d=f[z>>2]|0}w=f[a+48>>2]|0;x=f[a+52>>2]|0;v=e>>>0>1073741823?-1:e<<2;y=yi(v)|0;Wd(y|0,0,v|0)|0;if((d|0)>0){k=a+16|0;i=a+32|0;l=a+12|0;h=0;do{d=f[y+(h<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[i>>2]|0;f[j+(h<<2)>>2]=g}else{v=f[l>>2]|0;j=f[i>>2]|0;f[j+(h<<2)>>2]=(d|0)<(v|0)?v:d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;E=18}}else{d=d-(f[i>>2]|0)|0;E=18}if((E|0)==18){E=0;f[g>>2]=d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0))}}r=f[a+56>>2]|0;g=f[r>>2]|0;v=(f[r+4>>2]|0)-g|0;s=v>>2;if((v|0)<=4){zi(y);return 1}t=a+16|0;u=a+32|0;v=a+12|0;n=a+20|0;o=w+64|0;p=w+28|0;q=(e|0)>0;m=1;while(1){if(s>>>0<=m>>>0){E=24;break}h=f[g+(m<<2)>>2]|0;l=X(m,e)|0;if((!((h|0)<0?1:(1<<(h&31)&f[(f[w>>2]|0)+(h>>>5<<2)>>2]|0)!=0)?(A=f[(f[(f[o>>2]|0)+12>>2]|0)+(h<<2)>>2]|0,(A|0)>=0):0)?(D=f[p>>2]|0,a=f[x>>2]|0,B=f[a+(f[D+(A<<2)>>2]<<2)>>2]|0,C=A+1|0,C=f[a+(f[D+((((C|0)%3|0|0)==0?A+-2|0:C)<<2)>>2]<<2)>>2]|0,D=f[a+(f[D+((((A>>>0)%3|0|0)==0?2:-1)+A<<2)>>2]<<2)>>2]|0,(B|0)<(m|0)&(C|0)<(m|0)&(D|0)<(m|0)):0){i=X(B,e)|0;j=X(C,e)|0;k=X(D,e)|0;if(q){h=0;do{f[y+(h<<2)>>2]=(f[c+(h+k<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+i<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}a=b+(l<<2)|0;k=c+(l<<2)|0;if((d|0)>0){i=0;do{d=f[y+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){j=f[u>>2]|0;f[j+(i<<2)>>2]=h}else{l=f[v>>2]|0;j=f[u>>2]|0;f[j+(i<<2)>>2]=(d|0)<(l|0)?l:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;h=k+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[n>>2]|0)+d|0;E=52}}else{d=d-(f[n>>2]|0)|0;E=52}if((E|0)==52){E=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}else{j=c+((X(m+-1|0,e)|0)<<2)|0;a=b+(l<<2)|0;l=c+(l<<2)|0;if((d|0)>0){i=0;do{d=f[j+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){k=f[u>>2]|0;f[k+(i<<2)>>2]=h}else{h=f[v>>2]|0;k=f[u>>2]|0;f[k+(i<<2)>>2]=(d|0)<(h|0)?h:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[v>>2]|0)){d=(f[n>>2]|0)+d|0;E=40}}else{d=d-(f[n>>2]|0)|0;E=40}if((E|0)==40){E=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}m=m+1|0;if((m|0)>=(s|0)){E=22;break}}if((E|0)==22){zi(y);return 1}else if((E|0)==24)Zh(r);return 0}function ib(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if((b|0)<0)return;l=a+12|0;c=f[l>>2]|0;d=f[a+8>>2]|0;e=c-d>>2;if(e>>>0<=b>>>0)return;g=d+(b<<2)|0;n=f[(f[g>>2]|0)+56>>2]|0;if((e|0)<=(b|0))xa(13953,14007,68,14106);m=f[(f[d+(b<<2)>>2]|0)+60>>2]|0;d=g+4|0;if((d|0)!=(c|0)){do{i=f[d>>2]|0;f[d>>2]=0;j=f[g>>2]|0;f[g>>2]=i;if(j|0){i=j+88|0;e=f[i>>2]|0;f[i>>2]=0;if(e|0){h=f[e+8>>2]|0;if(h|0){i=e+12|0;if((f[i>>2]|0)!=(h|0))f[i>>2]=h;Ci(h)}Ci(e)}e=f[j+68>>2]|0;if(e|0){h=j+72|0;i=f[h>>2]|0;if((i|0)!=(e|0))f[h>>2]=i+(~((i+-4-e|0)>>>2)<<2);Ci(e)}i=j+64|0;e=f[i>>2]|0;f[i>>2]=0;if(e|0){h=f[e>>2]|0;if(h|0){i=e+4|0;if((f[i>>2]|0)!=(h|0))f[i>>2]=h;Ci(h)}Ci(e)}Ci(j)}d=d+4|0;g=g+4|0}while((d|0)!=(c|0));c=f[l>>2]|0;if((c|0)!=(g|0))k=26}else k=26;if((k|0)==26)do{k=c+-4|0;f[l>>2]=k;h=f[k>>2]|0;f[k>>2]=0;if(h|0){k=h+88|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Ci(d)}Ci(c)}c=f[h+68>>2]|0;if(c|0){d=h+72|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Ci(c)}k=h+64|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Ci(d)}Ci(c)}Ci(h)}c=f[l>>2]|0}while((c|0)!=(g|0));d=f[a+4>>2]|0;a:do if(d|0){h=d+44|0;c=f[h>>2]|0;g=f[d+40>>2]|0;while(1){if((g|0)==(c|0))break a;d=g+4|0;if((f[(f[g>>2]|0)+40>>2]|0)==(m|0))break;else g=d}if((d|0)!=(c|0)){do{m=f[d>>2]|0;f[d>>2]=0;e=f[g>>2]|0;f[g>>2]=m;if(e|0){Nd(e);Ci(e)}d=d+4|0;g=g+4|0}while((d|0)!=(c|0));c=f[h>>2]|0;if((c|0)==(g|0))break}do{m=c+-4|0;f[h>>2]=m;c=f[m>>2]|0;f[m>>2]=0;if(c|0){Nd(c);Ci(c)}c=f[h>>2]|0}while((c|0)!=(g|0))}while(0);b:do if((n|0)<5){c=f[a+20+(n*12|0)>>2]|0;i=a+20+(n*12|0)+4|0;d=f[i>>2]|0;e=d;c:do if((c|0)!=(d|0))while(1){if((f[c>>2]|0)==(b|0))break c;c=c+4|0;if((c|0)==(d|0))break b}while(0);if((c|0)!=(d|0)){g=c+4|0;e=e-g|0;h=e>>2;if(h){Qf(c|0,g|0,e|0)|0;d=f[i>>2]|0}c=c+(h<<2)|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-4-c|0)>>>2)<<2)}}while(0);c=f[a+24>>2]|0;d=f[a+20>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}c=f[a+36>>2]|0;d=f[a+32>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}c=f[a+48>>2]|0;d=f[a+44>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}c=f[a+60>>2]|0;d=f[a+56>>2]|0;h=d;if((c|0)!=(d|0)){d=c-d>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0)}d=f[a+72>>2]|0;c=f[a+68>>2]|0;h=c;if((d|0)==(c|0))return;d=d-c>>2;c=0;do{e=h+(c<<2)|0;g=f[e>>2]|0;if((g|0)>(b|0))f[e>>2]=g+-1;c=c+1|0}while(c>>>0>>0);return}function jb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{h=qg(60)|0;f[h>>2]=1372;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1848;g=h;f[a>>2]=g;return}case 2:{h=qg(60)|0;f[h>>2]=1372;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1904;g=h;f[a>>2]=g;return}case 4:{h=qg(112)|0;f[h>>2]=1372;f[h+4>>2]=d;b=h+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];f[b+16>>2]=f[e+16>>2];f[b+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);b=h+44|0;f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];f[b+12>>2]=f[g+12>>2];f[h>>2]=1960;b=h+60|0;c=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));g=h;f[a>>2]=g;return}case 3:{c=qg(92)|0;f[c>>2]=1372;f[c+4>>2]=d;d=c+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(c+32|0,e+24|0);e=c+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[c>>2]=2016;g=c+60|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;f[c+88>>2]=h&65535;g=c;f[a>>2]=g;return}case 5:{h=qg(104)|0;f[h>>2]=1372;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=2072;f[h+60>>2]=0;f[h+64>>2]=0;f[h+76>>2]=0;f[h+80>>2]=0;f[h+84>>2]=0;e=h+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];g=h;f[a>>2]=g;return}case 6:{h=qg(124)|0;f[h>>2]=1372;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=2128;f[h+64>>2]=0;f[h+68>>2]=0;e=h+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h+60>>2]=2184;f[h+88>>2]=1;g=h+92|0;f[g>>2]=-1;f[g+4>>2]=-1;f[g+8>>2]=-1;f[g+12>>2]=-1;di(h+108|0);g=h;f[a>>2]=g;return}default:{g=0;f[a>>2]=g;return}}}function kb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{h=qg(60)|0;f[h>>2]=1372;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1484;g=h;f[a>>2]=g;return}case 2:{h=qg(60)|0;f[h>>2]=1372;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1540;g=h;f[a>>2]=g;return}case 4:{h=qg(112)|0;f[h>>2]=1372;f[h+4>>2]=d;b=h+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];f[b+16>>2]=f[e+16>>2];f[b+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);b=h+44|0;f[b>>2]=f[g>>2];f[b+4>>2]=f[g+4>>2];f[b+8>>2]=f[g+8>>2];f[b+12>>2]=f[g+12>>2];f[h>>2]=1596;b=h+60|0;c=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(c|0));g=h;f[a>>2]=g;return}case 3:{c=qg(92)|0;f[c>>2]=1372;f[c+4>>2]=d;d=c+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(c+32|0,e+24|0);e=c+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[c>>2]=1652;g=c+60|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;f[g+24>>2]=0;f[c+88>>2]=h&65535;g=c;f[a>>2]=g;return}case 5:{h=qg(104)|0;f[h>>2]=1372;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1708;f[h+60>>2]=0;f[h+64>>2]=0;f[h+76>>2]=0;f[h+80>>2]=0;f[h+84>>2]=0;e=h+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];g=h;f[a>>2]=g;return}case 6:{h=qg(124)|0;f[h>>2]=1372;f[h+4>>2]=d;d=h+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];ve(h+32|0,e+24|0);e=h+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h>>2]=1764;f[h+64>>2]=0;f[h+68>>2]=0;e=h+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[h+60>>2]=1820;f[h+88>>2]=1;g=h+92|0;f[g>>2]=-1;f[g+4>>2]=-1;f[g+8>>2]=-1;f[g+12>>2]=-1;di(h+108|0);g=h;f[a>>2]=g;return}default:{g=0;f[a>>2]=g;return}}}function lb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7868,7879,60,8002);if((d|0)>=31)xa(8022,7879,61,8002);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9258,10066,99,10231);if((e|0)!=2)xa(10253,10066,102,10231);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Zh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];Xa(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Yg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Yg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=og(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Ge(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=og(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Ge(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Qe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;wd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Zh(d);else if((e|0)==16)xa(10277,10066,116,10231);else if((e|0)==21)xa(10344,7879,99,10432);return 0}function mb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7868,7879,60,8002);if((d|0)>=31)xa(8022,7879,61,8002);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9258,10066,99,10231);if((e|0)!=2)xa(10253,10066,102,10231);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Zh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];bb(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Yg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Yg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=og(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Ge(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=og(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Ge(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Qe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;wd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Zh(d);else if((e|0)==16)xa(10277,10066,116,10231);else if((e|0)==21)xa(10344,7879,99,10432);return 0}function nb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7868,7879,60,8002);if((d|0)>=31)xa(8022,7879,61,8002);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9258,10066,99,10231);if((e|0)!=2)xa(10253,10066,102,10231);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Zh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];Xa(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Yg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Yg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=og(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Ge(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=og(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Ge(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Qe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;xd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Zh(d);else if((e|0)==16)xa(10277,10066,116,10231);else if((e|0)==21)xa(10344,7879,99,10432);return 0}function ob(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;t=C+28|0;v=C+16|0;w=C+8|0;x=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)xa(7868,7879,60,8002);if((d|0)>=31)xa(8022,7879,61,8002);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;q=a+80|0;f[q>>2]=s;r=a+84|0;f[r>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ja[f[(f[a>>2]|0)+16>>2]&127](a)|0))xa(9258,10066,99,10231);if((e|0)!=2)xa(10253,10066,102,10231);m=a+36|0;e=f[m>>2]|0;p=(f[e+4>>2]|0)-(f[e>>2]|0)|0;n=p>>2;f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;if((p|0)<=0){u=C;return 1}o=v+4|0;p=v+8|0;k=a+88|0;l=w+4|0;d=f[e>>2]|0;if((f[e+4>>2]|0)==(d|0)){j=e;Zh(j)}else{z=0;h=d}while(1){f[x>>2]=f[h+(z<<2)>>2];f[t>>2]=f[x>>2];bb(s,t,v);d=f[v>>2]|0;a=(d|0)>-1?d:0-d|0;e=f[o>>2]|0;g=(e|0)>-1?e:0-e|0;a=Yg(g|0,((g|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;g=f[p>>2]|0;h=(g|0)>-1;g=h?g:0-g|0;g=Yg(a|0,I|0,g|0,((g|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((g|0)==0&(a|0)==0){d=i;e=v}else{D=((i|0)<0)<<31>>31;j=og(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Ge(j|0,I|0,g|0,a|0)|0;f[v>>2]=j;d=og(i|0,D|0,e|0,((e|0)<0)<<31>>31|0)|0;d=Ge(d|0,I|0,g|0,a|0)|0;f[o>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;d=h?d:0-d|0;e=p}f[e>>2]=d;j=f[v>>2]|0;h=f[o>>2]|0;D=f[p>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){e=16;break}D=Qe(k)|0;d=f[v>>2]|0;if(D){d=0-d|0;a=0-(f[o>>2]|0)|0;i=0-(f[p>>2]|0)|0;f[v>>2]=d;f[o>>2]=a;f[p>>2]=i}else{a=f[o>>2]|0;i=f[p>>2]|0}g=(d|0)>-1;h=(a|0)>-1?a:0-a|0;e=(i|0)>-1?i:0-i|0;j=h+(g?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){e=21;break}if(!g){if((a|0)>=0)e=(f[q>>2]|0)-e|0;if((i|0)<0)d=h;else d=(f[q>>2]|0)-h|0}else{d=j+i|0;e=j+a|0}g=(e|0)==0;a=(d|0)==0;h=f[q>>2]|0;do if((d|e|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(e|0),!(g&A|a&B)):0){if(g&(j|0)<(d|0)){e=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(e|0)&A){e=(j<<1)-e|0;break}else{e=(j|0)<(e|0)&a?(j<<1)-e|0:e;break}}else{e=h;d=h}while(0);f[w>>2]=e;f[l>>2]=d;D=z<<1;xd(y,w,b+(D<<2)|0,c+(D<<2)|0);z=z+1|0;if((z|0)>=(n|0)){e=11;break}d=f[m>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=z>>>0){e=12;break}}if((e|0)==11){u=C;return 1}else if((e|0)==12)Zh(d);else if((e|0)==16)xa(10277,10066,116,10231);else if((e|0)==21)xa(10344,7879,99,10432);return 0}function pb(a,c,e,g,i){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;k=n+12|0;m=n;f[c+40>>2]=e;j=c+32|0;f[j>>2]=g;f[c+4>>2]=i;db(a,g,k);if(f[a>>2]|0){u=n;return}l=a+4|0;e=l+11|0;if((b[e>>0]|0)<0)Ci(f[l>>2]|0);i=h[k+7>>0]|0;if((i|0)!=(Ja[f[(f[c>>2]|0)+8>>2]&127](c)|0)){e=qg(64)|0;f[m>>2]=e;f[m+8>>2]=-2147483584;f[m+4>>2]=50;g=e;i=13583;j=g+50|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+50>>0]=0;f[a>>2]=-1;Xd(l,m);if((b[m+11>>0]|0)<0)Ci(f[m>>2]|0);u=n;return}g=b[k+5>>0]|0;b[c+36>>0]=g;i=b[k+6>>0]|0;b[c+37>>0]=i;if((g+-1&255)>1){e=qg(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=22;g=e;i=13634;j=g+22|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+22>>0]=0;f[a>>2]=-5;Xd(l,m);if((b[m+11>>0]|0)<0)Ci(f[m>>2]|0);u=n;return}if(g<<24>>24==2&(i&255)>2){e=qg(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=22;g=e;i=13657;j=g+22|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+22>>0]=0;f[a>>2]=-5;Xd(l,m);if((b[m+11>>0]|0)<0)Ci(f[m>>2]|0);u=n;return}i=(i&255|(g&255)<<8)&65535;d[(f[j>>2]|0)+38>>1]=i;if((i&65535)>258?(d[k+10>>1]|0)<0:0){ec(a,c);if(f[a>>2]|0){u=n;return}if((b[e>>0]|0)<0)Ci(f[l>>2]|0)}if(!(Ja[f[(f[c>>2]|0)+12>>2]&127](c)|0)){e=qg(48)|0;f[m>>2]=e;f[m+8>>2]=-2147483600;f[m+4>>2]=33;g=e;i=13680;j=g+33|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+33>>0]=0;f[a>>2]=-1;Xd(l,m);if((b[m+11>>0]|0)<0)Ci(f[m>>2]|0);u=n;return}if(!(Ja[f[(f[c>>2]|0)+20>>2]&127](c)|0)){e=qg(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=31;g=e;i=13714;j=g+31|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+31>>0]=0;f[a>>2]=-1;Xd(l,m);if((b[m+11>>0]|0)<0)Ci(f[m>>2]|0);u=n;return}if(Ja[f[(f[c>>2]|0)+24>>2]&127](c)|0){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=n;return}e=qg(48)|0;f[m>>2]=e;f[m+8>>2]=-2147483600;f[m+4>>2]=34;g=e;i=13746;j=g+34|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+34>>0]=0;f[a>>2]=-1;Xd(l,m);if((b[m+11>>0]|0)<0)Ci(f[m>>2]|0);u=n;return}function qb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=b[c+11>>0]|0;m=r<<24>>24<0;u=m?f[c>>2]|0:c;r=m?f[c+4>>2]|0:r&255;if(r>>>0>3){c=u;g=r;d=r;while(1){m=X(h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24,1540483477)|0;g=(X(m>>>24^m,1540483477)|0)^(X(g,1540483477)|0);d=d+-4|0;if(d>>>0<=3)break;else c=c+4|0}d=r+-4|0;e=d&-4;d=d-e|0;e=u+(e+4)|0;c=g}else{d=r;e=u;c=r}switch(d|0){case 3:{i=h[e+2>>0]<<16^c;q=6;break}case 2:{i=c;q=6;break}case 1:{j=c;q=7;break}default:k=c}if((q|0)==6){j=h[e+1>>0]<<8^i;q=7}if((q|0)==7)k=X(h[e>>0]^j,1540483477)|0;k=X(k>>>13^k,1540483477)|0;k=k>>>15^k;l=f[a+4>>2]|0;if(!l){w=0;return w|0}i=l+-1|0;d=(i&l|0)==0;if(!d)if(k>>>0>>0)m=k;else m=(k>>>0)%(l>>>0)|0;else m=k&i;c=f[(f[a>>2]|0)+(m<<2)>>2]|0;if(!c){w=0;return w|0}c=f[c>>2]|0;if(!c){w=0;return w|0}j=(r|0)==0;if(d){a:while(1){q=f[c+4>>2]|0;d=(q|0)==(k|0);if(!(d|(q&i|0)==(m|0))){c=0;q=41;break}do if(d?(n=c+8|0,p=b[n+11>>0]|0,o=p<<24>>24<0,p=p&255,((o?f[c+12>>2]|0:p)|0)==(r|0)):0){d=f[n>>2]|0;e=o?d:n;if(o){if(j){q=41;break a}if(!(lf(e,u,r)|0)){q=41;break a}else break}if(j){q=41;break a}if((d&255)<<24>>24==(b[u>>0]|0)){d=n;e=p;g=u;do{e=e+-1|0;d=d+1|0;if(!e){q=41;break a}g=g+1|0}while((b[d>>0]|0)==(b[g>>0]|0))}}while(0);c=f[c>>2]|0;if(!c){c=0;q=41;break}}if((q|0)==41)return c|0}else s=c;b:while(1){c=f[s+4>>2]|0;d=(c|0)==(k|0);if(!d){if(c>>>0>=l>>>0)c=(c>>>0)%(l>>>0)|0;if((c|0)!=(m|0)){c=0;q=41;break}if(d)q=33}else q=33;do if((q|0)==33?(q=0,v=s+8|0,t=b[v+11>>0]|0,w=t<<24>>24<0,t=t&255,((w?f[s+12>>2]|0:t)|0)==(r|0)):0){c=f[v>>2]|0;d=w?c:v;if(w){if(j){c=s;q=41;break b}if(!(lf(d,u,r)|0)){c=s;q=41;break b}else break}if(j){c=s;q=41;break b}if((c&255)<<24>>24==(b[u>>0]|0)){c=v;d=t;e=u;do{d=d+-1|0;c=c+1|0;if(!d){c=s;q=41;break b}e=e+1|0}while((b[c>>0]|0)==(b[e>>0]|0))}}while(0);s=f[s>>2]|0;if(!s){c=0;q=41;break}}if((q|0)==41)return c|0;return 0}function rb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=Ja[f[(f[a>>2]|0)+44>>2]&127](a)|0;if((t|0)<1){t=0;return t|0}m=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;r=X(m,t)|0;Ec(a,m,t);m=a+16|0;s=f[m>>2]|0;s=(f[f[s>>2]>>2]|0)+(f[s+48>>2]|0)|0;p=d+8|0;g=p;e=f[g>>2]|0;g=f[g+4>>2]|0;q=d+16|0;l=q;k=f[l>>2]|0;l=f[l+4>>2]|0;if(!((g|0)>(l|0)|(g|0)==(l|0)&e>>>0>k>>>0)){t=0;return t|0}h=f[d>>2]|0;o=b[h+k>>0]|0;i=Yg(k|0,l|0,1,0)|0;j=I;n=q;f[n>>2]=i;f[n+4>>2]=j;a:do if(!(o<<24>>24)){if(!((g|0)>(j|0)|(g|0)==(j|0)&e>>>0>i>>>0)){t=0;return t|0}n=b[h+i>>0]|0;l=Yg(k|0,l|0,2,0)|0;o=q;f[o>>2]=l;f[o+4>>2]=I;o=n&255;l=(o|0)==(Gf(5)|0);e=f[(f[m>>2]|0)+64>>2]|0;e=(f[e+4>>2]|0)-(f[e>>2]|0)|0;if(l){g=r<<2;if(e>>>0>>0){t=0;return t|0}m=p;o=f[m>>2]|0;m=f[m+4>>2]|0;p=q;e=f[p>>2]|0;p=Yg(e|0,f[p+4>>2]|0,g|0,0)|0;n=I;if((m|0)<(n|0)|(m|0)==(n|0)&o>>>0

>>0){t=0;return t|0}else{Mc(s|0,(f[d>>2]|0)+e|0,g|0)|0;p=q;p=Yg(f[p>>2]|0,f[p+4>>2]|0,g|0,0)|0;i=q;f[i>>2]=p;f[i+4>>2]=I;i=18;break}}i=X(o,r)|0;if(e>>>0>>0){t=0;return t|0}k=p;g=f[k>>2]|0;k=f[k+4>>2]|0;h=q;j=f[h>>2]|0;h=f[h+4>>2]|0;m=Lg(g|0,k|0,j|0,h|0)|0;l=I;if((l|0)<0|(l|0)==0&m>>>0>>0){t=0;return t|0}if(!r)i=19;else{l=n&255;e=0;i=k;while(1){n=Yg(j|0,h|0,l|0,0)|0;m=I;if((i|0)<(m|0)|(i|0)==(m|0)&g>>>0>>0)g=j;else{Mc(s+(e<<2)|0,(f[d>>2]|0)+j|0,o|0)|0;g=q;g=Yg(f[g>>2]|0,f[g+4>>2]|0,l|0,0)|0;h=I;n=q;f[n>>2]=g;f[n+4>>2]=h}e=e+1|0;if((e|0)==(r|0)){i=18;break a}n=p;j=g;i=f[n+4>>2]|0;g=f[n>>2]|0}}}else if(Yd(r,t,d,s)|0)i=18;else{t=0;return t|0}while(0);do if((i|0)==18)if(!r)i=19;else{e=a+20|0;g=f[e>>2]|0;if(g|0?Ja[f[(f[g>>2]|0)+32>>2]&127](g)|0:0){h=1;break}Sf(s,r,s);h=1}while(0);if((i|0)==19){e=a+20|0;h=0}g=f[e>>2]|0;if(g|0){if(!(Na[f[(f[g>>2]|0)+40>>2]&127](g,d)|0)){t=0;return t|0}if(h?(d=f[e>>2]|0,!(Ia[f[(f[d>>2]|0)+44>>2]&31](d,s,s,r,t,f[c>>2]|0)|0)):0){t=0;return t|0}}t=1;return t|0}function sb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)Ci(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=za(8)|0;ih(a,14241);f[a>>2]=3608;qa(a|0,952,75)}s=qg(c<<2)|0;d=f[a>>2]|0;f[a>>2]=s;if(d|0)Ci(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;i=f[e>>2]|0;if(!i)return;d=f[i+4>>2]|0;r=c+-1|0;s=(r&c|0)==0;if(!s){if(d>>>0>=c>>>0)d=(d>>>0)%(c>>>0)|0}else d=d&r;f[(f[a>>2]|0)+(d<<2)>>2]=e;e=f[i>>2]|0;if(!e)return;else{g=i;h=e;e=i}a:while(1){q=g;g=h;p=e;b:while(1){e=g;while(1){g=f[e+4>>2]|0;if(!s){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0}else g=g&r;if((g|0)==(d|0))break;h=(f[a>>2]|0)+(g<<2)|0;if(!(f[h>>2]|0))break b;i=f[e>>2]|0;c:do if(!i)h=e;else{n=e+8|0;m=b[n+11>>0]|0;k=m<<24>>24<0;m=m&255;o=k?f[e+12>>2]|0:m;l=(o|0)==0;if(k){h=e;while(1){j=i+8|0;m=b[j+11>>0]|0;k=m<<24>>24<0;if((o|0)!=((k?f[i+12>>2]|0:m&255)|0))break c;if(!l?lf(f[n>>2]|0,k?f[j>>2]|0:j,o)|0:0)break c;h=f[i>>2]|0;if(!h){h=i;break c}else{m=i;i=h;h=m}}}if(l){h=e;while(1){o=b[i+8+11>>0]|0;if((o<<24>>24<0?f[i+12>>2]|0:o&255)|0)break c;h=f[i>>2]|0;if(!h){h=i;break c}else{o=i;i=h;h=o}}}h=e;while(1){j=i+8|0;l=b[j+11>>0]|0;k=l<<24>>24<0;if((o|0)!=((k?f[i+12>>2]|0:l&255)|0))break c;j=k?f[j>>2]|0:j;if((f[n>>2]&255)<<24>>24==(b[j>>0]|0)){k=n;l=m}else break c;while(1){l=l+-1|0;k=k+1|0;if(!l)break;j=j+1|0;if((b[k>>0]|0)!=(b[j>>0]|0))break c}h=f[i>>2]|0;if(!h){h=i;break}else{l=i;i=h;h=l}}}while(0);f[p>>2]=f[h>>2];f[h>>2]=f[f[(f[a>>2]|0)+(g<<2)>>2]>>2];f[f[(f[a>>2]|0)+(g<<2)>>2]>>2]=e;e=f[q>>2]|0;if(!e){d=43;break a}}g=f[e>>2]|0;if(!g){d=43;break a}else{q=e;p=e}}f[h>>2]=p;h=f[e>>2]|0;if(!h){d=43;break}else{d=g;g=e}}if((d|0)==43)return}function tb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+64|0;E=F;g=E;i=g+40|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(i|0));a:do if(Gb(E,d)|0?Vb(E,d)|0:0){g=(a|0)==0;b:do if(!g){if(!(f[E+12>>2]|0)){k=0;break a}Jc(d,0,0)|0;if(!g){t=E+44|0;v=E+48|0;w=E+40|0;x=E+16|0;y=E+28|0;z=(c|0)>0;D=d+36|0;A=d+32|0;B=d+24|0;C=d+28|0;s=0;g=0;i=f[v>>2]|0;while(1){c:do if(i>>>0<16384){j=f[t>>2]|0;do{if((j|0)<=0)break c;r=f[w>>2]|0;j=j+-1|0;f[t>>2]=j;i=h[r+j>>0]|i<<8;f[v>>2]=i}while(i>>>0<16384)}while(0);p=i&4095;r=f[(f[x>>2]|0)+(p<<2)>>2]|0;q=f[y>>2]|0;i=(X(f[q+(r<<3)>>2]|0,i>>>12)|0)+p-(f[q+(r<<3)+4>>2]|0)|0;f[v>>2]=i;if(z){q=(r|0)>0;if((r|0)<=-1){g=22;break}if((r|0)<33)p=0;else{g=21;break}while(1){if(!(b[D>>0]|0)){k=0;break a}if(q){n=f[B>>2]|0;o=f[C>>2]|0;j=0;m=0;l=f[A>>2]|0;do{k=n+(l>>>3)|0;if(k>>>0>>0){k=(h[k>>0]|0)>>>(l&7)&1;l=l+1|0;f[A>>2]=l}else k=0;j=k<>2]=j;p=p+1|0;if((p|0)>=(c|0)){g=k;break}else g=k}}s=s+c|0;if(s>>>0>=a>>>0)break b}if((g|0)==21){if(!(b[D>>0]|0)){k=0;break a}xa(13937,13834,156,13929)}else if((g|0)==22){if(!(b[D>>0]|0)){k=0;break a}xa(13819,13834,155,13929)}}}else Jc(d,0,0)|0;while(0);Jf(d);k=1}else k=0;while(0);g=f[E+28>>2]|0;if(g|0){i=E+32|0;j=f[i>>2]|0;if((j|0)!=(g|0))f[i>>2]=j+(~((j+-8-g|0)>>>3)<<3);Ci(g)}g=f[E+16>>2]|0;if(g|0){i=E+20|0;j=f[i>>2]|0;if((j|0)!=(g|0))f[i>>2]=j+(~((j+-4-g|0)>>>2)<<2);Ci(g)}j=f[E>>2]|0;if(!j){u=F;return k|0}i=E+4|0;g=f[i>>2]|0;if((g|0)!=(j|0))f[i>>2]=g+(~((g+-4-j|0)>>>2)<<2);Ci(j);u=F;return k|0}function ub(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=c;n=d;i=n;if(!k){g=(e|0)!=0;if(!i){if(g){f[e>>2]=(l>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(l>>>0)/(h>>>0)>>>0;return (I=n,e)|0}else{if(!g){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;e=0;return (I=n,e)|0}}g=(i|0)==0;do if(h){if(!g){g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}g=h-1|0;if(g&h|0){i=(_(h|0)|0)+33-(_(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(e|0){f[e>>2]=g&l;f[e+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (I=o,p)|0}else{p=Vf(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (I=o,p)|0}}else{if(g){if(e|0){f[e>>2]=(k>>>0)%(h>>>0);f[e+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (I=o,p)|0}if(!l){if(e|0){f[e>>2]=0;f[e+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (I=o,p)|0}g=i-1|0;if(!(g&i)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=g&k|b&0}o=0;p=k>>>((Vf(i|0)|0)>>>0);return (I=o,p)|0}g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;o=0;p=0;return (I=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=c|0|0;l=n|d&0;k=Yg(m|0,l|0,-1,-1)|0;c=I;j=i;i=0;do{d=j;j=g>>>31|j<<1;g=i|g<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;Lg(k|0,c|0,d|0,n|0)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Lg(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=I;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(e|0){f[e>>2]=a;f[e+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (I=o,p)|0}function vb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;a:do if(!(zh(a,f[c+8>>2]|0,g)|0)){i=a+12|0;q=c+24|0;r=c+36|0;s=c+54|0;o=a+8|0;m=a+16|0;if(!(zh(a,f[c>>2]|0,g)|0)){p=f[i>>2]|0;j=a+16+(p<<3)|0;of(m,c,d,e,g);h=a+24|0;if((p|0)<=1)break;i=f[o>>2]|0;if((i&2|0)==0?(f[r>>2]|0)!=1:0){if(!(i&1))while(1){if(b[s>>0]|0)break a;if((f[r>>2]|0)==1)break a;of(h,c,d,e,g);h=h+8|0;if(h>>>0>=j>>>0)break a}while(1){if(b[s>>0]|0)break a;if((f[r>>2]|0)==1?(f[q>>2]|0)==1:0)break a;of(h,c,d,e,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}while(1){if(b[s>>0]|0)break a;of(h,c,d,e,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}h=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(p=c+20|0,(f[p>>2]|0)!=(d|0)):0){f[h>>2]=e;n=c+44|0;if((f[n>>2]|0)==4)break;e=a+16+(f[i>>2]<<3)|0;k=c+52|0;l=c+53|0;h=0;a=m;j=0;b:while(1){if(a>>>0>=e>>>0){i=18;break}b[k>>0]=0;b[l>>0]=0;gf(a,c,d,d,1,g);if(b[s>>0]|0){i=18;break}do if(b[l>>0]|0){if(!(b[k>>0]|0))if(!(f[o>>2]&1)){h=1;i=18;break b}else{h=1;i=j;break}if((f[q>>2]|0)==1){i=23;break b}if(!(f[o>>2]&2)){i=23;break b}else{h=1;i=1}}else i=j;while(0);a=a+8|0;j=i}do if((i|0)==18){if((!j?(f[p>>2]=d,d=c+40|0,f[d>>2]=(f[d>>2]|0)+1,(f[r>>2]|0)==1):0)?(f[q>>2]|0)==2:0){b[s>>0]=1;if(h){i=23;break}else{h=4;break}}if(h)i=23;else h=4}while(0);if((i|0)==23)h=3;f[n>>2]=h;break}if((e|0)==1)f[h>>2]=1}else eg(0,c,d,e);while(0);return}function wb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;w=u;u=u+32|0;e=w+24|0;k=w+20|0;l=w+8|0;m=w+4|0;r=w;f[e>>2]=0;le(e,f[a>>2]|0)|0;a:do if(f[e>>2]|0){d=0;while(1){d=d+1|0;if(!(Mb(a,c)|0)){d=0;break}if(d>>>0>=(f[e>>2]|0)>>>0)break a}u=w;return d|0}while(0);f[k>>2]=0;le(k,f[a>>2]|0)|0;b:do if(!(f[k>>2]|0))d=1;else{j=l+11|0;i=0;while(1){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;d=f[a>>2]|0;x=d+8|0;y=f[x+4>>2]|0;e=d+16|0;h=e;g=f[h>>2]|0;h=f[h+4>>2]|0;if((y|0)>(h|0)|((y|0)==(h|0)?(f[x>>2]|0)>>>0>g>>>0:0)?(v=b[(f[d>>2]|0)+g>>0]|0,p=Yg(g|0,h|0,1,0)|0,o=e,f[o>>2]=p,f[o+4>>2]=I,o=v&255,me(l,o,0),p=f[a>>2]|0,q=Cf(l,0)|0,g=p+8|0,x=f[g>>2]|0,g=f[g+4>>2]|0,s=p+16|0,y=s,t=f[y>>2]|0,v=v&255,y=Yg(t|0,f[y+4>>2]|0,v|0,0)|0,h=I,!((g|0)<(h|0)|(g|0)==(h|0)&x>>>0>>0)):0){Mc(q|0,(f[p>>2]|0)+t|0,o|0)|0;x=s;x=Yg(f[x>>2]|0,f[x+4>>2]|0,v|0,0)|0;y=s;f[y>>2]=x;f[y+4>>2]=I;y=qg(40)|0;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;f[y+12>>2]=0;n[y+16>>2]=$(1.0);x=y+20|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;n[y+36>>2]=$(1.0);f[m>>2]=y;if(wb(a,y)|0){d=f[m>>2]|0;f[m>>2]=0;f[r>>2]=d;Bc(c,l,r)|0;Jd(r);d=0}else d=1;Jd(m)}else d=1;if((b[j>>0]|0)<0)Ci(f[l>>2]|0);i=i+1|0;if(d|0){d=0;break b}if(i>>>0>=(f[k>>2]|0)>>>0){d=1;break}}}while(0);y=d;u=w;return y|0}function xb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;v=x+4|0;w=x;f[a+72>>2]=e;f[a+64>>2]=g;s=yi(e>>>0>1073741823?-1:e<<2)|0;t=a+68|0;d=f[t>>2]|0;f[t>>2]=s;if(d|0)zi(d);s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Dd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Zh(k)}else{y=0;l=h}while(1){f[w>>2]=f[l+(y<<2)>>2];f[v>>2]=f[w>>2];gb(a,v,c,y);l=X(y,e)|0;i=f[t>>2]|0;k=b+(l<<2)|0;l=c+(l<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){j=f[p>>2]|0;f[j+(h<<2)>>2]=g}else{g=f[q>>2]|0;j=f[p>>2]|0;f[j+(h<<2)>>2]=(d|0)<(g|0)?g:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[k+(g<<2)>>2]|0)+(f[j+(g<<2)>>2]|0)|0;h=l+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=22}}else{d=d-(f[r>>2]|0)|0;z=22}if((z|0)==22){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=10;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=11;break}}if((z|0)==10){u=x;return 1}else if((z|0)==11)Zh(d);return 0}function yb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;v=x+4|0;w=x;f[a+72>>2]=e;f[a+64>>2]=g;s=yi(e>>>0>1073741823?-1:e<<2)|0;t=a+68|0;d=f[t>>2]|0;f[t>>2]=s;if(d|0)zi(d);s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Dd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Zh(k)}else{y=0;l=h}while(1){f[w>>2]=f[l+(y<<2)>>2];f[v>>2]=f[w>>2];fb(a,v,c,y);l=X(y,e)|0;i=f[t>>2]|0;k=b+(l<<2)|0;l=c+(l<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[i+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){j=f[p>>2]|0;f[j+(h<<2)>>2]=g}else{g=f[q>>2]|0;j=f[p>>2]|0;f[j+(h<<2)>>2]=(d|0)<(g|0)?g:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[k+(g<<2)>>2]|0)+(f[j+(g<<2)>>2]|0)|0;h=l+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=22}}else{d=d-(f[r>>2]|0)|0;z=22}if((z|0)==22){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=10;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=11;break}}if((z|0)==10){u=x;return 1}else if((z|0)==11)Zh(d);return 0}function zb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=a+8|0;f[t>>2]=e;j=a+32|0;k=a+36|0;i=f[k>>2]|0;h=f[j>>2]|0;g=i-h>>2;if(g>>>0>=e>>>0)if(g>>>0>e>>>0?(l=h+(e<<2)|0,(i|0)!=(l|0)):0){f[k>>2]=i+(~((i+-4-l|0)>>>2)<<2);g=e}else g=e;else{Dd(j,e-g|0);g=f[t>>2]|0}r=e>>>0>1073741823?-1:e<<2;s=yi(r)|0;Wd(s|0,0,r|0)|0;if((g|0)>0){l=a+16|0;j=a+32|0;m=a+12|0;i=0;do{g=f[s+(i<<2)>>2]|0;h=f[l>>2]|0;if((g|0)>(h|0)){k=f[j>>2]|0;f[k+(i<<2)>>2]=h}else{r=f[m>>2]|0;k=f[j>>2]|0;f[k+(i<<2)>>2]=(g|0)<(r|0)?r:g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0));if((g|0)>0){j=a+20|0;i=0;do{g=(f[b+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=c+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[l>>2]|0)){if((g|0)<(f[m>>2]|0)){g=(f[j>>2]|0)+g|0;u=18}}else{g=g-(f[j>>2]|0)|0;u=18}if((u|0)==18){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}if((e|0)>=(d|0)){zi(s);return 1}o=0-e|0;p=a+16|0;q=a+32|0;r=a+12|0;n=a+20|0;a=e;do{l=c+(a<<2)|0;j=l+(o<<2)|0;m=b+(a<<2)|0;if((g|0)>0){i=0;do{g=f[j+(i<<2)>>2]|0;h=f[p>>2]|0;if((g|0)>(h|0)){k=f[q>>2]|0;f[k+(i<<2)>>2]=h}else{h=f[r>>2]|0;k=f[q>>2]|0;f[k+(i<<2)>>2]=(g|0)<(h|0)?h:g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0));if((g|0)>0){i=0;do{g=(f[m+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[p>>2]|0)){if((g|0)<(f[r>>2]|0)){g=(f[n>>2]|0)+g|0;u=33}}else{g=g-(f[n>>2]|0)|0;u=33}if((u|0)==33){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}a=a+e|0}while((a|0)<(d|0));zi(s);return 1}function Ab(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Yg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Yg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(le(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Dd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Yg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Wd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Yg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=Zc(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Bb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Yg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Yg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(le(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Dd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Yg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Wd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Yg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=ad(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Cb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Yg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Yg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(le(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Dd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Yg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Wd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Yg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=bd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Db(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Yg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Yg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(le(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Dd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Yg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Wd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Yg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=cd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Eb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Yg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Yg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(le(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Dd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Yg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Wd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Yg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=dd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Fb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Yg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Yg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(le(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Dd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Yg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Wd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Yg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=fd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Gb(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){s=0;return s|0}s=a+12|0;do if((e&65535)<512){n=c+8|0;p=f[n>>2]|0;n=f[n+4>>2]|0;e=c+16|0;q=e;g=f[q>>2]|0;q=Yg(g|0,f[q+4>>2]|0,4,0)|0;o=I;if((n|0)<(o|0)|(n|0)==(o|0)&p>>>0>>0){s=0;return s|0}else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[s>>0]=g;b[s+1>>0]=g>>8;b[s+2>>0]=g>>16;b[s+3>>0]=g>>24;p=e;p=Yg(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=e;f[q>>2]=p;f[q+4>>2]=I;break}}else if(le(s,c)|0){g=f[s>>2]|0;break}else{s=0;return s|0}while(0);e=a+4|0;k=f[e>>2]|0;j=f[a>>2]|0;i=k-j>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(l=j+(g<<2)|0,(k|0)!=(l|0)):0)f[e>>2]=k+(~((k+-4-l|0)>>>2)<<2)}else{Dd(a,g-i|0);g=f[s>>2]|0}if(!g){s=1;return s|0}p=c+8|0;q=c+16|0;e=0;k=g;a:while(1){n=p;m=f[n>>2]|0;n=f[n+4>>2]|0;i=q;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;r=23;break}o=f[c>>2]|0;t=b[o+g>>0]|0;i=Yg(g|0,i|0,1,0)|0;j=I;g=q;f[g>>2]=i;f[g+4>>2]=j;g=t&255;l=g&3;g=g>>>2;switch(t&3){case 3:{i=g+e|0;if(i>>>0>=k>>>0){e=0;r=23;break a}Wd((f[a>>2]|0)+(e<<2)|0,0,(g<<2)+4|0)|0;e=i;break}case 0:{r=20;break}default:{k=0;while(1){if(!((n|0)>(j|0)|(n|0)==(j|0)&m>>>0>i>>>0)){e=0;r=23;break a}t=b[o+i>>0]|0;i=Yg(i|0,j|0,1,0)|0;j=I;r=q;f[r>>2]=i;f[r+4>>2]=j;g=(t&255)<<(k<<3|6)|g;k=k+1|0;if((k|0)>=(l|0)){r=20;break}}}}if((r|0)==20){r=0;f[(f[a>>2]|0)+(e<<2)>>2]=g}e=e+1|0;k=f[s>>2]|0;if(e>>>0>=k>>>0){r=22;break}}if((r|0)==22){t=gd(a+16|0,f[a>>2]|0,k)|0;return t|0}else if((r|0)==23)return e|0;return 0}function Hb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=c+8|0;j=f[i+4>>2]|0;e=c+16|0;h=e;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((j|0)>(h|0)|((j|0)==(h|0)?(f[i>>2]|0)>>>0>g>>>0:0))){j=0;return j|0}j=b[(f[c>>2]|0)+g>>0]|0;h=Yg(g|0,h|0,1,0)|0;i=e;f[i>>2]=h;f[i+4>>2]=I;do switch(j<<24>>24){case 1:{j=nc(a,c,d)|0;return j|0}case 2:{j=nc(a,c,d)|0;return j|0}case 3:{j=nc(a,c,d)|0;return j|0}case 4:{j=nc(a,c,d)|0;return j|0}case 5:{j=nc(a,c,d)|0;return j|0}case 6:{j=nc(a,c,d)|0;return j|0}case 7:{j=nc(a,c,d)|0;return j|0}case 8:{j=nc(a,c,d)|0;return j|0}case 9:{j=mc(a,c,d)|0;return j|0}case 10:{j=lc(a,c,d)|0;return j|0}case 11:{j=kc(a,c,d)|0;return j|0}case 12:{j=jc(a,c,d)|0;return j|0}case 13:{j=ic(a,c,d)|0;return j|0}case 14:{j=hc(a,c,d)|0;return j|0}case 15:{j=hc(a,c,d)|0;return j|0}case 16:{j=hc(a,c,d)|0;return j|0}case 17:{j=hc(a,c,d)|0;return j|0}case 18:{j=hc(a,c,d)|0;return j|0}default:{j=0;return j|0}}while(0);return 0}function Ib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;t=x+4|0;v=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Dd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Zh(k)}else{y=0;l=h}while(1){f[v>>2]=f[l+(y<<2)>>2];f[t>>2]=f[v>>2];Wa(w,t,c,y);k=X(y,e)|0;j=b+(k<<2)|0;k=c+(k<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[a+68+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){i=f[p>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[q>>2]|0;i=f[p>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[j+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=20}}else{d=d-(f[r>>2]|0)|0;z=20}if((z|0)==20){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=8;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=9;break}}if((z|0)==8){u=x;return 1}else if((z|0)==9)Zh(d);return 0}function Jb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+32|0;o=t+16|0;p=t+12|0;s=t;q=f[a+80>>2]|0;m=_e(a,c)|0;if(!m){s=0;u=t;return s|0}n=m+24|0;i=b[n>>0]|0;l=i<<24>>24;h=X(l,q)|0;f[s>>2]=0;r=s+4|0;f[r>>2]=0;f[s+8>>2]=0;if(i<<24>>24){if(i<<24>>24<0)Zh(s);c=qg(l<<2)|0;f[r>>2]=c;f[s>>2]=c;f[s+8>>2]=c+(l<<2);a=l;e=c;while(1){f[e>>2]=-1082130432;a=a+-1|0;if(!a)break;else e=e+4|0}f[r>>2]=c+(l<<2)}a=d+4|0;g=f[a>>2]|0;e=f[d>>2]|0;c=g-e>>2;if(h>>>0<=c>>>0){if(h>>>0>>0?(j=e+(h<<2)|0,(g|0)!=(j|0)):0)f[a>>2]=g+(~((g+-4-j|0)>>>2)<<2)}else Dd(d,h-c|0);a:do if((q|0)>0){j=m+84|0;k=m+68|0;if(i<<24>>24>0){h=0;i=0}else{c=0;while(1){if(!(b[j>>0]|0))a=f[(f[k>>2]|0)+(c<<2)>>2]|0;else a=c;d=f[s>>2]|0;f[p>>2]=a;l=b[n>>0]|0;f[o>>2]=f[p>>2];if(!(Ra(m,o,l,d)|0)){e=0;break a}c=c+1|0;if((c|0)>=(q|0)){e=1;break a}}}while(1){if(!(b[j>>0]|0))a=f[(f[k>>2]|0)+(i<<2)>>2]|0;else a=i;g=f[s>>2]|0;f[p>>2]=a;e=b[n>>0]|0;f[o>>2]=f[p>>2];if(!(Ra(m,o,e,g)|0)){e=0;break a}e=f[s>>2]|0;g=f[d>>2]|0;a=0;c=h;while(1){f[g+(c<<2)>>2]=f[e+(a<<2)>>2];a=a+1|0;if((a|0)==(l|0))break;else c=c+1|0}i=i+1|0;if((i|0)>=(q|0)){e=1;break}else h=l+h|0}}else e=1;while(0);a=f[s>>2]|0;if(a|0){c=f[r>>2]|0;if((c|0)!=(a|0))f[r>>2]=c+(~((c+-4-a|0)>>>2)<<2);Ci(a)}s=e;u=t;return s|0}function Kb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=a+8|0;e=f[k>>2]|0;switch(f[e+28>>2]|0){case 2:{d=b[e+24>>0]|0;j=d<<24>>24;i=yi((j|0)>-1?j:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;a:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Mc(f[f[e+64>>2]>>2]|0,i|0,j|0)|0;if((c|0)==1)break;else{d=0;a=1}while(1){d=d+j|0;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+d|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break a}}while(1){d=0;g=e;while(1){b[i+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(j|0))break;else g=g+1|0}Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+j|0}}while(0);zi(i);k=1;return k|0}case 1:{d=b[e+24>>0]|0;i=d<<24>>24;j=yi((i|0)>-1?i:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;b:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Mc(f[f[e+64>>2]>>2]|0,j|0,i|0)|0;if((c|0)==1)break;else{d=0;a=1}while(1){d=d+i|0;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+d|0,j|0,i|0)|0;a=a+1|0;if((a|0)==(c|0))break b}}while(1){d=0;g=e;while(1){b[j+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(i|0))break;else g=g+1|0}Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,j|0,i|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+i|0}}while(0);zi(j);k=1;return k|0}case 4:{pd(a,c);k=1;return k|0}case 3:{pd(a,c);k=1;return k|0}case 6:{qd(a,c);k=1;return k|0}case 5:{qd(a,c);k=1;return k|0}default:{k=0;return k|0}}return 0}function Lb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;t=x+4|0;v=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;d=a+32|0;g=a+36|0;j=f[g>>2]|0;i=f[d>>2]|0;h=j-i>>2;if(h>>>0>=e>>>0){if(h>>>0>e>>>0?(k=i+(e<<2)|0,(j|0)!=(k|0)):0)f[g>>2]=j+(~((j+-4-k|0)>>>2)<<2)}else Dd(d,e-h|0);m=a+56|0;d=f[m>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;r=g-h|0;n=r>>2;if((r|0)<=0){u=x;return 1}o=a+16|0;p=a+32|0;q=a+12|0;r=a+20|0;if((g|0)==(h|0)){k=d;Zh(k)}else{y=0;l=h}while(1){f[v>>2]=f[l+(y<<2)>>2];f[t>>2]=f[v>>2];Va(w,t,c,y);k=X(y,e)|0;j=b+(k<<2)|0;k=c+(k<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[a+68+(h<<2)>>2]|0;g=f[o>>2]|0;if((d|0)>(g|0)){i=f[p>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[q>>2]|0;i=f[p>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){g=0;do{d=(f[j+(g<<2)>>2]|0)+(f[i+(g<<2)>>2]|0)|0;h=k+(g<<2)|0;f[h>>2]=d;if((d|0)<=(f[o>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[r>>2]|0)+d|0;z=20}}else{d=d-(f[r>>2]|0)|0;z=20}if((z|0)==20){z=0;f[h>>2]=d}g=g+1|0}while((g|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(n|0)){z=8;break}d=f[m>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=9;break}}if((z|0)==8){u=x;return 1}else if((z|0)==9)Zh(d);return 0}function Mb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;q=r+16|0;o=r+12|0;p=r;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;m=f[a>>2]|0;s=m+8|0;t=f[s+4>>2]|0;d=m+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if((t|0)>(g|0)|((t|0)==(g|0)?(f[s>>2]|0)>>>0>e>>>0:0)?(n=b[(f[m>>2]|0)+e>>0]|0,i=Yg(e|0,g|0,1,0)|0,h=d,f[h>>2]=i,f[h+4>>2]=I,h=n&255,me(q,h,0),i=f[a>>2]|0,j=Cf(q,0)|0,g=i+8|0,s=f[g>>2]|0,g=f[g+4>>2]|0,k=i+16|0,t=k,l=f[t>>2]|0,n=n&255,t=Yg(l|0,f[t+4>>2]|0,n|0,0)|0,m=I,!((g|0)<(m|0)|(g|0)==(m|0)&s>>>0>>0)):0){Mc(j|0,(f[i>>2]|0)+l|0,h|0)|0;d=k;d=Yg(f[d>>2]|0,f[d+4>>2]|0,n|0,0)|0;t=k;f[t>>2]=d;f[t+4>>2]=I;f[o>>2]=0;t=(le(o,f[a>>2]|0)|0)^1;d=f[o>>2]|0;if((d|0)==0|t)d=0;else{f[p>>2]=0;i=p+4|0;f[i>>2]=0;f[p+8>>2]=0;if((d|0)<0)Zh(p);e=qg(d)|0;f[i>>2]=e;f[p>>2]=e;f[p+8>>2]=e+d;do{b[e>>0]=0;e=(f[i>>2]|0)+1|0;f[i>>2]=e;d=d+-1|0}while((d|0)!=0);h=f[o>>2]|0;d=f[a>>2]|0;o=d+8|0;s=f[o>>2]|0;o=f[o+4>>2]|0;e=d+16|0;t=e;g=f[t>>2]|0;t=Yg(g|0,f[t+4>>2]|0,h|0,0)|0;a=I;if((o|0)<(a|0)|(o|0)==(a|0)&s>>>0>>0)d=0;else{Mc(f[p>>2]|0,(f[d>>2]|0)+g|0,h|0)|0;t=e;t=Yg(f[t>>2]|0,f[t+4>>2]|0,h|0,0)|0;d=e;f[d>>2]=t;f[d+4>>2]=I;bg(c,q,p);d=1}e=f[p>>2]|0;if(e|0){if((f[i>>2]|0)!=(e|0))f[i>>2]=e;Ci(e)}}}else d=0;if((b[q+11>>0]|0)>=0){u=r;return d|0}Ci(f[q>>2]|0);u=r;return d|0}function Nb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+32|0;i=s+16|0;r=s;f[i>>2]=0;do if((j[b+38>>1]|0)<514){k=b+8|0;l=f[k>>2]|0;k=f[k+4>>2]|0;c=b+16|0;e=c;d=f[e>>2]|0;e=Yg(d|0,f[e+4>>2]|0,4,0)|0;g=I;if((k|0)<(g|0)|(k|0)==(g|0)&l>>>0>>0){r=0;u=s;return r|0}else{l=(f[b>>2]|0)+d|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;f[i>>2]=l;f[c>>2]=e;f[c+4>>2]=g;c=l;break}}else if(le(i,b)|0){c=f[i>>2]|0;break}else{r=0;u=s;return r|0}while(0);e=a+76|0;ac(e,c,0);di(r);if(bc(r,b)|0){if(f[i>>2]|0){c=1;d=0;do{c=c^((Qe(r)|0)^1);l=(f[e>>2]|0)+(d>>>5<<2)|0;k=1<<(d&31);g=f[l>>2]|0;f[l>>2]=c?g|k:g&~k;d=d+1|0}while(d>>>0<(f[i>>2]|0)>>>0)}d=b+8|0;c=f[d>>2]|0;d=f[d+4>>2]|0;e=b+16|0;i=e;g=f[i>>2]|0;i=f[i+4>>2]|0;k=Yg(g|0,i|0,4,0)|0;l=I;if((!((d|0)<(l|0)|(d|0)==(l|0)&c>>>0>>0)?(m=f[b>>2]|0,n=m+g|0,n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24,o=e,f[o>>2]=k,f[o+4>>2]=l,o=Yg(g|0,i|0,8,0)|0,p=I,!((d|0)<(p|0)|(d|0)==(p|0)&c>>>0>>0)):0)?(q=m+k|0,q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24,m=e,f[m>>2]=o,f[m+4>>2]=p,(n|0)<=(q|0)):0){f[a+12>>2]=n;f[a+16>>2]=q;q=q+(1-n)|0;f[a+20>>2]=q;c=(q|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(q&1)){f[d>>2]=c+-1;c=1}else c=1}else c=0}else c=0;Ai(r);r=c;u=s;return r|0}function Ob(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;k=t;o=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((o|0)<=0){r=1;s=1;s=r|s;u=t;return s|0}p=a+36|0;q=a+48|0;r=k+8|0;l=k+4|0;m=k+11|0;c=0;while(1){j=(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)+40|0;if(f[j>>2]|0){j=f[(f[(f[p>>2]|0)+(c<<2)>>2]|0)+8>>2]|0;i=(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)+40|0;i=f[i>>2]|0;j=f[j+56>>2]|0;d=qg(32)|0;f[k>>2]=d;f[r>>2]=-2147483616;f[l>>2]=24;e=d;g=4072;h=e+24|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));b[d+24>>0]=0;h=i+16|0;e=f[h>>2]|0;if(e){d=h;a:while(1){g=e;while(1){if((f[g+16>>2]|0)>=(j|0))break;e=f[g+4>>2]|0;if(!e)break a;else g=e}e=f[g>>2]|0;if(!e){d=g;break}else d=g}if(((d|0)!=(h|0)?(j|0)>=(f[d+16>>2]|0):0)?(n=d+20|0,(jd(n,k)|0)!=0):0)d=we(n,k,0)|0;else s=13}else s=13;if((s|0)==13){s=0;d=we(i,k,0)|0}if((b[m>>0]|0)<0)Ci(f[k>>2]|0);if(d){s=17;break}}j=f[(f[p>>2]|0)+(c<<2)>>2]|0;if(!(Na[f[(f[j>>2]|0)+24>>2]&127](j,q)|0)){c=0;d=0;s=20;break}c=c+1|0;if((c|0)>=(o|0)){c=1;d=1;s=20;break}}if((s|0)==17){r=f[(f[p>>2]|0)+(c<<2)>>2]|0;s=f[r+8>>2]|0;fc(s,Qc(r)|0);r=0;s=1;s=r|s;u=t;return s|0}else if((s|0)==20){s=c|d;u=t;return s|0}return 0}function Pb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Yg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Rd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Lg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Yg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+4194304|0;f[a+48>>2]=q;q=q>>>0<1073741824;u=o;return q|0}function Qb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Yg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Rd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Lg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Yg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+2097152|0;f[a+48>>2]=q;q=q>>>0<536870912;u=o;return q|0}function Rb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Yg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Rd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Lg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Yg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+1048576|0;f[a+48>>2]=q;q=q>>>0<268435456;u=o;return q|0}function Sb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Yg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Rd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Lg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Yg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+262144|0;f[a+48>>2]=q;q=q>>>0<67108864;u=o;return q|0}function Tb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Yg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Rd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Lg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Yg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+131072|0;f[a+48>>2]=q;q=q>>>0<33554432;u=o;return q|0}function Ub(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Yg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Rd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Lg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Yg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+32768|0;f[a+48>>2]=q;q=q>>>0<8388608;u=o;return q|0}function Vb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;g=o;do if((j[c+38>>1]|0)<512){k=c+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;d=c+16|0;l=d;e=f[l>>2]|0;l=Yg(e|0,f[l+4>>2]|0,8,0)|0;m=I;if((k|0)<(m|0)|(k|0)==(m|0)&i>>>0>>0){a=0;u=o;return a|0}else{q=(f[c>>2]|0)+e|0;p=q;p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24;q=q+4|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;f[g>>2]=p;f[g+4>>2]=q;g=d;f[g>>2]=l;f[g+4>>2]=m;g=i;e=m;i=q;m=p;break}}else if(Rd(g,c)|0){m=g;k=c+8|0;d=c+16|0;e=d;g=f[k>>2]|0;k=f[k+4>>2]|0;l=f[e>>2]|0;e=f[e+4>>2]|0;i=f[m+4>>2]|0;m=f[m>>2]|0;break}else{q=0;u=o;return q|0}while(0);q=Lg(g|0,k|0,l|0,e|0)|0;p=I;if(i>>>0>p>>>0|(i|0)==(p|0)&m>>>0>q>>>0){q=0;u=o;return q|0}g=(f[c>>2]|0)+l|0;p=Yg(l|0,e|0,m|0,i|0)|0;q=d;f[q>>2]=p;f[q+4>>2]=I;if((m|0)<1){q=0;u=o;return q|0}f[a+40>>2]=g;d=m+-1|0;e=g+d|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+44>>2]=d;n=b[e>>0]&63;break}case 1:if((m|0)<2){q=0;u=o;return q|0}else{f[a+44>>2]=m+-2;n=g+m+-2|0;n=(h[n+1>>0]|0)<<8&16128|(h[n>>0]|0);break a}case 2:if((m|0)<3){q=0;u=o;return q|0}else{f[a+44>>2]=m+-3;n=g+m+-3|0;n=(h[n+1>>0]|0)<<8|(h[n>>0]|0)|(h[n+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=m+-4;n=g+m+-4|0;n=(h[n+2>>0]|0)<<16|(h[n+3>>0]|0)<<24&1056964608|(h[n+1>>0]|0)<<8|(h[n>>0]|0);break}default:{}}while(0);q=n+16384|0;f[a+48>>2]=q;q=q>>>0<4194304;u=o;return q|0}function Wb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f[b+4>>2]|0;if((d|0)<=-1)xa(13357,14007,59,14106);g=f[h+8>>2]|0;if(((f[h+12>>2]|0)-g>>2|0)<=(d|0))xa(13953,14007,60,14106);j=f[g+(d<<2)>>2]|0;if(!((c+-1|0)>>>0<6&(Ja[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1)){e=0;f[a>>2]=e;return}k=Ja[f[(f[b>>2]|0)+36>>2]&127](b)|0;l=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((k|0)==0|(l|0)==0){e=0;f[a>>2]=e;return}i=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;h=f[b+44>>2]|0;d=l+12|0;g=(c|0)==6;if(!i){if(g){c=qg(104)|0;f[c+4>>2]=j;j=c+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[j+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=k;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2412;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=k;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2468;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;di(c+88|0);e=c;f[a>>2]=e;return}}else if(g){c=qg(104)|0;f[c+4>>2]=j;k=c+8|0;f[k>>2]=f[e>>2];f[k+4>>2]=f[e+4>>2];f[k+8>>2]=f[e+8>>2];f[k+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=i;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2328;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=i;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2384;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;di(c+88|0);e=c;f[a>>2]=e;return}f[a>>2]=0;f[a>>2]=0;e=0;f[a>>2]=e;return}function Xb(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=a+32|0;g=f[h>>2]|0;o=g+8|0;n=f[o+4>>2]|0;c=g+16|0;e=c;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((n|0)>(e|0)|((n|0)==(e|0)?(f[o>>2]|0)>>>0>d>>>0:0))){p=0;return p|0}g=b[(f[g>>2]|0)+d>>0]|0;n=Yg(d|0,e|0,1,0)|0;o=c;f[o>>2]=n;f[o+4>>2]=I;o=g&255;g=g<<24>>24==0;a:do if(!g){c=0;while(1){if(!(Na[f[(f[a>>2]|0)+16>>2]&127](a,c)|0)){c=0;break}c=c+1|0;if((c|0)>=(o|0))break a}return c|0}while(0);n=a+8|0;c=f[n>>2]|0;d=f[a+12>>2]|0;b:do if((c|0)!=(d|0)){e=a+4|0;while(1){m=f[c>>2]|0;c=c+4|0;if(!(Ea[f[(f[m>>2]|0)+8>>2]&15](m,a,f[e>>2]|0)|0)){c=0;break}if((c|0)==(d|0))break b}return c|0}while(0);if(!g){c=0;do{m=f[(f[n>>2]|0)+(c<<2)>>2]|0;c=c+1|0;if(!(Na[f[(f[m>>2]|0)+12>>2]&127](m,f[h>>2]|0)|0)){c=0;i=26;break}}while((c|0)<(o|0));if((i|0)==26)return c|0;if(!g){j=a+20|0;k=a+24|0;i=0;do{l=f[(f[n>>2]|0)+(i<<2)>>2]|0;l=Ja[f[(f[l>>2]|0)+24>>2]&127](l)|0;if((l|0)>0){h=0;do{m=f[(f[n>>2]|0)+(i<<2)>>2]|0;m=Na[f[(f[m>>2]|0)+20>>2]&127](m,h)|0;d=f[k>>2]|0;c=f[j>>2]|0;e=d-c>>2;do if(m>>>0>=e>>>0){g=m+1|0;if(g>>>0>e>>>0){Dd(j,g-e|0);c=f[j>>2]|0;break}if(g>>>0>>0?(p=c+(g<<2)|0,(d|0)!=(p|0)):0)f[k>>2]=d+(~((d+-4-p|0)>>>2)<<2)}while(0);f[c+(m<<2)>>2]=i;h=h+1|0}while((h|0)!=(l|0))}i=i+1|0}while((i|0)!=(o|0))}}if(!(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)){p=0;return p|0}p=Ja[f[(f[a>>2]|0)+32>>2]&127](a)|0;return p|0}function Yb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=f[b+4>>2]|0;if((d|0)<=-1)xa(13357,14007,59,14106);g=f[h+8>>2]|0;if(((f[h+12>>2]|0)-g>>2|0)<=(d|0))xa(13953,14007,60,14106);j=f[g+(d<<2)>>2]|0;if(!((c+-1|0)>>>0<6&(Ja[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1)){e=0;f[a>>2]=e;return}k=Ja[f[(f[b>>2]|0)+36>>2]&127](b)|0;l=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((k|0)==0|(l|0)==0){e=0;f[a>>2]=e;return}i=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;h=f[b+44>>2]|0;d=l+12|0;g=(c|0)==6;if(!i){if(g){c=qg(104)|0;f[c+4>>2]=j;j=c+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[j+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=k;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2636;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=k;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2692;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;di(c+88|0);e=c;f[a>>2]=e;return}}else if(g){c=qg(104)|0;f[c+4>>2]=j;k=c+8|0;f[k>>2]=f[e>>2];f[k+4>>2]=f[e+4>>2];f[k+8>>2]=f[e+8>>2];f[k+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=i;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2552;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=i;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2608;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;di(c+88|0);e=c;f[a>>2]=e;return}f[a>>2]=0;f[a>>2]=0;e=0;f[a>>2]=e;return}function Zb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;i=o+16|0;k=o;if((j[c+38>>1]|0)<514){n=c+8|0;m=f[n+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((m|0)>(g|0)|((m|0)==(g|0)?(f[n>>2]|0)>>>0>e>>>0:0))){a=0;u=o;return a|0}n=b[(f[c>>2]|0)+e>>0]|0;l=Yg(e|0,g|0,1,0)|0;m=d;f[m>>2]=l;f[m+4>>2]=I;if(n<<24>>24){a=0;u=o;return a|0}}e=0;do{le(i,c)|0;d=f[i>>2]|0;if(d|0){g=a+60+(e*12|0)|0;ac(g,d,0);di(k);bc(k,c)|0;if(f[i>>2]|0){d=0;do{p=Qe(k)|0;n=(f[g>>2]|0)+(d>>>5<<2)|0;m=1<<(d&31);l=f[n>>2]|0;f[n>>2]=p?l|m:l&~m;d=d+1|0}while(d>>>0<(f[i>>2]|0)>>>0)}Ai(k)}e=e+1|0}while((e|0)<4);l=c+8|0;k=f[l>>2]|0;l=f[l+4>>2]|0;n=c+16|0;e=n;d=f[e>>2]|0;e=f[e+4>>2]|0;m=Yg(d|0,e|0,4,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){p=0;u=o;return p|0}i=f[c>>2]|0;c=i+d|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;p=n;f[p>>2]=m;f[p+4>>2]=g;e=Yg(d|0,e|0,8,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){p=0;u=o;return p|0}d=i+m|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;p=n;f[p>>2]=e;f[p+4>>2]=g;if((c|0)>(d|0)){p=0;u=o;return p|0}f[a+12>>2]=c;f[a+16>>2]=d;p=d+(1-c)|0;f[a+20>>2]=p;d=(p|0)/2|0;e=a+24|0;f[e>>2]=d;f[a+28>>2]=0-d;if(p&1|0){p=1;u=o;return p|0}f[e>>2]=d+-1;p=1;u=o;return p|0}function _b(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=f[b>>2]|0;m=b+4|0;e=f[m>>2]|0;i=((f[c>>2]|0)-l<<3)+(f[c+4>>2]|0)-e|0;c=l;if((i|0)<=0){b=d+4|0;d=f[d>>2]|0;f[a>>2]=d;d=a+4|0;a=f[b>>2]|0;f[d>>2]=a;return}if(!e){e=d+4|0;k=e;e=f[e>>2]|0}else{g=32-e|0;l=(i|0)<(g|0)?i:g;g=-1>>>(g-l|0)&-1<>2];k=d+4|0;e=f[k>>2]|0;j=32-e|0;c=j>>>0>>0?j:l;h=f[d>>2]|0;e=f[h>>2]&~(-1>>>(j-c|0)&-1<>2]=e;j=f[k>>2]|0;n=f[m>>2]|0;f[h>>2]=(j>>>0>n>>>0?g<>>(n-j|0))|e;e=(f[k>>2]|0)+c|0;h=h+(e>>>5<<2)|0;f[d>>2]=h;e=e&31;f[k>>2]=e;j=l-c|0;if((j|0)>0){e=f[h>>2]&~(-1>>>(32-j|0));f[h>>2]=e;f[h>>2]=g>>>((f[m>>2]|0)+c|0)|e;f[k>>2]=j;e=j}c=(f[b>>2]|0)+4|0;f[b>>2]=c;i=i-l|0}j=32-e|0;g=-1<31){h=~g;e=i;do{m=f[c>>2]|0;n=f[d>>2]|0;l=f[n>>2]&h;f[n>>2]=l;f[n>>2]=m<>2]|l;n=n+4|0;f[d>>2]=n;f[n>>2]=f[n>>2]&g|m>>>j;e=e+-32|0;c=(f[b>>2]|0)+4|0;f[b>>2]=c}while((e|0)>31);i=i&31}if((i|0)<=0){b=k;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;d=f[b>>2]|0;f[n>>2]=d;return}h=f[c>>2]&-1>>>(32-i|0);g=(j|0)<(i|0)?j:i;e=f[d>>2]|0;c=f[e>>2]&~(-1<>2]&-1>>>(j-g|0));f[e>>2]=c;f[e>>2]=c|h<>2];c=(f[k>>2]|0)+g|0;e=e+(c>>>5<<2)|0;f[d>>2]=e;f[k>>2]=c&31;c=i-g|0;if((c|0)<=0){b=k;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;d=f[b>>2]|0;f[n>>2]=d;return}f[e>>2]=f[e>>2]&~(-1>>>(32-c|0))|h>>>g;f[k>>2]=c;b=k;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;d=f[b>>2]|0;f[n>>2]=d;return}function $b(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+12|0;n=f[l>>2]|0;i=(f[c>>2]|0)-n|0;j=c+4|0;e=(f[j>>2]|0)-n|0;g=c;f[g>>2]=i;f[g+4>>2]=e;g=f[l>>2]|0;if((g|0)<(i|0))xa(8594,7879,250,8617);if((g|0)<(e|0))xa(8629,7879,251,8617);h=0-g|0;if((i|0)<(h|0))xa(8652,7879,252,8617);if((e|0)<(h|0))xa(8676,7879,253,8617);m=(((e|0)>-1?e:0-e|0)+((i|0)>-1?i:0-i|0)|0)<=(g|0);if(m)e=i;else{md(b,c,j);e=f[c>>2]|0}if(!e){g=f[j>>2]|0;h=g;g=(g|0)==0}else{g=f[j>>2]|0;h=g;g=(e|0)<0&(g|0)<1}if(!e)k=(h|0)==0?0:(h|0)>0?3:1;else k=(e|0)>0?(h>>31)+2|0:(h|0)<1?0:3;if(g){j=1;g=e;e=h}else{switch(k|0){case 1:{g=h;e=0-e|0;break}case 2:{g=0-e|0;e=0-h|0;break}case 3:{g=0-h|0;break}default:{g=e;e=h}}j=c;f[j>>2]=g;f[j+4>>2]=e;j=0}h=(f[d>>2]|0)+g|0;f[a>>2]=h;e=(f[d+4>>2]|0)+e|0;i=a+4|0;f[i>>2]=e;g=f[l>>2]|0;if((g|0)>=(h|0)){if((h|0)<(0-g|0))h=(f[b+4>>2]|0)+h|0}else h=h-(f[b+4>>2]|0)|0;f[a>>2]=h;if((g|0)>=(e|0)){if((e|0)<(0-g|0))e=(f[b+4>>2]|0)+e|0}else e=e-(f[b+4>>2]|0)|0;f[i>>2]=e;if(j)g=h;else{switch((4-k|0)%4|0|0){case 1:{g=e;e=0-h|0;break}case 2:{g=0-h|0;e=0-e|0;break}case 3:{g=0-e|0;e=h;break}default:g=h}l=a;f[l>>2]=g;f[l+4>>2]=e}if(m){m=g;b=e;m=m+n|0;b=b+n|0;n=a;a=n;f[a>>2]=m;n=n+4|0;f[n>>2]=b;return}md(b,a,i);m=f[a>>2]|0;b=f[i>>2]|0;m=m+n|0;b=b+n|0;n=a;a=n;f[a>>2]=m;n=n+4|0;f[n>>2]=b;return}function ac(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;m=p+8|0;j=p;n=a+4|0;e=f[n>>2]|0;if(e>>>0>=b>>>0){f[n>>2]=b;u=p;return}o=a+8|0;h=f[o>>2]|0;g=h<<5;d=b-e|0;if(g>>>0>>0|e>>>0>(g-d|0)>>>0){f[m>>2]=0;k=m+4|0;f[k>>2]=0;l=m+8|0;f[l>>2]=0;if((b|0)<0)Zh(a);e=h<<6;h=b+31&-32;Ad(m,g>>>0<1073741823?(e>>>0>>0?h:e):2147483647);g=f[n>>2]|0;f[k>>2]=g+d;e=f[a>>2]|0;h=e;b=f[m>>2]|0;g=(h+(g>>>5<<2)-e<<3)+(g&31)|0;if((g|0)>0){i=g>>>5;Qf(b|0,e|0,i<<2|0)|0;e=g-(i<<5)|0;g=b+(i<<2)|0;b=g;if((e|0)>0){q=-1>>>(32-e|0);f[g>>2]=f[g>>2]&~q|f[h+(i<<2)>>2]&q}else e=0}else e=0;f[j>>2]=b;f[j+4>>2]=e;g=j;b=f[g>>2]|0;g=f[g+4>>2]|0;e=f[a>>2]|0;f[a>>2]=f[m>>2];f[m>>2]=e;q=f[n>>2]|0;f[n>>2]=f[k>>2];f[k>>2]=q;q=f[o>>2]|0;f[o>>2]=f[l>>2];f[l>>2]=q;if(e|0)Ci(e)}else{g=(f[a>>2]|0)+(e>>>5<<2)|0;f[n>>2]=b;b=g;g=e&31}if(!d){u=p;return}h=(g|0)==0;e=b;if(c){if(!h){q=32-g|0;b=q>>>0>d>>>0?d:q;f[e>>2]=f[e>>2]|-1>>>(q-b|0)&-1<>>5;Wd(b|0,-1,q<<2|0)|0;d=d-(q<<5)|0;b=e+(q<<2)|0;if(!d){u=p;return}f[b>>2]=f[b>>2]|-1>>>(32-d|0);u=p;return}else{if(!h){q=32-g|0;b=q>>>0>d>>>0?d:q;f[e>>2]=f[e>>2]&~(-1>>>(q-b|0)&-1<>>5;Wd(b|0,0,q<<2|0)|0;d=d-(q<<5)|0;b=e+(q<<2)|0;if(!d){u=p;return}f[b>>2]=f[b>>2]&~(-1>>>(32-d|0));u=p;return}}function bc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;m=q;e=c+8|0;l=e;i=f[l+4>>2]|0;p=c+16|0;k=p;d=f[k>>2]|0;k=f[k+4>>2]|0;if(!((i|0)>(k|0)|((i|0)==(k|0)?(f[l>>2]|0)>>>0>d>>>0:0))){p=0;u=q;return p|0}b[a+12>>0]=b[(f[c>>2]|0)+d>>0]|0;g=p;d=f[g>>2]|0;g=f[g+4>>2]|0;i=Yg(d|0,g|0,1,0)|0;l=p;f[l>>2]=i;f[l+4>>2]=I;if((j[c+38>>1]|0)<514){k=e;e=f[k>>2]|0;k=f[k+4>>2]|0;d=Yg(d|0,g|0,5,0)|0;l=I;if((k|0)<(l|0)|(k|0)==(l|0)&e>>>0>>0)d=0;else{i=(f[c>>2]|0)+i|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;f[m>>2]=i;g=p;f[g>>2]=d;f[g+4>>2]=l;g=k;k=d;n=7}}else if(le(m,c)|0){g=e;l=p;e=f[g>>2]|0;g=f[g+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;i=f[m>>2]|0;n=7}else d=0;a:do if((n|0)==7){n=Lg(e|0,g|0,k|0,l|0)|0;m=I;if(!(0>(m|0)|0==(m|0)&i>>>0>n>>>0)?(o=(f[c>>2]|0)+k|0,(i|0)>=1):0){f[a>>2]=o;d=i+-1|0;e=o+d|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[a+4>>2]=d;d=b[e>>0]&63;break}case 1:{if((i|0)<2){d=0;break a}f[a+4>>2]=i+-2;d=o+i+-2|0;d=(h[d+1>>0]|0)<<8&16128|(h[d>>0]|0);break}case 2:{if((i|0)<3){d=0;break a}f[a+4>>2]=i+-3;d=o+i+-3|0;d=(h[d+1>>0]|0)<<8|(h[d>>0]|0)|(h[d+2>>0]|0)<<16&4128768;break}default:{d=0;break a}}o=d+4096|0;f[a+8>>2]=o;if(o>>>0<=1048575){a=Yg(k|0,l|0,i|0,0)|0;d=p;f[d>>2]=a;f[d+4>>2]=I;d=1}else d=0}else d=0}while(0);p=d;u=q;return p|0}function cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+16|0;q=r;i=b+8|0;g=i;j=f[g>>2]|0;g=f[g+4>>2]|0;k=b+16|0;d=k;c=f[d>>2]|0;d=Yg(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((g|0)<(e|0)|(g|0)==(e|0)&j>>>0>>0){q=0;u=r;return q|0}g=(f[b>>2]|0)+c|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;j=k;f[j>>2]=d;f[j+4>>2]=e;if((g|0)<0){q=0;u=r;return q|0}ac(a+76|0,g,0);di(q);if(bc(q,b)|0){if((g|0)>0){e=a+76|0;c=1;d=0;do{c=c^((Qe(q)|0)^1);j=(f[e>>2]|0)+(d>>>5<<2)|0;s=1<<(d&31);t=f[j>>2]|0;f[j>>2]=c?t|s:t&~s;d=d+1|0}while((d|0)<(g|0))}d=i;c=f[d>>2]|0;d=f[d+4>>2]|0;g=k;e=f[g>>2]|0;g=f[g+4>>2]|0;i=Yg(e|0,g|0,4,0)|0;j=I;if((!((d|0)<(j|0)|(d|0)==(j|0)&c>>>0>>0)?(l=f[b>>2]|0,m=l+e|0,m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24,n=k,f[n>>2]=i,f[n+4>>2]=j,n=Yg(e|0,g|0,8,0)|0,o=I,!((d|0)<(o|0)|(d|0)==(o|0)&c>>>0>>0)):0)?(p=l+i|0,p=h[p>>0]|h[p+1>>0]<<8|h[p+2>>0]<<16|h[p+3>>0]<<24,t=k,f[t>>2]=n,f[t+4>>2]=o,(m|0)<=(p|0)):0){f[a+12>>2]=m;f[a+16>>2]=p;t=p+(1-m)|0;f[a+20>>2]=t;c=(t|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(t&1)){f[d>>2]=c+-1;c=1}else c=1}else c=0}else c=0;Ai(q);t=c;u=r;return t|0}function dc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+16|0;j=m;if(!(cb(a,c)|0)){l=0;u=m;return l|0}k=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;l=a+36|0;i=a+40|0;d=f[i>>2]|0;g=f[l>>2]|0;e=d-g>>2;if(k>>>0<=e>>>0){if(k>>>0>>0?(h=g+(k<<2)|0,(d|0)!=(h|0)):0)do{g=d+-4|0;f[i>>2]=g;d=f[g>>2]|0;f[g>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[i>>2]|0}while((d|0)!=(h|0))}else Fc(l,k-e|0);h=c+8|0;if((k|0)<=0){l=1;u=m;return l|0}i=c+16|0;g=0;while(1){n=h;o=f[n+4>>2]|0;e=i;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((o|0)>(e|0)|((o|0)==(e|0)?(f[n>>2]|0)>>>0>d>>>0:0))){d=0;e=19;break}o=b[(f[c>>2]|0)+d>>0]|0;d=Yg(d|0,e|0,1,0)|0;n=i;f[n>>2]=d;f[n+4>>2]=I;Ka[f[(f[a>>2]|0)+48>>2]&15](j,a,o);o=(f[l>>2]|0)+(g<<2)|0;n=f[j>>2]|0;f[j>>2]=0;d=f[o>>2]|0;f[o>>2]=n;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[j>>2]|0;f[j>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[(f[l>>2]|0)+(g<<2)>>2]|0;if(!d){d=0;e=19;break}e=f[(f[d>>2]|0)+8>>2]|0;n=Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0;o=Na[f[(f[a>>2]|0)+20>>2]&127](a,g)|0;g=g+1|0;if(!(Ea[e&15](d,n,o)|0)){d=0;e=19;break}if((g|0)>=(k|0)){d=1;e=19;break}}if((e|0)==19){u=m;return d|0}return 0}function ec(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j+12|0;h=j;i=qg(52)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[i+16>>2]=$(1.0);e=i+20|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+36>>2]=$(1.0);f[i+40>>2]=0;f[i+44>>2]=0;f[i+48>>2]=0;fi(g);if(Kc(g,f[c+32>>2]|0,i)|0){g=(f[c+4>>2]|0)+4|0;h=f[g>>2]|0;f[g>>2]=i;if(h|0){e=h+40|0;c=f[e>>2]|0;if(c|0){g=h+44|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{i=d+-4|0;f[g>>2]=i;d=f[i>>2]|0;f[i>>2]=0;if(d|0){Nd(d);Ci(d)}d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Ci(c)}Nd(h);Ci(h)}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=j;return}else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;c=qg(32)|0;f[h>>2]=c;f[h+8>>2]=-2147483616;f[h+4>>2]=26;d=c;e=13556;g=d+26|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+26>>0]=0;f[a>>2]=-1;Xd(a+4|0,h);if((b[h+11>>0]|0)<0)Ci(f[h>>2]|0);e=i+40|0;c=f[e>>2]|0;if(c|0){g=i+44|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{a=d+-4|0;f[g>>2]=a;d=f[a>>2]|0;f[a>>2]=0;if(d|0){Nd(d);Ci(d)}d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Ci(c)}Nd(i);Ci(i);u=j;return}}function fc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!(f[a+64>>2]|0)){d=qg(32)|0;xg(d);g=a+64|0;h=f[g>>2]|0;f[g>>2]=d;if(h){d=f[h>>2]|0;if(d|0){e=h+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Ci(d)}Ci(h);d=f[g>>2]|0}Le(a,d,0,0,0,0);d=a}else d=a;if(!(Td(d,c)|0))return;b[a+84>>0]=b[c+84>>0]|0;f[a+80>>2]=f[c+80>>2];if((a|0)!=(c|0))xc(a+68|0,f[c+68>>2]|0,f[c+72>>2]|0);i=f[c+88>>2]|0;if(!i){a=a+88|0;d=f[a>>2]|0;f[a>>2]=0;if(!d)return;e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Ci(e)}Ci(d);return}l=qg(40)|0;f[l>>2]=f[i>>2];d=l+8|0;e=i+8|0;f[d>>2]=0;j=l+12|0;f[j>>2]=0;g=l+16|0;f[g>>2]=0;c=i+12|0;h=(f[c>>2]|0)-(f[e>>2]|0)|0;if(h|0){if((h|0)<0)Zh(d);k=qg(h)|0;f[j>>2]=k;f[d>>2]=k;f[g>>2]=k+h;e=f[e>>2]|0;d=(f[c>>2]|0)-e|0;if((d|0)>0){Mc(k|0,e|0,d|0)|0;f[j>>2]=k+d}}g=l+24|0;k=i+24|0;f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[g+12>>2]=f[k+12>>2];a=a+88|0;g=f[a>>2]|0;f[a>>2]=l;if(!g)return;d=f[g+8>>2]|0;if(d|0){e=g+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Ci(d)}Ci(g);return}function gc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;l=n+16|0;m=n;i=f[b+4>>2]|0;if((d|0)<=-1)xa(13357,14007,59,14106);h=f[i+8>>2]|0;if(((f[i+12>>2]|0)-h>>2|0)<=(d|0))xa(13953,14007,60,14106);i=f[h+(d<<2)>>2]|0;do if((c+-1|0)>>>0<6&(Ja[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1){j=Ja[f[(f[b>>2]|0)+36>>2]&127](b)|0;k=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((j|0)==0|(k|0)==0){f[a>>2]=0;u=n;return}h=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;if(!h){f[m>>2]=f[b+44>>2];f[m+4>>2]=j;f[m+12>>2]=k;f[m+8>>2]=k+12;kb(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}else{f[m>>2]=f[b+44>>2];f[m+4>>2]=h;f[m+12>>2]=k;f[m+8>>2]=k+12;jb(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}}while(0);f[a>>2]=0;u=n;return}function hc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Ab(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Pb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<4194304){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<4194304)}while(0);p=d&1048575;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>20)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Ci(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Ci(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Ci(b);u=n;return g|0}function ic(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Bb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Qb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<2097152){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<2097152)}while(0);p=d&524287;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>19)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Ci(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Ci(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Ci(b);u=n;return g|0}function jc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Cb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Rb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<1048576){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<1048576)}while(0);p=d&262143;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>18)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Ci(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Ci(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Ci(b);u=n;return g|0}function kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Db(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Sb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<262144){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<262144)}while(0);p=d&65535;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>16)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Ci(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Ci(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Ci(b);u=n;return g|0}function lc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Eb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Tb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<131072){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<131072)}while(0);p=d&32767;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>15)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Ci(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Ci(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Ci(b);u=n;return g|0}function mc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Fb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Ub(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<32768){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<32768)}while(0);p=d&8191;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>13)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Ci(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Ci(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Ci(b);u=n;return g|0}function nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Gb(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=Vb(m,b)|0;if(e|d^1)g=d;else{g=m+44|0;i=m+48|0;j=m+40|0;k=m+16|0;l=m+28|0;b=0;d=f[i>>2]|0;while(1){a:do if(d>>>0<16384){e=f[g>>2]|0;do{if((e|0)<=0)break a;o=f[j>>2]|0;e=e+-1|0;f[g>>2]=e;d=h[o+e>>0]|0|d<<8;f[i>>2]=d}while(d>>>0<16384)}while(0);p=d&4095;o=f[(f[k>>2]|0)+(p<<2)>>2]|0;e=f[l>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>12)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[i>>2]=d;f[c+(b<<2)>>2]=o;b=b+1|0;if((b|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){e=m+32|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-8-d|0)>>>3)<<3);Ci(d)}d=f[m+16>>2]|0;if(d|0){e=m+20|0;b=f[e>>2]|0;if((b|0)!=(d|0))f[e>>2]=b+(~((b+-4-d|0)>>>2)<<2);Ci(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}d=m+4|0;e=f[d>>2]|0;if((e|0)!=(b|0))f[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);Ci(b);u=n;return g|0}function oc(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;d=b[(f[a+8>>2]|0)+24>>0]|0;i=yi(d>>>0>1073741823?-1:d<<2)|0;j=a+28|0;c=f[j>>2]|0;f[j>>2]=i;if(c|0)zi(c);g=a+4|0;i=f[(f[g>>2]|0)+32>>2]|0;c=d<<2;n=i+8|0;l=f[n>>2]|0;n=f[n+4>>2]|0;d=i+16|0;k=d;e=f[k>>2]|0;k=Yg(e|0,f[k+4>>2]|0,c|0,0)|0;m=I;if((n|0)<(m|0)|(n|0)==(m|0)&l>>>0>>0){n=0;return n|0}Mc(f[j>>2]|0,(f[i>>2]|0)+e|0,c|0)|0;k=d;k=Yg(f[k>>2]|0,f[k+4>>2]|0,c|0,0)|0;c=d;f[c>>2]=k;f[c+4>>2]=I;c=(f[g>>2]|0)+32|0;d=f[c>>2]|0;k=d+8|0;m=f[k>>2]|0;k=f[k+4>>2]|0;e=d+16|0;n=e;g=f[n>>2]|0;n=Yg(g|0,f[n+4>>2]|0,4,0)|0;l=I;if((k|0)<(l|0)|(k|0)==(l|0)&m>>>0>>0){n=0;return n|0}m=a+32|0;n=(f[d>>2]|0)+g|0;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;b[m>>0]=n;b[m+1>>0]=n>>8;b[m+2>>0]=n>>16;b[m+3>>0]=n>>24;m=e;m=Yg(f[m>>2]|0,f[m+4>>2]|0,4,0)|0;n=e;f[n>>2]=m;f[n+4>>2]=I;c=f[c>>2]|0;n=c+8|0;m=f[n+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((m|0)>(g|0)|((m|0)==(g|0)?(f[n>>2]|0)>>>0>e>>>0:0))){n=0;return n|0}c=b[(f[c>>2]|0)+e>>0]|0;m=Yg(e|0,g|0,1,0)|0;n=d;f[n>>2]=m;f[n+4>>2]=I;if((c&255)>31){n=0;return n|0}f[a+24>>2]=c&255;n=1;return n|0}function pc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=f[c>>2]|0;m=f[l>>2]|0;i=f[a+4>>2]|0;c=f[l+4>>2]|0;j=i+-1|0;g=(j&i|0)==0;if(!g)if(c>>>0>>0)h=c;else h=(c>>>0)%(i>>>0)|0;else h=j&c;d=(f[a>>2]|0)+(h<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(l|0))break;else k=c}if((k|0)!=(a+8|0)){c=f[k+4>>2]|0;if(!g){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&j;if((c|0)==(h|0)){d=m;e=21}else e=13}else e=13;do if((e|0)==13){if(m|0){c=f[m+4>>2]|0;if(!g){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0}else c=c&j;if((c|0)==(h|0)){d=m;c=m;e=22;break}}f[d>>2]=0;d=f[l>>2]|0;e=21}while(0);if((e|0)==21){c=d;if(d)e=22}if((e|0)==22){d=f[d+4>>2]|0;if(!g){if(d>>>0>=i>>>0)d=(d>>>0)%(i>>>0)|0}else d=d&j;if((d|0)!=(h|0)){f[(f[a>>2]|0)+(d<<2)>>2]=k;c=f[l>>2]|0}}f[k>>2]=c;f[l>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!l)return m|0;c=l+8|0;d=f[l+20>>2]|0;if(d|0){e=l+24|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Ci(d)}if((b[c+11>>0]|0)<0)Ci(f[c>>2]|0);Ci(l);return m|0}function qc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+16|0;n=o;j=d+8|0;l=f[j>>2]|0;j=f[j+4>>2]|0;k=d+16|0;g=k;e=f[g>>2]|0;g=f[g+4>>2]|0;if((j|0)>(g|0)|(j|0)==(g|0)&l>>>0>e>>>0){i=b[(f[d>>2]|0)+e>>0]|0;e=Yg(e|0,g|0,1,0)|0;g=I;p=k;f[p>>2]=e;f[p+4>>2]=g;if(i<<24>>24!=-2)m=3}else{i=0;m=3}if((m|0)==3){if((j|0)>(g|0)|(j|0)==(g|0)&l>>>0>e>>>0){p=b[(f[d>>2]|0)+e>>0]|0;m=Yg(e|0,g|0,1,0)|0;e=k;f[e>>2]=m;f[e+4>>2]=I;e=p}else e=0;Oa[f[(f[a>>2]|0)+40>>2]&7](n,a,i<<24>>24,e<<24>>24);p=a+20|0;m=f[n>>2]|0;f[n>>2]=0;e=f[p>>2]|0;f[p>>2]=m;if(e){Ga[f[(f[e>>2]|0)+4>>2]&127](e);e=f[n>>2]|0;f[n>>2]=0;if(e|0)Ga[f[(f[e>>2]|0)+4>>2]&127](e)}else f[n>>2]=0}e=f[a+20>>2]|0;if(e|0?!(Na[f[(f[a>>2]|0)+28>>2]&127](a,e)|0):0){p=0;u=o;return p|0}if(!(Ea[f[(f[a>>2]|0)+36>>2]&15](a,c,d)|0)){p=0;u=o;return p|0}e=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;p=f[a+4>>2]|0;if((p|0?((h[p+36>>0]|0)<<8&65535)<512:0)?!(Na[f[(f[a>>2]|0)+48>>2]&127](a,e)|0):0){p=0;u=o;return p|0}p=1;u=o;return p|0}function rc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[(f[h>>2]|0)+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;return}e=c+1|0;if(!d)c=((e|0)%3|0|0)==0?c+-2|0:e;e=f[h>>2]|0;if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2]))if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=7}else g=7;else{c=-1073741824;g=7}if((g|0)==7)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;b[i>>0]=0;return}function sc(a,b,c,d){a=a|0;b=$(b);c=$(c);d=d|0;var e=Ca,f=Ca,g=Ca,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0;if(!(b>=$(0.0)))xa(8034,7879,191,8048);if(!(c>=$(0.0)))xa(8077,7879,192,8048);if(!(b<=$(1.0)))xa(8091,7879,193,8048);if(!(c<=$(1.0)))xa(8105,7879,194,8048);e=$(b+c);f=$(b-c);if(!(f<=$(.5))|(!(f>=$(-.5))|(!(e>=$(.5))|!(e<=$(1.5))))){do if(!(e<=$(.5))){if(e>=$(1.5)){g=$($(1.5)-c);c=$($(1.5)-b);break}if(!(f<=$(-.5))){g=$(c+$(.5));c=$(b+$(-.5));break}else{g=$(c+$(-.5));c=$(b+$(.5));break}}else{g=$($(.5)-c);c=$($(.5)-b)}while(0);e=$(c+g);f=$(g-c);h=-1.0}else{h=1.0;g=b}b=$(+g*2.0+-1.0);g=$(+c*2.0+-1.0);k=+e*2.0;i=k+-1.0;k=3.0-k;l=+f*2.0;j=l+1.0;l=1.0-l;j=l>2]=$(0.0);b=$(0.0);c=$(0.0);a=d+4|0;n[a>>2]=c;d=d+8|0;n[d>>2]=b;return}else{f=$($(1.0)/$(L($(f))));c=$(e*f);n[d>>2]=c;c=$(g*f);b=$(b*f);a=d+4|0;n[a>>2]=b;d=d+8|0;n[d>>2]=c;return}}function tc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;k=n;l=a+8|0;e=f[l>>2]|0;m=a+4|0;c=f[m>>2]|0;if(e-c>>2>>>0>=b>>>0){Wd(c|0,0,b<<2|0)|0;f[m>>2]=c+(b<<2);u=n;return}d=f[a>>2]|0;g=c-d>>2;c=g+b|0;if(c>>>0>1073741823)Zh(a);i=e-d|0;j=i>>1;c=i>>2>>>0<536870911?(j>>>0>>0?c:j):1073741823;f[k+12>>2]=0;f[k+16>>2]=a+8;do if(c)if(c>>>0>1073741823){n=za(8)|0;ih(n,14241);f[n>>2]=3608;qa(n|0,952,75)}else{d=qg(c<<2)|0;break}else d=0;while(0);f[k>>2]=d;e=d+(g<<2)|0;i=k+8|0;h=k+4|0;f[h>>2]=e;j=k+12|0;f[j>>2]=d+(c<<2);Wd(e|0,0,b<<2|0)|0;f[i>>2]=e+(b<<2);e=f[a>>2]|0;c=f[m>>2]|0;if((c|0)==(e|0)){g=h;d=f[h>>2]|0}else{d=f[h>>2]|0;do{c=c+-4|0;b=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=b;d=(f[h>>2]|0)+-4|0;f[h>>2]=d}while((c|0)!=(e|0));g=h;e=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=d;f[g>>2]=e;f[m>>2]=f[i>>2];f[i>>2]=c;m=f[l>>2]|0;f[l>>2]=f[j>>2];f[j>>2]=m;f[k>>2]=f[g>>2];sd(k);u=n;return}function uc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=b;h=c-m>>2;i=a+8|0;d=f[i>>2]|0;l=f[a>>2]|0;j=l;if(h>>>0<=d-l>>2>>>0){k=a+4|0;i=(f[k>>2]|0)-l>>2;h=h>>>0>i>>>0;i=b+(i<<2)|0;g=h?i:c;a=g;d=a-m|0;e=d>>2;if(e|0)Qf(l|0,b|0,d|0)|0;d=j+(e<<2)|0;if(!h){b=f[k>>2]|0;if((b|0)==(d|0))return;f[k>>2]=b+(~((b+-4-d|0)>>>2)<<2);return}if((g|0)==(c|0))return;g=f[k>>2]|0;e=((c+-4-a|0)>>>2)+1|0;b=i;d=g;while(1){f[d>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else d=d+4|0}f[k>>2]=g+(e<<2);return}g=l;if(l){d=a+4|0;e=f[d>>2]|0;if((e|0)!=(j|0))f[d>>2]=e+(~((e+-4-l|0)>>>2)<<2);Ci(g);f[i>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823)Zh(a);l=d>>1;d=d>>2>>>0<536870911?(l>>>0>>0?h:l):1073741823;if(d>>>0>1073741823)Zh(a);g=qg(d<<2)|0;h=a+4|0;f[h>>2]=g;f[a>>2]=g;f[i>>2]=g+(d<<2);if((b|0)==(c|0))return;e=((c+-4-m|0)>>>2)+1|0;d=g;while(1){f[d>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else d=d+4|0}f[h>>2]=g+(e<<2);return}function vc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=Ca,j=Ca,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=Ca,x=Ca,y=0,z=0;v=u;u=u+16|0;m=v;p=f[a+24>>2]|0;s=a+8|0;d=b[(f[s>>2]|0)+24>>0]|0;q=d<<24>>24;r=q<<2;t=yi(q>>>0>1073741823?-1:q<<2)|0;yh(m);if(!(kg(m,$(n[a+32>>2]),(1<>2]|0;o=(f[f[o>>2]>>2]|0)+(f[o+48>>2]|0)|0;if(!c){s=1;zi(t);u=v;return s|0}p=m+4|0;l=a+28|0;if(d<<24>>24>0){d=0;e=0;g=0}else{a=0;d=0;while(1){Mc((f[f[(f[s>>2]|0)+64>>2]>>2]|0)+d|0,t|0,r|0)|0;a=a+1|0;if((a|0)==(c|0)){a=1;break}else d=d+r|0}zi(t);u=v;return a|0}while(1){k=f[l>>2]|0;i=$(n[p>>2]);j=$(n[m>>2]);a=0;h=e;while(1){z=f[o+(h<<2)>>2]|0;y=(z|0)<0;w=$(i*$((y?0-z|0:z)|0));x=$(-w);w=$(j*(y?x:w));w=$($(n[k+(a<<2)>>2])+w);n[t+(a<<2)>>2]=w;a=a+1|0;if((a|0)==(q|0))break;else h=h+1|0}Mc((f[f[(f[s>>2]|0)+64>>2]>>2]|0)+g|0,t|0,r|0)|0;d=d+1|0;if((d|0)==(c|0)){a=1;break}else{e=q+e|0;g=g+r|0}}zi(t);u=v;return a|0}function wc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;f[c>>2]=1;e=a+4|0;l=c+8|0;k=c+12|0;c=f[l>>2]|0;d=(f[k>>2]|0)-c|0;if(d>>>0<4294967292){Oe(l,d+4|0,0);c=f[l>>2]|0}i=c+d|0;j=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[i>>0]=j;b[i+1>>0]=j>>8;b[i+2>>0]=j>>16;b[i+3>>0]=j>>24;i=a+8|0;j=a+12|0;c=f[i>>2]|0;if((f[j>>2]|0)!=(c|0)){g=0;do{d=c+(g<<2)|0;c=f[l>>2]|0;e=(f[k>>2]|0)-c|0;if(e>>>0<4294967292){Oe(l,e+4|0,0);c=f[l>>2]|0}c=c+e|0;e=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[c>>0]=e;b[c+1>>0]=e>>8;b[c+2>>0]=e>>16;b[c+3>>0]=e>>24;g=g+1|0;c=f[i>>2]|0}while(g>>>0<(f[j>>2]|0)-c>>2>>>0)}d=a+20|0;e=f[l>>2]|0;c=(f[k>>2]|0)-e|0;if(c>>>0<4294967292){Oe(l,c+4|0,0);l=f[l>>2]|0;l=l+c|0;k=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}else{l=e;l=l+c|0;k=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}}function xc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=c;e=b;i=k-e|0;h=i>>2;j=a+8|0;d=f[j>>2]|0;g=f[a>>2]|0;l=g;if(h>>>0>d-g>>2>>>0){e=g;if(g){d=a+4|0;c=f[d>>2]|0;if((c|0)!=(l|0))f[d>>2]=c+(~((c+-4-g|0)>>>2)<<2);Ci(e);f[j>>2]=0;f[d>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823)Zh(a);l=d>>1;d=d>>2>>>0<536870911?(l>>>0>>0?h:l):1073741823;if(d>>>0>1073741823)Zh(a);c=qg(d<<2)|0;e=a+4|0;f[e>>2]=c;f[a>>2]=c;f[j>>2]=c+(d<<2);if((i|0)<=0)return;Mc(c|0,b|0,i|0)|0;f[e>>2]=c+(i>>>2<<2);return}j=a+4|0;i=f[j>>2]|0;g=i-g>>2;a=h>>>0>g>>>0;h=a?b+(g<<2)|0:c;g=i;if((h|0)==(b|0))d=l;else{e=h+-4-e|0;d=b;c=l;while(1){f[c>>2]=f[d>>2];d=d+4|0;if((d|0)==(h|0))break;else c=c+4|0}d=l+((e>>>2)+1<<2)|0}if(a){d=k-h|0;if((d|0)<=0)return;Mc(i|0,h|0,d|0)|0;f[j>>2]=(f[j>>2]|0)+(d>>>2<<2);return}else{if((g|0)==(d|0))return;f[j>>2]=g+(~((g+-4-d|0)>>>2)<<2);return}}function yc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=c+8|0;m=f[n>>2]|0;n=f[n+4>>2]|0;q=c+16|0;p=q;o=f[p>>2]|0;p=f[p+4>>2]|0;e=Yg(o|0,p|0,4,0)|0;d=I;if((n|0)<(d|0)|(n|0)==(d|0)&m>>>0>>0){q=0;return q|0}l=f[c>>2]|0;g=l+o|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=q;f[i>>2]=e;f[i+4>>2]=d;i=Yg(o|0,p|0,8,0)|0;k=I;if((n|0)<(k|0)|(n|0)==(k|0)&m>>>0>>0){q=0;return q|0}d=l+e|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=q;f[e>>2]=i;f[e+4>>2]=k;if((g|0)>(d|0)){q=0;return q|0}f[a+12>>2]=g;f[a+16>>2]=d;g=d+(1-g)|0;f[a+20>>2]=g;d=(g|0)/2|0;e=a+24|0;f[e>>2]=d;f[a+28>>2]=0-d;if(!(g&1))f[e>>2]=d+-1;do if((j[c+38>>1]|0)<514){if(!((n|0)>(k|0)|(n|0)==(k|0)&m>>>0>i>>>0)){q=0;return q|0}d=b[l+i>>0]|0;p=Yg(o|0,p|0,9,0)|0;f[q>>2]=p;f[q+4>>2]=I;if((d&255)<2){f[a+88>>2]=d&255;break}else{q=0;return q|0}}while(0);q=bc(a+108|0,c)|0;return q|0}function zc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=b+12|0;m=f[k>>2]|0;g=(f[c>>2]|0)-m|0;j=c+4|0;i=(f[j>>2]|0)-m|0;h=c;f[h>>2]=g;f[h+4>>2]=i;h=f[k>>2]|0;if((h|0)<(g|0))xa(8594,7879,250,8617);if((h|0)<(i|0))xa(8629,7879,251,8617);e=0-h|0;if((g|0)<(e|0))xa(8652,7879,252,8617);if((i|0)<(e|0))xa(8676,7879,253,8617);if((((i|0)>-1?i:0-i|0)+((g|0)>-1?g:0-g|0)|0)>(h|0)){md(b,c,j);l=0;c=f[c>>2]|0;e=f[j>>2]|0;h=f[k>>2]|0}else{l=1;c=g;e=i}c=(f[d>>2]|0)+c|0;f[a>>2]=c;e=(f[d+4>>2]|0)+e|0;g=a+4|0;f[g>>2]=e;if((h|0)>=(c|0)){if((c|0)<(0-h|0))c=(f[b+4>>2]|0)+c|0}else c=c-(f[b+4>>2]|0)|0;f[a>>2]=c;if((h|0)>=(e|0)){if((e|0)<(0-h|0))e=(f[b+4>>2]|0)+e|0}else e=e-(f[b+4>>2]|0)|0;f[g>>2]=e;if(l){l=c;b=e;l=l+m|0;b=b+m|0;m=a;a=m;f[a>>2]=l;m=m+4|0;f[m>>2]=b;return}md(b,a,g);l=f[a>>2]|0;b=f[g>>2]|0;l=l+m|0;b=b+m|0;m=a;a=m;f[a>>2]=l;m=m+4|0;f[m>>2]=b;return}function Ac(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;f[h>>2]=b;if((b|0)<=-1)xa(14116,14128,110,14228);i=a+8|0;if(((f[a+12>>2]|0)-(f[i>>2]|0)>>2|0)<=(b|0))ed(i,b+1|0);d=f[(f[c>>2]|0)+56>>2]|0;do if((d|0)<5){e=a+20+(d*12|0)+4|0;g=f[e>>2]|0;if((g|0)==(f[a+20+(d*12|0)+8>>2]|0)){Ld(a+20+(d*12|0)|0,h);break}else{f[g>>2]=b;f[e>>2]=g+4;break}}while(0);g=f[c>>2]|0;e=f[h>>2]|0;f[g+60>>2]=e;i=(f[i>>2]|0)+(e<<2)|0;f[c>>2]=0;e=f[i>>2]|0;f[i>>2]=g;if(!e){u=j;return}i=e+88|0;a=f[i>>2]|0;f[i>>2]=0;if(a|0){b=f[a+8>>2]|0;if(b|0){d=a+12|0;if((f[d>>2]|0)!=(b|0))f[d>>2]=b;Ci(b)}Ci(a)}a=f[e+68>>2]|0;if(a|0){b=e+72|0;d=f[b>>2]|0;if((d|0)!=(a|0))f[b>>2]=d+(~((d+-4-a|0)>>>2)<<2);Ci(a)}i=e+64|0;a=f[i>>2]|0;f[i>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){d=a+4|0;if((f[d>>2]|0)!=(b|0))f[d>>2]=b;Ci(b)}Ci(a)}Ci(e);u=j;return}function Bc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a=a+20|0;if(qb(a,c)|0){h=0;return h|0}g=ab(a,c)|0;e=f[d>>2]|0;f[d>>2]=0;h=f[g>>2]|0;f[g>>2]=e;if(!h){h=1;return h|0}a=f[h+28>>2]|0;if(a|0)do{g=a;a=f[a>>2]|0;yd(g+8|0);Ci(g)}while((a|0)!=0);g=h+20|0;a=f[g>>2]|0;f[g>>2]=0;if(a|0)Ci(a);a=f[h+8>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;e=f[c+20>>2]|0;if(e|0){g=c+24|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Ci(e)}if((b[d+11>>0]|0)<0)Ci(f[d>>2]|0);Ci(c)}while((a|0)!=0);a=f[h>>2]|0;f[h>>2]=0;if(a|0)Ci(a);Ci(h);h=1;return h|0}function Cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;c=qg(64)|0;j=qg(12)|0;h=f[(f[a+4>>2]|0)+80>>2]|0;f[j+4>>2]=0;f[j>>2]=2788;f[j+8>>2]=h;f[k>>2]=j;kf(c,k);j=c;if((b|0)>=0){h=a+8|0;g=a+12|0;c=f[g>>2]|0;a=f[h>>2]|0;d=c-a>>2;do if((d|0)<=(b|0)){e=b+1|0;if(e>>>0>d>>>0){Fc(h,e-d|0);break}if(e>>>0>>0?(i=a+(e<<2)|0,(c|0)!=(i|0)):0)do{e=c+-4|0;f[g>>2]=e;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[g>>2]|0}while((c|0)!=(i|0))}while(0);i=(f[h>>2]|0)+(b<<2)|0;c=f[i>>2]|0;f[i>>2]=j;if(!c)c=1;else{Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=1}}else{Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=0}a=f[k>>2]|0;f[k>>2]=0;if(!a){u=l;return c|0}Ga[f[(f[a>>2]|0)+4>>2]&127](a);u=l;return c|0}function Dc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;i=c;h=d-i|0;j=a+8|0;e=f[j>>2]|0;g=f[a>>2]|0;k=g;if(h>>>0>(e-g|0)>>>0){if(g){e=a+4|0;if((f[e>>2]|0)!=(k|0))f[e>>2]=k;Ci(k);f[j>>2]=0;f[e>>2]=0;f[a>>2]=0;e=0}if((h|0)<0)Zh(a);g=e<<1;g=e>>>0<1073741823?(g>>>0>>0?h:g):2147483647;if((g|0)<0)Zh(a);e=qg(g)|0;h=a+4|0;f[h>>2]=e;f[a>>2]=e;f[j>>2]=e+g;if((c|0)==(d|0))return;do{b[e>>0]=b[c>>0]|0;c=c+1|0;e=(f[h>>2]|0)+1|0;f[h>>2]=e}while((c|0)!=(d|0));return}else{j=a+4|0;e=(f[j>>2]|0)-g|0;a=h>>>0>e>>>0;e=c+e|0;h=a?e:d;g=h-i|0;if(g|0)Qf(k|0,c|0,g|0)|0;c=k+g|0;if(!a){if((f[j>>2]|0)==(c|0))return;f[j>>2]=c;return}if((h|0)==(d|0))return;c=f[j>>2]|0;do{b[c>>0]=b[e>>0]|0;e=e+1|0;c=(f[j>>2]|0)+1|0;f[j>>2]=c}while((e|0)!=(d|0));return}}function Ec(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+80|0;e=j;i=j+64|0;xf(e);h=f[(f[a+8>>2]|0)+56>>2]|0;g=X(Gf(5)|0,d)|0;ke(e,h,0,d&255,5,0,g,((g|0)<0)<<31>>31,0,0);d=qg(96)|0;rf(d,e);b[d+84>>0]=1;e=f[d+68>>2]|0;g=d+72|0;h=f[g>>2]|0;if((h|0)!=(e|0))f[g>>2]=h+(~((h+-4-e|0)>>>2)<<2);de(d,c)|0;f[i>>2]=d;Qd(a,i);h=f[i>>2]|0;f[i>>2]=0;if(!h){u=j;return}i=h+88|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Ci(e)}Ci(d)}d=f[h+68>>2]|0;if(d|0){e=h+72|0;g=f[e>>2]|0;if((g|0)!=(d|0))f[e>>2]=g+(~((g+-4-d|0)>>>2)<<2);Ci(d)}i=h+64|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Ci(e)}Ci(d)}Ci(h);u=j;return}function Fc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;e=f[l>>2]|0;m=a+4|0;d=f[m>>2]|0;c=d;if(e-d>>2>>>0>=b>>>0){Wd(d|0,0,b<<2|0)|0;f[m>>2]=d+(b<<2);return}g=f[a>>2]|0;d=d-g>>2;j=d+b|0;k=g;if(j>>>0>1073741823)Zh(a);i=e-g|0;h=i>>1;h=i>>2>>>0<536870911?(h>>>0>>0?j:h):1073741823;do if(h)if(h>>>0>1073741823){m=za(8)|0;ih(m,14241);f[m>>2]=3608;qa(m|0,952,75)}else{i=qg(h<<2)|0;break}else i=0;while(0);d=i+(d<<2)|0;Wd(d|0,0,b<<2|0)|0;e=d;b=i+(h<<2)|0;h=i+(j<<2)|0;if((c|0)!=(k|0)){do{c=c+-4|0;j=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=j;d=e+-4|0;e=d}while((c|0)!=(k|0));g=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=e;f[m>>2]=h;f[l>>2]=b;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d)}while((c|0)!=(e|0));if(!g)return;Ci(g);return}function Gc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=2856;b=f[a+68>>2]|0;if(b|0){c=a+72|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}b=f[a+56>>2]|0;if(b|0){c=a+60|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}b=f[a+44>>2]|0;if(b|0){c=a+48|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}b=f[a+32>>2]|0;if(b|0){c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}td(a+8|0);a=a+4|0;e=f[a>>2]|0;f[a>>2]=0;if(!e)return;d=e+40|0;b=f[d>>2]|0;if(b|0){a=e+44|0;c=f[a>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[a>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0){Nd(c);Ci(c)}c=f[a>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Ci(b)}Nd(e);Ci(e);return}function Hc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;j=o+24|0;k=o+16|0;l=o+8|0;n=o;e=a+4|0;p=f[e>>2]|0;m=f[b>>2]|0;d=f[b+4>>2]|0;i=f[c>>2]|0;g=f[c+4>>2]|0;h=i-m<<3;f[e>>2]=p-d+g+h;e=(f[a>>2]|0)+(p>>>5<<2)|0;c=p&31;b=e;if((d|0)!=(c|0)){f[j>>2]=m;f[j+4>>2]=d;f[k>>2]=i;f[k+4>>2]=g;f[l>>2]=b;f[l+4>>2]=c;_b(n,j,k,l);u=o;return}c=g-d+h|0;h=m;if((c|0)>0){if(!d){d=0;b=m}else{p=32-d|0;b=(c|0)<(p|0)?c:p;p=-1>>>(p-b|0)&-1<>2]=f[e>>2]&~p|f[h>>2]&p;d=b+d|0;h=h+4|0;c=c-b|0;e=e+(d>>>5<<2)|0;d=d&31;b=h}g=(c|0)/32|0;Qf(e|0,b|0,g<<2|0)|0;a=c-(g<<5)|0;c=e+(g<<2)|0;b=c;if((a|0)>0){d=-1>>>(32-a|0);f[c>>2]=f[c>>2]&~d|f[h+(g<<2)>>2]&d;d=a}}f[n>>2]=b;f[n+4>>2]=d;u=o;return}function Ic(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+4|0;c=f[a>>2]|0;e=(f[k>>2]|0)-c>>2;d=e+1|0;if(d>>>0>1073741823)Zh(a);l=a+8|0;j=(f[l>>2]|0)-c|0;c=j>>1;c=j>>2>>>0<536870911?(c>>>0>>0?d:c):1073741823;do if(c)if(c>>>0>1073741823){l=za(8)|0;ih(l,14241);f[l>>2]=3608;qa(l|0,952,75)}else{d=qg(c<<2)|0;break}else d=0;while(0);g=d+(e<<2)|0;e=g;j=d+(c<<2)|0;i=f[b>>2]|0;f[b>>2]=0;f[g>>2]=i;i=g+4|0;h=f[a>>2]|0;c=f[k>>2]|0;if((c|0)==(h|0)){d=e;b=h;c=h}else{d=g;do{c=c+-4|0;g=f[c>>2]|0;f[c>>2]=0;f[d+-4>>2]=g;d=e+-4|0;e=d}while((c|0)!=(h|0));d=e;b=f[a>>2]|0;c=f[k>>2]|0}f[a>>2]=d;f[k>>2]=i;f[l>>2]=j;e=b;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){Nd(d);Ci(d)}}while((c|0)!=(e|0));if(!b)return;Ci(b);return}function Jc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,k=0,l=0;do if(c){if((j[a+38>>1]|0)>=514){if(Rd(d,a)|0)break;else c=0;return c|0}l=a+8|0;i=f[l>>2]|0;l=f[l+4>>2]|0;c=a+16|0;g=c;e=f[g>>2]|0;g=Yg(e|0,f[g+4>>2]|0,8,0)|0;k=I;if((l|0)<(k|0)|(l|0)==(k|0)&i>>>0>>0){l=0;return l|0}else{l=(f[a>>2]|0)+e|0;g=l;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;l=l+4|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;k=d;i=k;b[i>>0]=g;b[i+1>>0]=g>>8;b[i+2>>0]=g>>16;b[i+3>>0]=g>>24;k=k+4|0;b[k>>0]=l;b[k+1>>0]=l>>8;b[k+2>>0]=l>>16;b[k+3>>0]=l>>24;k=c;k=Yg(f[k>>2]|0,f[k+4>>2]|0,8,0)|0;l=c;f[l>>2]=k;f[l+4>>2]=I;break}}while(0);b[a+36>>0]=1;l=a+16|0;i=f[l>>2]|0;k=(f[a>>2]|0)+i|0;g=a+8|0;l=Lg(f[g>>2]|0,f[g+4>>2]|0,i|0,f[l+4>>2]|0)|0;f[a+32>>2]=0;f[a+24>>2]=k;f[a+28>>2]=k+l;l=1;return l|0}function Kc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;e=j+8|0;g=j+4|0;h=j;if(!c){i=0;u=j;return i|0}f[a>>2]=b;f[e>>2]=0;le(e,b)|0;a:do if(!(f[e>>2]|0))i=8;else{d=0;while(1){le(g,f[a>>2]|0)|0;b=qg(44)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[b+16>>2]=$(1.0);k=b+20|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[b+36>>2]=$(1.0);f[b+40>>2]=f[g>>2];if(!(wb(a,b)|0))break;f[h>>2]=b;ye(c,h)|0;b=f[h>>2]|0;f[h>>2]=0;if(b|0){Nd(b);Ci(b)}d=d+1|0;if(d>>>0>=(f[e>>2]|0)>>>0){i=8;break a}}Nd(b);Ci(b);b=0}while(0);if((i|0)==8)b=wb(a,c)|0;k=b;u=j;return k|0}function Lc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=a+4|0;d=f[m>>2]|0;do if(d|0){l=b[c+11>>0]|0;k=l<<24>>24<0;l=k?f[c+4>>2]|0:l&255;k=k?f[c>>2]|0:c;a=m;a:while(1){c=d;while(1){e=c+16|0;h=b[e+11>>0]|0;g=h<<24>>24<0;h=g?f[c+20>>2]|0:h&255;d=l>>>0>>0?l:h;if((d|0)!=0?(i=lf(g?f[e>>2]|0:e,k,d)|0,(i|0)!=0):0){if((i|0)>=0)break}else j=6;if((j|0)==6?(j=0,h>>>0>=l>>>0):0)break;c=f[c+4>>2]|0;if(!c)break a}d=f[c>>2]|0;if(!d){a=c;break}else a=c}if((a|0)!=(m|0)){d=a+16|0;g=b[d+11>>0]|0;e=g<<24>>24<0;g=e?f[a+20>>2]|0:g&255;c=g>>>0>>0?g:l;if(c|0?(n=lf(k,e?f[d>>2]|0:d,c)|0,n|0):0){if((n|0)<0)break;return a|0}if(l>>>0>=g>>>0){n=a;return n|0}}}while(0);n=m;return n|0}function Mc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return ta(a|0,c|0,d|0)|0;h=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return h|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}d=g&-4|0;e=d-64|0;while((a|0)<=(e|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(d|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{d=g-4|0;while((a|0)<(d|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return h|0}function Nc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{i=f[d+4>>2]|0;if((c|0)<=-1)xa(13357,14007,59,14106);g=f[i+8>>2]|0;if(((f[i+12>>2]|0)-g>>2|0)<=(c|0))xa(13953,14007,60,14106);g=f[g+(c<<2)>>2]|0;do if((Ja[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){gc(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);d=qg(44)|0;f[d>>2]=1372;f[d+4>>2]=g;g=d+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[g+16>>2]=f[e+16>>2];f[g+20>>2]=f[e+20>>2];ve(d+32|0,e+24|0);f[d>>2]=1428;g=d}f[a>>2]=g;return}function Oc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+60|0;c=f[i>>2]|0;if(!c){b=0;return b|0}f[c+4>>2]=a+48;if(!(Ja[f[(f[c>>2]|0)+12>>2]&127](c)|0)){b=0;return b|0}d=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;a:do if((d|0)>0){c=0;while(1){e=(Ja[f[(f[a>>2]|0)+28>>2]&127](a)|0)+4|0;e=f[e>>2]|0;g=Na[f[(f[a>>2]|0)+20>>2]&127](a,c)|0;if((g|0)<=-1){d=7;break}h=f[e+8>>2]|0;if(((f[e+12>>2]|0)-h>>2|0)<=(g|0)){d=9;break}e=f[i>>2]|0;c=c+1|0;if(!(Na[f[(f[e>>2]|0)+8>>2]&127](e,f[h+(g<<2)>>2]|0)|0)){c=0;d=14;break}if((c|0)>=(d|0))break a}if((d|0)==7)xa(13357,14007,67,14106);else if((d|0)==9)xa(13953,14007,68,14106);else if((d|0)==14)return c|0}while(0);if(!(Na[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){b=0;return b|0}if(!(Na[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){b=0;return b|0}b=Ja[f[(f[a>>2]|0)+44>>2]&127](a)|0;return b|0}function Pc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;return}e=c+1|0;if(!d){c=((e|0)%3|0|0)==0?c+-2|0:e;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=5}else g=5}else g=5;if((g|0)==5)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;b[i>>0]=0;return}function Qc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+8|0;c=f[j>>2]|0;l=a+16|0;if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}d=f[l>>2]|0;if(!d){l=f[l>>2]|0;return l|0}a=d+84|0;if(!(b[a>>0]|0)){l=f[l>>2]|0;return l|0}i=(f[c+72>>2]|0)-(f[c+68>>2]|0)>>2;b[a>>0]=0;h=d+68|0;a=d+72|0;g=f[a>>2]|0;e=f[h>>2]|0;d=g-e>>2;if(i>>>0<=d>>>0){if(i>>>0>>0?(k=e+(i<<2)|0,(g|0)!=(k|0)):0)f[a>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else{_c(h,i-d|0,1240);c=f[j>>2]|0}if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}k=f[c+68>>2]|0;g=k;k=(f[c+72>>2]|0)-k|0;a=k>>2;if((k|0)<=0){l=f[l>>2]|0;return l|0}e=f[l>>2]|0;d=(b[e+84>>0]|0)==0;e=e+68|0;c=0;while(1){if(!d){c=14;break}f[(f[e>>2]|0)+(c<<2)>>2]=f[g+(c<<2)>>2];c=c+1|0;if((c|0)>=(a|0)){c=15;break}}if((c|0)==14)xa(3934,3953,89,4055);else if((c|0)==15){l=f[l>>2]|0;return l|0}return 0}function Rc(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(zh(a,f[c+8>>2]|0,g)|0)){h=a+8|0;if(!(zh(a,f[c>>2]|0,g)|0)){j=f[h>>2]|0;Fa[f[(f[j>>2]|0)+24>>2]&3](j,c,d,e,g);break}a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(i=c+20|0,(f[i>>2]|0)!=(d|0)):0){f[a>>2]=e;e=c+44|0;if((f[e>>2]|0)==4)break;a=c+52|0;b[a>>0]=0;k=c+53|0;b[k>>0]=0;h=f[h>>2]|0;Ma[f[(f[h>>2]|0)+20>>2]&3](h,c,d,d,1,g);if(b[k>>0]|0)if(!(b[a>>0]|0)){a=3;j=11}else a=3;else{a=4;j=11}if((j|0)==11){f[i>>2]=d;k=c+40|0;f[k>>2]=(f[k>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1}f[e>>2]=a;break}if((e|0)==1)f[a>>2]=1}else eg(0,c,d,e);while(0);return}function Sc(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(zh(a,f[c+8>>2]|0,h)|0)Zd(0,c,d,e,g);else{p=c+52|0;i=b[p>>0]|0;j=c+53|0;k=b[j>>0]|0;o=f[a+12>>2]|0;l=a+16+(o<<3)|0;b[p>>0]=0;b[j>>0]=0;gf(a+16|0,c,d,e,g,h);a:do if((o|0)>1){m=c+24|0;n=c+54|0;o=a+8|0;a=a+24|0;do{if(b[n>>0]|0)break a;if(!(b[p>>0]|0)){if(b[j>>0]|0?(f[o>>2]&1|0)==0:0)break a}else{if((f[m>>2]|0)==1)break a;if(!(f[o>>2]&2))break a}b[p>>0]=0;b[j>>0]=0;gf(a,c,d,e,g,h);a=a+8|0}while(a>>>0>>0)}while(0);b[p>>0]=i;b[j>>0]=k}return}function Tc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0;o=u;u=u+16|0;j=o+8|0;k=o+4|0;l=o;if(!c){m=0;u=o;return m|0}m=f[a+80>>2]|0;i=_e(a,0)|0;g=c+4|0;e=f[g>>2]|0;d=f[c>>2]|0;a=e-d>>2;if(m>>>0<=a>>>0){if(m>>>0>>0?(h=d+(m<<2)|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else Dd(c,m-a|0);n[l>>2]=$(-1.0);a:do if((m|0)>0){e=i+84|0;g=i+68|0;h=i+24|0;a=0;while(1){if(!(b[e>>0]|0))d=f[(f[g>>2]|0)+(a<<2)>>2]|0;else d=a;f[k>>2]=d;d=b[h>>0]|0;f[j>>2]=f[k>>2];if(!(Ra(i,j,d,l)|0)){a=0;break a}f[(f[c>>2]|0)+(a<<2)>>2]=f[l>>2];a=a+1|0;if((a|0)>=(m|0)){a=1;break}}}else a=1;while(0);m=a;u=o;return m|0}function Uc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{i=f[d+4>>2]|0;if((c|0)<=-1)xa(13357,14007,59,14106);g=f[i+8>>2]|0;if(((f[i+12>>2]|0)-g>>2|0)<=(c|0))xa(13953,14007,60,14106);g=f[g+(c<<2)>>2]|0;do if((Ja[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){Wb(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);d=qg(24)|0;f[d+4>>2]=g;g=d+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[d>>2]=2272;g=d}f[a>>2]=g;return}function Vc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+8|0;e=f[i>>2]|0;j=a+4|0;c=f[j>>2]|0;if(e-c>>3>>>0>=b>>>0){do{i=c;f[i>>2]=0;f[i+4>>2]=0;c=(f[j>>2]|0)+8|0;f[j>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;g=c-d>>3;c=g+b|0;if(c>>>0>536870911)Zh(a);e=e-d|0;h=e>>2;c=e>>3>>>0<268435455?(h>>>0>>0?c:h):536870911;do if(c)if(c>>>0>536870911){j=za(8)|0;ih(j,14241);f[j>>2]=3608;qa(j|0,952,75)}else{d=qg(c<<3)|0;break}else d=0;while(0);h=d+(g<<3)|0;g=d+(c<<3)|0;c=h;e=h;do{d=c;f[d>>2]=0;f[d+4>>2]=0;c=e+8|0;e=c;b=b+-1|0}while((b|0)!=0);b=f[a>>2]|0;d=(f[j>>2]|0)-b|0;c=h+(0-(d>>3)<<3)|0;if((d|0)>0)Mc(c|0,b|0,d|0)|0;f[a>>2]=c;f[j>>2]=e;f[i>>2]=g;if(!b)return;Ci(b);return}function Wc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h;i=f[(f[a>>2]|0)+8>>2]|0;e=a+8|0;g=a+12|0;d=(f[g>>2]|0)-(f[e>>2]|0)>>2;j=f[b>>2]|0;f[b>>2]=0;f[c>>2]=j;Ka[i&15](a,d,c);d=f[c>>2]|0;f[c>>2]=0;if(!d){i=f[g>>2]|0;j=f[e>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}j=d+88|0;a=f[j>>2]|0;f[j>>2]=0;if(a|0){b=f[a+8>>2]|0;if(b|0){c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Ci(b)}Ci(a)}a=f[d+68>>2]|0;if(a|0){b=d+72|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);Ci(a)}j=d+64|0;a=f[j>>2]|0;f[j>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Ci(b)}Ci(a)}Ci(d);i=f[g>>2]|0;j=f[e>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}function Xc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;if((Ja[f[(f[b>>2]|0)+20>>2]&127](b)|0)<=0){b=1;return b|0}i=a+4|0;d=0;while(1){e=f[(f[i>>2]|0)+4>>2]|0;e=Mf(e,Na[f[(f[b>>2]|0)+24>>2]&127](b,d)|0)|0;if((e|0)==-1){a=0;c=12;break}a=f[i>>2]|0;g=f[(f[b>>2]|0)+28>>2]|0;if(((h[a+36>>0]|0)<<8&65535)<512){a=f[a+4>>2]|0;if((e|0)<=-1){c=6;break}c=f[a+8>>2]|0;if(((f[a+12>>2]|0)-c>>2|0)<=(e|0)){c=8;break}if(!(Na[g&127](b,f[c+(e<<2)>>2]|0)|0)){a=0;c=12;break}}else{e=ff(a,e)|0;if(!(Na[g&127](b,e)|0)){a=0;c=12;break}}d=d+1|0;if((d|0)>=(Ja[f[(f[b>>2]|0)+20>>2]&127](b)|0)){a=1;c=12;break}}if((c|0)==6)xa(13357,14007,67,14106);else if((c|0)==8)xa(13953,14007,68,14106);else if((c|0)==12)return a|0;return 0}function Yc(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{i=f[d+4>>2]|0;if((c|0)<=-1)xa(13357,14007,59,14106);g=f[i+8>>2]|0;if(((f[i+12>>2]|0)-g>>2|0)<=(c|0))xa(13953,14007,60,14106);g=f[g+(c<<2)>>2]|0;do if((Ja[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){Yb(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);d=qg(24)|0;f[d+4>>2]=g;g=d+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[d>>2]=2496;g=d}f[a>>2]=g;return} +function Zc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=1048576){if((h|0)!=1048576?(e=i+4194304|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Dd(a,1048576-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Vc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>1048576){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==1048576;return k|0}function _c(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;e=f[l>>2]|0;m=a+4|0;d=f[m>>2]|0;g=d;if(e-d>>2>>>0>=b>>>0){d=b;e=g;while(1){f[e>>2]=f[c>>2];d=d+-1|0;if(!d)break;else e=e+4|0}f[m>>2]=g+(b<<2);return}k=f[a>>2]|0;j=d-k|0;i=j>>2;d=i+b|0;if(d>>>0>1073741823)Zh(a);g=e-k|0;h=g>>1;d=g>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823;do if(d)if(d>>>0>1073741823){m=za(8)|0;ih(m,14241);f[m>>2]=3608;qa(m|0,952,75)}else{e=qg(d<<2)|0;break}else e=0;while(0);h=e+(i<<2)|0;g=e+(d<<2)|0;d=b;e=h;while(1){f[e>>2]=f[c>>2];d=d+-1|0;if(!d)break;else e=e+4|0}d=h+(0-i<<2)|0;if((j|0)>0)Mc(d|0,k|0,j|0)|0;f[a>>2]=d;f[m>>2]=h+(b<<2);f[l>>2]=g;if(!k)return;Ci(k);return}function $c(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+64|0;n=p;m=f[a>>2]|0;o=a+(f[m+-8>>2]|0)|0;m=f[m+-4>>2]|0;f[n>>2]=e;f[n+4>>2]=a;f[n+8>>2]=c;f[n+12>>2]=g;a=n+16|0;c=n+20|0;g=n+24|0;h=n+28|0;i=n+32|0;j=n+40|0;k=a;l=k+36|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));d[a+36>>1]=0;b[a+38>>0]=0;a:do if(zh(m,e,0)|0){f[n+48>>2]=1;Ma[f[(f[m>>2]|0)+20>>2]&3](m,n,o,o,1,0);a=(f[g>>2]|0)==1?o:0}else{Fa[f[(f[m>>2]|0)+24>>2]&3](m,n,o,1,0);switch(f[n+36>>2]|0){case 0:{a=(f[j>>2]|0)==1&(f[h>>2]|0)==1&(f[i>>2]|0)==1?f[c>>2]|0:0;break a}case 1:break;default:{a=0;break a}}if((f[g>>2]|0)!=1?!((f[j>>2]|0)==0&(f[h>>2]|0)==1&(f[i>>2]|0)==1):0){a=0;break}a=f[a>>2]|0}while(0);u=p;return a|0}function ad(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=524288){if((h|0)!=524288?(e=i+2097152|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Dd(a,524288-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Vc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>524288){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==524288;return k|0}function bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=262144){if((h|0)!=262144?(e=i+1048576|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Dd(a,262144-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Vc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>262144){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==262144;return k|0}function cd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=65536){if((h|0)!=65536?(e=i+262144|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Dd(a,65536-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Vc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>65536){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==65536;return k|0}function dd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=32768){if((h|0)!=32768?(e=i+131072|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Dd(a,32768-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Vc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>32768){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==32768;return k|0}function ed(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;d=f[a>>2]|0;e=c-d>>2;if(e>>>0>>0){tc(a,b-e|0);return}if(e>>>0<=b>>>0)return;e=d+(b<<2)|0;if((c|0)==(e|0))return;do{b=c+-4|0;f[g>>2]=b;d=f[b>>2]|0;f[b>>2]=0;if(d|0){b=d+88|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){a=f[c+8>>2]|0;if(a|0){b=c+12|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Ci(a)}Ci(c)}c=f[d+68>>2]|0;if(c|0){a=d+72|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Ci(c)}b=d+64|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){a=f[c>>2]|0;if(a|0){b=c+4|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Ci(a)}Ci(c)}Ci(d)}c=f[g>>2]|0}while((c|0)!=(e|0));return}function fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=8192){if((h|0)!=8192?(e=i+32768|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Dd(a,8192-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Vc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>8192){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==8192;return k|0}function gd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;d=f[g>>2]|0;i=f[a>>2]|0;h=d-i>>2;if(h>>>0>=4096){if((h|0)!=4096?(e=i+16384|0,(d|0)!=(e|0)):0)f[g>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Dd(a,4096-h|0);d=a+12|0;e=a+16|0;i=f[e>>2]|0;h=f[d>>2]|0;g=i-h>>3;if(g>>>0>=c>>>0){if(g>>>0>c>>>0?(j=h+(c<<3)|0,(i|0)!=(j|0)):0)f[e>>2]=i+(~((i+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Vc(d,c-g|0);h=f[d>>2]|0;e=0;g=0;do{j=b+(e<<2)|0;f[h+(e<<3)>>2]=f[j>>2];f[h+(e<<3)+4>>2]=g;d=g;g=(f[j>>2]|0)+g|0;if(g>>>0>4096){d=0;k=19;break}if(d>>>0>>0){i=f[a>>2]|0;do{f[i+(d<<2)>>2]=e;d=d+1|0}while((d|0)!=(g|0))}e=e+1|0}while(e>>>0>>0);if((k|0)==19)return d|0;k=(g|0)==4096;return k|0}function hd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=f[c+88>>2]|0;if(!d){a=0;return a|0}if((f[d>>2]|0)!=1){a=0;return a|0}n=d+8|0;j=f[n>>2]|0;f[a+4>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;o=a+8|0;d=c+24|0;c=b[d>>0]|0;e=c<<24>>24;g=a+12|0;l=f[g>>2]|0;k=f[o>>2]|0;i=l-k>>2;if(e>>>0<=i>>>0){if(e>>>0>>0?(m=k+(e<<2)|0,(l|0)!=(m|0)):0)f[g>>2]=l+(~((l+-4-m|0)>>>2)<<2)}else{Dd(o,e-i|0);c=b[d>>0]|0;j=f[n>>2]|0}d=j+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;if(c<<24>>24>0){i=f[o>>2]|0;g=c<<24>>24;c=4;e=0;do{f[i+(e<<2)>>2]=d;c=c+4|0;e=e+1|0;d=j+c|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24}while((e|0)<(g|0))}f[a+20>>2]=d;a=1;return a|0}function id(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0;l=b+8|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=b+16|0;d=m;c=f[d>>2]|0;d=f[d+4>>2]|0;e=Yg(c|0,d|0,4,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){a=0;return a|0}i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;n=m;f[n>>2]=e;f[n+4>>2]=g;do if((j[b+38>>1]|0)<514){b=Yg(c|0,d|0,8,0)|0;c=I;if((l|0)<(c|0)|(l|0)==(c|0)&k>>>0>>0){n=0;return n|0}else{n=m;f[n>>2]=b;f[n+4>>2]=c;break}}while(0);if(((i|0)%2|0|0)!=1)xa(8812,8845,68,9013);b=(_(i|0)|0)^31;c=b+1|0;if(!b)xa(7868,7879,60,8002);if(c>>>0>=31)xa(8022,7879,61,8002);f[a>>2]=c;n=2<>2]=n+-1;n=n+-2|0;f[a+8>>2]=n;f[a+12>>2]=(n|0)/2|0;n=1;return n|0}function jd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a=f[a+4>>2]|0;if(!a){m=0;return m|0}k=b[c+11>>0]|0;j=k<<24>>24<0;k=j?f[c+4>>2]|0:k&255;j=j?f[c>>2]|0:c;while(1){e=a+16|0;d=b[e+11>>0]|0;g=d<<24>>24<0;d=g?f[a+20>>2]|0:d&255;h=d>>>0>>0;c=h?d:k;if((c|0)!=0?(l=lf(j,g?f[e>>2]|0:e,c)|0,(l|0)!=0):0)if((l|0)<0)i=7;else i=8;else if(k>>>0>>0)i=7;else i=8;if((i|0)!=7)if((i|0)==8){i=0;c=k>>>0>>0?k:d;if((c|0)!=0?(m=lf(g?f[e>>2]|0:e,j,c)|0,(m|0)!=0):0){if((m|0)>=0){a=1;i=14;break}}else i=10;if((i|0)==10?(0,!h):0){a=1;i=14;break}a=a+4|0}a=f[a>>2]|0;if(!a){a=0;i=14;break}}if((i|0)==14)return a|0;return 0}function kd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;h=k+4|0;i=k;j=f[c+4>>2]|0;if(!j)xa(9258,9509,70,9681);g=f[c+8>>2]|0;if(!g)xa(9258,9509,70,9681);d=f[d>>2]|0;if((d|0)<0)e=-1073741824;else e=f[(f[f[c+16>>2]>>2]|0)+(d<<2)>>2]|0;d=f[c+20>>2]|0;c=f[d>>2]|0;if((f[d+4>>2]|0)-c>>2>>>0<=e>>>0)Zh(d);d=f[g+(f[c+(e<<2)>>2]<<2)>>2]|0;if(!(b[j+84>>0]|0))d=f[(f[j+68>>2]|0)+(d<<2)>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[i>>2]=d;g=b[j+24>>0]|0;f[h>>2]=f[i>>2];Ua(j,h,g,a)|0;u=k;return}function ld(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;d=l;c=f[d>>2]|0;d=f[d+4>>2]|0;g=Yg(c|0,d|0,4,0)|0;e=I;if((k|0)<(e|0)|(k|0)==(e|0)&j>>>0>>0){a=0;return a|0}b=f[b>>2]|0;i=b+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;m=l;f[m>>2]=g;f[m+4>>2]=e;c=Yg(c|0,d|0,8,0)|0;d=I;if((k|0)<(d|0)|(k|0)==(d|0)&j>>>0>>0){m=0;return m|0}b=b+g|0;b=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;m=l;f[m>>2]=c;f[m+4>>2]=d;if((i|0)>(b|0)){m=0;return m|0}f[a+12>>2]=i;f[a+16>>2]=b;m=b+(1-i)|0;f[a+20>>2]=m;b=(m|0)/2|0;c=a+24|0;f[c>>2]=b;f[a+28>>2]=0-b;if(m&1|0){m=1;return m|0}f[c>>2]=b+-1;m=1;return m|0}function md(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[b>>2]|0;e=f[a+12>>2]|0;if((i|0)>(e|0))xa(8700,7879,259,8724);d=f[c>>2]|0;if((d|0)>(e|0))xa(8738,7879,260,8724);a=0-e|0;if((i|0)<(a|0))xa(8762,7879,261,8724);if((d|0)<(a|0))xa(8787,7879,262,8724);if((d|i|0)>-1){g=1;a=1}else{a=(i|0)<1&(d|0)<1;g=a?-1:(i|0)>0?1:-1;a=a?-1:(d|0)>0?1:-1}h=X(e,g)|0;e=X(e,a)|0;f[b>>2]=(i<<1)-h;d=(f[c>>2]<<1)-e|0;f[c>>2]=d;i=(X(g,a)|0)>-1;a=f[b>>2]|0;if(i){f[b>>2]=0-d;i=0-a|0;f[c>>2]=i;i=f[b>>2]|0;i=i+h|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}else{f[b>>2]=d;i=a;f[c>>2]=i;i=f[b>>2]|0;i=i+h|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}}function nd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;e=h+8|0;g=h;switch(d|0){case 2:{i=f[b+12>>2]|0;d=f[b+4>>2]|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Yc(g,c,i,d,e);f[a>>2]=f[g>>2];u=h;return}case 3:{d=f[b+12>>2]|0;i=f[b+4>>2]|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Uc(g,c,d,i,e);f[a>>2]=f[g>>2];u=h;return}default:{f[a>>2]=0;u=h;return}}}function od(a,b){a=a|0;b=b|0;var c=0,d=0,e=Ca;if((b|0)!=1){if(b+-1&b)b=Qa(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){sb(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=Qa(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;sb(a,b);return}function pd(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+8|0;e=f[l>>2]|0;g=b[e+24>>0]|0;k=g<<24>>24;m=k<<1;n=yi(k>>>0>2147483647?-1:k<<1)|0;j=f[a+16>>2]|0;j=(f[f[j>>2]>>2]|0)+(f[j+48>>2]|0)|0;if(!c){zi(n);return}if(g<<24>>24>0){e=0;g=0;h=0;while(1){a=0;i=h;while(1){d[n+(a<<1)>>1]=f[j+(i<<2)>>2];a=a+1|0;if((a|0)==(k|0))break;else i=i+1|0}Mc((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+g|0,n|0,m|0)|0;e=e+1|0;if((e|0)==(c|0))break;else{g=g+m|0;h=k+h|0}}zi(n);return}else{Mc(f[f[e+64>>2]>>2]|0,n|0,m|0)|0;if((c|0)==1){zi(n);return}else{a=0;e=1}do{a=a+m|0;Mc((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+a|0,n|0,m|0)|0;e=e+1|0}while((e|0)!=(c|0));zi(n);return}}function qd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;d=f[k>>2]|0;e=b[d+24>>0]|0;j=e<<24>>24;l=j<<2;m=yi(j>>>0>1073741823?-1:j<<2)|0;i=f[a+16>>2]|0;i=(f[f[i>>2]>>2]|0)+(f[i+48>>2]|0)|0;if(!c){zi(m);return}if(e<<24>>24>0){d=0;e=0;g=0;while(1){a=0;h=g;while(1){f[m+(a<<2)>>2]=f[i+(h<<2)>>2];a=a+1|0;if((a|0)==(j|0))break;else h=h+1|0}Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,m|0,l|0)|0;d=d+1|0;if((d|0)==(c|0))break;else{e=e+l|0;g=j+g|0}}zi(m);return}else{Mc(f[f[d+64>>2]>>2]|0,m|0,l|0)|0;if((c|0)==1){zi(m);return}else{a=0;d=1}do{a=a+l|0;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+a|0,m|0,l|0)|0;d=d+1|0}while((d|0)!=(c|0));zi(m);return}}function rd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=1252;e=a+60|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Ga[f[(f[b>>2]|0)+4>>2]&127](b);d=f[a+48>>2]|0;if(d|0){b=a+52|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Ci(d)}d=a+36|0;b=f[d>>2]|0;if(b|0){e=a+40|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Ci(b)}f[a>>2]=1148;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Ci(d);return}function sd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{d=b+-4|0;f[h>>2]=d;e=f[d>>2]|0;f[d>>2]=0;if(e|0){d=e+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){d=b+12|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Ci(c)}Ci(b)}b=f[e+68>>2]|0;if(b|0){c=e+72|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}d=e+64|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b>>2]|0;if(c|0){d=b+4|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Ci(c)}Ci(b)}Ci(e)}b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;Ci(b);return}function td(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{e=c+-4|0;f[h>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+88|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Ci(d)}Ci(c)}c=f[g+68>>2]|0;if(c|0){d=g+72|0;e=f[d>>2]|0;if((e|0)!=(c|0))f[d>>2]=e+(~((e+-4-c|0)>>>2)<<2);Ci(c)}e=g+64|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Ci(d)}Ci(c)}Ci(g)}c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Ci(b);return}function ud(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;d=l;c=f[d>>2]|0;d=f[d+4>>2]|0;e=Yg(c|0,d|0,4,0)|0;g=I;if((k|0)<(g|0)|(k|0)==(g|0)&j>>>0>>0)return 0;i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;b=l;f[b>>2]=e;f[b+4>>2]=g;b=Yg(c|0,d|0,8,0)|0;c=I;if((k|0)<(c|0)|(k|0)==(c|0)&j>>>0>>0)return 0;f[l>>2]=b;f[l+4>>2]=c;if(((i|0)%2|0|0)!=1)xa(8812,8845,68,9013);b=(_(i|0)|0)^31;c=b+1|0;if(!b)xa(7868,7879,60,8002);if(c>>>0<31){f[a>>2]=c;l=2<>2]=l+-1;l=l+-2|0;f[a+8>>2]=l;f[a+12>>2]=(l|0)/2|0;return (b+-1|0)>>>0<29|0}else xa(8022,7879,61,8002);return 0}function vd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=Ca;n=u;u=u+32|0;i=n+16|0;k=n;l=a+8|0;m=b[(f[l>>2]|0)+24>>0]<<2;j=f[a+16>>2]|0;j=(f[f[j>>2]>>2]|0)+(f[j+48>>2]|0)|0;a=f[a+24>>2]|0;if((a|0)<=1)xa(7868,7879,60,8002);if((a|0)>=31)xa(8022,7879,61,8002);f[k>>2]=a;d=1<>2]=d+-1;d=d+-2|0;h=k+8|0;f[h>>2]=d;f[k+12>>2]=(d|0)/2|0;if(!c){u=n;return 1}e=0;a=0;g=0;while(1){o=$($(1.0)/$(d|0));sc(k,$($(f[j+(g<<2)>>2]|0)*o),$($(f[j+((g|1)<<2)>>2]|0)*o),i);Mc((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+e|0,i|0,m|0)|0;a=a+1|0;if((a|0)==(c|0))break;e=e+m|0;g=g+2|0;d=f[h>>2]|0}u=n;return 1}function wd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+16|0;j=m+8|0;k=m;l=f[b>>2]|0;h=f[a+12>>2]<<1;if((l|0)>(h|0))xa(8119,8164,69,8350);e=f[b+4>>2]|0;if((e|0)>(h|0))xa(8371,8164,70,8350);g=f[c>>2]|0;if((g|0)>(h|0))xa(8416,8164,71,8350);b=f[c+4>>2]|0;if((b|0)>(h|0))xa(8461,8164,72,8350);if((l|0)<=-1)xa(8506,8164,74,8350);if((e|0)<=-1)xa(8528,8164,75,8350);if((g|0)<=-1)xa(8550,8164,76,8350);if((b|0)>-1){f[j>>2]=l;f[j+4>>2]=e;f[k>>2]=g;f[k+4>>2]=b;$b(i,a,j,k);f[d>>2]=f[i>>2];f[d+4>>2]=f[i+4>>2];u=m;return}else xa(8572,8164,77,8350)}function xd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+16|0;j=m+8|0;k=m;l=f[b>>2]|0;h=f[a+12>>2]<<1;if((l|0)>(h|0))xa(8119,11597,65,8350);e=f[b+4>>2]|0;if((e|0)>(h|0))xa(8371,11597,66,8350);g=f[c>>2]|0;if((g|0)>(h|0))xa(8416,11597,67,8350);b=f[c+4>>2]|0;if((b|0)>(h|0))xa(8461,11597,68,8350);if((l|0)<=-1)xa(8506,11597,70,8350);if((e|0)<=-1)xa(8528,11597,71,8350);if((g|0)<=-1)xa(8550,11597,72,8350);if((b|0)>-1){f[i>>2]=g;f[i+4>>2]=b;f[k>>2]=l;f[k+4>>2]=e;zc(j,a,k,i);f[d>>2]=f[j>>2];f[d+4>>2]=f[j+4>>2];u=m;return}else xa(8572,11597,73,8350)}function yd(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=a+12|0;i=f[h>>2]|0;f[h>>2]=0;if(i|0){c=f[i+28>>2]|0;if(c|0)do{h=c;c=f[c>>2]|0;yd(h+8|0);Ci(h)}while((c|0)!=0);h=i+20|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0)Ci(c);c=f[i+8>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;g=f[d+20>>2]|0;if(g|0){h=d+24|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;Ci(g)}if((b[e+11>>0]|0)<0)Ci(f[e>>2]|0);Ci(d)}while((c|0)!=0);c=f[i>>2]|0;f[i>>2]=0;if(c|0)Ci(c);Ci(i)}if((b[a+11>>0]|0)>=0)return;Ci(f[a>>2]|0);return}function zd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;i=qg(32)|0;f[a>>2]=i;f[a+4>>2]=c+8;k=a+8|0;b[k>>0]=0;j=i+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;j=i+20|0;h=e+12|0;f[j>>2]=0;f[i+24>>2]=0;f[i+28>>2]=0;i=e+16|0;e=f[i>>2]|0;c=f[h>>2]|0;g=e-c|0;if(!g){g=c;c=0}else{Hd(j,g);g=f[h>>2]|0;e=f[i>>2]|0;c=f[j>>2]|0}Mc(c|0,g|0,e-g|0)|0;b[k>>0]=1;a=f[a>>2]|0;f[a+4>>2]=d;f[a>>2]=0;return}function Ad(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;g=j+16|0;c=j+8|0;d=j;h=a+8|0;if(f[h>>2]<<5>>>0>=b>>>0){u=j;return}f[g>>2]=0;i=g+4|0;f[i>>2]=0;e=g+8|0;f[e>>2]=0;if((b|0)<0)Zh(g);l=((b+-1|0)>>>5)+1|0;k=qg(l<<2)|0;f[g>>2]=k;f[i>>2]=0;f[e>>2]=l;l=f[a>>2]|0;f[c>>2]=l;f[c+4>>2]=0;k=a+4|0;b=f[k>>2]|0;f[d>>2]=l+(b>>>5<<2);f[d+4>>2]=b&31;Hc(g,c,d);b=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=b;g=f[k>>2]|0;f[k>>2]=f[i>>2];f[i>>2]=g;i=f[h>>2]|0;f[h>>2]=f[e>>2];f[e>>2]=i;if(b|0)Ci(b);u=j;return}function Bd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=(f[b+4>>2]|0)-(f[b>>2]|0)|0;l=j>>2;k=a+8|0;d=f[(f[k>>2]|0)+40>>2]|0;m=yi((d|0)>-1?d:-1)|0;e=c+8|0;if((j|0)<=0){c=1;zi(m);return c|0}g=c+16|0;b=0;a=0;while(1){o=e;n=f[o>>2]|0;o=f[o+4>>2]|0;i=g;h=f[i>>2]|0;i=Yg(h|0,f[i+4>>2]|0,d|0,0)|0;j=I;if((o|0)<(j|0)|(o|0)==(j|0)&n>>>0>>0){b=0;a=5;break}Mc(m|0,(f[c>>2]|0)+h|0,d|0)|0;o=g;f[o>>2]=i;f[o+4>>2]=j;Mc((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+b|0,m|0,d|0)|0;a=a+1|0;if((a|0)>=(l|0)){b=1;a=5;break}else b=b+d|0}if((a|0)==5){zi(m);return b|0}return 0}function Cd(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o;if((-18-c|0)>>>0>>0)Zh(a);if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){k=d+c|0;l=c<<1;k=k>>>0>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=qg(k)|0;if(g|0)$g(l,m,g)|0;if(i|0)$g(l+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)$g(l+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)Ci(m);f[a>>2]=l;f[a+8>>2]=k|-2147483648;i=d+i|0;f[a+4>>2]=i;b[n>>0]=0;Hh(l+i|0,n);u=o;return}function Dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;d=f[k>>2]|0;l=a+4|0;c=f[l>>2]|0;if(d-c>>2>>>0>=b>>>0){Wd(c|0,0,b<<2|0)|0;f[l>>2]=c+(b<<2);return}j=f[a>>2]|0;i=c-j|0;h=i>>2;c=h+b|0;if(c>>>0>1073741823)Zh(a);g=d-j|0;d=g>>1;d=g>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(d)if(d>>>0>1073741823){l=za(8)|0;ih(l,14241);f[l>>2]=3608;qa(l|0,952,75)}else{g=qg(d<<2)|0;break}else g=0;while(0);e=g+(h<<2)|0;Wd(e|0,0,b<<2|0)|0;c=e+(0-h<<2)|0;if((i|0)>0)Mc(c|0,j|0,i|0)|0;f[a>>2]=c;f[l>>2]=e+(b<<2);f[k>>2]=g+(d<<2);if(!j)return;Ci(j);return}function Ed(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;i=j;do if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)>511){k=d+8|0;l=f[k+4>>2]|0;c=d+16|0;g=c;e=f[g>>2]|0;g=f[g+4>>2]|0;if((l|0)>(g|0)|((l|0)==(g|0)?(f[k>>2]|0)>>>0>e>>>0:0)){l=b[(f[d>>2]|0)+e>>0]|0;k=Yg(e|0,g|0,1,0)|0;f[c>>2]=k;f[c+4>>2]=I;c=l&255;f[a+24>>2]=c;break}else{l=0;u=j;return l|0}}else c=f[a+24>>2]|0;while(0);f[i>>2]=1092;f[i+4>>2]=-1;Ah(i,c);l=Se(i,f[a+16>>2]|0)|0;u=j;return l|0}function Fd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;c=g;if((h[(f[a+4>>2]|0)+36>>0]<<8&65535)>511?!(Ja[f[(f[a>>2]|0)+52>>2]&127](a)|0):0){e=0;u=g;return e|0}f[c>>2]=1120;f[c+4>>2]=-1;e=c+8|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;tf(c,f[a+24>>2]|0,f[a+28>>2]|0,b[(f[a+8>>2]|0)+24>>0]|0,$(n[a+32>>2]));a=Se(c,f[a+16>>2]|0)|0;f[c>>2]=1120;e=f[e>>2]|0;if(e|0){c=c+12|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Ci(e)}e=a;u=g;return e|0}function Gd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+48|0;e=h+16|0;i=h;Ch(e);f[e+16>>2]=0;f[e+20>>2]=0;g=e+16|0;f[e+12>>2]=g;je(i,a,e,c,d);d=a+44|0;f[d>>2]=f[i>>2];c=i+4|0;Hf(a+48|0,c)|0;if((b[c+11>>0]|0)<0)Ci(f[c>>2]|0);be(e+12|0,f[g>>2]|0);ge(e,f[e+4>>2]|0);u=h;return d|0}function Hd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;d=f[k>>2]|0;if((g-d|0)>>>0>=c>>>0){do{b[d>>0]=0;d=(f[k>>2]|0)+1|0;f[k>>2]=d;c=c+-1|0}while((c|0)!=0);return}e=f[a>>2]|0;h=d-e|0;d=h+c|0;if((d|0)<0)Zh(a);g=g-e|0;i=g<<1;d=g>>>0<1073741823?(i>>>0>>0?d:i):2147483647;if(!d)e=0;else e=qg(d)|0;i=e+h|0;h=e+d|0;g=i;d=i;do{b[d>>0]=0;d=g+1|0;g=d;c=c+-1|0}while((c|0)!=0);c=f[a>>2]|0;e=(f[k>>2]|0)-c|0;d=i+(0-e)|0;if((e|0)>0)Mc(d|0,c|0,e|0)|0;f[a>>2]=d;f[k>>2]=g;f[j>>2]=h;if(!c)return;Ci(c);return}function Id(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if(!(ud(a+8|0,c)|0)){h=0;return h|0}do if((j[c+38>>1]|0)<514){h=c+8|0;i=f[h+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((i|0)>(g|0)|((i|0)==(g|0)?(f[h>>2]|0)>>>0>e>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+e>>0]|0;g=Yg(e|0,g|0,1,0)|0;i=d;f[i>>2]=g;f[i+4>>2]=I;if((h&255)<2){f[a+68>>2]=h&255;break}else{i=0;return i|0}}while(0);i=bc(a+88|0,c)|0;return i|0}function Jd(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;h=f[a>>2]|0;f[a>>2]=0;if(!h)return;a=f[h+28>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;Jd(c+20|0);if((b[d+11>>0]|0)<0)Ci(f[d>>2]|0);Ci(c)}while((a|0)!=0);g=h+20|0;a=f[g>>2]|0;f[g>>2]=0;if(a|0)Ci(a);a=f[h+8>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;e=f[c+20>>2]|0;if(e|0){g=c+24|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Ci(e)}if((b[d+11>>0]|0)<0)Ci(f[d>>2]|0);Ci(c)}while((a|0)!=0);a=f[h>>2]|0;f[h>>2]=0;if(a|0)Ci(a);Ci(h);return}function Kd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if(!(id(a+8|0,c)|0)){h=0;return h|0}do if((j[c+38>>1]|0)<514){h=c+8|0;i=f[h+4>>2]|0;d=c+16|0;g=d;e=f[g>>2]|0;g=f[g+4>>2]|0;if(!((i|0)>(g|0)|((i|0)==(g|0)?(f[h>>2]|0)>>>0>e>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+e>>0]|0;g=Yg(e|0,g|0,1,0)|0;i=d;f[i>>2]=g;f[i+4>>2]=I;if((h&255)<2){f[a+68>>2]=h&255;break}else{i=0;return i|0}}while(0);i=bc(a+88|0,c)|0;return i|0}function Ld(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;i=a+4|0;j=f[a>>2]|0;k=(f[i>>2]|0)-j|0;h=k>>2;c=h+1|0;if(c>>>0>1073741823)Zh(a);l=a+8|0;g=(f[l>>2]|0)-j|0;d=g>>1;d=g>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(d)if(d>>>0>1073741823){l=za(8)|0;ih(l,14241);f[l>>2]=3608;qa(l|0,952,75)}else{g=qg(d<<2)|0;break}else g=0;while(0);e=g+(h<<2)|0;f[e>>2]=f[b>>2];c=e+(0-h<<2)|0;if((k|0)>0)Mc(c|0,j|0,k|0)|0;f[a>>2]=c;f[i>>2]=e+4;f[l>>2]=g+(d<<2);if(!j)return;Ci(j);return}function Md(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=a+8|0;d=f[h>>2]|0;if((d|0)<0){j=0;return j|0}j=a+4|0;e=f[j>>2]|0;g=e+4|0;c=f[g>>2]|0;b=f[e>>2]|0;a=c-b>>2;if(d>>>0<=a>>>0){if(d>>>0>>0?(i=b+(d<<2)|0,(c|0)!=(i|0)):0)f[g>>2]=c+(~((c+-4-i|0)>>>2)<<2)}else{Dd(e,d-a|0);d=f[h>>2]|0}if((d|0)<=0){j=1;return j|0}e=f[j>>2]|0;c=f[e>>2]|0;b=(f[e+4>>2]|0)-c>>2;a=0;while(1){if(b>>>0<=a>>>0){b=10;break}f[c+(a<<2)>>2]=a;a=a+1|0;if((a|0)>=(d|0)){a=1;b=12;break}}if((b|0)==10)Zh(e);else if((b|0)==12)return a|0;return 0}function Nd(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=f[a+28>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;h=d+20|0;g=f[h>>2]|0;f[h>>2]=0;if(g|0){Nd(g);Ci(g)}if((b[e+11>>0]|0)<0)Ci(f[e>>2]|0);Ci(d)}while((c|0)!=0);h=a+20|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0)Ci(c);c=f[a+8>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;e=d+8|0;g=f[d+20>>2]|0;if(g|0){h=d+24|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;Ci(g)}if((b[e+11>>0]|0)<0)Ci(f[e>>2]|0);Ci(d)}while((c|0)!=0);c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Ci(c);return}function Od(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;h=j+4|0;i=j;if((d|0)!=1){f[a>>2]=0;u=j;return}g=f[b+12>>2]|0;d=f[b+4>>2]|0;b=h;e=b+36|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(e|0));Nc(i,c,g,d,h);e=f[h+24>>2]|0;if(e|0){d=h+28|0;b=f[d>>2]|0;if((b|0)!=(e|0))f[d>>2]=b+(~((b+-4-e|0)>>>2)<<2);Ci(e)}f[a>>2]=f[i>>2];u=j;return}function Pd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0;do if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)<512){j=d+8|0;k=f[j+4>>2]|0;e=d+16|0;i=e;g=f[i>>2]|0;i=f[i+4>>2]|0;if((k|0)>(i|0)|((k|0)==(i|0)?(f[j>>2]|0)>>>0>g>>>0:0)){k=b[(f[d>>2]|0)+g>>0]|0;i=Yg(g|0,i|0,1,0)|0;j=e;f[j>>2]=i;f[j+4>>2]=I;f[a+24>>2]=k&255;break}else{k=0;return k|0}}while(0);k=rb(a,c,d)|0;return k|0}function Qd(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+16|0;a=f[b>>2]|0;f[b>>2]=0;d=f[c>>2]|0;f[c>>2]=a;if(!d)return;b=d+88|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){a=f[c+8>>2]|0;if(a|0){b=c+12|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Ci(a)}Ci(c)}a=f[d+68>>2]|0;if(a|0){b=d+72|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);Ci(a)}c=d+64|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Ci(b)}Ci(a)}Ci(d);return}function Rd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=c+8|0;i=f[g+4>>2]|0;h=c+16|0;e=h;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((i|0)>(e|0)|((i|0)==(e|0)?(f[g>>2]|0)>>>0>d>>>0:0))){i=0;return i|0}g=b[(f[c>>2]|0)+d>>0]|0;e=Yg(d|0,e|0,1,0)|0;i=h;f[i>>2]=e;f[i+4>>2]=I;do if(g<<24>>24<0)if(Rd(a,c)|0){c=a;c=Gg(f[c>>2]|0,f[c+4>>2]|0,7)|0;d=I;i=a;f[i>>2]=c;f[i+4>>2]=d;c=c|g&127;break}else{i=0;return i|0}else{c=g&255;d=0}while(0);i=a;f[i>>2]=c;f[i+4>>2]=d;i=1;return i|0}function Sd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;i=k;j=a+11|0;e=b[j>>0]|0;g=e<<24>>24<0;if(g)h=(f[a+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0>=d>>>0){if(g)e=f[a>>2]|0;else e=a;_g(e,c,d)|0;b[i>>0]=0;Hh(e+d|0,i);if((b[j>>0]|0)<0){f[a+4>>2]=d;break}else{b[j>>0]=d;break}}else{if(g)e=f[a+4>>2]|0;else e=e&255;Cd(a,h,d-h|0,e,0,e,d,c)}while(0);u=k;return a|0}function Td(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=f[a>>2]|0;if(!d){e=0;return e|0}e=f[c>>2]|0;if(!e){e=0;return e|0}g=f[e>>2]|0;ce(d,g,(f[e+4>>2]|0)-g|0,0)|0;b[a+24>>0]=b[c+24>>0]|0;f[a+28>>2]=f[c+28>>2];b[a+32>>0]=b[c+32>>0]|0;d=c+40|0;e=f[d+4>>2]|0;g=a+40|0;f[g>>2]=f[d>>2];f[g+4>>2]=e;g=c+48|0;e=f[g+4>>2]|0;d=a+48|0;f[d>>2]=f[g>>2];f[d+4>>2]=e;f[a+56>>2]=f[c+56>>2];d=c+8|0;e=a+8|0;f[e>>2]=f[d>>2];f[e+4>>2]=f[d+4>>2];f[e+8>>2]=f[d+8>>2];f[e+12>>2]=f[d+12>>2];e=1;return e|0}function Ud(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;if(c|0){k=a+11|0;e=b[k>>0]|0;if(e<<24>>24<0){h=f[a+4>>2]|0;g=(f[a+8>>2]&2147483647)+-1|0}else{h=e&255;g=10}i=h+c|0;if((g-h|0)>>>0>>0){ee(a,g,i-g|0,h,h,0,0);e=b[k>>0]|0}if(e<<24>>24<0)e=f[a>>2]|0;else e=a;Eg(e+h|0,c,d)|0;if((b[k>>0]|0)<0)f[a+4>>2]=i;else b[k>>0]=i;b[j>>0]=0;Hh(e+i|0,j)}u=l;return a|0}function Vd(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;do if(!(zh(a,f[c+8>>2]|0,g)|0)){if(zh(a,f[c>>2]|0,g)|0){a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[a>>2]=e;f[h>>2]=d;e=c+40|0;f[e>>2]=(f[e>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1;f[c+44>>2]=4;break}if((e|0)==1)f[a>>2]=1}}else eg(0,c,d,e);while(0);return}function Wd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}e=h&-4|0;g=e-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(g|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(e|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(h|0)){b[a>>0]=c;a=a+1|0}return h-d|0}function Xd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;d=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0){e=f[c>>2]|0;c=f[c+4>>2]|0;if(c>>>0>4294967279)Zh(a);if(c>>>0<11)b[a+11>>0]=c;else{i=c+16&-16;h=qg(i)|0;f[a>>2]=h;f[a+8>>2]=i|-2147483648;f[a+4>>2]=c;a=h}$g(a,e,c)|0;b[d>>0]=0;Hh(a+c|0,d)}else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}u=g;return}function Yd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;if(!a){e=1;return e|0}j=d+8|0;k=f[j+4>>2]|0;g=d+16|0;i=g;h=f[i>>2]|0;i=f[i+4>>2]|0;if(!((k|0)>(i|0)|((k|0)==(i|0)?(f[j>>2]|0)>>>0>h>>>0:0))){k=0;return k|0}k=b[(f[d>>2]|0)+h>>0]|0;i=Yg(h|0,i|0,1,0)|0;j=g;f[j>>2]=i;f[j+4>>2]=I;switch(k<<24>>24){case 0:{k=tb(a,c,d,e)|0;return k|0}case 1:{k=Hb(a,d,e)|0;return k|0}default:{k=0;return k|0}}return 0}function Zd(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;b[c+53>>0]=1;do if((f[c+4>>2]|0)==(e|0)){b[c+52>>0]=1;e=c+16|0;h=f[e>>2]|0;j=c+54|0;k=c+48|0;i=c+24|0;a=c+36|0;if(!h){f[e>>2]=d;f[i>>2]=g;f[a>>2]=1;if(!((f[k>>2]|0)==1&(g|0)==1))break;b[j>>0]=1;break}if((h|0)!=(d|0)){f[a>>2]=(f[a>>2]|0)+1;b[j>>0]=1;break}a=f[i>>2]|0;if((a|0)==2){f[i>>2]=g;a=g}if((f[k>>2]|0)==1&(a|0)==1)b[j>>0]=1}while(0);return}function _d(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a:do if(!(zh(a,f[c+8>>2]|0,0)|0)){h=f[a+12>>2]|0;g=a+16+(h<<3)|0;qf(a+16|0,c,d,e);if((h|0)>1){h=c+54|0;a=a+24|0;do{qf(a,c,d,e);if(b[h>>0]|0)break a;a=a+8|0}while(a>>>0>>0)}}else Je(0,c,d,e);while(0);return}function $d(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;if(!a)return;c=a+48|0;if((b[c+11>>0]|0)<0)Ci(f[c>>2]|0);f[a>>2]=2812;e=f[a+20>>2]|0;if(e|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(e|0))f[c>>2]=d+(~((d+-4-e|0)>>>2)<<2);Ci(e)}e=a+8|0;c=f[e>>2]|0;if(c|0){g=a+12|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{h=d+-4|0;f[g>>2]=h;d=f[h>>2]|0;f[h>>2]=0;if(d|0)Ga[f[(f[d>>2]|0)+4>>2]&127](d);d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Ci(c)}Ci(a);return}function ae(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1204;c=a+16|0;d=f[c>>2]|0;f[c>>2]=0;if(!d)return;c=d+88|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){a=b+12|0;if((f[a>>2]|0)!=(c|0))f[a>>2]=c;Ci(c)}Ci(b)}a=f[d+68>>2]|0;if(a|0){b=d+72|0;c=f[b>>2]|0;if((c|0)!=(a|0))f[b>>2]=c+(~((c+-4-a|0)>>>2)<<2);Ci(a)}c=d+64|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Ci(b)}Ci(a)}Ci(d);return}function be(a,b){a=a|0;b=b|0;if(!b)return;else{be(a,f[b>>2]|0);be(a,f[b+4>>2]|0);ge(b+20|0,f[b+24>>2]|0);Ci(b);return}}function ce(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)<0){c=0;return c|0}do if(!b){b=a+4|0;d=f[b>>2]|0;e=f[a>>2]|0;g=d-e|0;if(c>>>0>g>>>0){Hd(a,c-g|0);break}if(c>>>0>>0?(h=e+c|0,(d|0)!=(h|0)):0)f[b>>2]=h}else Dc(a,b,b+c|0);while(0);c=a+24|0;h=c;h=Yg(f[h>>2]|0,f[h+4>>2]|0,1,0)|0;f[c>>2]=h;f[c+4>>2]=I;c=1;return c|0}function de(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=a+64|0;if((f[h>>2]|0)==0?(g=qg(32)|0,xg(g),e=f[h>>2]|0,f[h>>2]=g,e|0):0){g=f[e>>2]|0;if(g|0){d=e+4|0;if((f[d>>2]|0)!=(g|0))f[d>>2]=g;Ci(g)}Ci(e)}d=Gf(f[a+28>>2]|0)|0;d=X(b[a+24>>0]|0,d)|0;e=((d|0)<0)<<31>>31;i=f[h>>2]|0;g=og(d|0,e|0,c|0,0)|0;if(!(ce(i,0,g,I)|0)){i=0;return i|0}Le(a,f[h>>2]|0,d,e,0,0);f[a+80>>2]=c;i=1;return i|0}function ee(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-c|0)>>>0>>0)Zh(a);if((b[a+11>>0]|0)<0)l=f[a>>2]|0;else l=a;if(c>>>0<2147483623){j=d+c|0;k=c<<1;j=j>>>0>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=qg(j)|0;if(g|0)$g(k,l,g)|0;d=e-h-g|0;if(d|0)$g(k+g+i|0,l+g+h|0,d)|0;if((c|0)!=10)Ci(l);f[a>>2]=k;f[a+8>>2]=j|-2147483648;return}function fe(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;g=e>>>0>1073741823?-1:e<<2;h=yi(g)|0;Wd(h|0,0,g|0)|0;g=a+8|0;wd(g,h,b,c);if((e|0)>=(d|0)){zi(h);return 1}a=0-e|0;f=e;do{i=c+(f<<2)|0;wd(g,i+(a<<2)|0,b+(f<<2)|0,i);f=f+e|0}while((f|0)<(d|0));zi(h);return 1}function ge(a,c){a=a|0;c=c|0;var d=0;if(!c)return;ge(a,f[c>>2]|0);ge(a,f[c+4>>2]|0);a=c+16|0;d=c+28|0;if((b[d+11>>0]|0)<0)Ci(f[d>>2]|0);if((b[a+11>>0]|0)<0)Ci(f[a>>2]|0);Ci(c);return}function he(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;e=h;if(!(zh(a,b,0)|0))if((b|0)!=0?(g=$c(b,896,880,0)|0,(g|0)!=0):0){b=e+4|0;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[e>>2]=g;f[e+8>>2]=a;f[e+12>>2]=-1;f[e+48>>2]=1;Oa[f[(f[g>>2]|0)+28>>2]&7](g,e,f[c>>2]|0,1);if((f[e+24>>2]|0)==1){f[c>>2]=f[e+16>>2];b=1}else b=0}else b=0;else b=1;u=h;return b|0}function ie(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;g=e>>>0>1073741823?-1:e<<2;h=yi(g)|0;Wd(h|0,0,g|0)|0;g=a+8|0;xd(g,h,b,c);if((e|0)>=(d|0)){zi(h);return 1}a=0-e|0;f=e;do{i=c+(f<<2)|0;xd(g,i+(a<<2)|0,b+(f<<2)|0,i);f=f+e|0}while((f|0)<(d|0));zi(h);return 1}function je(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=u;u=u+16|0;h=i;pb(h,c,d,e,g);c=f[h>>2]|0;if(!c){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;c=h+4|0}else{f[a>>2]=c;c=h+4|0;Xd(a+4|0,c)}if((b[c+11>>0]|0)>=0){u=i;return}Ci(f[h+4>>2]|0);u=i;return}function ke(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;f[a>>2]=d;if(d|0){o=d+16|0;m=f[o+4>>2]|0;n=a+8|0;f[n>>2]=f[o>>2];f[n+4>>2]=m;n=d+24|0;m=f[n+4>>2]|0;d=a+16|0;f[d>>2]=f[n>>2];f[d+4>>2]=m}b[a+24>>0]=e;f[a+28>>2]=g;b[a+32>>0]=h&1;o=a+40|0;f[o>>2]=i;f[o+4>>2]=j;o=a+48|0;f[o>>2]=k;f[o+4>>2]=l;f[a+56>>2]=c;return}function le(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;i=f[h+4>>2]|0;g=c+16|0;e=g;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((i|0)>(e|0)|((i|0)==(e|0)?(f[h>>2]|0)>>>0>d>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+d>>0]|0;i=Yg(d|0,e|0,1,0)|0;d=g;f[d>>2]=i;f[d+4>>2]=I;d=h&255;do if(d&128)if(le(a,c)|0){d=f[a>>2]<<7;f[a>>2]=d;d=d|h&127;break}else{i=0;return i|0}while(0);f[a>>2]=d;i=1;return i|0}function me(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j;h=a+11|0;e=b[h>>0]|0;i=e<<24>>24<0;if(i)e=f[a+4>>2]|0;else e=e&255;do if(e>>>0>=c>>>0)if(i){i=(f[a>>2]|0)+c|0;b[g>>0]=0;Hh(i,g);f[a+4>>2]=c;break}else{b[g>>0]=0;Hh(a+c|0,g);b[h>>0]=c;break}else Ud(a,c-e|0,d)|0;while(0);u=j;return}function ne(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=2812;b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}d=a+8|0;b=f[d>>2]|0;if(!b){Ci(a);return}e=a+12|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Ci(b);Ci(a);return}function oe(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=2812;b=f[a+20>>2]|0;if(b|0){c=a+24|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}e=a+8|0;b=f[e>>2]|0;if(!b)return;d=a+12|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{a=c+-4|0;f[d>>2]=a;c=f[a>>2]|0;f[a>>2]=0;if(c|0)Ga[f[(f[c>>2]|0)+4>>2]&127](c);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}Ci(b);return}function pe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1960;b=f[a+96>>2]|0;if(b|0)Ci(b);b=f[a+84>>2]|0;if(b|0)Ci(b);b=f[a+72>>2]|0;if(b|0)Ci(b);b=f[a+60>>2]|0;if(b|0)Ci(b);f[a>>2]=1372;b=f[a+32>>2]|0;if(!b){Ci(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b);Ci(a);return}function qe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1596;b=f[a+96>>2]|0;if(b|0)Ci(b);b=f[a+84>>2]|0;if(b|0)Ci(b);b=f[a+72>>2]|0;if(b|0)Ci(b);b=f[a+60>>2]|0;if(b|0)Ci(b);f[a>>2]=1372;b=f[a+32>>2]|0;if(!b){Ci(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b);Ci(a);return}function re(a){a=a|0;var b=0,c=0;f[a>>2]=1960;b=f[a+96>>2]|0;if(b|0)Ci(b);b=f[a+84>>2]|0;if(b|0)Ci(b);b=f[a+72>>2]|0;if(b|0)Ci(b);b=f[a+60>>2]|0;if(b|0)Ci(b);f[a>>2]=1372;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Ci(c);return}function se(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0,j=0;g=f[a+32>>2]|0;j=g+8|0;i=f[j>>2]|0;j=f[j+4>>2]|0;b=g+16|0;d=b;c=f[d>>2]|0;d=Yg(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((j|0)<(e|0)|(j|0)==(e|0)&i>>>0>>0){j=0;return j|0}j=(f[g>>2]|0)+c|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=b;f[i>>2]=d;f[i+4>>2]=e;f[(f[a+4>>2]|0)+80>>2]=j;j=1;return j|0}function te(a){a=a|0;var c=0,d=0,e=0,f=0,g=0,h=0;while(1){e=b[a>>0]|0;c=e<<24>>24;f=a+1|0;if(!(ai(c)|0))break;else a=f}switch(c|0){case 45:{a=1;g=5;break}case 43:{a=0;g=5;break}default:{h=0;d=a;a=e}}if((g|0)==5){h=a;d=f;a=b[f>>0]|0}c=(a<<24>>24)+-48|0;if(c>>>0<10){a=0;do{d=d+1|0;a=(a*10|0)-c|0;c=(b[d>>0]|0)+-48|0}while(c>>>0<10)}else a=0;return (h|0?a:0-a|0)|0}function ue(a){a=a|0;var b=0,c=0;f[a>>2]=1596;b=f[a+96>>2]|0;if(b|0)Ci(b);b=f[a+84>>2]|0;if(b|0)Ci(b);b=f[a+72>>2]|0;if(b|0)Ci(b);b=f[a+60>>2]|0;if(b|0)Ci(b);f[a>>2]=1372;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Ci(c);return}function ve(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;f[a>>2]=0;h=a+4|0;f[h>>2]=0;f[a+8>>2]=0;g=b+4|0;c=(f[g>>2]|0)-(f[b>>2]|0)|0;d=c>>2;if(!d)return;if(d>>>0>1073741823)Zh(a);e=qg(c)|0;f[h>>2]=e;f[a>>2]=e;f[a+8>>2]=e+(d<<2);a=f[b>>2]|0;c=(f[g>>2]|0)-a|0;if((c|0)<=0)return;Mc(e|0,a|0,c|0)|0;f[h>>2]=e+(c>>>2<<2);return}function we(a,c,d){a=a|0;c=c|0;d=d|0;c=Lc(a,c)|0;if((c|0)==(a+4|0)){a=-1;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}c=c+28|0;if((b[c+11>>0]|0)<0)c=f[c>>2]|0;a=te(c)|0;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}function xe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((d|0)<=0){e=1;return e|0}e=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[e>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Ea[f[(f[g>>2]|0)+20>>2]&15](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(d|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function ye(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b>>2]|0;if(!c){e=0;return e|0}d=a+44|0;e=f[d>>2]|0;if(e>>>0<(f[a+48>>2]|0)>>>0){f[b>>2]=0;f[e>>2]=c;f[d>>2]=(f[d>>2]|0)+4;e=1;return e|0}else{Ic(a+40|0,b);e=1;return e|0}return 0}function ze(a){a=a|0;var c=0,d=0,e=0;e=a;a:do if(!(e&3))d=4;else{c=e;while(1){if(!(b[a>>0]|0)){a=c;break a}a=a+1|0;c=a;if(!(c&3)){d=4;break}}}while(0);if((d|0)==4){while(1){c=f[a>>2]|0;if(!((c&-2139062144^-2139062144)&c+-16843009))a=a+4|0;else break}if((c&255)<<24>>24)do a=a+1|0;while((b[a>>0]|0)!=0)}return a-e|0}function Ae(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;d=Ja[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((d|0)<=0){e=1;return e|0}e=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[e>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Ea[f[(f[g>>2]|0)+16>>2]&15](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(d|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function Be(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2016;b=f[a+76>>2]|0;if(b|0)Ci(b);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)zi(b);f[a>>2]=1372;d=f[a+32>>2]|0;if(!d){Ci(a);return}b=a+36|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Ci(d);Ci(a);return}function Ce(a){a=a|0;if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+24>>2]|0)){a=0;return a|0}if(!(f[a+28>>2]|0)){a=0;return a|0}if(!(f[a+32>>2]|0)){a=0;return a|0}if(!(f[a+36>>2]|0)){a=0;return a|0}a=(f[a+72>>2]|0)!=-1;return a|0}function De(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1652;b=f[a+76>>2]|0;if(b|0)Ci(b);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)zi(b);f[a>>2]=1372;d=f[a+32>>2]|0;if(!d){Ci(a);return}b=a+36|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Ci(d);Ci(a);return}function Ee(a){a=a|0;if(!(f[a+64>>2]|0)){a=0;return a|0}if(!(f[a+68>>2]|0)){a=0;return a|0}if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}if(!(f[a+56>>2]|0)){a=0;return a|0}a=(f[a+92>>2]|0)!=-1;return a|0}function Fe(a,b,c){a=a|0;b=b|0;c=c|0;switch(c<<24>>24){case 0:{b=qg(20)|0;Qg(b);break}case 1:{b=qg(24)|0;Xg(b);break}case 2:{b=qg(36)|0;tg(b);break}case 3:{b=qg(28)|0;Ug(b);break}default:b=0}f[a>>2]=b;return}function Ge(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=Lg(j^a|0,i^b|0,j|0,i|0)|0;g=I;a=f^j;b=e^i;return Lg((ub(h,g,Lg(f^c|0,e^d|0,f|0,e|0)|0,I,0)|0)^a|0,I^b|0,a|0,b|0)|0}function He(a,c){a=a|0;c=c|0;var d=0,e=0;f[c>>2]=2;e=a+4|0;d=c+8|0;a=f[d>>2]|0;c=(f[c+12>>2]|0)-a|0;if(c>>>0<4294967292){Oe(d,c+4|0,0);a=f[d>>2]|0}d=a+c|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[d>>0]=e;b[d+1>>0]=e>>8;b[d+2>>0]=e>>16;b[d+3>>0]=e>>24;return}function Ie(a){a=a|0;var b=0,c=0;f[a>>2]=2016;b=f[a+76>>2]|0;if(b|0)Ci(b);c=a+68|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)zi(b);f[a>>2]=1372;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Ci(c);return}function Je(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;a=c+16|0;g=f[a>>2]|0;h=c+36|0;i=c+24|0;do if(g){if((g|0)!=(d|0)){f[h>>2]=(f[h>>2]|0)+1;f[i>>2]=2;b[c+54>>0]=1;break}if((f[i>>2]|0)==2)f[i>>2]=e}else{f[a>>2]=d;f[i>>2]=e;f[h>>2]=1}while(0);return}function Ke(a){a=a|0;var b=0,c=0;f[a>>2]=1652;b=f[a+76>>2]|0;if(b|0)Ci(b);c=a+68|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)zi(b);f[a>>2]=1372;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Ci(c);return}function Le(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;f[a>>2]=b;j=b+16|0;h=f[j+4>>2]|0;i=a+8|0;f[i>>2]=f[j>>2];f[i+4>>2]=h;i=b+24|0;h=f[i+4>>2]|0;b=a+16|0;f[b>>2]=f[i>>2];f[b+4>>2]=h;b=a+40|0;f[b>>2]=c;f[b+4>>2]=d;d=a+48|0;f[d>>2]=e;f[d+4>>2]=g;return}function Me(a,b,c){a=a|0;b=b|0;c=c|0;if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)<512?!(Ja[f[(f[a>>2]|0)+52>>2]&127](a)|0):0){c=0;return c|0}c=rb(a,b,c)|0;return c|0}function Ne(a,b,c){a=a|0;b=b|0;c=c|0;if(!(zg(a,b,c)|0)){c=0;return c|0}b=f[b+4>>2]|0;if((c|0)<=-1)xa(13357,14007,67,14106);a=f[b+8>>2]|0;if(((f[b+12>>2]|0)-a>>2|0)<=(c|0))xa(13953,14007,68,14106);c=(f[(f[a+(c<<2)>>2]|0)+28>>2]|0)==9;return c|0}function Oe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;c=a+4|0;g=f[c>>2]|0;e=f[a>>2]|0;d=g-e|0;if(b>>>0<=d>>>0){if(b>>>0>>0?(h=e+b|0,(g|0)!=(h|0)):0)f[c>>2]=h}else Hd(a,b-d|0);h=a+24|0;b=h;b=Yg(f[b>>2]|0,f[b+4>>2]|0,1,0)|0;f[h>>2]=b;f[h+4>>2]=I;return}function Pe(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2072;b=f[a+76>>2]|0;if(b|0)Ci(b);f[a>>2]=1372;b=f[a+32>>2]|0;if(!b){Ci(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b);Ci(a);return}function Qe(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=h[a+12>>0]|0;g=a+8|0;b=f[g>>2]|0;if(b>>>0<4096?(c=a+4|0,d=f[c>>2]|0,(d|0)>0):0){a=f[a>>2]|0;d=d+-1|0;f[c>>2]=d;b=h[a+d>>0]|0|b<<8;f[g>>2]=b}a=b&255;c=0-e&255;d=X(b>>>8,c)|0;e=a>>>0>>0;f[g>>2]=e?d+a|0:b-c-d|0;return e|0}function Re(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1708;b=f[a+76>>2]|0;if(b|0)Ci(b);f[a>>2]=1372;b=f[a+32>>2]|0;if(!b){Ci(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b);Ci(a);return}function Se(a,b){a=a|0;b=b|0;var c=0,d=0;d=qg(40)|0;f[d>>2]=-1;xg(d+8|0);Ha[f[(f[a>>2]|0)+16>>2]&3](a,d);b=b+88|0;c=f[b>>2]|0;f[b>>2]=d;if(!c)return 1;a=f[c+8>>2]|0;if(a|0){b=c+12|0;if((f[b>>2]|0)!=(a|0))f[b>>2]=a;Ci(a)}Ci(c);return 1}function Te(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1148;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}b=f[a+4>>2]|0;if(!b){Ci(a);return}c=a+8|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b);Ci(a);return}function Ue(a){a=a|0;var b=0,c=0,d=0;b=f[a+8>>2]|0;c=f[a+12>>2]|0;if((b|0)==(c|0)){c=1;return c|0}a=a+32|0;while(1){d=f[b>>2]|0;b=b+4|0;if(!(Na[f[(f[d>>2]|0)+16>>2]&127](d,f[a>>2]|0)|0)){b=0;a=5;break}if((b|0)==(c|0)){b=1;a=5;break}}if((a|0)==5)return b|0;return 0}function Ve(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(zh(a,f[b+8>>2]|0,g)|0)Zd(0,b,c,d,e);else{a=f[a+8>>2]|0;Ma[f[(f[a>>2]|0)+20>>2]&3](a,b,c,d,e,g)}return}function We(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2128;Ai(a+108|0);f[a>>2]=1372;b=f[a+32>>2]|0;if(!b){Ci(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b);Ci(a);return}function Xe(a){a=a|0;var b=0,c=0;f[a>>2]=2072;b=f[a+76>>2]|0;if(b|0)Ci(b);f[a>>2]=1372;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Ci(c);return}function Ye(a){a=a|0;var b=0,c=0;f[a>>2]=2720;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)zi(b);f[a>>2]=1312;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ae(a);Ci(a);return}Ga[f[(f[b>>2]|0)+4>>2]&127](b);ae(a);Ci(a);return}function Ze(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1764;Ai(a+108|0);f[a>>2]=1372;b=f[a+32>>2]|0;if(!b){Ci(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b);Ci(a);return}function _e(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[a+12>>2]|0;a=f[a+8>>2]|0;e=a;if((c|0)==(a|0)){b=0;return b|0}d=c-a>>2;c=0;while(1){a=f[e+(c<<2)>>2]|0;if((f[a+60>>2]|0)==(b|0)){c=5;break}c=c+1|0;if(c>>>0>=d>>>0){a=0;c=5;break}}if((c|0)==5)return a|0;return 0}function $e(a){a=a|0;var b=0,c=0;f[a>>2]=1708;b=f[a+76>>2]|0;if(b|0)Ci(b);f[a>>2]=1372;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Ci(c);return}function af(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1148;b=f[a+16>>2]|0;if(b|0){c=a+20|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}d=f[a+4>>2]|0;if(!d)return;b=a+8|0;c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Ci(d);return}function bf(a){a=a|0;var b=0,c=0;f[a>>2]=2128;Ai(a+108|0);f[a>>2]=1372;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Ci(c);return}function cf(a){a=a|0;var b=0,c=0;f[a>>2]=2720;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)zi(b);f[a>>2]=1312;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ae(a);return}Ga[f[(f[b>>2]|0)+4>>2]&127](b);ae(a);return}function df(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;f[a+4>>2]=b;d=f[b+4>>2]|0;if((c|0)<=-1)xa(13357,14007,67,14106);b=f[d+8>>2]|0;if(((f[d+12>>2]|0)-b>>2|0)>(c|0)){f[a+8>>2]=f[b+(c<<2)>>2];f[a+12>>2]=c;return 1}else xa(13953,14007,68,14106);return 0}function ef(a){a=a|0;var b=0,c=0;f[a>>2]=1764;Ai(a+108|0);f[a>>2]=1372;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Ci(c);return}function ff(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0){b=0;return b|0}c=f[a+4>>2]|0;if(((f[c+12>>2]|0)-(f[c+8>>2]|0)>>2|0)<=(b|0)){c=0;return c|0}c=f[(f[a+8>>2]|0)+(f[(f[a+20>>2]|0)+(b<<2)>>2]<<2)>>2]|0;c=Na[f[(f[c>>2]|0)+32>>2]&127](c,b)|0;return c|0}function gf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;i=f[a+4>>2]|0;h=i>>8;if(i&1)h=f[(f[d>>2]|0)+h>>2]|0;a=f[a>>2]|0;Ma[f[(f[a>>2]|0)+20>>2]&3](a,b,c,d+h|0,i&2|0?e:2,g);return}function hf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(zh(a,f[b+8>>2]|0,0)|0)Je(0,b,c,d);else{a=f[a+8>>2]|0;Oa[f[(f[a>>2]|0)+28>>2]&7](a,b,c,d)}return}function jf(a,b){a=a|0;b=b|0;var c=0;c=f[a+4>>2]|0;if(c|0?((h[c+36>>0]|0)<<8&65535)<512:0){c=1;return c|0}c=Na[f[(f[a>>2]|0)+48>>2]&127](a,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0;return c|0}function kf(a,b){a=a|0;b=b|0;var c=0;gg(a);f[a>>2]=1252;c=a+36|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;c=f[b>>2]|0;f[b>>2]=0;f[a+60>>2]=c;return}function lf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)a=0;else{while(1){e=b[a>>0]|0;f=b[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){a=0;break a}else{a=a+1|0;c=c+1|0}}a=(e&255)-(f&255)|0}while(0);return a|0}function mf(a,b,c){a=a|0;b=b|0;c=c|0;if(!(de(f[a+8>>2]|0,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0)){c=0;return c|0}c=Ea[f[(f[a>>2]|0)+32>>2]&15](a,b,c)|0;return c|0}function nf(a,b){a=a|0;b=b|0;var c=0;c=f[a+16>>2]|0;if(((f[a+20>>2]|0)-c>>2|0)<=(b|0)){a=0;return a|0}b=f[c+(b<<2)>>2]|0;if((b|0)<0){a=0;return a|0}a=Qc(f[(f[a+36>>2]|0)+(b<<2)>>2]|0)|0;return a|0}function of(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;h=f[a+4>>2]|0;g=h>>8;if(h&1)g=f[(f[c>>2]|0)+g>>2]|0;a=f[a>>2]|0;Fa[f[(f[a>>2]|0)+24>>2]&3](a,b,c+g|0,h&2|0?d:2,e);return}function pf(a){a=a|0;if(!(f[a+60>>2]|0))return 0;if(!(f[a+44>>2]|0))return 0;if(!(f[a+48>>2]|0))return 0;if(!(f[a+52>>2]|0))return 0;else return (f[a+56>>2]|0)!=0|0;return 0}function qf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=f[a+4>>2]|0;e=g>>8;if(g&1)e=f[(f[c>>2]|0)+e>>2]|0;a=f[a>>2]|0;Oa[f[(f[a>>2]|0)+28>>2]&7](a,b,c+e|0,g&2|0?d:2);return}function rf(a,c){a=a|0;c=c|0;var d=0,e=0;e=a;d=e+64|0;do{f[e>>2]=f[c>>2];e=e+4|0;c=c+4|0}while((e|0)<(d|0));e=a+64|0;f[a+88>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;b[e+20>>0]=0;return}function sf(a){a=a|0;if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}a=(f[a+56>>2]|0)!=0;return a|0}function tf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=$(e);f[a+4>>2]=b;uc(a+8|0,c,c+(d<<2)|0);n[a+20>>2]=e;return}function uf(a){a=a|0;var b=0,c=0;c=a+15&-16|0;b=f[r>>2]|0;a=b+c|0;if((c|0)>0&(a|0)<(b|0)|(a|0)<0){ea()|0;sa(12);return -1}f[r>>2]=a;if((a|0)>(da()|0)?(ca()|0)==0:0){f[r>>2]=b;sa(12);return -1}return b|0}function vf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=f[c>>2]|0;d=a;c=b-a>>2;while(1){if(!c)break;b=(c|0)/2|0;g=d+(b<<2)|0;a=(f[g>>2]|0)>>>0>>0;d=a?g+4|0:d;c=a?c+-1-b|0:b}return d|0}function wf(a,b){a=a|0;b=b|0;b=f[b+88>>2]|0;if(!b){a=0;return a|0}if((f[b>>2]|0)!=2){a=0;return a|0}b=f[b+8>>2]|0;f[a+4>>2]=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;a=1;return a|0}function xf(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;b[a+24>>0]=1;f[a+28>>2]=9;c=a+40|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+56>>2]=-1;f[a+60>>2]=0;return}function yf(a,b){a=a|0;b=b|0;if(!(Na[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){b=0;return b|0}if(!(Na[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){b=0;return b|0}b=Ja[f[(f[a>>2]|0)+44>>2]&127](a)|0;return b|0}function zf(a,c,d){a=a|0;c=c|0;d=d|0;if(!(zg(a,c,d)|0)){d=0;return d|0}a=f[a+8>>2]|0;if((b[a+24>>0]|0)!=3){d=0;return d|0}d=(f[a+28>>2]|0)==9;return d|0}function Af(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){c=0;return c|0}if((b[c+24>>0]|0)!=3){c=0;return c|0}f[a+44>>2]=c;c=1;return c|0}function Bf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(zh(a,f[b+8>>2]|0,g)|0)Zd(0,b,c,d,e);return}function Cf(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+11>>0]|0;e=d<<24>>24<0;if(e)d=f[a+4>>2]|0;else d=d&255;if(d>>>0<=c>>>0)Zh(a);if(e)a=f[a>>2]|0;return a+c|0}function Df(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1372;b=f[a+32>>2]|0;if(!b){Ci(a);return}c=a+36|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b);Ci(a);return}function Ef(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){c=0;return c|0}if((b[c+24>>0]|0)!=3){c=0;return c|0}f[a+64>>2]=c;c=1;return c|0}function Ff(a,c){a=a|0;c=c|0;if(((c|0)!=0?(f[c+56>>2]|0)==0:0)?(b[c+24>>0]|0)==3:0){f[a+60>>2]=c;a=1}else a=0;return a|0}function Gf(a){a=a|0;switch(a|0){case 11:case 2:case 1:{a=1;break}case 4:case 3:{a=2;break}case 6:case 5:{a=4;break}case 8:case 7:{a=8;break}case 9:{a=4;break}case 10:{a=8;break}default:a=-1}return a|0}function Hf(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;Sd(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}return a|0}function If(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=X(e,f)|0;d=a>>>16;a=(c>>>16)+(X(e,d)|0)|0;e=b>>>16;b=X(e,f)|0;return (I=(a>>>16)+(X(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Jf(a){a=a|0;var c=0,d=0;b[a+36>>0]=0;d=Yg(f[a+32>>2]|0,0,7,0)|0;d=Ig(d|0,I|0,3)|0;a=a+16|0;c=a;c=Yg(d|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;f[a>>2]=c;f[a+4>>2]=I;return}function Kf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;xa(4765,4771,76,4926);return 0}function Lf(a,b){a=a|0;b=b|0;var c=0,d=0;d=ze(b)|0;c=qg(d+13|0)|0;f[c>>2]=d;f[c+4>>2]=d;f[c+8>>2]=0;c=Mh(c)|0;Mc(c|0,b|0,d+1|0)|0;f[a>>2]=c;return}function Mf(a,b){a=a|0;b=b|0;var c=0;if((b|0)==-1|(b|0)>4){c=-1;return c|0}c=f[a+20+(b*12|0)>>2]|0;if(((f[a+20+(b*12|0)+4>>2]|0)-c|0)<=0){c=-1;return c|0}c=f[c>>2]|0;return c|0}function Nf(a){a=a|0;var b=0,c=0;f[a>>2]=1372;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Ci(c);return}function Of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(zh(a,f[b+8>>2]|0,0)|0)Je(0,b,c,d);return}function Pf(a){a=a|0;var b=0;f[a>>2]=2812;b=a+4|0;f[a+40>>2]=0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;d[b+32>>1]=0;return}function Qf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else Mc(a,c,d)|0;return a|0}function Rf(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1120;b=f[a+8>>2]|0;if(!b){Ci(a);return}c=a+12|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b);Ci(a);return}function Sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((b|0)>0)d=0;else return;do{e=f[a+(d<<2)>>2]|0;f[c+(d<<2)>>2]=e<<31>>31^e>>>1;d=d+1|0}while((d|0)!=(b|0));return}function Tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=f[c>>2];a=Ea[f[(f[a>>2]|0)+16>>2]&15](a,b,d)|0;if(a)f[c>>2]=f[d>>2];u=e;return a&1|0}function Uf(a){a=a|0;var b=0,c=0;if(gi(a)|0?(b=Qh(f[a>>2]|0)|0,c=b+8|0,a=f[c>>2]|0,f[c>>2]=a+-1,(a+-1|0)<0):0)Ci(b);return}function Vf(a){a=a|0;var c=0;c=b[w+(a&255)>>0]|0;if((c|0)<8)return c|0;c=b[w+(a>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=b[w+(a>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (b[w+(a>>>24)>>0]|0)+24|0}function Wf(a){a=a|0;var b=0,c=0,d=0;if(!a)return;b=f[a>>2]|0;if(b|0){c=a+4|0;d=f[c>>2]|0;if((d|0)!=(b|0))f[c>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ci(b)}Ci(a);return}function Xf(a,c){a=a|0;c=c|0;var d=0;b[c+84>>0]=1;d=f[c+68>>2]|0;a=c+72|0;c=f[a>>2]|0;if((c|0)==(d|0))return 1;f[a>>2]=c+(~((c+-4-d|0)>>>2)<<2);return 1}function Yf(a,b){a=a|0;b=b|0;if(b>>>0>=2){b=0;return b|0}f[a+28>>2]=b;b=1;return b|0}function Zf(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;d[a+38>>1]=0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;b[c+28>>0]=0;return}function _f(a){a=a|0;var b=0,c=0;f[a>>2]=1312;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ga[f[(f[b>>2]|0)+4>>2]&127](b);ae(a);Ci(a);return}function $f(a){a=a|0;var b=0,c=0;f[a>>2]=1120;c=f[a+8>>2]|0;if(!c)return;a=a+12|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Ci(c);return}function ag(a,b){a=a|0;b=b|0;return ud(a+8|0,b)|0}function bg(a,b,c){a=a|0;b=b|0;c=c|0;Ya(a,b,c);return}function cg(a){a=a|0;var b=0,c=0;f[a>>2]=1312;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Ga[f[(f[b>>2]|0)+4>>2]&127](b);ae(a);return}function dg(a,b){a=a|0;b=b|0;if(!b)return 0;else xa(10473,5233,61,10484);return 0}function eg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if((f[b+4>>2]|0)==(c|0)?(e=b+28|0,(f[e>>2]|0)!=1):0)f[e>>2]=d;return}function fg(a,b){a=a|0;b=b|0;if(!b)return 0;else xa(10473,10066,65,10484);return 0}function gg(a){a=a|0;f[a>>2]=1148;a=a+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return}function hg(a,b){a=a|0;b=b|0;return id(a+8|0,b)|0}function ig(a,b){a=a|0;b=b|0;if(!b)return 0;else xa(10473,5555,70,10484);return 0}function jg(a){a=a|0;f[a>>2]=2328;Ai(a+88|0);Ci(a);return}function kg(a,b,c){a=a|0;b=$(b);c=c|0;var d=Ca;if((c|0)<1){c=0;return c|0}d=$($(1.0)/$(c|0));n[a+4>>2]=d;n[a>>2]=b;c=1;return c|0}function lg(a){a=a|0;f[a>>2]=2412;Ai(a+88|0);Ci(a);return}function mg(a){a=a|0;f[a>>2]=2552;Ai(a+88|0);Ci(a);return}function ng(a){a=a|0;f[a>>2]=2328;Ai(a+88|0);return}function og(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=If(e,f)|0;a=I;return (I=(X(b,f)|0)+(X(d,e)|0)+a|a&0,c|0|0)|0}function pg(a){a=a|0;f[a>>2]=2636;Ai(a+88|0);Ci(a);return}function qg(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=Pa(b)|0;if(a|0)break;a=Sh()|0;if(!a){a=0;break}La[a&1]()}return a|0}function rg(a){a=a|0;f[a>>2]=2412;Ai(a+88|0);return}function sg(a){a=a|0;f[a>>2]=2552;Ai(a+88|0);return}function tg(a){a=a|0;Xg(a);f[a>>2]=2720;f[a+24>>2]=-1;f[a+28>>2]=0;n[a+32>>2]=$(0.0);return}function ug(a){a=a|0;f[a>>2]=2636;Ai(a+88|0);return}function vg(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;b=a+8|0;f[b>>2]=c;f[b+4>>2]=0;c=a+16|0;f[c>>2]=0;f[c+4>>2]=0;return}function wg(a,b,c){a=a|0;b=b|0;c=c|0;return Gd(a,b,c)|0}function xg(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;a=a+16|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function yg(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function zg(a,b,c){a=a|0;b=b|0;c=c|0;return df(a,b,c)|0}function Ag(a){a=a|0;Pf(a);f[a>>2]=1024;a=a+44|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function Bg(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 Ia[a&31](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Cg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Jb(b,c,d)|0}function Dg(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;Ma[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function Eg(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)Wd(a|0,(ei(c)|0)&255|0,b|0)|0;return a|0}function Fg(a){a=a|0;return 4}function Gg(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<>>32-c;return a<>0]|0)<0)Ci(f[c>>2]|0);Ci(a);return}function Ig(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Jg(a,b,c){a=a|0;b=b|0;c=c|0;return Tc(b,c)|0}function Kg(){}function Lg(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 (I=d,a-c>>>0|0)|0}function Mg(a){a=a|0;return 5}function Ng(a){a=a|0;var b=0;f[a>>2]=2856;a=a+4|0;b=a+80|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Og(a){a=a|0;return 6}function Pg(a,b,c){a=a|0;b=b|0;c=c|0;f[a+28>>2]=b;f[a+32>>2]=c;return 1}function Qg(a){a=a|0;f[a>>2]=1204;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=-1;f[a+16>>2]=0;return}function Rg(a){a=a|0;a=a+4|0;if((b[a+11>>0]|0)<0){a=f[a>>2]|0;return a|0}else return a|0;return 0}function Sg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Fa[a&3](b|0,c|0,d|0,e|0,f|0)}function Tg(a,b){a=a|0;b=b|0;return Na[f[(f[a>>2]|0)+56>>2]&127](a,b)|0}function Ug(a){a=a|0;Xg(a);f[a>>2]=2212;f[a+24>>2]=-1;return}function Vg(a,b){a=a|0;b=b|0;f[a+8>>2]=b;f[a+12>>2]=-1;return 1}function Wg(a){a=a|0;if(!a)return;Ga[f[(f[a>>2]|0)+4>>2]&127](a);return}function Xg(a){a=a|0;Qg(a);f[a>>2]=1312;f[a+20>>2]=0;return}function Yg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (I=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Zg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Oa[a&7](b|0,c|0,d|0,e|0)}function _g(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Qf(a|0,b|0,c|0)|0;return a|0}function $g(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Mc(a|0,b|0,c|0)|0;return a|0}function ah(a,b){a=a|0;b=b|0;return -1}function bh(a){a=a|0;return 3}function ch(a){a=a|0;if(!a)a=0;else a=($c(a,896,984,0)|0)!=0;return a&1|0}function dh(a){a=a|0;if(!a)return;Ai(a+24|0);Ci(a);return}function eh(a){a=a|0;rd(a);Ci(a);return}function fh(a){a=a|0;return f[a+4>>2]|0}function gh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ea[a&15](b|0,c|0,d|0)|0}function hh(a,b,c){a=a|0;b=b|0;c=c|0;vg(a,b,c);return}function ih(a,b){a=a|0;b=b|0;f[a>>2]=3588;Lf(a+4|0,b);return}function jh(a){a=a|0;return ((f[a+12>>2]|0)-(f[a+8>>2]|0)>>2)+-1|0}function kh(a,b){a=a|0;b=b|0;return f[(f[a+4>>2]|0)+(b<<2)>>2]|0}function lh(){var a=0;a=qg(84)|0;Jh(a);return a|0}function mh(a,b){a=a|0;b=b|0;return $(ph(a,b))}function nh(a){a=a|0;return b[(f[a+8>>2]|0)+24>>0]|0}function oh(){var a=0;a=qg(12)|0;Dh(a);return a|0}function ph(a,b){a=a|0;b=b|0;return $(n[(f[a>>2]|0)+(b<<2)>>2])}function qh(a){a=a|0;return (f[a+8>>2]|0)-(f[a+4>>2]|0)>>2|0}function rh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ka[a&15](b|0,c|0,d|0)}function sh(){var a=0;a=qg(60)|0;Ag(a);return a|0}function th(a){a=a|0;var b=0;b=u;u=u+a|0;u=u+15&-16;return b|0}function uh(){var a=0;a=qg(40)|0;Zf(a);return a|0}function vh(a,b){a=a|0;b=b|0;return 1}function wh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(4);return 0}function xh(a){a=a|0;ae(a);Ci(a);return}function yh(a){a=a|0;n[a>>2]=$(1.0);n[a+4>>2]=$(1.0);return}function zh(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Ah(a,b){a=a|0;b=b|0;f[a+4>>2]=b;return}function Bh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ub(a,b,c,d,0)|0}function Ch(a){a=a|0;f[a+4>>2]=0;f[a+8>>2]=0;f[a>>2]=a+4;return}function Dh(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}function Eh(a){a=a|0;return (f[a+4>>2]|0)-(f[a>>2]|0)>>2|0}function Fh(a){a=a|0;f[a>>2]=3588;Uf(a+4|0);return}function Gh(a,b,c){a=a|0;b=b|0;c=c|0;return Na[a&127](b|0,c|0)|0}function Hh(a,c){a=a|0;c=c|0;b[a>>0]=b[c>>0]|0;return}function Ih(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(8)}function Jh(a){a=a|0;Ng(a);f[a>>2]=1068;return}function Kh(a){a=a|0;if(!a)return;Ci(a);return}function Lh(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function Mh(a){a=a|0;return a+12|0}function Nh(a,b,c){a=a|0;b=b|0;c=c|0;Ha[a&3](b|0,c|0)}function Oh(a,b){a=a|0;b=b|0;return 0}function Ph(a){a=a|0;Ai(a);Ci(a);return}function Qh(a){a=a|0;return a+-12|0}function Rh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;aa(1)}function Sh(){var a=0;a=f[3792]|0;f[3792]=a+0;return a|0}function Th(a){a=a|0;return ji(a+4|0)|0}function Uh(a){a=a|0;Gc(a);Ci(a);return}function Vh(a){a=a|0;return f[a+80>>2]|0}function Wh(a){a=a|0;return f[a+28>>2]|0}function Xh(a,b){a=a|0;b=b|0;return Ja[a&127](b|0)|0}function Yh(a){a=a|0;Fh(a);Ci(a);return}function Zh(a){a=a|0;ra()}function _h(a,b){a=a|0;b=b|0;u=a;v=b}function $h(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(10)}function ai(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function bi(a){a=a|0;return (f[a>>2]|0)==0|0}function ci(a,b){a=a|0;b=b|0;Ga[a&127](b|0)}function di(a){a=a|0;b[a+12>>0]=0;return}function ei(a){a=a|0;return a&255|0}function fi(a){a=a|0;f[a>>2]=0;return}function gi(a){a=a|0;return 1}function hi(a,b,c){a=a|0;b=b|0;c=c|0;aa(0);return 0}function ii(a){a=a|0;return 0}function ji(a){a=a|0;return f[a>>2]|0}function ki(a){a=a|0;return 2}function li(a,b,c){a=a|0;b=b|0;c=c|0;aa(6)}function mi(){return -4}function ni(){return -3}function oi(){return (vi()|0)+64|0}function pi(){return -5}function qi(a,b){a=a|0;b=b|0;aa(9);return 0}function ri(a){a=a|0;La[a&1]()}function si(){return -2}function ti(){ya()}function ui(){return -1}function vi(){return Ji()|0}function wi(a,b){a=a|0;b=b|0;aa(3)}function xi(){return 0}function yi(a){a=a|0;return qg(a)|0}function zi(a){a=a|0;Ci(a);return}function Ai(a){a=a|0;return}function Bi(a){a=a|0;u=a}function Ci(a){a=a|0;$a(a);return}function Di(a){a=a|0;I=a}function Ei(){return 15104}function Fi(a){a=a|0;aa(5);return 0}function Gi(){return I|0}function Hi(){return u|0}function Ii(a){a=a|0;aa(2)}function Ji(){return 2872}function Ki(){aa(7)} // EMSCRIPTEN_END_FUNCS -var Ea=[gi,Ng,bf,kf,yg,Ad,zg,qc,rb,xf,Dd,Od,Me,Ed,Le,ge];var Fa=[Qh,Ud,Rc,wb];var Ga=[Hi,ne,me,Gc,Th,zi,yi,Zf,Pf,_e,Se,$d,vh,qd,ch,ag,Yf,Lf,Bf,Bf,Bf,Bf,te,pe,Je,Ce,Ze,Qe,cf,Ye,zi,yi,Bf,Bf,qe,oe,He,Ae,We,Oe,$e,Ve,zi,yi,Yf,zi,yi,mg,hg,zi,yi,qg,kg,zi,yi,yi,rg,lg,zi,yi,ug,og,zi,yi,af,Xe,zi,yi,me,Th,zi,Oh,zi,zi,Oh,Eh,Xh,Xh,Oh,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi,Hi];var Ha=[vi,ib,Ge,wc];var Ia=[uh,Ab,eb,_a,Ta,zb,Lb,If,hb,Za,Sa,yb,Jb,If,ee,lb,mb,he,nb,ob,uh,uh,uh,uh,uh,uh,uh,uh,uh,uh,uh,uh];var Ja=[Ei,hi,fi,re,Xb,Te,fi,ji,fi,mh,Vh,fi,Ob,kh,dh,hi,hi,fi,hi,fi,fi,qf,ji,qf,Eg,qf,$g,nf,fi,Kg,nf,fi,Mg,De,fi,Vh,fi,qf,ji,qf,Eg,qf,$g,nf,fi,Kg,nf,fi,Mg,De,fi,Vh,ji,hi,dh,fi,hi,fi,$g,Mg,Be,fi,Vh,Mg,Be,fi,Vh,hi,dh,fi,hi,fi,ji,Mg,Be,fi,Vh,Mg,Be,fi,Vh,oc,Ld,fi,Sh,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei,Ei];var Ka=[ki,Ac,Ee,bb,Xa,Xa,bb,Xa,bb,ki,ki,ki,ki,ki,ki,ki];var La=[Ji,si];var Ma=[Hh,zf,Ue,Sc];var Na=[pi,Cc,uf,gd,cb,wf,hh,Nh,sh,Tg,sh,Wc,dc,Oc,lf,ze,we,gf,Kb,_g,Nh,kd,Zb,gg,Df,Nb,bg,Df,cc,dg,Cf,yc,Wf,Zb,gg,Df,Nb,bg,Df,cc,dg,Cf,yc,Wf,ud,_g,Nh,_f,dg,yf,Hd,Wf,dg,yf,Hd,Wf,_g,Nh,fg,dg,yf,Jd,Wf,dg,yf,Jd,Wf,Rg,vc,Vf,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi,pi];var Oa=[_h,Nd,md,Mf,ff,Zd,_h,_h];return{_emscripten_bind_DecoderBuffer_DecoderBuffer_0:rh,_emscripten_enum_draco_StatusCode_IO_ERROR:ri,_emscripten_bind_DracoInt32Array_size_0:Dh,getTempRet0:Fi,___udivdi3:Ah,dynCall_iiiiiii:Bg,setThrew:Kh,_emscripten_enum_draco_StatusCode_ERROR:ti,_bitshift64Lshr:Hg,_i64Subtract:Jg,_bitshift64Shl:Fg,_emscripten_enum_draco_StatusCode_INVALID_PARAMETER:mi,dynCall_vi:bi,_emscripten_enum_draco_StatusCode_OK:wi,_emscripten_bind_DecoderBuffer_Init_2:fh,_emscripten_bind_AnimationDecoder_GetTimestampAndAnimationData_3:sg,_emscripten_bind_KeyframeAnimation_KeyframeAnimation_0:ih,_emscripten_bind_VoidPtr___destroy___0:Jh,_memset:Vd,_sbrk:sf,_emscripten_bind_Status_code_0:ii,dynCall_viii:nh,_memcpy:Mc,_emscripten_bind_DecoderBuffer___destroy___0:bh,stackAlloc:ph,___muldi3:ng,_emscripten_bind_KeyframeAnimation_num_components_0:jg,_emscripten_bind_DracoInt32Array___destroy___0:Uf,dynCall_vii:Mh,_emscripten_bind_Status_ok_0:ai,_emscripten_bind_AnimationDecoder_AnimationDecoder_0:oh,___divdi3:Fe,_emscripten_bind_KeyframeAnimation___destroy___0:Ug,_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0:qh,_emscripten_bind_AnimationDecoder_DecodeBufferToKeyframeAnimation_2:wg,setTempRet0:Ci,_i64Add:Wg,___cxa_is_pointer_type:ah,_emscripten_bind_DracoInt32Array_DracoInt32Array_0:qh,dynCall_iiii:eh,_emscripten_bind_Status___destroy___0:Gg,_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION:oi,_emscripten_bind_DracoFloat32Array_GetValue_1:jh,_emscripten_bind_DracoFloat32Array___destroy___0:Uf,_emscripten_get_global_libc:Di,_emscripten_bind_KeyframeAnimation_num_frames_0:Uh,dynCall_ii:Wh,dynCall_viiii:Xg,stackSave:Gi,dynCall_viiiii:Qg,___cxa_can_catch:Rf,_emscripten_bind_DracoFloat32Array_size_0:Dh,_free:$a,runPostSets:Ig,dynCall_viiiiii:Cg,establishStackSpace:Zh,_emscripten_bind_DracoInt32Array_GetValue_1:th,_emscripten_bind_AnimationDecoder___destroy___0:_d,stackRestore:Ai,_malloc:Pa,dynCall_iii:Fh,_emscripten_replace_memory:Da,_memmove:Of,dynCall_v:qi,_emscripten_bind_Status_error_msg_0:Pg,_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION:li}}) +var Ea=[hi,Pg,df,mf,yg,Bd,zg,qc,rb,zf,Ed,Pd,Ne,Fd,Me,he];var Fa=[Rh,Vd,Rc,vb];var Ga=[Ii,oe,ne,Gc,Uh,Ai,zi,$f,Rf,af,Te,ae,xh,rd,eh,cg,_f,Nf,Df,Df,Df,Df,ue,qe,Ke,De,$e,Re,ef,Ze,Ai,zi,Df,Df,re,pe,Ie,Be,Xe,Pe,bf,We,Ai,zi,_f,Ai,zi,ng,jg,Ai,zi,rg,lg,Ai,zi,zi,sg,mg,Ai,zi,ug,pg,Ai,zi,cf,Ye,Ai,zi,ne,Uh,Ai,Ph,Ai,Ai,Ph,Fh,Yh,Yh,Ph,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii,Ii];var Ha=[wi,ib,He,wc];var Ia=[wh,zb,eb,_a,Ta,yb,Lb,Kf,hb,Za,Sa,xb,Ib,Kf,fe,lb,mb,ie,nb,ob,wh,wh,wh,wh,wh,wh,wh,wh,wh,wh,wh,wh];var Ja=[Fi,ii,gi,se,Xb,Ue,gi,ki,gi,qh,Wh,gi,Ob,nh,fh,ii,ii,gi,ii,gi,gi,sf,ki,sf,Fg,sf,bh,pf,gi,Mg,pf,gi,Og,Ee,gi,Wh,gi,sf,ki,sf,Fg,sf,bh,pf,gi,Mg,pf,gi,Og,Ee,gi,Wh,ki,ii,fh,gi,ii,gi,bh,Og,Ce,gi,Wh,Og,Ce,gi,Wh,ii,fh,gi,ii,gi,ki,Og,Ce,gi,Wh,Og,Ce,gi,Wh,oc,Md,gi,Th,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi,Fi];var Ka=[li,Ac,Fe,bb,Xa,Xa,bb,Xa,bb,li,li,li,li,li,li,li];var La=[Ki,ti];var Ma=[Ih,Bf,Ve,Sc];var Na=[qi,Cc,wf,hd,cb,yf,kh,Oh,vh,Vg,vh,Xc,dc,Oc,nf,Ae,xe,jf,Kb,ah,Oh,ld,Zb,ig,Ff,Nb,dg,Ff,cc,fg,Ef,yc,Yf,Zb,ig,Ff,Nb,dg,Ff,cc,fg,Ef,yc,Yf,vd,ah,Oh,ag,fg,Af,Id,Yf,fg,Af,Id,Yf,ah,Oh,hg,fg,Af,Kd,Yf,fg,Af,Kd,Yf,Tg,vc,Xf,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi,qi];var Oa=[$h,Od,nd,Of,hf,_d,$h,$h];return{_emscripten_bind_DecoderBuffer_DecoderBuffer_0:uh,_emscripten_enum_draco_StatusCode_IO_ERROR:si,getTempRet0:Gi,___udivdi3:Bh,dynCall_iiiiiii:Bg,setThrew:Lh,_emscripten_enum_draco_StatusCode_ERROR:ui,_bitshift64Lshr:Ig,_i64Subtract:Lg,_bitshift64Shl:Gg,_emscripten_enum_draco_StatusCode_INVALID_PARAMETER:ni,dynCall_vi:ci,_emscripten_bind_AnimationDecoder_GetKeyframes_3:Cg,_emscripten_bind_DecoderBuffer_Init_2:hh,dynCall_iii:Gh,_emscripten_bind_KeyframeAnimation_KeyframeAnimation_0:lh,_emscripten_bind_VoidPtr___destroy___0:Kh,_memset:Wd,dynCall_ii:Xh,_sbrk:uf,_emscripten_bind_Status_code_0:ji,dynCall_viii:rh,_memcpy:Mc,_emscripten_bind_DecoderBuffer___destroy___0:dh,stackAlloc:th,___muldi3:og,dynCall_vii:Nh,_emscripten_bind_AnimationDecoder_AnimationDecoder_0:sh,___divdi3:Ge,_emscripten_bind_KeyframeAnimation___destroy___0:Wg,_emscripten_bind_KeyframeAnimation_num_animations_0:jh,_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0:oh,_emscripten_bind_AnimationDecoder_DecodeBufferToKeyframeAnimation_2:wg,setTempRet0:Di,_i64Add:Yg,___cxa_is_pointer_type:ch,_emscripten_bind_Status_ok_0:bi,dynCall_iiii:gh,___cxa_can_catch:Tf,_emscripten_bind_Status___destroy___0:Hg,_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION:pi,_emscripten_bind_DracoFloat32Array_GetValue_1:mh,_emscripten_bind_DracoFloat32Array___destroy___0:Wf,_emscripten_get_global_libc:Ei,_emscripten_bind_KeyframeAnimation_num_frames_0:Vh,_emscripten_enum_draco_StatusCode_OK:xi,dynCall_viiii:Zg,stackSave:Hi,dynCall_viiiii:Sg,_emscripten_bind_AnimationDecoder_GetTimestamps_2:Jg,_emscripten_bind_DracoFloat32Array_size_0:Eh,_free:$a,runPostSets:Kg,dynCall_viiiiii:Dg,establishStackSpace:_h,_memmove:Qf,_emscripten_bind_AnimationDecoder___destroy___0:$d,stackRestore:Bi,_malloc:Pa,_emscripten_replace_memory:Da,dynCall_v:ri,_emscripten_bind_Status_error_msg_0:Rg,_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION:mi}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _emscripten_bind_DecoderBuffer_DecoderBuffer_0=Module["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"]=asm["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"];var _emscripten_bind_AnimationDecoder___destroy___0=Module["_emscripten_bind_AnimationDecoder___destroy___0"]=asm["_emscripten_bind_AnimationDecoder___destroy___0"];var _emscripten_bind_DracoInt32Array_size_0=Module["_emscripten_bind_DracoInt32Array_size_0"]=asm["_emscripten_bind_DracoInt32Array_size_0"];var _emscripten_bind_Status___destroy___0=Module["_emscripten_bind_Status___destroy___0"]=asm["_emscripten_bind_Status___destroy___0"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var _emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=Module["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"]=asm["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var _emscripten_enum_draco_StatusCode_ERROR=Module["_emscripten_enum_draco_StatusCode_ERROR"]=asm["_emscripten_enum_draco_StatusCode_ERROR"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _emscripten_enum_draco_StatusCode_INVALID_PARAMETER=Module["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"]=asm["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"];var _emscripten_enum_draco_StatusCode_OK=Module["_emscripten_enum_draco_StatusCode_OK"]=asm["_emscripten_enum_draco_StatusCode_OK"];var _emscripten_bind_DecoderBuffer_Init_2=Module["_emscripten_bind_DecoderBuffer_Init_2"]=asm["_emscripten_bind_DecoderBuffer_Init_2"];var _emscripten_bind_AnimationDecoder_GetTimestampAndAnimationData_3=Module["_emscripten_bind_AnimationDecoder_GetTimestampAndAnimationData_3"]=asm["_emscripten_bind_AnimationDecoder_GetTimestampAndAnimationData_3"];var _emscripten_bind_KeyframeAnimation_KeyframeAnimation_0=Module["_emscripten_bind_KeyframeAnimation_KeyframeAnimation_0"]=asm["_emscripten_bind_KeyframeAnimation_KeyframeAnimation_0"];var _emscripten_bind_VoidPtr___destroy___0=Module["_emscripten_bind_VoidPtr___destroy___0"]=asm["_emscripten_bind_VoidPtr___destroy___0"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _emscripten_bind_Status_code_0=Module["_emscripten_bind_Status_code_0"]=asm["_emscripten_bind_Status_code_0"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _emscripten_bind_DecoderBuffer___destroy___0=Module["_emscripten_bind_DecoderBuffer___destroy___0"]=asm["_emscripten_bind_DecoderBuffer___destroy___0"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var _emscripten_bind_KeyframeAnimation_num_components_0=Module["_emscripten_bind_KeyframeAnimation_num_components_0"]=asm["_emscripten_bind_KeyframeAnimation_num_components_0"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var _emscripten_bind_DracoInt32Array___destroy___0=Module["_emscripten_bind_DracoInt32Array___destroy___0"]=asm["_emscripten_bind_DracoInt32Array___destroy___0"];var _emscripten_bind_DracoInt32Array_DracoInt32Array_0=Module["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"]=asm["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"];var _emscripten_bind_AnimationDecoder_AnimationDecoder_0=Module["_emscripten_bind_AnimationDecoder_AnimationDecoder_0"]=asm["_emscripten_bind_AnimationDecoder_AnimationDecoder_0"];var ___divdi3=Module["___divdi3"]=asm["___divdi3"];var _emscripten_bind_KeyframeAnimation___destroy___0=Module["_emscripten_bind_KeyframeAnimation___destroy___0"]=asm["_emscripten_bind_KeyframeAnimation___destroy___0"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _emscripten_bind_AnimationDecoder_DecodeBufferToKeyframeAnimation_2=Module["_emscripten_bind_AnimationDecoder_DecodeBufferToKeyframeAnimation_2"]=asm["_emscripten_bind_AnimationDecoder_DecodeBufferToKeyframeAnimation_2"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _emscripten_bind_Status_ok_0=Module["_emscripten_bind_Status_ok_0"]=asm["_emscripten_bind_Status_ok_0"];var _emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=Module["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"]=asm["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"];var _emscripten_bind_DracoFloat32Array_GetValue_1=Module["_emscripten_bind_DracoFloat32Array_GetValue_1"]=asm["_emscripten_bind_DracoFloat32Array_GetValue_1"];var _emscripten_bind_DracoFloat32Array___destroy___0=Module["_emscripten_bind_DracoFloat32Array___destroy___0"]=asm["_emscripten_bind_DracoFloat32Array___destroy___0"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var _emscripten_bind_DracoFloat32Array_size_0=Module["_emscripten_bind_DracoFloat32Array_size_0"]=asm["_emscripten_bind_DracoFloat32Array_size_0"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setThrew=Module["setThrew"]=asm["setThrew"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var _emscripten_bind_DracoInt32Array_GetValue_1=Module["_emscripten_bind_DracoInt32Array_GetValue_1"]=asm["_emscripten_bind_DracoInt32Array_GetValue_1"];var _emscripten_enum_draco_StatusCode_IO_ERROR=Module["_emscripten_enum_draco_StatusCode_IO_ERROR"]=asm["_emscripten_enum_draco_StatusCode_IO_ERROR"];var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=asm["_emscripten_get_global_libc"];var _emscripten_bind_Status_error_msg_0=Module["_emscripten_bind_Status_error_msg_0"]=asm["_emscripten_bind_Status_error_msg_0"];var _malloc=Module["_malloc"]=asm["_malloc"];var _emscripten_bind_KeyframeAnimation_num_frames_0=Module["_emscripten_bind_KeyframeAnimation_num_frames_0"]=asm["_emscripten_bind_KeyframeAnimation_num_frames_0"];var _memmove=Module["_memmove"]=asm["_memmove"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var _emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=Module["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"]=asm["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_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_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=Module["stackAlloc"];Runtime.stackSave=Module["stackSave"];Runtime.stackRestore=Module["stackRestore"];Runtime.establishStackSpace=Module["establishStackSpace"];Runtime.setTempRet0=Module["setTempRet0"];Runtime.getTempRet0=Module["getTempRet0"];Module["asm"]=asm;if(memoryInitializer){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,Runtime.GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,Runtime.GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}Module["then"]=(function(func){if(Module["calledRun"]){func(Module)}else{var old=Module["onRuntimeInitialized"];Module["onRuntimeInitialized"]=(function(){if(old)old();func(Module)})}return Module});function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:(function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret}),copy:(function(array,view,offset){var offsetShifted=offset;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offsetShifted>>=1;break;case 4:offsetShifted>>=2;break;case 8:offsetShifted>>=3;break}for(var i=0;i0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:(function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret}),copy:(function(array,view,offset){var offsetShifted=offset;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offsetShifted>>=1;break;case 4:offsetShifted>>=2;break;case 8:offsetShifted>>=3;break}for(var i=0;i Date: Wed, 20 Dec 2017 14:01:44 -0800 Subject: [PATCH 3/5] Fix --- .../gltf/Monster/glTF-Draco/Monster.gltf | 9224 +++++++++-------- .../gltf/Monster/glTF-Draco/Monster0.bin | Bin 150920 -> 0 bytes 2 files changed, 4796 insertions(+), 4428 deletions(-) delete mode 100644 examples/models/gltf/Monster/glTF-Draco/Monster0.bin diff --git a/examples/models/gltf/Monster/glTF-Draco/Monster.gltf b/examples/models/gltf/Monster/glTF-Draco/Monster.gltf index 5d1c4019a81706..633cef30f5bb15 100644 --- a/examples/models/gltf/Monster/glTF-Draco/Monster.gltf +++ b/examples/models/gltf/Monster/glTF-Draco/Monster.gltf @@ -1,4458 +1,4826 @@ { - "asset": { - "generator": "COLLADA2GLTF", - "version": "2.0" + "asset": { + "generator": "COLLADA2GLTF", + "version": "2.0" + }, + "scene": 0, + "scenes": [ + { + "nodes": [ + 0 + ] + } + ], + "nodes": [ + { + "children": [ + 34, + 1 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 0, + -1, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1 + ] }, - "scene": 0, - "scenes": [ + { + "mesh": 0, + "skin": 0 + }, + { + "children": [ + 3 + ], + "translation": [ + -1.1628570556640625, + 99.4341278076172, + -44.13312911987305 + ], + "rotation": [ + 0.6116809844970703, + 0.354727566242218, + 0.6117032766342163, + 0.3547307252883911 + ], + "scale": [ + 0.9999999403953552, + 1.0000001192092896, + 1 + ] + }, + { + "children": [ + 18, + 13, + 8, + 4 + ], + "translation": [ + 0, + 142.05380249023438, + 0 + ], + "rotation": [ + 0.009599274955689909, + -0.0010376531863585117, + 0.9151230454444884, + 0.4030591249465943 + ], + "scale": [ + 0.9999998807907104, + 1.0000001192092896, + 1.0000001192092896 + ] + }, + { + "children": [ + 5 + ], + "translation": [ + -229.2772979736328, + 51.57170867919922, + 3.920083999633789 + ], + "rotation": [ + -0.0037880190648138527, + -0.008884812705218792, + -0.6532931327819824, + -0.7570434212684631 + ], + "scale": [ + 0.9999997615814208, + 1.0000001192092896, + 1 + ] + }, + { + "children": [ + 6 + ], + "translation": [ + -0.000007629389983776491, + 275.1336059570313, + 2.38419005427204e-7 + ], + "rotation": [ + -5.957689381830278e-7, + -2.2050939207929335e-7, + -0.12589137256145477, + -0.9920440316200256 + ], + "scale": [ + 0.9999999403953552, + 0.9999998807907104, + 0.9999999403953552 + ] + }, + { + "children": [ + 7 + ], + "translation": [ + -0.000022888199964654635, + 339.0890197753906, + 0 + ], + "rotation": [ + 8.796734505267523e-7, + 6.967138688196428e-7, + -0.11349057406187057, + -0.9935390949249268 + ], + "scale": [ + 1, + 0.9999999403953552, + 1 + ] + }, + { + "translation": [ + 0.00001525879997643642, + 374.1900939941406, + 0 + ], + "rotation": [ + 0.0003985897928941995, + 0.9999998807907104, + 3.396345107375965e-7, + 0.000003304860456410097 + ], + "scale": [ + 1, + 0.9999998211860656, + 1 + ] + }, + { + "children": [ + 9 + ], + "translation": [ + -101.904296875, + 96.81950378417967, + 158.1428985595703 + ], + "rotation": [ + -0.5870404839515686, + -0.4025762379169464, + 0.37822479009628296, + -0.5918291211128235 + ], + "scale": [ + 1.0000005960464478, + 0.9999995827674866, + 1 + ] + }, + { + "children": [ + 10 + ], + "translation": [ + 0.00001525879997643642, + 547.8187866210938, + 0.00003051759995287284 + ], + "rotation": [ + 0.8947640061378479, + -0.0988358035683632, + 0.3619275391101837, + -0.2421517372131348 + ], + "scale": [ + 0.9999999403953552, + 1, + 1.0000005960464478 + ] + }, + { + "children": [ + 11 + ], + "translation": [ + -0.00006103519990574569, + 532.7478637695312, + 0.00003814699812210165 + ], + "rotation": [ + -0.6655603647232056, + 0.43436089158058167, + -0.24011340737342837, + -0.5574095845222473 + ], + "scale": [ + 1, + 1, + 0.9999998807907104 + ] + }, + { + "children": [ + 12 + ], + "translation": [ + -0.00001525879997643642, + 286.1813049316406, + -0.00005340580173651688 + ], + "rotation": [ + -0.25593262910842896, + 0.3620181381702423, + 0.3219507336616516, + -0.8365339636802673 + ], + "scale": [ + 0.9999998807907104, + 0.9999999403953552, + 1 + ] + }, + { + "translation": [ + 0, + 166.96800231933597, + 0.000011444099982327316 + ], + "rotation": [ + 0.7009931206703186, + -0.700989305973053, + 0.09279558807611465, + -0.0927983820438385 + ], + "scale": [ + 0.9999999403953552, + 0.9999999403953552, + 0.9999999403953552 + ] + }, + { + "children": [ + 14 + ], + "translation": [ + -107.67569732666016, + 94.97681427001952, + -155.40679931640625 + ], + "rotation": [ + 0.5973692536354065, + 0.3938325047492981, + 0.3649851679801941, + -0.5956777334213257 + ], + "scale": [ + 0.9999995827674866, + 1.0000005960464478, + 1 + ] + }, + { + "children": [ + 15 + ], + "translation": [ + -0.00001525879997643642, + 547.819091796875, + 0.000003814699994109105 + ], + "rotation": [ + 0.8947624564170837, + -0.0988353118300438, + -0.3619306385517121, + 0.24215207993984225 + ], + "scale": [ + 1.0000001192092896, + 0.9999998211860656, + 0.9999987483024596 + ] + }, + { + "children": [ + 16 + ], + "translation": [ + 0, + 532.7470092773438, + 0 + ], + "rotation": [ + 0.6655597686767578, + -0.4343646466732025, + -0.24011126160621643, + -0.5574080944061279 + ], + "scale": [ + 0.9999998807907104, + 0.999999701976776, + 0.9999999403953552 + ] + }, + { + "children": [ + 17 + ], + "translation": [ + 0.00001525879997643642, + 286.1807861328125, + -0.000022888199964654635 + ], + "rotation": [ + 0.25593167543411255, + -0.3620148301124573, + 0.3219532072544098, + -0.8365347385406494 + ], + "scale": [ + 1, + 1.0000001192092896, + 1 + ] + }, + { + "translation": [ + -0.00006103519990574569, + 166.9690093994141, + 0.000003814699994109105 + ], + "rotation": [ + 0.7009877562522888, + 0.7009937167167664, + -0.09279301762580872, + -0.09280823916196825 + ], + "scale": [ + 0.9999999403953552, + 1, + 1 + ] + }, + { + "children": [ + 19 + ], + "translation": [ + 399.1947937011719, + -0.31954190135002136, + -0.003049075836315751 + ], + "rotation": [ + -0.004396272823214531, + -0.0025365734472870827, + -0.05076199769973755, + -0.9986979365348816 + ], + "scale": [ + 0.9999999403953552, + 1, + 1.0000001192092896 + ] + }, + { + "children": [ + 32, + 26, + 20 + ], + "translation": [ + 402.5515747070313, + -0.10438539832830428, + -0.002846478950232268 + ], + "rotation": [ + -0.000004574490503728157, + -0.000010040300367109012, + 0.35299697518348694, + -0.9356244802474976 + ], + "scale": [ + 1, + 1.0000001192092896, + 1 + ] + }, + { + "children": [ + 21 + ], + "translation": [ + 0.003967284690588713, + 0.14590449631214145, + -43.16883850097656 + ], + "rotation": [ + 0.629516065120697, + 0.328596293926239, + -0.1958152800798416, + -0.6763061881065369 + ], + "scale": [ + 0.999999701976776, + 1.0000003576278689, + 1 + ] + }, + { + "children": [ + 22 + ], + "translation": [ + -0.0003051759849768132, + 175.07150268554688, + 0.00007629390165675431 + ], + "rotation": [ + -0.5734227895736694, + 0.18226787447929385, + -0.23226681351661685, + -0.7642098665237427 + ], + "scale": [ + 1.0000001192092896, + 1.0000003576278689, + 0.999999701976776 + ] + }, + { + "children": [ + 23 + ], + "translation": [ + 0, + 370.0174865722656, + 0 + ], + "rotation": [ + -0.27098795771598816, + -0.08019046485424042, + 0.25969398021698, + -0.923414409160614 + ], + "scale": [ + 1, + 1.0000001192092896, + 1.0000001192092896 + ] + }, + { + "children": [ + 24 + ], + "translation": [ + 0.00006103519990574569, + 370.0173034667969, + 0 + ], + "rotation": [ + 0.3159535229206085, + 0.3460785150527954, + 0.361482322216034, + -0.8060604929924011 + ], + "scale": [ + 0.9999998807907104, + 0.9999999403953552, + 1 + ] + }, + { + "children": [ + 25 + ], + "translation": [ + 0.00005340580173651688, + 186.69309997558597, + 0.00003051759995287284 + ], + "rotation": [ + -0.061906907707452774, + -0.6184580326080322, + 0.322037935256958, + -0.7141210436820984 + ], + "scale": [ + 1.000000238418579, + 1.0000001192092896, + 0.9999999403953552 + ] + }, + { + "translation": [ + 0, + 167.76010131835938, + 0 + ], + "rotation": [ + -0.18707998096942904, + 0.18709905445575717, + 0.6818875074386597, + -0.6819269061088562 + ], + "scale": [ + 0.9999999403953552, + 0.9999998211860656, + 1 + ] + }, + { + "children": [ + 27 + ], + "translation": [ + 0.0004882809880655259, + 0.1427001953125, + 43.16946029663086 + ], + "rotation": [ + -0.6269798874855042, + -0.3371228575706482, + -0.20376521348953247, + -0.6721045970916748 + ], + "scale": [ + 1.0000003576278689, + 0.9999996423721313, + 1.0000001192092896 + ] + }, + { + "children": [ + 28 + ], + "translation": [ + 0, + 175.07080078125, + -0.00006103519990574569 + ], + "rotation": [ + 0.5832023620605469, + -0.18192623555660248, + -0.20986202359199524, + -0.7633713483810425 + ], + "scale": [ + 0.9999997615814208, + 1.0000001192092896, + 0.9999998807907104 + ] + }, + { + "children": [ + 29 + ], + "translation": [ + -0.00006103519990574569, + 370.0173034667969, + -0.00006103519990574569 + ], + "rotation": [ + 0.2709869146347046, + 0.0801902487874031, + 0.2596951127052307, + -0.923414409160614 + ], + "scale": [ + 1.0000001192092896, + 1.0000001192092896, + 1.0000001192092896 + ] + }, + { + "children": [ + 30 + ], + "translation": [ + 0.00006103519990574569, + 370.01708984375, + 0 + ], + "rotation": [ + -0.315950095653534, + -0.3460729122161865, + 0.3614855408668518, + -0.8060628175735474 + ], + "scale": [ + 0.9999998807907104, + 1, + 0.9999999403953552 + ] + }, + { + "children": [ + 31 + ], + "translation": [ + -0.000022888199964654635, + 186.6940155029297, + 0.000007629389983776491 + ], + "rotation": [ + 0.0619109645485878, + 0.6184656620025635, + 0.32203570008277893, + -0.7141150236129761 + ], + "scale": [ + 1, + 1.0000001192092896, + 1 + ] + }, + { + "translation": [ + 0, + 167.7620086669922, + -0.00006103519990574569 + ], + "rotation": [ + -0.18710123002529144, + -0.1870883852243424, + -0.6819262504577637, + -0.6818854212760925 + ], + "scale": [ + 1, + 0.9999999403953552, + 1 + ] + }, + { + "children": [ + 33 + ], + "translation": [ + 181.73239135742188, + -0.0008544919546693563, + 0.0025956628378480677 + ], + "rotation": [ + 0.00926738977432251, + 0.002782774157822132, + 0.3884811699390412, + -0.9214058518409728 + ], + "scale": [ + 1, + 1, + 1.0000001192092896 + ] + }, + { + "translation": [ + -0.00003051759995287284, + 345.1398010253906, + 0 + ], + "rotation": [ + -0.000010299070709152147, + -0.000018406668459647335, + -0.7070866823196411, + -0.7071268558502197 + ], + "scale": [ + 1, + 0.9999999403953552, + 1 + ] + }, + { + "children": [ + 2 + ], + "matrix": [ + 0.02539999969303608, + 0, + 0, + 0, + 0, + 0.02539999969303608, + 0, + 0, + 0, + 0, + 0.02539999969303608, + 0, + 0, + 0, + 11.732219696044922, + 1 + ] + } + ], + "meshes": [ + { + "primitives": [ + { + "attributes": { + "JOINTS_0": 1, + "NORMAL": 2, + "POSITION": 3, + "TEXCOORD_0": 4, + "WEIGHTS_0": 5 + }, + "indices": 0, + "mode": 4, + "material": 0 + } + ], + "name": "monster" + } + ], + "animations": [ + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 2, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 2, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 2, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 7, + "interpolation": "LINEAR", + "output": 8 + }, + { + "input": 7, + "interpolation": "LINEAR", + "output": 9 + }, + { + "input": 7, + "interpolation": "LINEAR", + "output": 10 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 3, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 3, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 3, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 11, + "interpolation": "LINEAR", + "output": 12 + }, + { + "input": 11, + "interpolation": "LINEAR", + "output": 13 + }, + { + "input": 11, + "interpolation": "LINEAR", + "output": 14 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 18, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 18, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 18, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 15, + "interpolation": "LINEAR", + "output": 16 + }, + { + "input": 15, + "interpolation": "LINEAR", + "output": 17 + }, + { + "input": 15, + "interpolation": "LINEAR", + "output": 18 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 19, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 19, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 19, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 19, + "interpolation": "LINEAR", + "output": 20 + }, + { + "input": 19, + "interpolation": "LINEAR", + "output": 21 + }, + { + "input": 19, + "interpolation": "LINEAR", + "output": 22 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 32, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 32, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 32, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 23, + "interpolation": "LINEAR", + "output": 24 + }, + { + "input": 23, + "interpolation": "LINEAR", + "output": 25 + }, + { + "input": 23, + "interpolation": "LINEAR", + "output": 26 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 33, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 33, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 33, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 27, + "interpolation": "LINEAR", + "output": 28 + }, + { + "input": 27, + "interpolation": "LINEAR", + "output": 29 + }, + { + "input": 27, + "interpolation": "LINEAR", + "output": 30 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 26, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 26, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 26, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 31, + "interpolation": "LINEAR", + "output": 32 + }, + { + "input": 31, + "interpolation": "LINEAR", + "output": 33 + }, + { + "input": 31, + "interpolation": "LINEAR", + "output": 34 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 27, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 27, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 27, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 35, + "interpolation": "LINEAR", + "output": 36 + }, + { + "input": 35, + "interpolation": "LINEAR", + "output": 37 + }, + { + "input": 35, + "interpolation": "LINEAR", + "output": 38 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 28, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 28, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 28, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 39, + "interpolation": "LINEAR", + "output": 40 + }, + { + "input": 39, + "interpolation": "LINEAR", + "output": 41 + }, + { + "input": 39, + "interpolation": "LINEAR", + "output": 42 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 29, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 29, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 29, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 43, + "interpolation": "LINEAR", + "output": 44 + }, + { + "input": 43, + "interpolation": "LINEAR", + "output": 45 + }, + { + "input": 43, + "interpolation": "LINEAR", + "output": 46 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 30, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 30, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 30, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 47, + "interpolation": "LINEAR", + "output": 48 + }, + { + "input": 47, + "interpolation": "LINEAR", + "output": 49 + }, + { + "input": 47, + "interpolation": "LINEAR", + "output": 50 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 31, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 31, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 31, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 51, + "interpolation": "LINEAR", + "output": 52 + }, + { + "input": 51, + "interpolation": "LINEAR", + "output": 53 + }, + { + "input": 51, + "interpolation": "LINEAR", + "output": 54 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 20, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 20, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 20, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 55, + "interpolation": "LINEAR", + "output": 56 + }, + { + "input": 55, + "interpolation": "LINEAR", + "output": 57 + }, + { + "input": 55, + "interpolation": "LINEAR", + "output": 58 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 21, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 21, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 21, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 59, + "interpolation": "LINEAR", + "output": 60 + }, + { + "input": 59, + "interpolation": "LINEAR", + "output": 61 + }, + { + "input": 59, + "interpolation": "LINEAR", + "output": 62 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 22, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 22, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 22, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 63, + "interpolation": "LINEAR", + "output": 64 + }, + { + "input": 63, + "interpolation": "LINEAR", + "output": 65 + }, + { + "input": 63, + "interpolation": "LINEAR", + "output": 66 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 23, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 23, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 23, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 67, + "interpolation": "LINEAR", + "output": 68 + }, + { + "input": 67, + "interpolation": "LINEAR", + "output": 69 + }, + { + "input": 67, + "interpolation": "LINEAR", + "output": 70 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 24, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 24, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 24, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 71, + "interpolation": "LINEAR", + "output": 72 + }, + { + "input": 71, + "interpolation": "LINEAR", + "output": 73 + }, + { + "input": 71, + "interpolation": "LINEAR", + "output": 74 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 25, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 25, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 25, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 75, + "interpolation": "LINEAR", + "output": 76 + }, + { + "input": 75, + "interpolation": "LINEAR", + "output": 77 + }, + { + "input": 75, + "interpolation": "LINEAR", + "output": 78 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 13, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 13, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 13, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 79, + "interpolation": "LINEAR", + "output": 80 + }, + { + "input": 79, + "interpolation": "LINEAR", + "output": 81 + }, + { + "input": 79, + "interpolation": "LINEAR", + "output": 82 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 14, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 14, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 14, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 83, + "interpolation": "LINEAR", + "output": 84 + }, + { + "input": 83, + "interpolation": "LINEAR", + "output": 85 + }, + { + "input": 83, + "interpolation": "LINEAR", + "output": 86 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 15, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 15, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 15, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 87, + "interpolation": "LINEAR", + "output": 88 + }, + { + "input": 87, + "interpolation": "LINEAR", + "output": 89 + }, + { + "input": 87, + "interpolation": "LINEAR", + "output": 90 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 16, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 16, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 16, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 91, + "interpolation": "LINEAR", + "output": 92 + }, + { + "input": 91, + "interpolation": "LINEAR", + "output": 93 + }, + { + "input": 91, + "interpolation": "LINEAR", + "output": 94 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 17, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 17, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 17, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 95, + "interpolation": "LINEAR", + "output": 96 + }, + { + "input": 95, + "interpolation": "LINEAR", + "output": 97 + }, + { + "input": 95, + "interpolation": "LINEAR", + "output": 98 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 8, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 8, + "path": "rotation" + } + }, { - "nodes": [ - 0 - ] + "sampler": 2, + "target": { + "node": 8, + "path": "scale" + } } - ], - "nodes": [ - { - "children": [ - 34, - 1 - ], - "matrix": [ - 1.0, - 0.0, - 0.0, - 0.0, - 0.0, - 0.0, - -1.0, - 0.0, - 0.0, - 1.0, - 0.0, - 0.0, - 0.0, - 0.0, - 0.0, - 1.0 - ] - }, - { - "mesh": 0, - "skin": 0 - }, - { - "children": [ - 3 - ], - "translation": [ - -1.1628570556640626, - 99.4341278076172, - -44.13312911987305 - ], - "rotation": [ - 0.6116809844970703, - 0.354727566242218, - 0.6117032766342163, - 0.3547307550907135 - ], - "scale": [ - 1.0, - 1.0000001192092896, - 1.0 - ] - }, - { - "children": [ - 18, - 13, - 8, - 4 - ], - "translation": [ - 0.0, - 142.05380249023438, - 0.0 - ], - "rotation": [ - 0.009599274955689909, - -0.0010376531863585117, - 0.9151230454444884, - 0.4030590653419495 - ], - "scale": [ - 0.9999998211860656, - 1.0, - 1.0000001192092896 - ] - }, - { - "children": [ - 5 - ], - "translation": [ - -229.2772979736328, - 51.57170867919922, - 3.920083999633789 - ], - "rotation": [ - -0.0037880190648138529, - -0.008884812705218792, - -0.6532931327819824, - -0.7570434212684631 - ], - "scale": [ - 0.9999997615814208, - 1.0000001192092896, - 1.0 - ] - }, - { - "children": [ - 6 - ], - "translation": [ - -0.000007629389983776491, - 275.1336059570313, - 2.38419005427204e-7 - ], - "rotation": [ - -5.957689381830278e-7, - -2.2050939207929336e-7, - -0.12589137256145478, - -0.9920440316200256 - ], - "scale": [ - 0.9999999403953552, - 0.9999998807907105, - 0.9999998807907105 - ] - }, - { - "children": [ - 7 - ], - "translation": [ - -0.000022888199964654633, - 339.0889892578125, - 0.0 - ], - "rotation": [ - 8.796734505267523e-7, - 6.967138688196428e-7, - -0.11349057406187058, - -0.9935390949249268 - ], - "scale": [ - 1.0, - 0.9999999403953552, - 1.0 - ] - }, - { - "translation": [ - 0.00001525879997643642, - 374.1900939941406, - 0.0 - ], - "rotation": [ - 0.0003985898219980299, - 0.9999998807907105, - 3.396345391593059e-7, - 0.000003304860456410097 - ], - "scale": [ - 1.0, - 0.9999998211860656, - 1.0 - ] - }, - { - "children": [ - 9 - ], - "translation": [ - -101.904296875, - 96.81951141357422, - 158.1428985595703 - ], - "rotation": [ - -0.5870404839515686, - -0.4025762379169464, - 0.37822479009628298, - -0.5918291211128235 - ], - "scale": [ - 1.0000005960464478, - 0.9999995827674866, - 1.0 - ] - }, - { - "children": [ - 10 - ], - "translation": [ - 0.00001525879997643642, - 547.8187866210938, - 0.00003051759995287284 - ], - "rotation": [ - 0.8947640061378479, - -0.0988358035683632, - 0.3619275391101837, - -0.24215173721313477 - ], - "scale": [ - 0.9999999403953552, - 1.0, - 1.0000005960464478 - ] - }, - { - "children": [ - 11 - ], - "translation": [ - -0.00006103519990574569, - 532.7479248046875, - 0.00003814700176008046 - ], - "rotation": [ - -0.6655603647232056, - 0.43436089158058169, - -0.24011343717575074, - -0.5574095845222473 - ], - "scale": [ - 1.0, - 1.0, - 0.9999998211860656 - ] - }, - { - "children": [ - 12 - ], - "translation": [ - -0.00001525879997643642, - 286.1813049316406, - -0.00005340580173651688 - ], - "rotation": [ - -0.25593262910842898, - 0.3620181381702423, - 0.3219507336616516, - -0.8365339636802673 - ], - "scale": [ - 0.9999999403953552, - 0.9999999403953552, - 1.0 - ] - }, - { - "translation": [ - 0.0, - 166.96800231933598, - 0.000011444099982327316 - ], - "rotation": [ - 0.7009931206703186, - -0.700989305973053, - 0.09279558807611466, - -0.09279836714267732 - ], - "scale": [ - 0.9999998807907105, - 0.9999998807907105, - 0.9999998807907105 - ] - }, - { - "children": [ - 14 - ], - "translation": [ - -107.67569732666016, - 94.97682189941406, - -155.40679931640626 - ], - "rotation": [ - 0.5973692536354065, - 0.3938325047492981, - 0.3649851679801941, - -0.5956777334213257 - ], - "scale": [ - 0.9999995827674866, - 1.0000005960464478, - 1.0 - ] - }, - { - "children": [ - 15 - ], - "translation": [ - -0.00001525879997643642, - 547.819091796875, - 0.000003814699994109105 - ], - "rotation": [ - 0.8947624564170837, - -0.0988353118300438, - -0.3619306087493897, - 0.24215207993984226 - ], - "scale": [ - 1.0, - 0.9999997615814208, - 0.9999987483024596 - ] - }, - { - "children": [ - 16 - ], - "translation": [ - 0.0, - 532.7470092773438, - 0.0 - ], - "rotation": [ - 0.6655597686767578, - -0.4343646466732025, - -0.24011126160621644, - -0.5574080944061279 - ], - "scale": [ - 0.9999998807907105, - 0.999999701976776, - 0.9999998807907105 - ] - }, - { - "children": [ - 17 - ], - "translation": [ - 0.00001525879997643642, - 286.1807861328125, - -0.000022888199964654633 - ], - "rotation": [ - 0.25593167543411257, - -0.3620148301124573, - 0.3219532072544098, - -0.8365347385406494 - ], - "scale": [ - 0.9999999403953552, - 1.0000001192092896, - 0.9999999403953552 - ] - }, - { - "translation": [ - -0.00006103519990574569, - 166.968994140625, - 0.000003814699994109105 - ], - "rotation": [ - 0.7009877562522888, - 0.7009937167167664, - -0.09279301762580872, - -0.09280823916196825 - ], - "scale": [ - 0.9999998807907105, - 1.0, - 1.0 - ] - }, - { - "children": [ - 19 - ], - "translation": [ - 399.1947937011719, - -0.3195419013500214, - -0.0030490760691463949 - ], - "rotation": [ - -0.004396272823214531, - -0.0025365734472870828, - -0.05076199769973755, - -0.9986978769302368 - ], - "scale": [ - 0.9999999403953552, - 1.0, - 1.0000001192092896 - ] - }, - { - "children": [ - 32, - 26, - 20 - ], - "translation": [ - 402.5516052246094, - -0.10438539832830428, - -0.002846478950232268 - ], - "rotation": [ - -0.000004574490048980806, - -0.000010040300367109012, - 0.35299694538116457, - -0.9356244802474976 - ] - }, - { - "children": [ - 21 - ], - "translation": [ - 0.00396728515625, - 0.14590449631214146, - -43.16883850097656 - ], - "rotation": [ - 0.629516065120697, - 0.3285962641239166, - -0.1958152800798416, - -0.6763061881065369 - ], - "scale": [ - 0.999999701976776, - 1.0000003576278689, - 0.9999999403953552 - ] - }, - { - "children": [ - 22 - ], - "translation": [ - -0.00030517601408064365, - 175.07150268554688, - 0.00007629390165675431 - ], - "rotation": [ - -0.5734227895736694, - 0.18226787447929386, - -0.23226681351661686, - -0.7642098665237427 - ], - "scale": [ - 1.0000001192092896, - 1.0000003576278689, - 0.999999701976776 - ] - }, - { - "children": [ - 23 - ], - "translation": [ - 0.0, - 370.0174865722656, - 0.0 - ], - "rotation": [ - -0.27098795771598818, - -0.08019046485424042, - 0.25969398021698, - -0.923414409160614 - ], - "scale": [ - 1.0, - 1.0000001192092896, - 1.0000001192092896 - ] - }, - { - "children": [ - 24 - ], - "translation": [ - 0.00006103519990574569, - 370.0173034667969, - 0.0 - ], - "rotation": [ - 0.3159535229206085, - 0.3460785150527954, - 0.36148232221603396, - -0.8060604929924011 - ], - "scale": [ - 0.9999998211860656, - 0.9999999403953552, - 1.0 - ] - }, - { - "children": [ - 25 - ], - "translation": [ - 0.00005340580173651688, - 186.69309997558598, - 0.00003051759995287284 - ], - "rotation": [ - -0.061906907707452777, - -0.6184580326080322, - 0.322037935256958, - -0.7141210436820984 - ], - "scale": [ - 1.0000001192092896, - 1.0000001192092896, - 0.9999999403953552 - ] - }, - { - "translation": [ - 0.0, - 167.76010131835938, - 0.0 - ], - "rotation": [ - -0.18707998096942905, - 0.18709905445575718, - 0.6818874478340149, - -0.6819269061088562 - ], - "scale": [ - 0.9999998807907105, - 0.9999998211860656, - 1.0 - ] - }, - { - "children": [ - 27 - ], - "translation": [ - 0.0004882809880655259, - 0.1427001953125, - 43.16946029663086 - ], - "rotation": [ - -0.6269798874855042, - -0.3371228575706482, - -0.20376519858837129, - -0.6721045970916748 - ], - "scale": [ - 1.0000003576278689, - 0.9999996423721314, - 1.0000001192092896 - ] - }, - { - "children": [ - 28 - ], - "translation": [ - 0.0, - 175.07080078125, - -0.00006103519990574569 - ], - "rotation": [ - 0.5832023024559021, - -0.18192623555660249, - -0.20986200869083405, - -0.7633713483810425 - ], - "scale": [ - 0.9999997615814208, - 1.0, - 0.9999998807907105 - ] - }, - { - "children": [ - 29 - ], - "translation": [ - -0.00006103519990574569, - 370.0173034667969, - -0.00006103519990574569 - ], - "rotation": [ - 0.2709869146347046, - 0.0801902487874031, - 0.2596950829029083, - -0.923414409160614 - ], - "scale": [ - 1.0000001192092896, - 1.0000001192092896, - 1.0 - ] - }, - { - "children": [ - 30 - ], - "translation": [ - 0.00006103519990574569, - 370.01708984375, - 0.0 - ], - "rotation": [ - -0.31595009565353396, - -0.3460729122161865, - 0.36148548126220705, - -0.8060628175735474 - ], - "scale": [ - 0.9999998807907105, - 0.9999999403953552, - 0.9999998807907105 - ] - }, - { - "children": [ - 31 - ], - "translation": [ - -0.000022888199964654633, - 186.69400024414066, - 0.000007629389983776491 - ], - "rotation": [ - 0.0619109645485878, - 0.6184656620025635, - 0.322035700082779, - -0.7141150236129761 - ], - "scale": [ - 1.0, - 1.0000001192092896, - 1.0 - ] - }, - { - "translation": [ - 0.0, - 167.76199340820313, - -0.00006103519990574569 - ], - "rotation": [ - -0.18710123002529145, - -0.18708838522434236, - -0.6819261908531189, - -0.6818854212760925 - ], - "scale": [ - 1.0, - 0.9999999403953552, - 1.0 - ] - }, - { - "children": [ - 33 - ], - "translation": [ - 181.73240661621098, - -0.0008544920128770173, - 0.002595663070678711 - ], - "rotation": [ - 0.00926738977432251, - 0.002782774157822132, - 0.38848116993904116, - -0.9214058518409728 - ], - "scale": [ - 1.0, - 0.9999999403953552, - 1.0 - ] - }, - { - "translation": [ - -0.00003051759995287284, - 345.1398010253906, - 0.0 - ], - "rotation": [ - -0.000010299070709152148, - -0.000018406668459647336, - -0.7070866227149963, - -0.7071268558502197 - ], - "scale": [ - 1.0, - 0.9999998807907105, - 1.0 - ] - }, - { - "children": [ - 2 - ], - "matrix": [ - 0.02539999969303608, - 0.0, - 0.0, - 0.0, - 0.0, - 0.02539999969303608, - 0.0, - 0.0, - 0.0, - 0.0, - 0.02539999969303608, - 0.0, - 0.0, - 0.0, - 11.732219696044922, - 1.0 - ] + ], + "samplers": [ + { + "input": 99, + "interpolation": "LINEAR", + "output": 100 + }, + { + "input": 99, + "interpolation": "LINEAR", + "output": 101 + }, + { + "input": 99, + "interpolation": "LINEAR", + "output": 102 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 9, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 9, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 9, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 103, + "interpolation": "LINEAR", + "output": 104 + }, + { + "input": 103, + "interpolation": "LINEAR", + "output": 105 + }, + { + "input": 103, + "interpolation": "LINEAR", + "output": 106 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 10, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 10, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 10, + "path": "scale" + } + } + ], + "samplers": [ + { + "input": 107, + "interpolation": "LINEAR", + "output": 108 + }, + { + "input": 107, + "interpolation": "LINEAR", + "output": 109 + }, + { + "input": 107, + "interpolation": "LINEAR", + "output": 110 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 11, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 11, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 11, + "path": "scale" + } } - ], - "meshes": [ - { - "primitives": [ - { - "attributes": { - "JOINTS_0": 1, - "NORMAL": 2, - "POSITION": 3, - "TEXCOORD_0": 4, - "WEIGHTS_0": 5 - }, - "indices": 0, - "mode": 4, - "material": 0, - "extensions": { - "KHR_draco_mesh_compression": { - "bufferView": 0, - "attributes": { - "WEIGHTS_0": 4, - "JOINTS_0": 3, - "TEXCOORD_0": 2, - "NORMAL": 0, - "POSITION": 1 - } - } - } - } - ], - "name": "monster" + ], + "samplers": [ + { + "input": 111, + "interpolation": "LINEAR", + "output": 112 + }, + { + "input": 111, + "interpolation": "LINEAR", + "output": 113 + }, + { + "input": 111, + "interpolation": "LINEAR", + "output": 114 } - ], - "animations": [ - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 2, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 2, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 2, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 6, - "interpolation": "LINEAR", - "output": 7 - }, - { - "input": 6, - "interpolation": "LINEAR", - "output": 8 - }, - { - "input": 6, - "interpolation": "LINEAR", - "output": 9 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 3, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 3, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 3, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 10, - "interpolation": "LINEAR", - "output": 11 - }, - { - "input": 10, - "interpolation": "LINEAR", - "output": 12 - }, - { - "input": 10, - "interpolation": "LINEAR", - "output": 13 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 18, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 18, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 18, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 14, - "interpolation": "LINEAR", - "output": 15 - }, - { - "input": 14, - "interpolation": "LINEAR", - "output": 16 - }, - { - "input": 14, - "interpolation": "LINEAR", - "output": 17 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 19, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 19, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 19, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 18, - "interpolation": "LINEAR", - "output": 19 - }, - { - "input": 18, - "interpolation": "LINEAR", - "output": 20 - }, - { - "input": 18, - "interpolation": "LINEAR", - "output": 21 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 32, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 32, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 32, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 22, - "interpolation": "LINEAR", - "output": 23 - }, - { - "input": 22, - "interpolation": "LINEAR", - "output": 24 - }, - { - "input": 22, - "interpolation": "LINEAR", - "output": 25 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 33, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 33, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 33, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 26, - "interpolation": "LINEAR", - "output": 27 - }, - { - "input": 26, - "interpolation": "LINEAR", - "output": 28 - }, - { - "input": 26, - "interpolation": "LINEAR", - "output": 29 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 26, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 26, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 26, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 30, - "interpolation": "LINEAR", - "output": 31 - }, - { - "input": 30, - "interpolation": "LINEAR", - "output": 32 - }, - { - "input": 30, - "interpolation": "LINEAR", - "output": 33 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 27, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 27, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 27, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 34, - "interpolation": "LINEAR", - "output": 35 - }, - { - "input": 34, - "interpolation": "LINEAR", - "output": 36 - }, - { - "input": 34, - "interpolation": "LINEAR", - "output": 37 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 28, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 28, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 28, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 38, - "interpolation": "LINEAR", - "output": 39 - }, - { - "input": 38, - "interpolation": "LINEAR", - "output": 40 - }, - { - "input": 38, - "interpolation": "LINEAR", - "output": 41 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 29, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 29, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 29, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 42, - "interpolation": "LINEAR", - "output": 43 - }, - { - "input": 42, - "interpolation": "LINEAR", - "output": 44 - }, - { - "input": 42, - "interpolation": "LINEAR", - "output": 45 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 30, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 30, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 30, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 46, - "interpolation": "LINEAR", - "output": 47 - }, - { - "input": 46, - "interpolation": "LINEAR", - "output": 48 - }, - { - "input": 46, - "interpolation": "LINEAR", - "output": 49 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 31, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 31, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 31, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 50, - "interpolation": "LINEAR", - "output": 51 - }, - { - "input": 50, - "interpolation": "LINEAR", - "output": 52 - }, - { - "input": 50, - "interpolation": "LINEAR", - "output": 53 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 20, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 20, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 20, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 54, - "interpolation": "LINEAR", - "output": 55 - }, - { - "input": 54, - "interpolation": "LINEAR", - "output": 56 - }, - { - "input": 54, - "interpolation": "LINEAR", - "output": 57 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 21, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 21, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 21, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 58, - "interpolation": "LINEAR", - "output": 59 - }, - { - "input": 58, - "interpolation": "LINEAR", - "output": 60 - }, - { - "input": 58, - "interpolation": "LINEAR", - "output": 61 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 22, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 22, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 22, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 62, - "interpolation": "LINEAR", - "output": 63 - }, - { - "input": 62, - "interpolation": "LINEAR", - "output": 64 - }, - { - "input": 62, - "interpolation": "LINEAR", - "output": 65 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 23, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 23, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 23, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 66, - "interpolation": "LINEAR", - "output": 67 - }, - { - "input": 66, - "interpolation": "LINEAR", - "output": 68 - }, - { - "input": 66, - "interpolation": "LINEAR", - "output": 69 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 24, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 24, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 24, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 70, - "interpolation": "LINEAR", - "output": 71 - }, - { - "input": 70, - "interpolation": "LINEAR", - "output": 72 - }, - { - "input": 70, - "interpolation": "LINEAR", - "output": 73 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 25, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 25, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 25, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 74, - "interpolation": "LINEAR", - "output": 75 - }, - { - "input": 74, - "interpolation": "LINEAR", - "output": 76 - }, - { - "input": 74, - "interpolation": "LINEAR", - "output": 77 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 13, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 13, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 13, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 78, - "interpolation": "LINEAR", - "output": 79 - }, - { - "input": 78, - "interpolation": "LINEAR", - "output": 80 - }, - { - "input": 78, - "interpolation": "LINEAR", - "output": 81 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 14, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 14, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 14, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 82, - "interpolation": "LINEAR", - "output": 83 - }, - { - "input": 82, - "interpolation": "LINEAR", - "output": 84 - }, - { - "input": 82, - "interpolation": "LINEAR", - "output": 85 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 15, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 15, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 15, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 86, - "interpolation": "LINEAR", - "output": 87 - }, - { - "input": 86, - "interpolation": "LINEAR", - "output": 88 - }, - { - "input": 86, - "interpolation": "LINEAR", - "output": 89 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 16, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 16, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 16, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 90, - "interpolation": "LINEAR", - "output": 91 - }, - { - "input": 90, - "interpolation": "LINEAR", - "output": 92 - }, - { - "input": 90, - "interpolation": "LINEAR", - "output": 93 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 17, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 17, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 17, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 94, - "interpolation": "LINEAR", - "output": 95 - }, - { - "input": 94, - "interpolation": "LINEAR", - "output": 96 - }, - { - "input": 94, - "interpolation": "LINEAR", - "output": 97 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 8, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 8, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 8, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 98, - "interpolation": "LINEAR", - "output": 99 - }, - { - "input": 98, - "interpolation": "LINEAR", - "output": 100 - }, - { - "input": 98, - "interpolation": "LINEAR", - "output": 101 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 9, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 9, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 9, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 102, - "interpolation": "LINEAR", - "output": 103 - }, - { - "input": 102, - "interpolation": "LINEAR", - "output": 104 - }, - { - "input": 102, - "interpolation": "LINEAR", - "output": 105 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 10, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 10, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 10, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 106, - "interpolation": "LINEAR", - "output": 107 - }, - { - "input": 106, - "interpolation": "LINEAR", - "output": 108 - }, - { - "input": 106, - "interpolation": "LINEAR", - "output": 109 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 11, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 11, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 11, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 110, - "interpolation": "LINEAR", - "output": 111 - }, - { - "input": 110, - "interpolation": "LINEAR", - "output": 112 - }, - { - "input": 110, - "interpolation": "LINEAR", - "output": 113 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 12, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 12, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 12, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 114, - "interpolation": "LINEAR", - "output": 115 - }, - { - "input": 114, - "interpolation": "LINEAR", - "output": 116 - }, - { - "input": 114, - "interpolation": "LINEAR", - "output": 117 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 4, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 4, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 4, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 118, - "interpolation": "LINEAR", - "output": 119 - }, - { - "input": 118, - "interpolation": "LINEAR", - "output": 120 - }, - { - "input": 118, - "interpolation": "LINEAR", - "output": 121 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 5, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 5, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 5, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 122, - "interpolation": "LINEAR", - "output": 123 - }, - { - "input": 122, - "interpolation": "LINEAR", - "output": 124 - }, - { - "input": 122, - "interpolation": "LINEAR", - "output": 125 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 6, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 6, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 6, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 126, - "interpolation": "LINEAR", - "output": 127 - }, - { - "input": 126, - "interpolation": "LINEAR", - "output": 128 - }, - { - "input": 126, - "interpolation": "LINEAR", - "output": 129 - } - ] - }, - { - "channels": [ - { - "sampler": 0, - "target": { - "node": 7, - "path": "translation" - } - }, - { - "sampler": 1, - "target": { - "node": 7, - "path": "rotation" - } - }, - { - "sampler": 2, - "target": { - "node": 7, - "path": "scale" - } - } - ], - "samplers": [ - { - "input": 130, - "interpolation": "LINEAR", - "output": 131 - }, - { - "input": 130, - "interpolation": "LINEAR", - "output": 132 - }, - { - "input": 130, - "interpolation": "LINEAR", - "output": 133 - } - ] + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 12, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 12, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 12, + "path": "scale" + } } - ], - "skins": [ - { - "inverseBindMatrices": 134, - "skeleton": 2, - "joints": [ - 2, - 3, - 18, - 19, - 32, - 33, - 26, - 27, - 28, - 29, - 30, - 31, - 20, - 21, - 22, - 23, - 24, - 25, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 4, - 5, - 6, - 7 - ], - "name": "Armature" + ], + "samplers": [ + { + "input": 115, + "interpolation": "LINEAR", + "output": 116 + }, + { + "input": 115, + "interpolation": "LINEAR", + "output": 117 + }, + { + "input": 115, + "interpolation": "LINEAR", + "output": 118 } - ], - "accessors": [ - { - "componentType": 5123, - "count": 2652, - "max": [ - 779 - ], - "min": [ - 0 - ], - "type": "SCALAR" - }, - { - "componentType": 5123, - "count": 780, - "max": [ - 30, - 30, - 29, - 24 - ], - "min": [ - 0, - 0, - 0, - 0 - ], - "type": "VEC4" - }, - { - "componentType": 5126, - "count": 780, - "max": [ - 0.9988760948181152, - 0.9998818039894104, - 0.9998157024383544 - ], - "min": [ - -0.9988760948181152, - -0.9980313777923584, - -0.9998273253440856 - ], - "type": "VEC3" - }, - { - "componentType": 5126, - "count": 780, - "max": [ - 7.313104152679443, - 25.41493034362793, - 33.43614959716797 - ], - "min": [ - -15.45071029663086, - -33.22121047973633, - -1.280419945716858 - ], - "type": "VEC3" - }, - { - "componentType": 5126, - "count": 780, - "max": [ - 1.0096100568771365, - 0.9916410446166992 - ], - "min": [ - 0.005085945129394531, - -0.07434999942779541 - ], - "type": "VEC2" - }, - { - "componentType": 5126, - "count": 780, - "max": [ - 1.0, - 0.9999979734420776, - 0.9997379779815674, - 0.9927020072937012 - ], - "min": [ - 0.0000019999999949504856, - 0.0, - 0.0, - 0.0 - ], - "type": "VEC4" - }, - { - "bufferView": 1, - "byteOffset": 0, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 0, - "componentType": 5126, - "count": 101, - "max": [ - 688.0629272460938, - 119.62960052490236, - 436.8377075195313 - ], - "min": [ - 688.0629272460938, - 119.62960052490236, - 436.8377075195313 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 0, - "componentType": 5126, - "count": 101, - "max": [ - 0.38738954067230227, - 0.5915361642837524, - 0.5915565490722656, - -0.3873957097530365 - ], - "min": [ - 0.38738954067230227, - 0.5915361642837524, - 0.5915565490722656, - -0.3873957097530365 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 1212, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000003576278689, - 1.0000003576278689, - 1.0 - ], - "min": [ - 1.0000003576278689, - 1.0000003576278689, - 1.0 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 404, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 2424, - "componentType": 5126, - "count": 101, - "max": [ - -0.00003051759995287284, - 142.05380249023438, - 0.00001525879997643642 - ], - "min": [ - -0.00003051759995287284, - 142.05380249023438, - 0.00001525879997643642 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 1616, - "componentType": 5126, - "count": 101, - "max": [ - 0.07529418170452118, - 0.08668317645788193, - 0.932952642440796, - 0.4080679714679718 - ], - "min": [ - -0.05637124180793762, - -0.08988404273986817, - 0.9125778675079346, - 0.3448300063610077 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 3636, - "componentType": 5126, - "count": 101, - "max": [ - 1.000001311302185, - 1.0000009536743165, - 1.0000007152557374 - ], - "min": [ - 0.9999995827674866, - 0.9999996423721314, - 0.999998927116394 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 808, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 4848, - "componentType": 5126, - "count": 101, - "max": [ - 399.22900390625, - -0.3109740912914276, - 0.033753398805856708 - ], - "min": [ - 399.1907958984375, - -0.3193970024585724, - -0.04251528158783913 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 3232, - "componentType": 5126, - "count": 101, - "max": [ - 0.04481140524148941, - 0.09621309489011765, - -0.045223530381917956, - -0.9873183369636536 - ], - "min": [ - -0.053839169442653659, - -0.10072088241577149, - -0.1102677807211876, - -0.99887216091156 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 6060, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000004768371585, - 1.0000009536743165, - 1.000001072883606 - ], - "min": [ - 0.9999988675117492, - 0.9999989867210388, - 0.999999225139618 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 1212, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 7272, - "componentType": 5126, - "count": 101, - "max": [ - 402.6142883300781, - -0.1111449971795082, - 0.005645751953125 - ], - "min": [ - 402.5600891113281, - -0.13861079514026646, - -0.010498049668967724 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 4848, - "componentType": 5126, - "count": 101, - "max": [ - 0.02916480414569378, - 0.13094335794448853, - 0.3312646150588989, - -0.9394612908363342 - ], - "min": [ - -0.029069917276501657, - -0.1322847604751587, - 0.12861666083335877, - -0.9855769276618958 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 8484, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000014305114749, - 1.0000007152557374, - 1.0000009536743165 - ], - "min": [ - 0.9999995231628418, - 0.999998927116394, - 0.9999986886978148 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 1616, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 9696, - "componentType": 5126, - "count": 101, - "max": [ - 181.7324981689453, - 0.0016784670297056437, - 0.0021362300030887129 - ], - "min": [ - 181.7321929931641, - 0.0012207030085846782, - 0.0019226069562137128 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 6464, - "componentType": 5126, - "count": 101, - "max": [ - 0.11948085576295853, - 0.2178236693143845, - 0.75827956199646, - -0.6160333156585693 - ], - "min": [ - -0.22238001227378849, - -0.1477964818477631, - 0.6617863774299622, - -0.7142592668533325 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 10908, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000007152557374, - 1.0000011920928956, - 1.0000008344650269 - ], - "min": [ - 0.9999991059303284, - 0.9999993443489076, - 0.9999991655349731 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 2020, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 12120, - "componentType": 5126, - "count": 101, - "max": [ - -0.00003051759995287284, - 345.13958740234377, - 0.00006103519990574569 - ], - "min": [ - -0.00003051759995287284, - 345.13958740234377, - 0.00006103519990574569 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 8080, - "componentType": 5126, - "count": 101, - "max": [ - -0.000013882177881896496, - -0.00001729086579871364, - -0.7070866823196411, - -0.707126796245575 - ], - "min": [ - -0.000013882177881896496, - -0.00001729086579871364, - -0.7070866823196411, - -0.707126796245575 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 13332, - "componentType": 5126, - "count": 101, - "max": [ - 0.9999998807907105, - 1.0, - 1.0 - ], - "min": [ - 0.9999998807907105, - 1.0, - 1.0 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 2424, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 14544, - "componentType": 5126, - "count": 101, - "max": [ - 11.093509674072266, - 2.570708990097046, - 43.12179946899414 - ], - "min": [ - -11.20617961883545, - -2.25006103515625, - 41.65719985961914 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 9696, - "componentType": 5126, - "count": 101, - "max": [ - -0.4268832206726074, - 0.019551457837224008, - -0.004996071103960276, - -0.6169269680976868 - ], - "min": [ - -0.7079461216926575, - -0.4286864697933197, - -0.49198582768440249, - -0.8074727654457092 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 15756, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000008344650269, - 1.0000017881393433, - 1.0000014305114749 - ], - "min": [ - 0.9999987483024596, - 0.9999995231628418, - 1.0000001192092896 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 2828, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 16968, - "componentType": 5126, - "count": 101, - "max": [ - -0.0001220699996338226, - 175.07080078125, - -0.00006103519990574569 - ], - "min": [ - -0.0001220699996338226, - 175.07080078125, - -0.00006103519990574569 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 11312, - "componentType": 5126, - "count": 101, - "max": [ - 0.5104442834854126, - 0.7555050253868103, - 0.02008049003779888, - -0.6120374202728272 - ], - "min": [ - 0.19047075510025025, - 0.03135303780436516, - -0.38879379630088808, - -0.9229499697685242 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 18180, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000011920928956, - 1.0000003576278689, - 1.000001311302185 - ], - "min": [ - 0.9999988079071044, - 0.9999983906745912, - 0.9999996423721314 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 3232, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 19392, - "componentType": 5126, - "count": 101, - "max": [ - 0.0, - 370.0173034667969, - -0.00001525879997643642 - ], - "min": [ - 0.0, - 370.0173034667969, - -0.00001525879997643642 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 12928, - "componentType": 5126, - "count": 101, - "max": [ - 0.6011126041412354, - 0.07422994822263718, - 0.5760638117790222, - -0.5518321394920349 - ], - "min": [ - 0.3708510994911194, - 0.04792150110006333, - 0.35539764165878298, - -0.8547816872596741 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 20604, - "componentType": 5126, - "count": 101, - "max": [ - 0.9999999403953552, - 1.0000016689300538, - 1.0000005960464478 - ], - "min": [ - 0.9999990463256836, - 0.9999995827674866, - 0.9999995231628418 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 3636, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 21816, - "componentType": 5126, - "count": 101, - "max": [ - -0.00006103519990574569, - 370.0169982910156, - 0.000003814699994109105 - ], - "min": [ - -0.00006103519990574569, - 370.0169982910156, - 0.000003814699994109105 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 14544, - "componentType": 5126, - "count": 101, - "max": [ - 0.12159590423107149, - -0.592817485332489, - 0.08611587435007096, - -0.6480545401573181 - ], - "min": [ - -0.00192063394933939, - -0.6926255822181702, - -0.40358710289001467, - -0.7833981513977051 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 23028, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000011920928956, - 0.9999997615814208, - 1.0000003576278689 - ], - "min": [ - 0.9999992847442628, - 0.9999983906745912, - 0.9999982714653016 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 4040, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 24240, - "componentType": 5126, - "count": 101, - "max": [ - 0.00003051759995287284, - 186.6938018798828, - 0.00006103519990574569 - ], - "min": [ - 0.00003051759995287284, - 186.6938018798828, - 0.00006103519990574569 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 16160, - "componentType": 5126, - "count": 101, - "max": [ - 0.1426013708114624, - 0.6280872225761414, - 0.4596095085144043, - -0.6589219570159912 - ], - "min": [ - 0.03574331104755402, - 0.5803614258766174, - -0.2317095398902893, - -0.7778217792510986 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 25452, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000030994415284, - 1.0000008344650269, - 1.0000015497207642 - ], - "min": [ - 0.9999990463256836, - 0.999998152256012, - 0.9999975562095642 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 4444, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 26664, - "componentType": 5126, - "count": 101, - "max": [ - 0.0, - 167.76199340820313, - 0.0 - ], - "min": [ - 0.0, - 167.76199340820313, - 0.0 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 17776, - "componentType": 5126, - "count": 101, - "max": [ - -0.1871013194322586, - -0.18708844482898713, - -0.6819262504577637, - -0.6818854212760925 - ], - "min": [ - -0.1871013194322586, - -0.18708844482898713, - -0.6819262504577637, - -0.6818854212760925 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 27876, - "componentType": 5126, - "count": 101, - "max": [ - 0.9999998211860656, - 1.0000001192092896, - 1.0000001192092896 - ], - "min": [ - 0.9999998211860656, - 1.0000001192092896, - 1.0000001192092896 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 4848, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 29088, - "componentType": 5126, - "count": 101, - "max": [ - 11.20654010772705, - 2.539275884628296, - -41.65724182128906 - ], - "min": [ - -11.0931396484375, - -2.281677007675171, - -43.12186050415039 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 19392, - "componentType": 5126, - "count": 101, - "max": [ - 0.708706259727478, - 0.41781315207481387, - 0.0004008882970083505, - -0.6171950101852417 - ], - "min": [ - 0.4269197881221771, - -0.01864606700837612, - -0.4820735454559326, - -0.8132827877998352 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 30300, - "componentType": 5126, - "count": 101, - "max": [ - 1.000001072883606, - 1.0000005960464478, - 1.0000015497207642 - ], - "min": [ - 0.999998927116394, - 0.9999989867210388, - 0.9999997615814208 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 5252, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 31512, - "componentType": 5126, - "count": 101, - "max": [ - -0.0001220699996338226, - 175.07159423828126, - 0.0 - ], - "min": [ - -0.0001220699996338226, - 175.07159423828126, - 0.0 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 21008, - "componentType": 5126, - "count": 101, - "max": [ - -0.1727268248796463, - -0.026490267366170884, - -0.014631116762757302, - -0.6249508857727051 - ], - "min": [ - -0.5201117992401123, - -0.7482331395149231, - -0.36269164085388186, - -0.9203588366508484 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 32724, - "componentType": 5126, - "count": 101, - "max": [ - 1.0, - 1.000001311302185, - 1.0000009536743165 - ], - "min": [ - 0.9999985098838806, - 0.9999992847442628, - 0.999998927116394 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 5656, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 33936, - "componentType": 5126, - "count": 101, - "max": [ - 0.0, - 370.0174865722656, - -0.00006103519990574569 - ], - "min": [ - 0.0, - 370.0174865722656, - -0.00006103519990574569 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 22624, - "componentType": 5126, - "count": 101, - "max": [ - -0.37085387110710146, - -0.045981407165527347, - 0.586089015007019, - -0.5294864177703857 - ], - "min": [ - -0.6115797162055969, - -0.07423046976327896, - 0.3553973138332367, - -0.8547807335853577 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 35148, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000003576278689, - 1.0000014305114749, - 1.0000005960464478 - ], - "min": [ - 0.9999993443489076, - 0.999999701976776, - 0.999999463558197 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 6060, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 36360, - "componentType": 5126, - "count": 101, - "max": [ - 0.000022888199964654633, - 370.0172119140625, - 0.00001525879997643642 - ], - "min": [ - 0.000022888199964654633, - 370.0172119140625, - 0.00001525879997643642 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 24240, - "componentType": 5126, - "count": 101, - "max": [ - 0.031680915504693988, - 0.7147775292396545, - 0.0212766844779253, - -0.649734377861023 - ], - "min": [ - -0.10804452747106552, - 0.5687218904495239, - -0.41146859526634219, - -0.7937191724777222 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 37572, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000008344650269, - 0.9999993443489076, - 1.0000011920928956 - ], - "min": [ - 0.999998927116394, - 0.9999974966049194, - 0.9999998211860656 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 6464, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 38784, - "componentType": 5126, - "count": 101, - "max": [ - -0.00003051759995287284, - 186.69309997558598, - 0.00006103519990574569 - ], - "min": [ - -0.00003051759995287284, - 186.69309997558598, - 0.00006103519990574569 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 25856, - "componentType": 5126, - "count": 101, - "max": [ - -0.03588018566370011, - -0.5803508758544922, - 0.4588881731033325, - -0.6592705845832825 - ], - "min": [ - -0.1426122784614563, - -0.6280779242515564, - -0.23170490562915806, - -0.777829110622406 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 39996, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000035762786866, - 1.000001311302185, - 1.0000022649765017 - ], - "min": [ - 0.9999989867210388, - 0.9999991655349731, - 0.9999974966049194 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 6868, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 41208, - "componentType": 5126, - "count": 101, - "max": [ - 0.0001220699996338226, - 167.7602996826172, - 0.0 - ], - "min": [ - 0.0001220699996338226, - 167.7602996826172, - 0.0 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 27472, - "componentType": 5126, - "count": 101, - "max": [ - -0.187080055475235, - 0.1870990693569183, - 0.681887686252594, - -0.6819267868995667 - ], - "min": [ - -0.187080055475235, - 0.1870990693569183, - 0.681887686252594, - -0.6819267868995667 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 42420, - "componentType": 5126, - "count": 101, - "max": [ - 1.0, - 0.9999998211860656, - 0.9999998211860656 - ], - "min": [ - 1.0, - 0.9999998211860656, - 0.9999998211860656 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 7272, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 43632, - "componentType": 5126, - "count": 101, - "max": [ - -64.18634033203125, - 123.89099884033205, - -121.35540008544922 - ], - "min": [ - -122.68409729003906, - 86.45635986328125, - -181.9196929931641 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 29088, - "componentType": 5126, - "count": 101, - "max": [ - 0.5137400031089783, - 0.5910477638244629, - 0.487165242433548, - -0.5562912821769714 - ], - "min": [ - 0.23582802712917329, - 0.4349341094493866, - 0.06352268159389496, - -0.7825927138328552 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 44844, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000014305114749, - 1.0000009536743165, - 1.0000015497207642 - ], - "min": [ - 0.9999995827674866, - 0.9999990463256836, - 0.9999997615814208 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 7676, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 46056, - "componentType": 5126, - "count": 101, - "max": [ - -0.00001525879997643642, - 547.8192138671875, - 0.0 - ], - "min": [ - -0.00001525879997643642, - 547.8192138671875, - 0.0 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 30704, - "componentType": 5126, - "count": 101, - "max": [ - 0.7711299061775208, - -0.20974168181419373, - -0.2102062702178955, - 0.7666990160942078 - ], - "min": [ - 0.5196718573570252, - -0.3129318058490753, - -0.31192100048065188, - 0.5138788223266602 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 47268, - "componentType": 5126, - "count": 101, - "max": [ - 1.0, - 1.0000008344650269, - 1.0000003576278689 - ], - "min": [ - 0.9999988079071044, - 0.9999983906745912, - 0.9999988079071044 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 8080, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 48480, - "componentType": 5126, - "count": 101, - "max": [ - 0.00003051759995287284, - 532.7470703125, - 0.00003051759995287284 - ], - "min": [ - 0.00003051759995287284, - 532.7470703125, - 0.00003051759995287284 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 32320, - "componentType": 5126, - "count": 101, - "max": [ - 0.7953221201896668, - -0.3406173884868622, - 0.02482849918305874, - -0.4618827700614929 - ], - "min": [ - 0.4422449469566345, - -0.6381375789642334, - -0.06888411939144135, - -0.7050687074661255 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 49692, - "componentType": 5126, - "count": 101, - "max": [ - 1.000000238418579, - 1.0000009536743165, - 1.000000238418579 - ], - "min": [ - 0.9999983906745912, - 0.999999225139618, - 0.999998152256012 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 8484, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 50904, - "componentType": 5126, - "count": 101, - "max": [ - -0.00001525879997643642, - 286.180908203125, - -0.00001525879997643642 - ], - "min": [ - -0.00001525879997643642, - 286.180908203125, - -0.00001525879997643642 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 33936, - "componentType": 5126, - "count": 101, - "max": [ - 0.3434250056743622, - -0.36089563369750979, - 0.4812218248844147, - -0.702274739742279 - ], - "min": [ - -0.055049605667591098, - -0.4634150564670563, - 0.027654040604829789, - -0.9122520089149476 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 52116, - "componentType": 5126, - "count": 101, - "max": [ - 1.000001072883606, - 1.0000007152557374, - 1.0000005960464478 - ], - "min": [ - 0.9999991655349731, - 0.9999993443489076, - 0.9999993443489076 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 8888, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 53328, - "componentType": 5126, - "count": 101, - "max": [ - 0.0, - 166.96910095214845, - 0.00003051759995287284 - ], - "min": [ - 0.0, - 166.96910095214845, - 0.00003051759995287284 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 35552, - "componentType": 5126, - "count": 101, - "max": [ - 0.7009878754615784, - 0.7009936571121216, - -0.0927930474281311, - -0.09280822426080704 - ], - "min": [ - 0.7009878754615784, - 0.7009936571121216, - -0.0927930474281311, - -0.09280822426080704 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 54540, - "componentType": 5126, - "count": 101, - "max": [ - 1.0, - 1.0, - 0.9999997615814208 - ], - "min": [ - 1.0, - 1.0, - 0.9999997615814208 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 9292, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 55752, - "componentType": 5126, - "count": 101, - "max": [ - -57.822750091552737, - 125.41190338134766, - 183.63040161132813 - ], - "min": [ - -117.2886962890625, - 87.447509765625, - 124.98169708251952 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 37168, - "componentType": 5126, - "count": 101, - "max": [ - -0.226774200797081, - -0.4451811611652374, - 0.49656349420547488, - -0.551270604133606 - ], - "min": [ - -0.5029988884925842, - -0.6104490756988525, - 0.05997595936059952, - -0.7728594541549683 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 56964, - "componentType": 5126, - "count": 101, - "max": [ - 1.000001072883606, - 1.0000029802322388, - 1.0000004768371585 - ], - "min": [ - 0.999997854232788, - 1.0000003576278689, - 0.9999984502792358 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 9696, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 58176, - "componentType": 5126, - "count": 101, - "max": [ - 0.00005722049900214188, - 547.8187866210938, - -0.00006103519990574569 - ], - "min": [ - 0.00005722049900214188, - 547.8187866210938, - -0.00006103519990574569 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 38784, - "componentType": 5126, - "count": 101, - "max": [ - 0.7720406651496887, - -0.2091859132051468, - 0.3122869431972504, - -0.5125147700309753 - ], - "min": [ - 0.5071884989738464, - -0.31631752848625185, - 0.2051556557416916, - -0.7749928832054138 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 59388, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000008344650269, - 1.0000015497207642, - 0.9999998211860656 - ], - "min": [ - 0.9999997615814208, - 0.9999995231628418, - 0.999998152256012 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 10100, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 60600, - "componentType": 5126, - "count": 101, - "max": [ - -0.00003051759995287284, - 532.7479248046875, - 0.00003051759995287284 - ], - "min": [ - -0.00003051759995287284, - 532.7479248046875, - 0.00003051759995287284 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 40400, - "componentType": 5126, - "count": 101, - "max": [ - -0.4422548413276673, - 0.6402692198753357, - 0.02487970888614655, - -0.443508505821228 - ], - "min": [ - -0.8058043718338013, - 0.33987849950790408, - -0.06919090449810028, - -0.7087214589118958 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 61812, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000015497207642, - 1.000002145767212, - 1.0000017881393433 - ], - "min": [ - 0.9999986886978148, - 0.999999463558197, - 0.9999991059303284 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 10504, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 63024, - "componentType": 5126, - "count": 101, - "max": [ - -0.000045776399929309267, - 286.1813049316406, - 0.00003051759995287284 - ], - "min": [ - -0.000045776399929309267, - 286.1813049316406, - 0.00003051759995287284 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 42016, - "componentType": 5126, - "count": 101, - "max": [ - 0.05504757910966873, - 0.4637857675552368, - 0.4812243282794953, - -0.702268123626709 - ], - "min": [ - -0.34342628717422488, - 0.3424416780471802, - 0.027664778754115106, - -0.9120306372642516 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 64236, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000009536743165, - 1.0000009536743165, - 1.0000005960464478 - ], - "min": [ - 0.9999988079071044, - 0.9999990463256836, - 0.9999987483024596 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 10908, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 65448, - "componentType": 5126, - "count": 101, - "max": [ - 0.00006103519990574569, - 166.9678955078125, - -0.000007629389983776491 - ], - "min": [ - 0.00006103519990574569, - 166.9678955078125, - -0.000007629389983776491 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 43632, - "componentType": 5126, - "count": 101, - "max": [ - 0.7009931206703186, - -0.7009892463684082, - 0.09279564023017885, - -0.09279832988977432 - ], - "min": [ - 0.7009931206703186, - -0.7009892463684082, - 0.09279564023017885, - -0.09279832988977432 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 66660, - "componentType": 5126, - "count": 101, - "max": [ - 0.9999998211860656, - 0.9999998211860656, - 0.9999998807907105 - ], - "min": [ - 0.9999998211860656, - 0.9999998211860656, - 0.9999998807907105 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 11312, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 67872, - "componentType": 5126, - "count": 101, - "max": [ - -216.10679626464845, - 76.14642333984375, - 53.84222030639649 - ], - "min": [ - -229.81809997558598, - 48.92041015625, - -46.19350051879883 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 45248, - "componentType": 5126, - "count": 101, - "max": [ - 0.1075008511543274, - 0.04972844943404198, - -0.5993947386741638, - -0.7506681680679321 - ], - "min": [ - -0.1541447639465332, - -0.08161687850952149, - -0.6573381423950195, - -0.7955794930458069 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 69084, - "componentType": 5126, - "count": 101, - "max": [ - 1.0000011920928956, - 1.0000014305114749, - 1.0000009536743165 - ], - "min": [ - 0.9999996423721314, - 0.9999993443489076, - 0.9999991059303284 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 11716, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 70296, - "componentType": 5126, - "count": 101, - "max": [ - 0.00006103519990574569, - 275.1336975097656, - -0.00001525879997643642 - ], - "min": [ - 0.00006103519990574569, - 275.1336975097656, - -0.00001525879997643642 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 46864, - "componentType": 5126, - "count": 101, - "max": [ - 0.03935514762997627, - 0.004996879026293755, - -0.12579287588596345, - -0.991262674331665 - ], - "min": [ - -0.02954175136983395, - -0.0037506259977817537, - -0.12589138746261598, - -0.9920437335968018 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 71508, - "componentType": 5126, - "count": 101, - "max": [ - 0.999998927116394, - 1.0, - 1.0000004768371585 - ], - "min": [ - 0.9999986290931702, - 0.9999982118606569, - 0.999998927116394 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 12120, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 72720, - "componentType": 5126, - "count": 101, - "max": [ - 0.0, - 339.0889892578125, - -0.000007629389983776491 - ], - "min": [ - 0.0, - 339.0889892578125, - -0.000007629389983776491 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 48480, - "componentType": 5126, - "count": 101, - "max": [ - 0.000001511155801381392, - 3.055855870570668e-7, - -0.11349041759967804, - -0.9935391545295716 - ], - "min": [ - 0.000001511155801381392, - 3.055855870570668e-7, - -0.11349041759967804, - -0.9935391545295716 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 73932, - "componentType": 5126, - "count": 101, - "max": [ - 1.000000238418579, - 1.0000003576278689, - 1.0 - ], - "min": [ - 1.000000238418579, - 1.0000003576278689, - 1.0 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 12524, - "componentType": 5126, - "count": 101, - "max": [ - 3.333329916000366 - ], - "min": [ - 0.0 - ], - "type": "SCALAR" - }, - { - "bufferView": 2, - "byteOffset": 75144, - "componentType": 5126, - "count": 101, - "max": [ - 0.0006713870097883046, - 374.18951416015627, - 0.00009918209980241954 - ], - "min": [ - 0.0006713870097883046, - 374.18951416015627, - 0.00009918209980241954 - ], - "type": "VEC3" - }, - { - "bufferView": 3, - "byteOffset": 50096, - "componentType": 5126, - "count": 101, - "max": [ - 0.0003971835249103606, - 0.9999987483024596, - 8.442460170954291e-7, - -1.539886227419629e-7 - ], - "min": [ - 0.0003971835249103606, - 0.9999987483024596, - 8.442460170954291e-7, - -1.539886227419629e-7 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 76356, - "componentType": 5126, - "count": 101, - "max": [ - 0.9999920725822448, - 0.9999988079071044, - 0.9999998807907105 - ], - "min": [ - 0.9999920725822448, - 0.9999988079071044, - 0.9999998807907105 - ], - "type": "VEC3" - }, - { - "bufferView": 4, - "byteOffset": 0, - "componentType": 5126, - "count": 32, - "max": [ - 35.94837188720703, - 38.693748474121097, - 39.37007141113281, - 0.0, - 38.920310974121097, - 39.36032104492188, - 30.0275993347168, - 0.0, - 39.36032104492188, - 38.83974075317383, - 38.96176910400391, - 0.0, - 1034.1197509765626, - 867.171142578125, - 611.7999267578125, - 1.0 - ], - "min": [ - -35.94831848144531, - -38.47134017944336, - -39.37007141113281, - 0.0, - -38.92031860351563, - -38.919979095458987, - -30.0275993347168, - 0.0, - -39.35961151123047, - -38.88496017456055, - -38.82202911376953, - 0.0, - -1323.6492919921876, - -1186.5914306640626, - -632.5089111328125, - 1.0 - ], - "type": "MAT4" + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 4, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 4, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 4, + "path": "scale" + } } - ], - "materials": [ - { - "pbrMetallicRoughness": { - "baseColorTexture": { - "index": 0 - }, - "metallicFactor": 0.0 - }, - "emissiveFactor": [ - 0.0, - 0.0, - 0.0 - ], - "name": "monster-effect" + ], + "samplers": [ + { + "input": 119, + "interpolation": "LINEAR", + "output": 120 + }, + { + "input": 119, + "interpolation": "LINEAR", + "output": 121 + }, + { + "input": 119, + "interpolation": "LINEAR", + "output": 122 } - ], - "textures": [ + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 5, + "path": "translation" + } + }, { - "sampler": 0, - "source": 0 + "sampler": 1, + "target": { + "node": 5, + "path": "rotation" + } + }, + { + "sampler": 2, + "target": { + "node": 5, + "path": "scale" + } } - ], - "images": [ + ], + "samplers": [ + { + "input": 123, + "interpolation": "LINEAR", + "output": 124 + }, { - "uri": "Monster.jpg" + "input": 123, + "interpolation": "LINEAR", + "output": 125 + }, + { + "input": 123, + "interpolation": "LINEAR", + "output": 126 } - ], - "samplers": [ + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 6, + "path": "translation" + } + }, + { + "sampler": 1, + "target": { + "node": 6, + "path": "rotation" + } + }, { - "magFilter": 9729, - "minFilter": 9986, - "wrapS": 10497, - "wrapT": 10497 + "sampler": 2, + "target": { + "node": 6, + "path": "scale" + } } - ], - "bufferViews": [ + ], + "samplers": [ { - "buffer": 0, - "byteOffset": 144256, - "byteLength": 6664 + "input": 127, + "interpolation": "LINEAR", + "output": 128 }, { - "buffer": 0, - "byteOffset": 131328, - "byteLength": 12928 + "input": 127, + "interpolation": "LINEAR", + "output": 129 }, { - "buffer": 0, - "byteOffset": 53760, - "byteLength": 77568 + "input": 127, + "interpolation": "LINEAR", + "output": 130 + } + ] + }, + { + "channels": [ + { + "sampler": 0, + "target": { + "node": 7, + "path": "translation" + } }, { - "buffer": 0, - "byteOffset": 2048, - "byteLength": 51712 + "sampler": 1, + "target": { + "node": 7, + "path": "rotation" + } }, { - "buffer": 0, - "byteOffset": 0, - "byteLength": 2048 + "sampler": 2, + "target": { + "node": 7, + "path": "scale" + } } - ], - "buffers": [ + ], + "samplers": [ + { + "input": 131, + "interpolation": "LINEAR", + "output": 132 + }, { - "byteLength": 150920, - "uri": "Monster0.bin" + "input": 131, + "interpolation": "LINEAR", + "output": 133 + }, + { + "input": 131, + "interpolation": "LINEAR", + "output": 134 } - ], - "extensionsRequired": [ - "KHR_draco_mesh_compression" - ], - "extensionsUsed": [ - "KHR_draco_mesh_compression" + ] + } + ], + "skins": [ + { + "inverseBindMatrices": 6, + "skeleton": 2, + "joints": [ + 2, + 3, + 18, + 19, + 32, + 33, + 26, + 27, + 28, + 29, + 30, + 31, + 20, + 21, + 22, + 23, + 24, + 25, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 4, + 5, + 6, + 7 + ], + "name": "Armature" + } + ], + "accessors": [ + { + "bufferView": 0, + "byteOffset": 0, + "componentType": 5123, + "count": 2652, + "max": [ + 779 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 0, + "componentType": 5123, + "count": 780, + "max": [ + 30, + 30, + 29, + 24 + ], + "min": [ + 0, + 0, + 0, + 0 + ], + "type": "VEC4" + }, + { + "bufferView": 2, + "byteOffset": 0, + "componentType": 5126, + "count": 780, + "max": [ + 0.9988760948181152, + 0.9998818039894104, + 0.9998157024383544 + ], + "min": [ + -0.9988760948181152, + -0.9980314373970032, + -0.9998273253440856 + ], + "type": "VEC3" + }, + { + "bufferView": 2, + "byteOffset": 9360, + "componentType": 5126, + "count": 780, + "max": [ + 7.313104152679443, + 25.414928436279297, + 33.43614959716797 + ], + "min": [ + -15.450709342956545, + -33.22121047973633, + -1.280419945716858 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 6240, + "componentType": 5126, + "count": 780, + "max": [ + 1.009609937667847, + 0.9916410446166992 + ], + "min": [ + 0.005085944663733244, + -0.07434999942779541 + ], + "type": "VEC2" + }, + { + "bufferView": 3, + "byteOffset": 0, + "componentType": 5126, + "count": 780, + "max": [ + 1, + 0.9999979734420776, + 0.9997379779815674, + 0.9927020072937012 + ], + "min": [ + 0.0000019999999949504854, + 0, + 0, + 0 + ], + "type": "VEC4" + }, + { + "bufferView": 4, + "byteOffset": 0, + "componentType": 5126, + "count": 32, + "max": [ + 35.948368072509766, + 38.693748474121094, + 39.37006759643555, + 0, + 38.92030715942383, + 39.36031723022461, + 30.0275993347168, + 0, + 39.36031723022461, + 38.83974075317383, + 38.96176910400391, + 0, + 1034.1197509765625, + 867.171142578125, + 611.7998657226562, + 1 + ], + "min": [ + -35.94831848144531, + -38.47134017944336, + -39.37006759643555, + 0, + -38.920318603515625, + -38.919979095458984, + -30.0275993347168, + 0, + -39.3596076965332, + -38.88496017456055, + -38.82202911376953, + 0, + -1323.6492919921875, + -1186.5914306640625, + -632.5089111328125, + 1 + ], + "type": "MAT4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 688.0628662109375, + 119.62960052490236, + 436.8376770019531 + ], + "min": [ + 688.0628662109375, + 119.62960052490236, + 436.8376770019531 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.3873895406723023, + 0.5915361642837524, + 0.5915565490722656, + -0.3873957097530365 + ], + "min": [ + 0.3873895406723023, + 0.5915361642837524, + 0.5915565490722656, + -0.3873957097530365 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000003576278689, + 1.0000003576278689, + 1 + ], + "min": [ + 1.0000003576278689, + 1.0000003576278689, + 1 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.00003051759995287284, + 142.05380249023438, + 0.00001525879997643642 + ], + "min": [ + -0.00003051759995287284, + 142.05380249023438, + 0.00001525879997643642 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.07529418170452118, + 0.08668317645788193, + 0.932952642440796, + 0.4080679714679718 + ], + "min": [ + -0.05637124180793762, + -0.08988404273986816, + 0.9125778675079346, + 0.3448300063610077 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.000001311302185, + 1.000001072883606, + 1.0000008344650269 + ], + "min": [ + 0.9999995827674866, + 0.9999996423721313, + 0.999998927116394 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 399.22900390625, + -0.3109740912914276, + 0.033753398805856705 + ], + "min": [ + 399.1907958984375, + -0.3193970024585724, + -0.04251528158783913 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.04481140151619911, + 0.09621308743953703, + -0.045223526656627655, + -0.9873183369636536 + ], + "min": [ + -0.05383916571736336, + -0.10072088986635208, + -0.1102677807211876, + -0.99887216091156 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000004768371584, + 1.0000009536743164, + 1.000001072883606 + ], + "min": [ + 0.9999988675117492, + 0.9999990463256836, + 0.9999992847442628 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 402.6142883300781, + -0.1111449971795082, + 0.005645751953125 + ], + "min": [ + 402.5600891113281, + -0.13861079514026645, + -0.010498049668967724 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.02916480414569378, + 0.13094337284564972, + 0.3312646150588989, + -0.9394612908363342 + ], + "min": [ + -0.029069917276501656, + -0.1322847604751587, + 0.12861666083335876, + -0.9855769276618958 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000014305114748, + 1.0000007152557373, + 1.0000009536743164 + ], + "min": [ + 0.9999995231628418, + 0.999998927116394, + 0.9999986886978148 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 181.7324981689453, + 0.001678466913290322, + 0.0021362300030887127 + ], + "min": [ + 181.7321929931641, + 0.0012207030085846782, + 0.0019226069562137127 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.11948085576295853, + 0.21782369911670688, + 0.75827956199646, + -0.6160333156585693 + ], + "min": [ + -0.22238001227378848, + -0.14779649674892426, + 0.6617863774299622, + -0.7142592668533325 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000007152557373, + 1.0000011920928955, + 1.0000008344650269 + ], + "min": [ + 0.9999991059303284, + 0.9999993443489076, + 0.9999991655349731 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.00003051759995287284, + 345.13958740234375, + 0.00006103519990574569 + ], + "min": [ + -0.00003051759995287284, + 345.13958740234375, + 0.00006103519990574569 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.000013882177881896496, + -0.00001729086579871364, + -0.7070867419242859, + -0.707126796245575 + ], + "min": [ + -0.000013882177881896496, + -0.00001729086579871364, + -0.7070867419242859, + -0.707126796245575 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.9999999403953552, + 1, + 1 + ], + "min": [ + 0.9999999403953552, + 1, + 1 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 11.093509674072266, + 2.570708990097046, + 43.12179946899414 + ], + "min": [ + -11.20617961883545, + -2.25006103515625, + 41.65719985961914 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.4268832206726074, + 0.019551469013094906, + -0.004996071103960276, + -0.6169270277023315 + ], + "min": [ + -0.7079461216926575, + -0.4286864697933197, + -0.49198582768440247, + -0.8074727654457092 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000009536743164, + 1.0000016689300537, + 1.0000014305114748 + ], + "min": [ + 0.9999987483024596, + 0.9999995231628418, + 1.0000001192092896 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.0001220699996338226, + 175.07080078125, + -0.00006103519990574569 + ], + "min": [ + -0.0001220699996338226, + 175.07080078125, + -0.00006103519990574569 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.5104442834854126, + 0.7555050253868103, + 0.02008049003779888, + -0.6120374202728271 + ], + "min": [ + 0.19047075510025024, + 0.03135304525494576, + -0.3887938261032105, + -0.9229499697685242 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000011920928955, + 1.0000003576278689, + 1.000001311302185 + ], + "min": [ + 0.9999988675117492, + 0.9999983906745912, + 0.9999996423721313 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0, + 370.0173034667969, + -0.00001525879997643642 + ], + "min": [ + 0, + 370.0173034667969, + -0.00001525879997643642 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.6011126041412354, + 0.07422994077205658, + 0.5760638117790222, + -0.5518321394920349 + ], + "min": [ + 0.3708511292934418, + 0.04792150110006333, + 0.35539764165878296, + -0.8547816872596741 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.9999999403953552, + 1.0000016689300537, + 1.0000005960464478 + ], + "min": [ + 0.9999990463256836, + 0.9999995827674866, + 0.9999995231628418 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.00006103519990574569, + 370.01702880859375, + 0.000003814699994109105 + ], + "min": [ + -0.00006103519990574569, + 370.01702880859375, + 0.000003814699994109105 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.12159590423107149, + -0.592817485332489, + 0.08611587435007095, + -0.6480545401573181 + ], + "min": [ + -0.0019206339493393896, + -0.6926255822181702, + -0.40358710289001465, + -0.7833981513977051 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000011920928955, + 0.9999997615814208, + 1.0000003576278689 + ], + "min": [ + 0.9999993443489076, + 0.9999983906745912, + 0.9999982714653016 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.00003051759995287284, + 186.6938018798828, + 0.00006103519990574569 + ], + "min": [ + 0.00003051759995287284, + 186.6938018798828, + 0.00006103519990574569 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.1426013559103012, + 0.6280872225761414, + 0.4596095085144043, + -0.6589219570159912 + ], + "min": [ + 0.035743311047554016, + 0.5803613662719727, + -0.23170951008796692, + -0.7778217792510986 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000030994415283, + 1.0000009536743164, + 1.0000015497207642 + ], + "min": [ + 0.9999990463256836, + 0.999998152256012, + 0.9999975562095642 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0, + 167.7620086669922, + 0 + ], + "min": [ + 0, + 167.7620086669922, + 0 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.1871013194322586, + -0.18708844482898715, + -0.6819262504577637, + -0.6818854212760925 + ], + "min": [ + -0.1871013194322586, + -0.18708844482898715, + -0.6819262504577637, + -0.6818854212760925 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.9999998211860656, + 1.0000001192092896, + 1.0000001192092896 + ], + "min": [ + 0.9999998211860656, + 1.0000001192092896, + 1.0000001192092896 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 11.20654010772705, + 2.539275884628296, + -41.6572380065918 + ], + "min": [ + -11.0931396484375, + -2.281677007675171, + -43.12186050415039 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.7087063193321228, + 0.41781315207481384, + 0.0004008882970083505, + -0.6171950101852417 + ], + "min": [ + 0.4269197881221771, + -0.018646057695150375, + -0.4820735454559326, + -0.8132827877998352 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.000001072883606, + 1.0000005960464478, + 1.0000015497207642 + ], + "min": [ + 0.9999989867210388, + 0.9999990463256836, + 0.9999997615814208 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.0001220699996338226, + 175.07159423828125, + 0 + ], + "min": [ + -0.0001220699996338226, + 175.07159423828125, + 0 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.1727268248796463, + -0.026490267366170883, + -0.014631116762757301, + -0.6249508857727051 + ], + "min": [ + -0.5201118588447571, + -0.7482331991195679, + -0.36269164085388184, + -0.9203588366508484 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1, + 1.000001311302185, + 1.0000009536743164 + ], + "min": [ + 0.9999985098838806, + 0.9999993443489076, + 0.999998927116394 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0, + 370.0174865722656, + -0.00006103519990574569 + ], + "min": [ + 0, + 370.0174865722656, + -0.00006103519990574569 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.3708538711071015, + -0.04598140716552735, + 0.5860890746116638, + -0.5294864177703857 + ], + "min": [ + -0.6115797162055969, + -0.07423046976327896, + 0.3553973138332367, + -0.8547807335853577 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000003576278689, + 1.0000014305114748, + 1.0000005960464478 + ], + "min": [ + 0.9999993443489076, + 0.999999701976776, + 0.999999463558197 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.000022888199964654635, + 370.0171813964844, + 0.00001525879997643642 + ], + "min": [ + 0.000022888199964654635, + 370.0171813964844, + 0.00001525879997643642 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.031680915504693985, + 0.7147775292396545, + 0.0212766882032156, + -0.649734377861023 + ], + "min": [ + -0.10804452747106552, + 0.5687218904495239, + -0.41146859526634216, + -0.7937191724777222 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000008344650269, + 0.9999993443489076, + 1.0000011920928955 + ], + "min": [ + 0.999998927116394, + 0.9999974966049194, + 0.9999998211860656 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.00003051759995287284, + 186.69309997558597, + 0.00006103519990574569 + ], + "min": [ + -0.00003051759995287284, + 186.69309997558597, + 0.00006103519990574569 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.03588018566370011, + -0.5803508758544922, + 0.4588881731033325, + -0.6592705845832825 + ], + "min": [ + -0.1426122784614563, + -0.6280779242515564, + -0.23170490562915805, + -0.7778291702270508 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000035762786865, + 1.000001311302185, + 1.0000022649765017 + ], + "min": [ + 0.9999989867210388, + 0.9999991655349731, + 0.9999974966049194 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.0001220699996338226, + 167.7602996826172, + 0 + ], + "min": [ + 0.0001220699996338226, + 167.7602996826172, + 0 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.18708005547523496, + 0.18709906935691836, + 0.681887686252594, + -0.6819267868995667 + ], + "min": [ + -0.18708005547523496, + 0.18709906935691836, + 0.681887686252594, + -0.6819267868995667 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1, + 0.9999998211860656, + 0.9999998211860656 + ], + "min": [ + 1, + 0.9999998211860656, + 0.9999998211860656 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -64.18634033203125, + 123.89100646972656, + -121.35540008544922 + ], + "min": [ + -122.68409729003906, + 86.45635986328125, + -181.9196929931641 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.5137400031089783, + 0.5910477638244629, + 0.487165242433548, + -0.5562912821769714 + ], + "min": [ + 0.2358280718326569, + 0.4349341094493866, + 0.06352268159389496, + -0.7825927138328552 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000014305114748, + 1.000001072883606, + 1.0000015497207642 + ], + "min": [ + 0.9999995827674866, + 0.9999990463256836, + 0.9999997615814208 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.00001525879997643642, + 547.8192138671875, + 0 + ], + "min": [ + -0.00001525879997643642, + 547.8192138671875, + 0 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.7711299657821655, + -0.20974168181419373, + -0.21020625531673431, + 0.7666990756988525 + ], + "min": [ + 0.5196717977523804, + -0.31293177604675293, + -0.31192100048065186, + 0.5138788223266602 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1, + 1.0000008344650269, + 1.0000003576278689 + ], + "min": [ + 0.9999988079071044, + 0.9999983906745912, + 0.9999988079071044 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.00003051759995287284, + 532.7470703125, + 0.00003051759995287284 + ], + "min": [ + 0.00003051759995287284, + 532.7470703125, + 0.00003051759995287284 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.7953221201896667, + -0.3406173884868622, + 0.024828489869832996, + -0.4618827998638153 + ], + "min": [ + 0.4422449469566345, + -0.6381375789642334, + -0.06888412684202194, + -0.7050687074661255 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.000000238418579, + 1.0000009536743164, + 1.000000238418579 + ], + "min": [ + 0.9999983906745912, + 0.9999992847442628, + 0.999998152256012 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.00001525879997643642, + 286.1808776855469, + -0.00001525879997643642 + ], + "min": [ + -0.00001525879997643642, + 286.1808776855469, + -0.00001525879997643642 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.34342503547668457, + -0.36089563369750977, + 0.48122185468673706, + -0.702274739742279 + ], + "min": [ + -0.055049605667591095, + -0.4634150564670563, + 0.027654040604829788, + -0.9122520089149476 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.000001072883606, + 1.0000007152557373, + 1.0000005960464478 + ], + "min": [ + 0.9999991655349731, + 0.9999993443489076, + 0.9999994039535524 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0, + 166.96910095214844, + 0.00003051759995287284 + ], + "min": [ + 0, + 166.96910095214844, + 0.00003051759995287284 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.7009878754615784, + 0.7009936571121216, + -0.0927930474281311, + -0.09280822426080704 + ], + "min": [ + 0.7009878754615784, + 0.7009936571121216, + -0.0927930474281311, + -0.09280822426080704 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1, + 1, + 0.9999997615814208 + ], + "min": [ + 1, + 1, + 0.9999997615814208 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -57.822750091552734, + 125.41189575195312, + 183.63040161132812 + ], + "min": [ + -117.2886962890625, + 87.447509765625, + 124.98169708251952 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.226774200797081, + -0.4451811611652374, + 0.49656349420547485, + -0.551270604133606 + ], + "min": [ + -0.5029988884925842, + -0.6104490756988525, + 0.05997595936059952, + -0.7728594541549683 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000011920928955, + 1.0000030994415283, + 1.0000004768371584 + ], + "min": [ + 0.999997854232788, + 1.0000004768371584, + 0.9999985098838806 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.00005722049900214188, + 547.8187866210938, + -0.00006103519990574569 + ], + "min": [ + 0.00005722049900214188, + 547.8187866210938, + -0.00006103519990574569 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.7720406651496887, + -0.2091858983039856, + 0.3122869431972504, + -0.5125147700309753 + ], + "min": [ + 0.5071884989738464, + -0.31631752848625183, + 0.2051556557416916, + -0.7749928832054138 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000009536743164, + 1.0000015497207642, + 0.9999998211860656 + ], + "min": [ + 0.9999998211860656, + 0.9999995231628418, + 0.999998152256012 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.00003051759995287284, + 532.7478637695312, + 0.00003051759995287284 + ], + "min": [ + -0.00003051759995287284, + 532.7478637695312, + 0.00003051759995287284 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.4422548413276673, + 0.6402692198753357, + 0.02487970888614655, + -0.443508505821228 + ], + "min": [ + -0.8058043718338013, + 0.33987849950790405, + -0.06919090449810028, + -0.7087214589118958 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000015497207642, + 1.000002145767212, + 1.0000017881393433 + ], + "min": [ + 0.9999986886978148, + 0.999999463558197, + 0.9999991059303284 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -0.00004577639992930927, + 286.1813049316406, + 0.00003051759995287284 + ], + "min": [ + -0.00004577639992930927, + 286.1813049316406, + 0.00003051759995287284 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.05504757910966873, + 0.4637857675552368, + 0.4812243282794953, + -0.702268123626709 + ], + "min": [ + -0.34342628717422485, + 0.34244170784950256, + 0.027664778754115105, + -0.9120306372642516 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000009536743164, + 1.0000009536743164, + 1.0000007152557373 + ], + "min": [ + 0.9999988675117492, + 0.9999990463256836, + 0.9999987483024596 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.00006103519990574569, + 166.9678955078125, + -0.000007629389983776491 + ], + "min": [ + 0.00006103519990574569, + 166.9678955078125, + -0.000007629389983776491 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.7009931206703186, + -0.7009892463684082, + 0.09279564768075944, + -0.09279833734035492 + ], + "min": [ + 0.7009931206703186, + -0.7009892463684082, + 0.09279564768075944, + -0.09279833734035492 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.9999998211860656, + 0.9999998211860656, + 0.9999999403953552 + ], + "min": [ + 0.9999998211860656, + 0.9999998211860656, + 0.9999999403953552 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + -216.10679626464844, + 76.14641571044922, + 53.84222030639649 + ], + "min": [ + -229.81809997558597, + 48.92041015625, + -46.19350051879883 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.1075008511543274, + 0.04972844943404198, + -0.5993947386741638, + -0.7506681680679321 + ], + "min": [ + -0.1541447639465332, + -0.08161687850952148, + -0.6573381423950195, + -0.7955794930458069 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.0000011920928955, + 1.0000014305114748, + 1.0000009536743164 + ], + "min": [ + 0.999999701976776, + 0.9999993443489076, + 0.9999991655349731 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.00006103519990574569, + 275.1336975097656, + -0.00001525879997643642 + ], + "min": [ + 0.00006103519990574569, + 275.1336975097656, + -0.00001525879997643642 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.039355143904685974, + 0.004996879026293755, + -0.12579287588596344, + -0.991262674331665 + ], + "min": [ + -0.02954175136983395, + -0.0037506259977817535, + -0.12589138746261597, + -0.9920437335968018 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.999998927116394, + 1, + 1.0000004768371584 + ], + "min": [ + 0.9999986886978148, + 0.9999982118606568, + 0.999998927116394 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0, + 339.0890197753906, + -0.000007629389983776491 + ], + "min": [ + 0, + 339.0890197753906, + -0.000007629389983776491 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.000001511155801381392, + 3.055855870570668e-7, + -0.11349041759967804, + -0.9935391545295716 + ], + "min": [ + 0.000001511155801381392, + 3.055855870570668e-7, + -0.11349041759967804, + -0.9935391545295716 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 1.000000238418579, + 1.0000003576278689, + 1 + ], + "min": [ + 1.000000238418579, + 1.0000003576278689, + 1 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 3.333329916000366 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.0006713870097883046, + 374.1894836425781, + 0.00009918209980241954 + ], + "min": [ + 0.0006713870097883046, + 374.1894836425781, + 0.00009918209980241954 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.0003971835249103606, + 0.9999987483024596, + 8.442460170954291e-7, + -1.539886227419629e-7 + ], + "min": [ + 0.0003971835249103606, + 0.9999987483024596, + 8.442460170954291e-7, + -1.539886227419629e-7 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 101, + "max": [ + 0.9999921321868896, + 0.9999988079071044, + 0.9999999403953552 + ], + "min": [ + 0.9999921321868896, + 0.9999988079071044, + 0.9999999403953552 + ], + "type": "VEC3" + } + ], + "materials": [ + { + "pbrMetallicRoughness": { + "baseColorTexture": { + "index": 0 + }, + "metallicFactor": 0 + }, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "monster-effect" + } + ], + "textures": [ + { + "sampler": 0, + "source": 0 + } + ], + "images": [ + { + "uri": "Monster.jpg" + } + ], + "samplers": [ + { + "magFilter": 9729, + "minFilter": 9986, + "wrapS": 10497, + "wrapT": 10497 + } + ], + "bufferViews": [ + { + "buffer": 0, + "byteOffset": 0, + "byteLength": 5304, + "target": 34963 + }, + { + "buffer": 0, + "byteOffset": 5304, + "byteLength": 12480, + "byteStride": 8, + "target": 34962 + }, + { + "buffer": 0, + "byteOffset": 17784, + "byteLength": 18720, + "byteStride": 12, + "target": 34962 + }, + { + "buffer": 0, + "byteOffset": 36504, + "byteLength": 12480, + "byteStride": 16, + "target": 34962 + }, + { + "buffer": 0, + "byteOffset": 48984, + "byteLength": 2048 + }, + { + "buffer": 0, + "byteOffset": 51032, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 55517, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 60002, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 64487, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 68972, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 73457, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 77942, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 82427, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 86912, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 91397, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 95882, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 100367, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 104852, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 109337, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 113822, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 118307, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 122792, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 127277, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 131762, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 136247, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 140732, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 145217, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 149702, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 154187, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 158672, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 163157, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 167642, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 172127, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 176612, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 181097, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 185582, + "byteLength": 4485 + }, + { + "buffer": 0, + "byteOffset": 190067, + "byteLength": 4485 + } + ], + "buffers": [ + { + "byteLength": 194552, + "uri": "0.bin" + } + ], + "extensionsRequired": [ + "Draco_animation_compression" + ], + "extensionsUsed": [ + "Draco_animation_compression" + ], + "extensions": { + "Draco_animation_compression": [ + { + "input": 7, + "outputs": [ + 8, + 9, + 10 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 5 + }, + { + "input": 11, + "outputs": [ + 12, + 13, + 14 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 6 + }, + { + "input": 15, + "outputs": [ + 16, + 17, + 18 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 7 + }, + { + "input": 19, + "outputs": [ + 20, + 21, + 22 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 8 + }, + { + "input": 23, + "outputs": [ + 24, + 25, + 26 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 9 + }, + { + "input": 27, + "outputs": [ + 28, + 29, + 30 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 10 + }, + { + "input": 31, + "outputs": [ + 32, + 33, + 34 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 11 + }, + { + "input": 35, + "outputs": [ + 36, + 37, + 38 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 12 + }, + { + "input": 39, + "outputs": [ + 40, + 41, + 42 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 13 + }, + { + "input": 43, + "outputs": [ + 44, + 45, + 46 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 14 + }, + { + "input": 47, + "outputs": [ + 48, + 49, + 50 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 15 + }, + { + "input": 51, + "outputs": [ + 52, + 53, + 54 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 16 + }, + { + "input": 55, + "outputs": [ + 56, + 57, + 58 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 17 + }, + { + "input": 59, + "outputs": [ + 60, + 61, + 62 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 18 + }, + { + "input": 63, + "outputs": [ + 64, + 65, + 66 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 19 + }, + { + "input": 67, + "outputs": [ + 68, + 69, + 70 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 20 + }, + { + "input": 71, + "outputs": [ + 72, + 73, + 74 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 21 + }, + { + "input": 75, + "outputs": [ + 76, + 77, + 78 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 22 + }, + { + "input": 79, + "outputs": [ + 80, + 81, + 82 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 23 + }, + { + "input": 83, + "outputs": [ + 84, + 85, + 86 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 24 + }, + { + "input": 87, + "outputs": [ + 88, + 89, + 90 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 25 + }, + { + "input": 91, + "outputs": [ + 92, + 93, + 94 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 26 + }, + { + "input": 95, + "outputs": [ + 96, + 97, + 98 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 27 + }, + { + "input": 99, + "outputs": [ + 100, + 101, + 102 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 28 + }, + { + "input": 103, + "outputs": [ + 104, + 105, + 106 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 29 + }, + { + "input": 107, + "outputs": [ + 108, + 109, + 110 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 30 + }, + { + "input": 111, + "outputs": [ + 112, + 113, + 114 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 31 + }, + { + "input": 115, + "outputs": [ + 116, + 117, + 118 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 32 + }, + { + "input": 119, + "outputs": [ + 120, + 121, + 122 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 33 + }, + { + "input": 123, + "outputs": [ + 124, + 125, + 126 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 34 + }, + { + "input": 127, + "outputs": [ + 128, + 129, + 130 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 35 + }, + { + "input": 131, + "outputs": [ + 132, + 133, + 134 + ], + "attributesId": [ + 1, + 2, + 3 + ], + "bufferView": 36 + } ] + } } diff --git a/examples/models/gltf/Monster/glTF-Draco/Monster0.bin b/examples/models/gltf/Monster/glTF-Draco/Monster0.bin deleted file mode 100644 index d8118019c6ade8c226e4e46919cedf3e872f9047..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 150920 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 Date: Tue, 2 Jan 2018 15:12:01 -0800 Subject: [PATCH 4/5] Added compressed animation Monster model --- examples/models/gltf/Monster/glTF-Draco/0.bin | Bin 0 -> 80683 bytes .../gltf/Monster/glTF-Draco/Monster.gltf | 128 +++++++++--------- 2 files changed, 64 insertions(+), 64 deletions(-) create mode 100644 examples/models/gltf/Monster/glTF-Draco/0.bin diff --git a/examples/models/gltf/Monster/glTF-Draco/0.bin b/examples/models/gltf/Monster/glTF-Draco/0.bin new file mode 100644 index 0000000000000000000000000000000000000000..83ddcf34ed9732b2f470de7edc168d4d9912268f GIT binary patch literal 80683 zcmeF42UrwI*YCR<6$KT=fLSqOLNFpQb$S4^qM)Lvpdw<>Hs%Jq~nyQ3tRk2nUJu7fE&}wR9s$f}@bJoT1( zLci+h>4N5}sjApk3v1Qz7;9={i=c8wtsZp&ZH%*aHtf*P6+LUC)zMTfJYRNLbHQV- z%hluRa}Dq;xN!|RcQg-F`SGlJqUli8;Rpw4uBhBOk<+7jY08`PLDOTKH`j=3jOK&N z1N*$tnxN8QjHYPKP&LA5GqlF2yl_-=v=*B3;aZ|K$2K4AZH3knRTJ!Mf#!><8OCUh z)xtF_+d5%y7+OzM!Ppmy)=L{7jAbvbH%97$G5Vl|p$f%OebM@9swdYUtuMCq#NGjD z{ZaM8zJ6!}weh{M9LNpANMRUbFxmiA{czL}w4s{n&kaKxf^Ge=Hymvks)5)y6m7UR zejt{^xe*v?0LB=J7LIBtjv9qFT2sTgF=(T(Z5Z~BMH_=^IQET3i_pdo$1;K&hmpcD zMkLx;R8ib`ZUWjwO-yf6LAfTaqcPH z5{x+!^%RV@1p5|nOR;|;w~SlPt-vxGTUTQL1bkh^t>)ICtwpsK%XMgRsN%3(kG26- zJeR;FqHRRA5z9?zn^A4Xatqp4R9ms!hPEBm4sIv63vD;5-B|8H+ly)+x1T$JuLrn; zXopZa;PosCEm^ykIbfO0NqAM0IRmHQtHPzAM-B9-hu`k{++pqrcNEQ_sbk!6tRL6v zN4XPdC$Z-^cZ@rQb{drdTNLa+j+!?g9s8aEH7VR9Wlh}J6?E`(9WYei!GPYu4v=WVtIwTijgj0?=`gRs4iiQ8)!FCox%Ebw9BZ@ zWBn%DHB?uyx`WRrXirf+LeFPt&r#jOIbWc? zMD-Bs&(R*EO2hg~v}dTEV9P7C*V_0eSia`oV5H~Rn}PNg)k}==4(&av$5?-h_6pTA ztiMOgK=m41KA?Tn#=pk$Blig-y~WbE4(qt$1s!3)q?))ekNYZ-e#|$K}9!ZnT`}`wL^(^0s_l zR077xhn645f#uwJdP^CS3tj#`09Y8Dx!ZWz7nr~Yb*1WdG(vDerv1nRj{@hzvoVTRkS!wRpYCp zRpp(qUX`zbrd|=MV%uK)CfC58wfI^SO}%Q=z*cAUapn)9KE&0;m|O8m;Ee6Ha7;CR zhjt}UM_1=}7d0a&&(-G}@NRrV-kta0J$W5Zc;H1| z&wKISybs@qZ_GF0oAS;0=6nmjCEtqoG%0@6Gq&`||zx{`>%bAU}v7%n#v*^27LW zemFmZAIXp6NAqL&v3vwSj*sM{`0@M%ej-1KkLD-yQ~0U;G=4figP+OA@PF{L_}Tm% zel9Z$^tpwFRH?Xvd3DnECaKZ3RjRUPgCe-w?NQut&1akLZYcLK|kXs1w}!tylQ8B_-TEP5S7 z4+DRgPvy^{9YJ*l`%}?Wb&NmHUqCyq#k;^?L_4X)yU1TcJB_uo{AKhyj~-`n)D`|J z+BsCGvHuF1s?PJ*`0HpFw0PI~8)z4?b`i^)XqQl3=5L|bHT1ZQqi*we(5|Aog#EYC zRCSF{*}Z*E95Zh*4f+?UknPVgDPnC+PKz&*0ypJ=fyB<=>&b zz}gEe-=n=m^@{(1UK!}|3Zs0)+6PU&#QslcZ_q1)|IB|ud#lC!!hc13hqZTDenWeY z>I45By*{JI2aNIqYu`2X9{YcyeL}C#{4f4D+7~U}Z*BYc6>DEn;cY_rhUz;n2*1$p zGpZlFm7qRU^$l-PInaKh$|>X$tkH4{Iq_*N zRTV+aE!S|WauU?savfJis47$w)Z8+GQ&n|A%`Fo-Rn-vG+;S7As+xkDTW;ZM2+l$+ zLCr09a;kC>)ZB6xS4(ge4q$faD%2L#-0}dbb$lJ6F4|hWmc{Y)ggR)dsxLGU+=Ti< zLoC!3apm_@J_|ypmUp=sN6F?BrJW%Nbz2JpLwDtzrYPRRRi>Gf(EEW>~DsqN98TF5L%-7plU3% z!deSWH4%J;)@V&}Of#X4;D^>6l@I#*qBTL)6#LttHAB@x@E6*mwbUZC6565pqxKcr z3jt`YQMC~|2p!SP;;2Au?}Tk_QFTIVuPJ|_GwLqb9*C+7 zS|?QgLXZ%Q))`ehp)1ycG}T4uCUi#&K)((`h|mMABdX5m+YPM?ssQW{LF<4jNC*{r zq6MSsDuiJzR8!rAUP5oQ?l>ky=p*z+>wzj5eS4vGL)9Jo`=EuO3KjYZ{n2`&3KIrk zt)HfP2?K>eXuWYvA7QXC1g$Tsp6ELetrx1^*gqJp52~TUFd-amII0oCNMRJ(XjEf_ zu|fpeI8>2B6!wh7)=2aV7sjJaKs65gqtGHz4HG5`lhDFZjTEAV$!MccjTNQ{Q_&(& zMG4ceCmLI$&~K739c?_S2<)GR7KLhxFhiJ$HWk$*Ax8KEZ91x{*ftAo8mfuHY+(-C zBvjGDTwxyCWK`3HSgg&})GT4XumEkEHfDja5G@vKGlWGLDMna~ac82Qg|U`kthvHc zj1r5lbFpn1j$SA%$9gsVHm^Xdu6>hN2rJQQV9g1?@vG2QqgsvS8nm^js^C>&9oj0b ze;t0CU9e{rwpJ42(AH`Farm8HhtKu+x*k1N;?gsE0nJs|kFA(>3fPC^T(M1k-GEVC@mU+&>tS{ok1c9OS`SqMj;V`x|9H%4 zmg4ge?~d0DH(?WIEIY8a8Lt_M!bV|}uvyq5Y!$W%+l3v%PGOg@Ti7G)74`}Hg#*Gt z;gFCdBny%t3kE?EQiQ|85#gwCOgJu_5Kamb<`wHPzc_@~pHsqV;f!!rNEOZr=Y4KQKZReyZv>Ng`?0dJ%3+n$DwmbDRc@<1 zRyJ0)Rs!af>cdDb+0xjq=A7!|pO&g;DQ$$kR`Qs4s`ac=>tx~?SHR;6)CXJU!n(Sy zyjrQ&jCGZ&s_km2K8^jfuGZA-*u0&NHq{ z)u_~Hg*0hYYE(56^;b)^pPtVwMMu&eW1027s7GWxE;XL9rj9nAU(QsjEyi{%wEpa+ zTFYvuik=NxHRXtNwGDbv)U}Wqq&IUu@LxQ`U9kuj|I^3H{!& zr8-ir)AFy!tF2kzTlF_0^})t5*0tt;v>u~BUAK9eb-goQ&(xW$wfT&7^)>4{N3VDE zdPPg)DAkW%7mY2(+P@la9-oe;A*4y8VfwLh2YFQTePmLK&umc~~uGs=Ixr1Sh&kYW$x4SK6~*H?rax+v)e( zczsdtzuEIE^><+PVV-9h+f{G1KdUtNqjmE**~gVe;;KGqnHBF}`~C0w8)wU!kH(?x z=GX84)Oz-8QGK6{kN>pNd>>=!_&NOD(YPO>W!An!{iX?-d4Q042c{*>4``kGsb|~) z#~EMM(%2*5zeG?UYE4yYyZWH(q9d}}RZj=a&zQeEAdRP9#_@E0G@h|v3!CX#49Bah zQRg-0HMCUMua2X~q584sA#0|rb~O&`r`Ca_juO7(iC z`uv@rdA~Zh`Y^8I&n4~uyVBBlOYMIb@Bfy59)D|BAI4V>-z%f~yY*#_E0H;#mRc2~ z80$1%R^8Z7<7dVB*X?vXE$KKubH#N1w50vCPRE&-##M5etNn9n?oaFN_efni{T}^K zmB#B#KGXGset)yBEA;w8OXK&OUT>%$9cS!SuM5T&+W+U0#-VX(X{nv||GCVM=ShwK zzh63-jW@4n#W&7Q>#ARV?K-5E>f`TA^L1t)XRKw#p>^|;&ST#G@7L|Lb*ukIP<{M) zJZ-0?=EnHZc3S?^extwoFB8>A*8G3nPW@Nuj-!6G{CDU1pZcECxaxh* zct53iwDCTw-htTmtotd=n`!<{{b))1v&S>fyJ=o*-cIYZ-@K&#=B2qGt<$`l)@f

y=_Sqc{?p6H?i0W#W+ZWX9|eQA*b%GIBjDxP+{6H*f$KM%EdLw@`x7sa=Ry79 z+wO}b;!=OOT=_LwJv|(X7S}`5xN$IQ7lEcN#=+&}*W{M#Xejxv2RP;$3isahfb`~J zq*Jq9q~O31k~aS!Njd96-0Ty`vZJ=}#nm2OpDqIBfBw?yYAM#Wg~w%Pkn|=+pmF&a z@?elH6ytLe`$C1`@?}A*&neJT7kjiIsAb$hTR88tIN7#RA>h*TCw)0O1j=oxkbLia z59sC@mOMf13fzKyNhPEqz59q&{H~dEX6k{_F`!FMB|q!M<=}!c?Mj z>IfMPN{~_e2)uOFlcO>1U~i!-r1!ioaHi{9VinsN5)zujA}byA4_`<+G7D?{EnZJ_HVTgXWAga#Y!;N`$haAkWGG~F;sryLD~gpG4_BNF_fO;Utz z^V|V2zUx%aTg~DsxSD0R9Bs}e(plfb(nY5k|t1IFDnA|;FNjIzEUE;mzlJ4T>+a%Y! zGrDe$@5!sCA9ZOzZ;)!$@{rYEo{`^qtUPyyrjgf=`;fhNZWCd4eNrmwCTTKzgDy`> zaR~k%tgBePBn&T`uIql-0V*%cL-s`$h2+pbJX_8#3I!iDB2Uu_!Geeyr2qLsurGR} zZi2otME(xf1^QM7*(O6*{zxUr(>gbKc%?MRv*&xJmM8^d8aE{M7nXx+o2nA$GG!qC z&R*Tpz&hYCXr^vX(FTyi{k`sS=Q_}@hAWvh)CC?_C{AJ%JmBuLb)Ih3>%*#y;=1o6 z2>g!U;L%bcVCYoL)2((BIDAk~-mdTj_s5>3sfMmwY8&_+{@7zf34dr_%!h;&YzrBq4(ht<1EA~8MY_Vn17JZVAa!uo_38pLi*=gr2p6s5Wj!Fjw>4u={B=&7=9 z4G95vbuMuu;oNO2vO9GY+-*Ki_d8-NtSa9`=eT1W{C-xHe4jrS%GdRW)P`MP)o))Y z@~b1bTY1CcVx3`M4=*ru>;VVgw}E5B0-(TrZy-C{!@xrR;PI<1EScm3xhwcWOo0Gs zn%D)lAN7X|bGt#gik+coy>4LG6$lxd17TlkS2&)(6UgY-tfxO5U+xVHj)lV7myN)` zNeif(6bLI<^anY_4_;^VgW<>hp~<-+5cfS0LbnZqHPwS)`O!h}{Zw1ih$)qjqHm}UST z0Yl*FCj!+C!{AjT5o~UDgsP{%kYD>3kVm=mz{R_<>yqw0Rt&2HXU*Ujgd=l44kJ;$$Jr>j{%Tqia;qT4of znojHyrrYy}9m$>Vh%R@mJtpO|1qiO1u&-c4RWL_K;f}Z$;TEx5ZnF+*&W^phPgZ-al`zf#-%qTMQjJ|^Ld!_ z-XBVSI!#JlY6}eR_4L5E1xm(eir%O7NEL|NFme=7N5C=HEz zP9n3mR)Zz0mXUq@4mMR7Nfti$hh>Ail5e{@!#L8H+@Bo``lhqU%T{e5 z&%hW`|Drz_b}uGl+I4|$otBf&XF9=p-)ZD?Ksz{eK8BRJ8w|ydk0*DhmxiJJLWpmO z6GWy(lV@)mK-lNyWN7OK;J-hZh*=uoi63Cmf_3VdVYeaHu>hg1mVW4mI;kBL_bYgwma7lRX=TgZ08m zr0(Z%h%L69NvQ-c%7f;$Nd#x{DT*seFs#7n1nur)*IRs2A5+~b*;CQ zfy-M4l81eZflGr?gw_vmg`u0nWF0MQOtgjVWBTc+AB{u(X?&r2bqFbZn|L>Lg;T9> z6538n>QDU&7OxDO!|xJWr~R~~^HDz)rIX19D&xUA8n`Wr00XKgC0Nar}NR{ zrFA+#E$MkM_oH!Wd|H~Xm#&k>r+&0f`{{AelFo1LN8{7urT#PyZKvz|Pd^WIze4vf zmi8-jUqbgIbpJv38+4yR_ZM_uLH7@IKSB2qbpJs26LcRz_YZVGVQC*h_YZVGLH7}K z|3LQ>bpJs26XyE}x__Yi3A$gP`v*(=2D(q6`v$s?p!)^7f1vvXx<8=%1-gHr`vkgg zp!)>6Z=m}Hx=*0{2D(q6`vyz<1-eh5`v$sCp!)_(`vtmBp!){8PoVn-x?iCC1iEkd zyZr*)C(wNZ-6zm}!#~|G(0u~kH~iE60^KLjeZxQ9FVKAg-8cNZ`vtl`p!)^7f1vvW zx^JNS1iEja`vtmBp!ok9-c{|P5Y5q?0b(+8bUEWUfb(+7^ zyq)IjG=Hc0I?dl{zE1OZnzz$@o#yW}U#Iyy&DUxEPV;t}uhaaU=Ib$H#?KF?4c{|P1Y2Hrrc=NoS=IbRY>&EILh zPV;w~x6^!`=I=CLr};b0+iAW|^Y{O*yq)IjG=Hc0I?dnzE^jx_*Uj@UnwQa%=65td zrFoxu-f5nHQa>8UQeH{p(|%ggJd);(G>@cl={Q=N`_b_<-=zJtr0q1W`8w%&p~p?< zp?>su>3N{*q9ygGezZ=HkH(>O+E3R-tYU z59)7}t^NJU;TdC)J8@hxae@l(Mc|5eh1Om*NcFofNXF;fP-dqCv3k``^XWEsd~$MR z6!>qi3oviHt~FN|n&#^R&d$q7POmxS*r^JzYk66CX!n??G5dCH3@6SzYGVz{$3V+( zZM61{o9n=yPW8d>T|>CBsxSlwCu!})Q;Wfc&{lGta923`C_g+J@k~x7RpX z)#LSxleT?`lIMD*k#Q4mCnZLQY3=9M_R={niqiCmB{5Qr(+IivhaaRvXJ2X3q>ftq z#@JWV#G@f{1V6 zi$TFLwdCo0uW9S?@%pIi>J(|wr;g4aBCVbsYM9?%4m#Bij=U{PCN0VheI|y%hn|N> z^ufU-@#ZJuAb7#R{P)P|QzK#3!QN!J{ViR=KK0>;u-7x^)H)E+Z4jKevWfIr`z*QK z>5(w3uNNsB;zag1je-L+#*kb5HqZ14>vhpEoBXy;_|@s@Jj>f)NN5B{;v#^-~5c}u~xQ3ZiLKf(8cFc&h#ECdkFJ9qpY5Lyu{!2x_kP=u9HQ{ zlCt?A=$cL@o%c!e+zZ0}=xXwwGiBxJ))%BND|^9?p_h{P&AOCL?{i$Q+XCg}Lh~BS z?R~5u?tEc6Ey)ogRz<W1X>mpF@aZ7p9Tzg5}7zu6e6;Iygnv%TjRGPFmqPyIz z1W0Vm;Xb3~e$xv`=NualHvYa`evk$QV7|M` zS5)4uFAIGd3r0 zGKq9fEhAsptbDp7^(#f?k@uTH-4b=PX*LcUpA)7Xiv00QdiFC2?)q1Ro*#bdy6@9xn=Ajua>Qmz zX?a#kqipkzyjW1ad$p=ur}vj^Yj8f=80HpTLp)E|%I9}PlNsgR!Oc)!X4kf7#8t`R zL?y`o0o#wb$@@~aC+|(ICD&=w15W#SkfQe2r9RSaX{cikxzGq*wm58jxW^?=sr^eg z_2D=<>cW)dDgg!(x1qoMPvS@2`c5vKohW^@Z!fcRSzmO36_35;UG>IGzpa0eAq@iM z$}bvAmfG2K$et@UK6?#R?`4m7ER-A)!$H-~_ua^sQ)A(LXlpnda#kncZ?I~6o4%gJ ze$7}Ys28DD?8)Sfm8)p&-`8B%wVx9S9fHfln~>JJ>yeGJX>~01(RA_7l9&A$=$!D0 zOlZ+qx_7dZ7RNE{g4BI^A9zyc3h~$(Cw#N{$*b zK6%``X7D6m3AtqK@8o68ouF&%&EyZCh^+eL851CN_aCF_Df&`mB4^A2=>3k4{|lcR<6I`;m;-cPxiJ|HfQC7zM?@c!dG(g22n^_XH3dmm)) z#cZ61agCwVZ@ji1x=+}-^v-dl)!9Mv*OPXnVPG({I`mMgd8jjaTBZw3pJ*T*uWl#o zIy=~JBJS(@$ye95mOk-=JoR7j+Rd%@n0hWl3LW;C-1hg9v-$g%mx~^{DuuPFEPo$A z0D9h+Bx%A7&stGI(AncT$yw5$bYOh$*IPh-tsWqMJ=kB04po7w?BRj`4LAz`xK z<}evwJ5WkkyH%QWu#&tX!dV{FWC%3exLo>}n1{Ge=m)sE!%2ZQ9*!eE+HyseG{yr2Hi}sM(E^Ss%YQc_5!#2iZ;tN_N}zT{>1O5Eh0sms-sq zC+8C$>qd58qlREix_1CI7>C@=n1LY8}^lWX?X zWHt^vmh~CkGC+=;JV8ni_>yf6?AmO^ArOAaS86e18u1-d6be7JhMtW}$?V#ay)Jw9 z%+Wv&NUsg-v9SI+tHHV+!#+y|R&go3z$yWmlNYYZ~E{ zO)o4`M9%psS^8YPA?$zhid>AWD_5+T2iW6cZvMId3#4;( zhyy#-h-ts3)f2F2TQ|9&oc6(_g}Sr(1xlJ@~pKk z(#ua@$wWhdoIYlRbbY!l1l8V&*HLfny8WPA3%TAHJjeJ*TvA95tmdcbisAq{sl7ou zxW6I@HPT4*U`Mc|JMN8wIk_9^#@YAtw4^I|ts!$`mPzTg!emQ&Pv{#G=QvS1m()?V zq{Bw}!yWH~B!8`RVoATUZ4X!57bH&g^MECtVb=i`bk9plb;$*m^vG55q{x~QQoj=e zWlOr&*v+IzYB8zb&jGR}oqM}KMCDBLd?pqIi~7tq;uJbd_vY9jIkyE}ZL|ycb}0?^ zjgLr{^qHYi5HT&;GjjA;oh7}a_c}6Sbv}9NcOS5%XFuYgU-9>n$0;|kq#F!w4VRT% z5PyA=WJ!;V?+7dEtRU_0rAd}_w~B$Vs=#vc{Ma4IlD1#9nT+wcCl$hbizThQyM>It znl5d4-3~12{>R%vR2ys3%iBh_q*FQ`AOm*3O`g23KUmT|LMua>PhnX0;=5!?&npoI z*N)HB)lIlVEa}%163K;-XsMoGZ?L2nNA@GLE-#g8rS=C)x&i*1ly-yiLVU;P$(FR& znE)vIA(q@0UP_j9;lN?=@=Y%CDr2@}Nyo=+Cc|3#O6&Xg14}yO_7>u^x0Mv>(GM)? z)A(K(8qQ3*-YCCpNkf+d#Cu_Gl2WrjSklPBWD^G~-c_c23^|z0a4?zSU^3-k$S!2c zxR7bclxrcsk|@7IP9;%Jg={K`vMJK<)!CN0KQ= zLUxo)*%9(3Q#-OFnX)5fN-||i$dL%ck$~YyGUZ6C=T6cU6`UY69NAIbU{gD?Bbl-z zWJ)q+O30B21tc$dqKtl#n95ZA3R z97m4CYGg+;Wk<-AWXhC~Bk3591e7Dq|7ay|vC9iNjT{LWj%3ovd}PXwkoicIDIrJl zWH=Hq97$q05-=Req}iCri)6}+kb!tmj>OJ|JVc`Gh@BVN5m0u7EbA}VPoTOBAMYx62p=HvYkDL?0IA7Vy|_`i)6}+GW4QsJ?~`l_DWS$79=xV$fWmg z_$1YC-dO5?s*}omB+7h{^GKBQAls1`wqw%Ba3sobklV-%w~;BgVed`IMv^IqL5@Kv zpJA`h>^%rMj6^vM@)?=(8TKB*-lrC=Z!A~&@klC`bf2&>Z@9)ud(I4!mm!B?*MJ;G zrX1!*$6)#8!G}_6N@s!`Mxq>sT_yI1;D2G8l zLnxm?-U5`#Acv7Dhe19gQ$91P?h^@+!=$FoBCJ0$5TG0e`3a$X1~~~(CWGukrW^(t zh)nqmvJQ!I7}lSSiChIJdqE~cD3h@?7qS|Z0+hob$4I7p2008+4#WB&hmk3VK|Ui>K7&lglVLI@A7n2w zB2vG8r~Ldt7WB zWGsYXGA5m9b&aGn>LO1~iIrH*`m^oGUSx*J$dt(-hmk3VVSSLp$dtn%pE3DQ8xkew zTU#tS|GHouo5v!Pkr^f6}h1=`VI2yG2#gY!F7$_e^e)1Xli6y-!zN7r3_6l+%Jx#KtH{abN4MKi0ANh$TEw0`y z5#%tB3%3VLde!lEausAOrI4{$(q4fFq(;bC1|nmzq=$u8mM)@)JwC+WO7Xc;qmDAcwJ}@8f&X6&cH3WGt5S zs4fSjTF6-TBV)0o{R`--+IGi_Z3P+j&u6D1#%fu zT>}(-;Ujw0|C@6jWy5({A5rC$Ji5P~^6At8KCO#EfINE7( z_MdSOU4|6Z+Wns2kz$&x7vnJI_%ItK?Sz{?x>*iG+0%6ta@$R>wx6z9Ny+Hqs?8NS zC_-t{tffAolH?q!pB80rSnzp^qWA8lwGS$OPN|t=x<20O zqZ~H)_jMg4>^`_GQ)f~N)d`s@%{=5<#v{=6q=W6=&vEtWhu4SJpE9C)OA1O61 zFVojnH2m+?^vAuh|J&MSJN_f8Gz*L;EU`E0^h8 zoHfA4aT}Eloww=x@Pat_#7xC@>RkQoq)h=BBI$@;zC8DkpozYYe zv!2SGKRGBp)-~2wiK}FQIU5aoZq?Su-Ak2E&z@^|TEkv@FRB*WY&a2IUDHk;+YO}7 zCo!tGXgJ?%yVBC?lD@^21j#4nkkYg5UVVjD8IT&0qKs&ksDI@?Sk72}MY))`CEI6! z{hYApt@OR!a)Vn>;l_acdREsSYHv6(b${~Sz;mMdIi#N-ww*n1T>5Lc{%E{m(zAhj z?}mY5s@q|CcT(qU=cn0}x>Aqb4-Ibz;pdGx-g?W|OVfJoH#}=sRPRtQO!RhNEkB*% zkWEi){{mh)l`(wka!TAT3>6y&IVxMk3HoalQ^edu9hCYFhU(+RZ{Rt*s#0DWr4MWN z5};aHWlTnp-tNa?ar*U~O5&!**|e`uf3d`PPT91;RUfuvml)Nzt@0#hl-_G>vUvZv zo6>DoFa5@6 z4sg@w`?6Qu?$$|3oZ3Vm;(1i;@y%PgoX1DM>-lJLWOOH`+;@GpnCGtficj=<#n8NA zwwSI?iQ=Mm#TD;{_4RCgkJ+O|-UcBLkZHql=VH{V(5t)Ab3SCLN*Z7N%5(?^$0 z6vrf%RCZoJD(YU(6xZnrD<$`y7q?C{z+l@_%Da0<#52oQLH{9nlpGH(i(J)-Vr1Gw zgTt1$VraR$aMJ3wq43jB+4K=BFVRi@Y6u=bNK92ai?`pMHiX@oEN&b15*FP1VtAdi zt2nmg4$rkIcMJhl2Z+rV(@a&GusN6&0nZ z(*5M$`nK6L8;6abm}9wUQ>lakbIOR--X9ec;_@j|4W&eOuFHAGi`rqKmIyf0>)EG?IwQWl416$wN8anpdga3_c z966Nlmf`cr5%RU2C&UURY?afutl_|~8sf+~&Po~A*4g5)@fV(V5C^Z54QC&&li!Uw z1=QPcbHO6ES> z^~WtKsLN5sd3k^Ru(Eovxo}4D^In+k{=(i*=NN{Ie8zg^Na`~EfO}=cl%V;_%#)L| z-3QrwF?*kS!6uoptd3Ovv_{#V&s)E7d|vT+%_ODj)B5^9A~uS_4>l@2f?DYNG&>}^Sg%y9UE62# znRGT*?EL6}^7W*sA3GvZ^qfCgsXmeD7j3c@(+kX2+h@>7|(G+aj^j%9+ad2{*F&xHO(EHkIR*oQHpl z+qV!g!+DN!fA$LTY?o88CGT3L^5N~`M4lI~#cWfW$0v)AJFOEh`>s>m)@&C8jxQ4z zq|Q>}5|(E3c^@7jRv55N8Pe>aXw?bCYb|4yvNt`&Q0voB)izGq{%e33ax14u%I{F_ zC^N;Lzv9Huu^W}B`IE%-Z41P*9Tq8X66$30v9SviH@4fO1XYR27Ke@hZHbSVJ8Xrr zXWJ&?VmATijEqxy-0UQ=bFph+eY{d{z};Irl)8m{vaNw#+pq6i#hj(LDcj076dh+R z5MBDNQpUSJC+ylTeQPhC9=2bZ6V@zS9M<1Url{+`%q?9%wCgeJ)On7N6vh95rCW-Uh zuPRgK#X`)ESCpnprbw(VTw%Jnbk-H6*nD5f(RI4GPJdOYc4Psh-zp^j7=A_h zws3}20185r=~t9x9VTbf!CY@B)BLLPV(3B$yd#JoQO|6>0NCSV>O z$uA{VKfh!LQ={%FJ*Mj~v5c-`iRqv+0R)bjJQ{dHD2rjZMgB` zhw}aY3hkP_%_&DpXs-48Cw?UiQg1G$$K3V$p2h491BZW5`qp2l`RwW|q&&1+uIcfQ zzbVD#d77Sb(kex0y4vD?a0}i$qE8mpSL=~G+dfg3!j;p3Pxc|3?sDsQqr5l0P~ln-ANr#)+;tT^V`gotE>kn&v`me0D557rP!-tM94v zg{De@@4xi7>h(43iuF}|6L>FHvoYDRY&+|(#tc23URt^0WL= z!%8V~q}$M+)8KDU7^O3miOwySaS9Lr%SbN;-> zOj!L_oQEB2zBalZc5Rz5zRzSA@!{c%`n&jESTC#~I_|xeO|voCv1~g#R*mT~q>>o^ z>AIfP?6Lf-v2;D^`#7Ux5xt$$g=}%yxmX|9u8N6+jqbJ1@D};l1mt7=?_4m9Lk{*G zIoPaDcMX(-b-0yi;$WxFCzu#lXKbg}t|+e*L*Yz*)x6t91LaiHs~j@1DgVmH4U|XS z8hO@08B~Wmw+)mpvF+z-S}T+_4X>4MpnR!&(F+F3o!0mlS14=Bxx2hV`I3LD5(?!` zA&Q`U$Yf2ATmCTg%w$a~_kA-^)^xJ$x2bi_K-m#{uGsghuJa)iM`Hci_RkaCl*opMWeIuF zLA!Da%eEkeGNra#MTK&t#n0*~lpR@$ zzyElEvMiG$v2%@DBr236v6}UH7u!;4l*x`RS~petWHO~vxl1dRGC9)bw?!4okrEUi zMde60kRv_LD6Kd|JvFpPj>PKg)tV|QJ1T+fD0+goG8>sv5;CQ4-X#>uk;+sls`Sg` zNRCatm2sIIX@^4@g>ocT7p>S($?^WQVIZ=jMZ0S&^)s2$p_H-;>;enMD z%8?3BwoxcYV)eROzRDk&?C9+qSA{aABEQNgM>085i3&dqlq1cJudcj9jueI*Dah-$ zfpR2PvoYOj_Eh4L7eyg2`cbcqk_S1GJ8~p;uDNbr3S~#^ygyqxD|Iv3k)<_6##C1* zJ6h7DyW*V5l-TvGzfeFiaimVx3gt)z{|HkkM`|^!rb0Oq8#BkGk_ze4%5c-auynMF zlQJ-qBe8Q?ivOf)Q>9BLJF+xa$@(J|l_Q-*j%5GX51FN(G6Ff0rFQllvgeJRi@nx4 zT|HxfSX;q{A3gs|e;y)QEpJA`h>^eCcF#FblqVgFT`3!rHVDD2$ zbRG)jFl@}X9~>3RVc0cXJk~~`941%W)(Yh_EjKtTl*6#=ymvmYLOIN+AQy%58P;d< z^*oBoWCkFUnLpJ}p&aJ*$aV_lGXw426v|;(e?Pf|LOD$L1 z^I=p^g>o3yzeuqT3S}~r`t(&^Ad{(#Or~j@_KM16Vv)(@Ip0&EOs1PqL7^PxdcJxJ zRNp$g5R1WhMIgA=dMsZb8%WK&zAd}j2<3JPU1 zi)>pdDu;Q29Om-Qc8bbp#vz~Shxcg8VOW1Q=J59R3S}=(ef8m_j+s&B$&FPHdZKyVSU`sG*&2+S=hu@ zp&VvOwJHkbGmCZ=P$-9CeSSVKuTUn##%GUn8@vVOXCtiDwLy!?6DO#=JLBCd1~j{0Lt2GdWDL z&WB7KM%~NM-`v%`KV=kbuFLAJVQWlWh0U4Ov6Qi>F)2S`eOS%LVaKv_vFl;|x3-&a zVk~Ss>u;_p17XLiJ}f7p>t|zT)6Bf)V`+SrnXq%Qn)PAhu=_`rKd74i8w~dT9?)co ziL0<{*?2ubFuBLe}|T{O^k)r>Su#;4@+a&wW-k4 z>|AU+>)#FE3(8nn&2kt^W7&1GT!qzaOiS~s=bYs#l((>PSRXbf{-q&M|C?3jq1M?p zv%0ze|7^WpQKtT!y%xDuJ30o) z;SJjS_1+GIS=S?Uk*imGsQwk~c{q6MXXe}-x8lZDPusGcNw>tEZa;b*c8_X*)uV=w zwfno>5e@e{M#At-4Z!E))rK91&C$lpy!X6*a)T-L`r+R<@%d5V)Y$6d z@BGmv+xvC>Ln-hpddxKbZbB4%*Kc*#g5gWcMJ3><)BO6^&*R?##|O?`|8=2Uu;$u( zt={5sQ=*(`0l%*N(vB|z|DPIVqtms&ZK3+NZ*fkyuxOa+{FtBb@|TW~@Lm1!ZxI~P z;^p4z)S#MgZU_u{lewns?}zz#U147+xuywuaxK_Rov+4F{5#k9ln2!&KOYY9@IL;U zsLv-yr)z84yRljQUM=k4Z0~zo`~`daK*p{`y3vQ)Y44YL{5Jc-U|OS7rsLVz?>hNj z_KL1R>L9Y@R5+P`EGJwUNxps9$+0Xa#w$19F`aXv|o6tZzCsDG4 z=d(~h=#k+<$7Fkd%s;Q@pKtT`CwE9ocrenJ#^TKD<$pxNuh$c__exux+4tML-~9bC zKR>@4wDz!hn~zM{-B~*x^YcHyz#gJLZ>KHL)?|MEF5Rq4c1({U^`c_5()@h=eLef< zqu{okWY^q^Fn&i)?fr~uiH_oUGN-R_#2sg>x<_9JNHnX~;AxGv4!`9jLv}>FC`Iidjgh{tQn(CXzc7sjjf0#ZG;R|fQ z;mUJUf6wE6A$`jP&u)Rn`|*pIT2SrrYE!>?-Q52{!YJS#uJnkgc38W<_xv3SH*#Dz z&FAwY3M9KhS}vfj@AoOZ-$gC8c)xSNd~REM-v+9$@sa)Wl8Aqc3Ue+~JoCEw`EP*n zoZB`t#T!z3EExQjXXX|hw*~)yWxmyOHl(wiJcEB1@Qj=3_>U$EFnsejQ(bsl9=?}8 zXsTOxDhMB1+%eV7^FNH6?fu&=ydZl9*+8>GgS0v0V%!@1aB=p?HF6MStRAN`&p*ub zx5+l2i1aOo#m|Fzer28yn#a$5x}&?pK0mi9$Ba3%`Fi3uRE2#zH=B-casFgo&EVdq z`NxrWL`lzOs+%8QfGGEB_3@cOJ+<)W60Mfoi*7dB)>aV2Hdk*BPcG_nkm-BD()%6$o{X1U!Og3^B z;Z@@((|mo7|3MtLxPr%{SDJs!hl6DIh_Wz3@z(0*{P&Sr|%s z-`q?bZ>DSG&HcxY_wy|85KRVbbw0@4?=oH3%KoPFd2F2z$$!n)RIi-Zk$g<*V5)yj+~c0yAXoi7`1jP* z@6gX{vF?TN?;@#MeVF_2t=P)5|LLsx%)hUZRVI4u_-?#*tK&;ubZR*4V^%zKfAjjk z>z{_#2X+1GT*gQC^JgCa@9I~7MnS9IHm2*--^HIi?mZ#;tnbfYVxue8h2AUG6=h$K zc|3FfVNGnI_>gC&&#(FTKi9R-q3QkVJo*Ch_s+_f%#Y{v_y=Su7(c6jb-v8UmrA`% z-YqU-ivQ>Nvmc*%f3o{=w?i+Z@c(7lM*F-TsTd0BH_}Y^7hHoH+Z6xL{r@_?`F#JU z>;KjB^WVMR!_Ix->GZ9p^V=mb5`Oz#GTpDu`{%j4!p#{gOrJM%|BQO!@N>1NDPFH7 zIl=X8*8bf5{c9!XfL;?mnc@kT-QatNS*ChMp(vP`Ft))D`+nM*o-Yi7z_>i7{>4gO zI3HpBJKyT(v%=RA@a@(U_cZ4`+8VCm{|hW`@Bov4$t&Zud;%Wi)~@G&$FC*^bR--7 z?i2e-JG2<)`+svjQ0h}3vZZ@5s5Yst=AY|lF*0k=J(5xIqE|aH|J;O@yyp_ z9^ZWZ0r~Sm`v;Fq=i^8)2cx`xo9gEN=5_P<=J9q+=V0Z_U#58G{pRD%>*mL29?yKe z=JCzHALjk$@yz|rKcD}`Sbh#*NdM~=J7v$KFq%#|K5DRQ^!E8 z^{<9yoYrdhqr_YS*t8zm@bIPY+BLM=rwim&j;#Fb!QdBe6@`&dptl{p$Nn$&-aH=4 zul)m`F@wR__kD?wCA*2t7`u=yN=4SJ2~j9z-}fkyY@-l`Y$^Lric*#cWyz9kX_eo7 z-&5-2c|OnQdA{H0^ZVoX`%bUvKHGK9b-&L!*SXGht~36i4}C9sq^!K$h{?4k>eSaw zyAhv`dz=b7R&!uU|WCNIesx+O<0bX zzF6=H)=%-|EbcTd<92;E4GW4_FjP31lXFh6=Z=kgJjxH?tZJs;=#XJ1Z;1XOlRh+-?`*8;I$Nt>B z{scSZTCWm2ei!?_j~@$rEQN#F-`K7nVBrt_u`~X4d{9Xgi^cWc4*p5=hw?l7pRM{B zPH2n{`(-N@(ua5U$IkKN8sdj*On$Q6KRfAn=I_LRXMAUWNb+*1fM1S>#69Cqym!+7 z1717!H#^J!Z{u5UQ?SsROME+jC;iU&h5btVsagO0JYi?~tvCi1-oanzi97Q@ zD&5D1+V0wJ|At5Qe*bU&+wq<4U5u<$2G8{UQhwT?{`kH->;J3vImODbUM|GHjRE%Q zU-7fE{{J+-v%hxs&rW^-mOw1F@n8kc51x(vIzMQ|Q{sFtENu6`;BIkT^}Snv8lQDP zhO^UP*v_9sU&LKZ_`GdD@cMiS$6DRLZ67O`yo7sFzY48oAU-?eJ|zA)<+6tD^~){! zFz#R#u+IMYn7NSP%*BYh(T}7*ybpL5v|9FHpT7wfcTOw>+om{*?fgoLI~|6F#`w$~M9{XVhvt8d#e)VJD zVMq2+Z0FCJ5ZtYXUST z_ASm}Im6Jn6xM6dn8*|>!iLm|;x3tAf%0FFoX4)%E8}?e9zgUpjioA-YR)*=xX?eP zXGG6p(^7&}+7A-_0n#grvCGVH*w-`HvA{W`VvkN3b_5fQwYo^m-{T&Neas$&EuEOf zg1#Vo`w%M8q&(Pkyb<({TMr&7)1|m#fx9bEd?)?R`N?M#0G)T*>Nx^-<#2ha3b;y7 z{W%~>t@?{#tmDjINEw`$9J2OVij&%ZO7B(rT4vC z|23WlUPSH#+Zk9Qrd?#~Q3l_$)rr`~PWnwDGUZ{vU-Ucqe_YwGX!-rm^LLit8UNqX z@2u~C8$VXHp&~D8vyETZ#3yVnhGZ-_jY?e?5yvv=yeZtV_%MNY`1^- zC<)G3?{|3>xSa>ipPluQi7jCR=26>acGkDEJb0D?o)Hl10{ovoe8I|vk!;8NTW=|r z{?@-c%R8F}-~xoiw&m^gxg5;;mtXaHPI2RS6p6lJU>iHj@8svd9Zv%M-RgdOzyEFh zJMsB%*Z)`ioi}jBiKOIj>sz6s7jc(V7Pi+*bwx#-UsBTc_}f`tnau}>yCC_e^hxhf zxG}+{ZF-=~z_GAB9^Oxr;RNJXxASvtF}OOVgzdQeyQ4TUJ*MsWcM(b)^3E@PV5hx& zr+s+mespKNAx#a7F#e3qu_gL{?cDF~wEyn3fA1{6GrqI_o%QYHXD9zV>0zhgxGnx) z{-Qhcchc{S@3dF%tZ%11dMCd-+uIrctNQ+-{T=%JPWpd{?sY23S9J6g=_xYYQS88eY%5Evv$AUG&;Hl?E&rGuj4m>G-ift zkiMMUpV;z}IiqEQ^D?kz1>$If_u<|>aKoNHL!=j2Wp1|RQ*F9Ztp=@Wo}#LF)6dM! zaDBsCu>Kfp(w6BCghrtO4@55mr^BTvBXFmF(7V!bG?QRRng+Lsd-VQ8BzOWHM>9Ep z8?@$`8!olPcG79w93E~2+pq90R0+?)Z`0QpKWrLs{MMv3MWm1O`GybGd)V~k5|Q3# zJ*XA;g0ZFN%m_sPMf#~y|9frB&-b5YZBtE(=4@V%pt=w88z0T7wg{x9;-(<}%O>}= zo}2b=^|jDw0^1+@d~;vJjMDv|^ztCBXj^0YqIwNT|6R0ARTfBFvit=3v~+mqw^|e` zYs`Nk(o<{AG@fkdP>UH1Yyiu*pI~ohj~{PLXDU|(;}Qo8RsBk~a3e#UQ2%r`9cVp3 zZ`qQ}$I}Y7&slf3LG7gl9#O~$<)f_VnmbO|q7U)5Q%xZK*2qX;hv-X^Ih!w2-)r=H!=(zAfA;-`szDK3^L!!_cwZQ- zgHg7%Jf&ORbke*9Y+v!xqo%rf6#iP=G*o|tTY6Km99i>I=9xyYd;@Pa-g7#&srbbc zDBpFDR*RVwdn;V90iqvARp8ZPR&f`vA@O^d?q@tqSFaEz)aj8sPhrKe&sdereG}`2&9z0RM{s{+q7PRKfD10RFB3{=SVk zi2t+UJuU0qM>ImcC?NVvXYCq~lYLXA_ziz5ntP4b(_D=pJ>}L7RZRf@vq?w@Kcui+ zD|8M|*xxpt;`>^AOTMmw~ zx4u1E3DLKcRWyx6tTrfY5%Et0@TUbZOf4IP@WVTN$IAiuFNjn??YEwvXnNUY-YTD! z2+{W>uHs^i_chM`z~A8xrjz$1~&w~}}-=Z~obp@xK<}$M9 zE#Uk6n{GAH*g5sg=NopOfSdCrR z$e{M;T8EnAf#0%XjjV>+E6x~iy5m~jbfO~!DlfzEQ1!w0(WZy)FQI%>gKKJ6wL|cm zCqtn2P4hyVq6Wk9F9yFt`Q>``jh>t|%_;jYLUF-CwA$s#kGQ)uu~0lD_>)@Wv)q<( zUIB=Hbuhe%P2`Iz^&llQzK(O!sKvDQ;_`SRn!x@W9{t!bFVE3z*Zi>&j6Zw(S-r?N zt~t3&8RDP6hgR*VUSJb;mWW?xt6x(KfZst|afn{0^0ew25kIK@0Y)Zuyg^Ii|#zh!)=x(?tM?EVts$NkcEHG_+1@eNGG{+G%N#cKi>@C_01 zn>bM47z*HLz5gOqUK+q}FMwYvO)M0bJNHFR)-^g+(wI7RJz*NVHJpf7*kwr&N5}~Px+m<9NnaM zh+1uAyb-d00paFcAZ_6*E9A4R7QCu1S(DO4`#1%dAAz`?>*vP@Ta7ug9BK~P7plSb zZpv~ruK;Nl?KhzMRG+n}$0&5SAm0+{+hPyZew)!#{@Fg<*$JoY!L6q7H~}iJ;=$b< z3#8fXs)OQlau(`|f_km}#YFnA%iOgDYwK!&9_n9bYwL!O06onk1v#*NFx+Krjk`$y zy$Xy64H~z+Gf8QchNlAaEfA++f>$>rApx@-fG-@0q=3U^Yibd0A;n!%v8~2NO6s0YVXzdxsCw6 z3WK2+54U6I-C1#}9;~r@Hd58){K@V1Gk zHPyM@s4r8qtsyoCwGeS2EHA`7^urU2{;QuvEI6XWSaSBX%?}oq-z$ZPN zog@`u4CcSbAcls(XBm8`3|2*bg6esXAqTU7VgzH7IjGo2H!#7C zorK^>wbCzF!xQ!C;zSR*iEvlp|&I!8#!-$ew! zJmV~6td40r$3FMs6(Q+~!KICNtJ$e1iu~&OY{CL=-ZnNP7qQRga<9`Gy}nVE#H~-~ zQ|(5g{~%b@nSMTO*W%N6_2Wm*EUzgDxMZhVPlawH4g`o|0S2pSr>0RSg9Spu7aci$ zvW}0rrmo_KGcF;n6ifM74vYQ_m><6Y-zB0MQUU$n6ALhE&N=uTypnWS9zmcn5xcFP zN=wP0K+pR*A@Bwupc5yh=5IWRzaMut_}%j$ScVOEpcMvj`4p^?PnH8C!bPX{rHeFm zLrs8CMGz4Y-A%a9GL?`Xo^NqEnm3-o{y_`!x{tWUAb01JbB{}xWZ32A!jTj*oo$K1 zBc4L{qtO&adpJj&ADv_yp-+5OQCrn!>zctfyd*>Em>K)Rl2&c~#<9j@hGZtq>On!p zbE<(&evxniRp`;52AFk&x^&7WD1HEP7h4<*+pIfACpo#?Bqy`gJDi^xF&B1A1}}2)2vst5-G6I--#qLuF+#?aRhg?xSKB%Sc<*e3nqvnM zM(L)3!Nqgdgv?MKitPachZDu~Fs-FHoprc+?3hi&Q+#cKj1X$u#0$>iYab<>h0u87*h_5nKi>@7uW=Sf~S${<+Qyye3!45!E=&g=J3FuD)1Mp z9jFg)ZXZ6th3*_(apccup~@^6WIf$>+nV!s=DRnnck4>5X;YtzA0gA$+!F=keTRu4 zll9qmnM&4SUj{vA<`56_$J&nBWLG!WJ+4{7x){fQ^#RR`$@C$$ z8+gu_bSyU4dP2jpnex-o5IfeFuSpleE?>F(IU8ih#_+;uh8~O;DuGxVf z?8paLFruX`**X7=9Xb>L$;7C@RQ%P4bT69H2UY(acK!jKe&HMf3w3_yAgkxt!UShw zScx4G9f%!mO@JN#O#q!8?0l%Io-M!a=JpGnf5lE96Cn)^V@N!01fU}eqEqr2?BZX- zd5gCT0f@$rWpGVM!n(P2A><+9OhC9zgGp=CfEcy}3%w@*f;0dsW=s+Q5BNb+26xj0 zihu>CL1{chl-U?6PzcYK0p$n;3>4OcgO9J%z!CrnXbdEdfhB=}z(DmbxDlv`lA6#9 zrUkalu)WxFT0djd6 z_^$sQ@|kxI-bR^8&MZb?;=TU87X z-%dwzf|5=xj+TTCH%DI z+EPEa)ns%xwd`y+UC3x<6!IzU8-)K|K^QApK6L@2ZO&=8KHAtT?AB2cqNk^_faVn>L)Up0T&!t5?`YP!H>S9(E6&ANZhCIkf&*aB~dw9m#=edkg!QO$W-@pk=YGi(lJjDU>n5HSH-B%eqXB?@Q!W_@$rlZK@8hI zI>XS}98OtWN)&x`c(JO5Gm_wXt zQ=CRsUePgIAzO(ubtHN&l~rT-$CbYy8Wjw^O9f@j=flcm<&J^e5YUoHK_V}+E z>oQ&}qNilK<0?aGDPqi#7Z|}u{glENmLzz2BDY#YIaaSC2l>kQ(ll~hVp+^wYMjgN zHR)oBC)Y{7?*aTCPS;OU`xjheLnKZdP|v005tj{);dqxZ$^K4J9jUZRd~t@mw7M?BYDVep$$_M$mIKW<+tlB+I| zuVGulcTc|&x3`QB!9VRu=_>M6Aa2MWtLDnqetR#-7(DRGd!#L*HI4>JHq$abMgDdmw?{n^BTFI3TdN`fTaECrk-F+8eC>{S>NUU+k~5}Wa^6s8u8s@o&N zZgEWXWm$UFeCbmREraY0DPha0D|>u&CiWjTiCpGB!yYp=c9AU%d29-vu)9T#p@+xG zRECPDF^N43)vO|$>CvpBoYfb>YUxF8qjB#{a6+RLEVz@t{S9Kh`fwO2>&EIHH@Zn2 zYcBa1sSHyf->5g;#dTq`#z^2T3v__DEH?t)vYZWg%b;jyRI)(g=v2L$3ls2``{VU0 z@TwU?W~b4;PNCRcDVHX0D@rD@0G$fo2O8}*O8V)T1hJfIQG~Rb zPJfB^iN;M#td~?-jB_hoeEY6ES>nvO^NRcT2N!pe(Nzg8cn;bgD(7z=ezp#~o~DgX zUw*ZgULtIO)$M-xDfP>=yVN(|Q`aM4;tydkD-|?_;L^haAM$#Z3Iw+8;Dv@4 zZQ)q-CqUYR8u>gV_1XTLS~;9_gQnUmH z1k_bqiUhF7wiM?`&B&ktxE+Jm>n+7PpueG9Fyp+N8`RBUcxKZv37Dpc z0Y?l0e$~O{(wt>gNKDeTj+6w}fOUMi=P7jquMMGa!NX@WT%@@RV(9JO(4dO&5kUu3 zIbOYp^?i(ypOiaubNyJXCUx9=4fkvPo-4k3p&GM~-)HZ(%+(&VUy7lpt@rC26TRSj z=}dXV1V`O4)Z?bK$->pa zzB%TwQ1tpl!ENeHZ#zWO@p8t)@i(!-pRGsoe4p%63>*A%XCm*Z#|?ut5mgNn(UVv+ z1<|ucw_J0_#b4g4ZG8}Kl_P$=K<{O1pzW>cP8*vdU-owI{aX2tZkniz3_b30s}k$z zdZ8~QQjkZdDtYt@OzLBO#_^@$<|~|+xkoXcM{k>t?T**mSQ=@+7_b7-@puvW1- zs&S4c3-6y-J2U0#f2T@*cgEwI-MWVd!k5@%@{VYuA87fjS9`r+4DFd2Z7efSp_fz2 zlflQK%7r;FuXt0?vOX|ZSCi9!+_)m1 zD%V(lKl>{E0ZB2nXYE|-xn^qQnl4TVW(lwP2x-=Cy=a|}`}Cs^53j_aPTbdB2(yY4 z-9uvf;lg|T)8M1+zAh<*QOe#VrMqzh%6ofzo>qOw$f4&I37guMf&vRPM>2H{Teou(qovU67MKM35fS#4|={ z@aP||b;;ca3uaJ6bJgzlYZw}0Y&2$ zD?7=L0n7+T$|I+VqHl|~1RU4UaHcf|BqTji4c?*!CPf$tG~j80LHP;+1?l$B`0E8viTHJs? zzZH*}!qsl0X6YkyTD2MFh&=9d@A7@kuIqmlTGRT7ObkGfcs4COX}Ws+^Hp07g7I-| zP{VP0lbZo0zN;OZ>Cf+vXxZ0xNM|LdT;sHt+QXSFd#xlZlR2i7>musWMblALG3EM> z!;c1-uUrj@soifv%@V8hMOVpbXsHXu;qFI6=!Y+7I@bG1R#d#qGP?7TkM`7|vFnTD zpwO#$k!>sksT|{x^!wL<_G7qrm6+lRS0KTh` zu>2(dUo>HWX4wC+Sr)LryhmTXP?U?xuI7-ZIOGTgdv|()eMUn9 zN(CPyDTTdSNX#`_&=Y&JsnhaATAL(aEFTe!oOy&g!qc1TP=&f_!@+-8SbFX_Rrlq0 z9%bul=HGZ}sPqX^se%M~SoPvcZnuosVVKF7T%7I3ez5Vf~ zs^(F}+wE5F9Zns`1dqoaY<@%7#pZK`y_mVpv*ZKZmQF578CQNGp@zpBfy*+<$v`Uvr`e$3{45o6Q?dm=rUftPMF_YICxb zj{Ft>0WbKaH52uq-TAi#@f3M4D^;l&P0uzl^^TY~%UlZ{oE~y}+ICm4i2Z|_y^yfa zE`I~+sBqRih6HOPFTTMe4V%@s4jZPT6`?$FxHmKMQ@}))Ek@H5A#E4mwCJZ?YdwsHaIed&) zEjcLgtbOm&ENFhAohG~T-B=TRqJ)J@w@=Sho)InYM^W7x#n@2A*d3mCZ1g;H` zoM!6FBlmBLcFGh-eR}Yaxw(Xw`6{-e`+UrM!BMwkeWqzM2vcl~^6Q9{&^tXM4+#Bg zp}Z|~l>GMJ-%^A{?F*h{<=&g1mG;_of=t?f@17TRGbQ7Xm7R4Q`;7Pn?lS4U*-E^h zz@bF@cu9M+H*o!9g8sSp33D8`K1iIoGqz{e2VWa8>~zan-Zo5De@629zMI(yPb&>^ z(Tom@nB4hCU(OjMZbJwAkn&SY98wF<*^kL_pt*u_4*H5kNcu;s~*zOnAgAM<{Gw>AI7-O4{(t5uPEen?vR5l0+_5m`LcU=?Ta(QkROoTyqqG<8qq@ zxC7TVl?7cR?|x99tkk9^>u)TSBR|loBHq#3EaE-WeA@#V))e19z&KIg>kK!4NliLg z@S&p4x2wZ)#73swlq$o9h?l&f3{XIS3Fp+7eH(W*hM zBA)Ffj?Ml2Ash5&Mz>dX=xB?VzId#fqvS(MZ6mftCw&$8(#z{C)|F#Mbgz`G@&rU* zabu6xKIF5{yG>#t^H_{Q51YV4uOYEjWYomQO=W^7<>!Q8vQM7#Er0y^bCk`5g?qTG zWKND;!8641S`8vh3=%qfs00+nPDzRXg6ZP>4`Lb%k!719lU3Tx?R^b};=jXG%m%k&U|a%0jQ`m9;c}3~ za-eJg^T7if@Ciu(90t@|alkGSR7RBnJr||7( z4Nt>{+5T^?d`6e(b}49+-J*lLM>lHSUAA0F_;lIWKbpUu*KID#TwF{PtFpg1=6NT- zrGoFp$8!-^di`;e-Z_UCZ`|B_S0Ea}7s+hxD3Zh8OIbg$<~M!1``h`1G%~B_PVw;g znBjOz-fI#!S=gR_UYR=cC^P5m)i=Xg*R}!uDFvQyZPoBG>;+Xf=s*PBN~w;ec7v&W zqwT0aqvh5>X1fmunP#T}DF7ay0l)3^cS`{(P;WrY!4aRy{OE>h{pjZ40;(1Q*9#xC z_SN0Eg{s$SG%_10d7#lnX*(G7NQLL6#E1LAFg{>!V`3SiRp{Kbw}3WA-!VvLD_g-v z?Z@nFN zpBb!kCRDdG_B>*QujoF$le*4(58|qv^Ab{V?i7>r8?pZ7{>yXvp%2EA+FHK*y>7m$ zfYH=US?KpV3rD3fViJio9^vy^*aaR1vwrQ&V~*gNNW#z>_*RB*8Fcpph0 zJjxP&j^RwxoazPF^M^DaZ(Q!88;ZZ%)n}2Ib$@v%*u81wi%jD)(MUP%w9rR2irLh; z>71dXePXv{tfP|O9t>=GrIn=cih-J6)9-O>^$54c{>3a|$qUXQriU~r688Id()p~^ z*r`rcSChTBzEg0aH^hiutVNNoFDqLCUobiU!8-GvoN4xYJR5)KDH~s5Y1ZpBt<_ck z3YN$-p$B>*&m)GJh_HC=L0l1uT0&wLL0BaE=}b~)^)K9pU^(+t?aJ;nO|9bPuHRsB zU8b3d?jGEaVlI=pfPimOxG;ut{245N+^xp(exL;AUzQDm8=Uf4bEFdF;FFt#7|%gM zr|((7X*#i(1Sl}FfYqH?$_%1{=5QAAa3>3#;CTe#a2|Yu|6L^>)BvF^b>c4c7A6ON z@%c?2gQB?2!ZRv1V$Qhl+WFEUb*i|R=s8--eS`PLlzVj7JcO6@H5cqV+euD)qkA6e zaLf} z`=PffH=wx->D@mkHaOE2N$!Ia8*(s0%TCl`&2=?Y?rcCWFD?@z0ZXWK$lA#qo!d~exI>>XM=4jw2IYq(13sU@njTd&qCSadf zr9NeQP`Vdb=fm#6vW0TeNxzknrU;NXMWILps5{3^ z1*Szz{G-&|$z*O-uObqMl7c!_r}Z3T`Mgwh2LeCI@8g;Pxbn6BCWIV<`LfErZCs}C z%I3?5SCFO2Po|T7^B_%zxPqxscXaOHYGv5i_q6el^*7mVu1*46$^L7u%mJ=07cuRc zpyu|PasBtW3Iw^b{++8t67qY_C=y%h=R2{2xB{_~H8MIL2x0XbS0pqYOh={NOUuPo z|A5uM;HuFRz-r=mtiTbw?MM^HOPtEwB*aMzM?z<}SwGHhv*1W#`j6Edh&Mr#dk9qH zv*zH$+&Q8ykQD$Ig(Ly6zC$w|IL9Z72;fKnob(yM5>Lz+8iL}08x2?w;9NrwZ-k#& zt9i6ka+^0UUQ@APx6|I_ci|CJ2DkEd+n!gyh^o$<>f2}L*GlcEzOcf}AuFKf5i8;+ zT*Xo!8(69Aj@k&EIrr>QN+p~%hwnL;Sd8*q+^8jA-~Q-FCM7< zC3Dmh4wFkx7MZiyd%!|CCParok*D?MaCh+W3bU=8jP=S&UV|c>;G_L#wWMe$H}nsm z&(fE-nfE??g}l_Zw(oPJb76#~MAbyj#J$)lfr)P%aaZ?u9Sqz?76|-sm$YP|B zWYUS$;u9=PV?%*Q_A#_mVuNM!5ZdCGNyogIq~s>Go;q|Ik|ilbmMM_YOKLnKIihVN z6Nfl-Z;H%GH*Az&T+41`SvX>H^mJ)WvhRs6%Nmw3yXYD0mBc^2ZMm&z6LXsD1&I^d zw3@l|*)Bb6k~#Vy7#Y&86s2xWhZt@oamV+^QAeikvMFxdB_gZj+bUzxXYj{YcD19M z-0{kCo!s?D4{342(nBVvfR?@f(DKHRdZBDkjEBaRKel`cMn+=Shf)vxPg;gNMSsp_ zvLv2NIw0vKWDKarKwcR4fYzVDk2I>|rN%x}pA}W3r|%DV@Z=O{ zU#O4b@YfuU(+4A*2L$WIx`u8lP>oRYnkaDwcpSrR*-gBm-71P+>{az?VztWtalj+_5Y1;i&^b z(z|N{#$RouP3hIIwmaEfkKJpj9f1rt;LRE4yWo1brheeF@6CsA%3$a7)Al=%@j8-^ zlv;L|W5vlekNe$yw)aILtZRx{N1uTl)={a$DMl;YpZ5OrKbiM1OlFzVFGFpLBZEp} zG80Zs^HlvIUhM{*FH$&2DVPN2{2(;%BmZ8d0NC06h28n5&;s9vu|*hi`~}14fUCHA z?i5^oO|oPIRiY%(%Df3M4H_$m1`D9nf6>eDmz6n+*_nzzKIe+`Y1OyYk;TDR-;kxZ z<%Ki#OZM=&ebn(;mN?6NI(W|qPK>@{Asvi?Kq1+xNh1E1lsnNqkb`6p78z;S2rrMM zbBUKJHc&fnlAC86-*S|)M@ebi|LKO-CBbn+M$%DDBpDkS>!bQWHsxokI@v}jud9() z8hY~5W3pIC1SuyglqQ`;qM}EN@v_?Id=vVav{JN?*-m6!z>j-#^6kZ=LXMT@ct+Aa zW@jkXxKYx**r(Sbhc7yK^y&QP$C-Z=R*u}K6L8Yro%fG9J zQBt%jXC8DrP5^??l{HI;nH)Xh6_}gpQ(m?r1yB^Ac}TQq*74gpikCS zU(JcUY?dSB?^&=LWqv?!{~Lc2A?0IIy++J1rVh%Kx8&%?KKSv*I+RxHyI_WX%}&&v zzzRDAH~_Zo%)2T{<3vC!^EoTSxYEHp_=^`(n?J2&1-#x0e*0)Q4A!S%+Q`^zwH!811dgVSxgcXLbj(40e+tc!M}PNC*91c1yW=Iwez}&*GDDi&w*F z6Kcx$j(U(w^4g*UmsjYnh>(6KJ;)|pLdDssn@(HkD;`IFSM*>jcN<51qxP8vG1U`i z)J0lsm_sS8zL?HZBR8kz0%kahv(Uq(k4wv zOU+M^iR(2}dr!zP7g$m6gYlRW+$B z1C?qI`vkF;WVuEs<0ZbBvcA>A@lz((+Bthvgl; zOSKSH$rE~Vs)&eVLNHDTyPI%v3M%1HNzXmx5q*x`H@QZG3*%$@NNAj=HVnV$kB2CynEU%tnBUNL2C4 zNTCzZEWqRgYJ5N3|9~we(a}0X6ag8Mfdrz)2s)HND&ic`Eg;JbFjIq+fC>qv0~HaU zLtrYfT0t>4qB;5M50{XuK%DRpe(>gkI_w_*BFg+LtH3GaQ+@TDMFxf(DH?X4E`6$H z4o~!4(|mWnp4_FN%|Ju4?4euyS^4EM-u4Cc_1uRo?|okKXGIPlm+Hc)9gqzooj?9m zu)^eaL#4sK(p8eTXq`8*HC;W^sMKRJU-wCorfwPz-QaeebfT3kI{bpNS5D=UnAsP- zx+0bXo-R2tc6$4Ha7=?_V*Sj*8M5b-)i13J)QlXzl|x&Z7uv!uGHDlh;rtqk*>BwS z=-b&-;oGPJ0Z6F~43KWxB4cRmx**6M^3Lqg7 zsVL{5F7=eyL(W9MM=rJdxuUPnH(b`U-rF$CymvIQE@PjvacLouQqiH(tL%9W8n2hW z@X55SKd@bGYToJ;frl?m9^wpnzB&J_IM}jIHutV*+lPc&z)3H%$#KdYQO~Gh4!)U$OxUeXI#+8MPP&epjATm3-NyrwvNk>0F#2Pz zCaTn%CeL)`P9z_y@-r(R%Re7v1F`f{gkSY~UZhwwQhFI=N$vDEK_$EOTC4egi={e7 zIdk|ekwqd)LG{(HEY^8$f5y@gtMR~4SqG3M8<3@s{}xNH-M{`LN|$;+%rlmRoTxL+ zEfwp1o^Zcy@dru}OE*QP1Owx|NAv!`(%u54QzmV~UB999uUHz6I}f+HMM{fy{SBq< zK?@p`1Nk8D-)e9V`NPTQ9!3-a-MIh~iEaybhY)ZiBqFK3=igi}!P`#7*%y?H}ZNdJx_ zg6$6CP~7Lz45U^m%eN1@(V1!Q&ZnGAdGgx9mA@5b_Lxp?7kN0&c_e9LG3aTxzoEG4 zB~5CQ(;?gV{}dXa{rM1Je+Dza51M*6X@f#6uA!#eg{9iR@?aPA*>SilRkrCyr(XyQH*_;^NNKkbtCZmnEGkPulZD3N^E+vu&0;b$%d>j-4|!NQ-sZ> zN85g5rS>rXOpR2y??_{NN2sH%zj9;B8aWSgByx-)>r}~eYQ1+5M+MdlYeJ`L z6fa2pdmN3jQoHN2(}XJ25;;1BSsDCOjuPmiD;$ljQ@>}?F47-U!hMRX{6~&1fE@Y! z;^?1al#x%RCg7_lOP8FoCW~0(vk+%0NQN-l<_N^7RH|Z|BmK%g)4-HAsiDiiF#1n9 z`u$=FoOF$+7qmWao%nI$v~?nkL==&VfDBbzhr!DLKLo+nVK+dC5YtbT5zn2rPRs!^ zglMVWI*j?@BX!sf+SG!z{y234Y6omopnw2s0o|q`?PJRjEC(G~pCD$QAYkg@Y=r(z zGuOU@t9?=Tzw-sL#mgo*Wh(Q9au~Z~$7wWj$}1X|Gl#qBohiT0)QAsg?B_cnMNcsr zc=jOcKI?Do-EI2O8Z!4KrH<6eNmP~vyk#m3>Qk|AN;@W6z@>OTJox3iCV^JYsI5Im zUYs6P`SK-=u#oCv*G)IRF2_hOI(0QxOlR0us3z zgviqB@&Ft59ALx#5_^+qruqs9hmVj(@%Ha^iUN+PsnMzY^0X2NR`pWWTk07H&3^yC zG$6jQ)e`1SFLK%F(PKJ(vz4NwB!PYdsfrVDaqnDVJPJP{a_PEE6W`6g2e$NTg+@F) zY!TwPVbw&wJ(d_Jy`(%Ve*K=vixr znJicR)s@eYZ!S;d)5K=a7;x)YFYCzDHJ;NohVfm%onf2!DxPW0_nEDyuhA2+W}PEU z%gH>v!AL+0TA`1b@I33~;V&@Qkg(@%!^y_)$)~4@=ZLz^gIe8#m1d()p`7FgT#{DL z#33ls%dd16zXz(8?~Eu@BHEF>d0Eey|75^`Jl8AnR9kZMli%;R z3-V?qV6gCm^NlFCnSmfAS;8R%JTQxi6juLUHUeJ%#GltOP3+Z?SK)41miP@sA zAY61;alKdRs7ri=QNO`O*$~PS{6gEN1%A*};;gFB%#9y#F-{O@Vgo_AvORR=>0qA# zxF)`0f56rF34n{w>la+l@~B3+(I>okrr+`K));)0&^XbC{S7YU>mn6tF6k8XZ*cw5 z^cBbl&3oXkCmxOmw;1m+1j`@Sj)n*&aL6wOxD`qdIH?m$0<+wYct-sm*gb?1^^Es` zZ3|K~7KRAyB;eNK{Se>)g8?@ev%mot=rRce7r+qk{OCqN5S?6RfsF?-3-o${gvTu4 zx$FiBk6FMK{W(0>J#(W+(Er)|`h6^&WDZ*;L0hEOxx!@b^T8{{2iCO7*$S2XC+NI` z;`Sh3j(gnkoZ;vskbi<5ikjrZ+G^37pOr_x5cXqzt(rW=)*1PZl{_9%g{z}y9??(8 z7@gF0+f3H&ZZvZ+u@&~48snV~H9uQ!?c zwMHaO3{UN@n#3PULO4tayuin+Aywa2^#rKR+-P#WbnUn8tZAUBdJ*71YP2VE4h}wT7DIMh|)ST|L^d2+K;!#?I&B3e#q z&k9{@E-yWmdnhx)0d+=!nS5ZEzP-R4ec)SC5<6HFXwV%hAUTbnq^1E($@T@=yF{e+ zAE^kQgcZCtl9G?a>yh#A(NNtLjHH7JHETp_qJoqtn@#B=n5RgiFIWe%H5X`i$(;BX z%{qe3lKyBm_!BA8ZX!|*uwegHv+z9{I{&=c^FXsCh1y*vK(onz_O^d$_MgA4ZGm;3 zu*`m^*5BXuf7C2YBO3tubTKpHXS3Tw57=aoZGm2G32uO;J0gsv4w%en#GV6LC3;Ix&}a9=4|e?>kE*5}=mikCM91U|}6w5NRD*ej1>I&2)& zqi4^f)gzVie!pXqOUT!Ku5{O4&bHs(y;pD8x;(QiC8kGOG9eV7=I<}?O<>hB8UJqI zAqipcv?re@ZM+;J2K743>#IlJMm&dkTiMrg^xxrmy&R7Xzf+h~(|@snLS14(@|b{a zXGx-W$#{?Zu=+xGfo0}yn8O#8OrHmZwq^?FSTWP3SCq9Ts!p~%qMyhLIb8DY%TEg_ zvd7}DK6UkO_~&=UPycQLUq><2S9kF>P-~p3?*mNWmEC{|9JEq^PS&6(fWfl=UNHa+ zlYi3$4(ygNdCk9>z~_^2^)pv+Sm{JbToYgh2ZtUS{M`#se*KVP|6LO}_-hwJl<$Ov zD4BDR?ZLs5vq$PxR%EZtA%tEubWp3ad%^%a3ELqJ+hwPybZb)-DZFrqBFNj}5L4Y{ z9+@mg{obChVRaCGRnay7#cwvgKC{*F zR{Kh=w&>U`jqB=u^sBN0hrUJ3#A5mP8uB{n$b|rRqy(fnY)ms=TkrCcW&JtcEmpd?O7v-nYR8(6B(zKNDl|nZnrkwHgh`rC| z!!z3BG_T7I*J{QHDNCjTPx2mh`m$5+`L2FOD=YEpEm}Fj^d>aAh!2i z8?&Fugo_0~qy4Ef6tX9sFJ1F;IvMA=>TH#lWHN8kv+{Iai$2)YRmnzReO_#Mb$x*w ziM&T0;akS#lP!PnP)czc4@ncRjxP=_b<%fMy~<%Zd}jaAD@W;B=<~8sWr_PPZaP#4 zFr6ZZ`#xmK%eKEDlk*(KG#{Tv@wSl8wIa*Z_;_B34~N_4gYM?V;m^J+6K4#Y%I!UU zC>T#V2j!H%1-L1nv&@MyaWQ=|DYKwW<-)k2WW&I;AU^n%X^{uyCJNx@%Yf5Fz5LwwmYe9P+V%WCzZkKfKO@#BgGLl>pDrmn7gypH>r zdRF1_g;}wL9B=RRd@AoQ+~JLd{IhqOOJwfrOAx-DOW{gg`#`IHQHi1PCYpA{80pvW z?S0@j-ar7dgR5D6XfBv5R`XntZ+U_DQbW&Q@WkG|`wA<`7Ob*$Sf}C6>=5zSNPgMD z|9+Des9;8sRFc-w%hL|i5(I8iySp#iL~!ezyoPOEJkGb-8p+SJEM^G?60RCg8U`PE zVpPP^9w;O07bqut-hRM&u~3sbKl-@Eo%O{5?|nLEwVB##;T;0%&eObXKux4ZBknq%^C(isrTFbYg@O0L9bfL#NsFIKL7f_1G zUY;${6OPl%#`Iq=FnW@nawLD$Pf(C^J&CVu@bYIb+)3=GH1=g(jP8Ta#%H50w3fbY zcjMip3Ok~G%&<6Buw=mRriEeQm80q@X8E-&&r0sx_P_4n_RZGEEQTje(n)MOA$2(S zt7U7AK@7hP?~K`oNM_}zQ(MHoM+v72{Q7C|o%v;aQOt2gp>py8BjtylRwJVsd!r~n z6zfKrb%U_rc_|pqt6bar@y}r?{qXQW)YI-vryHNI`#V>vA2uMuQq*D5-u}eQtfZiC zNx(plEb=#A#vRPo>BcI@Ji;RX2fS<#RY2h&&EPc#uUpV!FsG23peHqOX)gdSPqcN@ zg7*OdEBDXjA8uB(#JLY`F@cMJWkkai5Q28GtUq?Mte{^8c()G$K7aql{$%t~Zu_lZL)`kaCZw#jlrdjYY04w+ z4sKNZ>J5d9)+hMZ{f8zJ-EMStm9T`H$jSC4>`Ga4Mz?=?_~?s(??g>%`|9|i>Gqf+ z$sF-)dAi<&!T#qtl{B3R20}O1&ZfD`Ctv%V_}yvZ$?nN$m!nInUbIL8`|{I?+OsKN zK3!)Ox@0pl5TvfgduU{{-j;_V-EtfGpF#q3%XD8y0l)1?{Gb&mNO5VH?0T+>top<_ z1g^j{2#a0>v^dZM3w*+0f`6|X3PbZ&lJ+9@3FtDhWLN(`y?qB*6iL@^&ybVk9AuE3 zGXs({l5Z@@?Um0cnwHH`fM~J^%6IHg z!XmWB8<5D$ta{Gu`U0ayuV$yMzJ+{gMYhTFp&Oz67x9Di8u8i3m+untb|tlVb0-gF zl9I-@RD5kG5`VPnDEpXdNJ!I3bC&faFO&H~HW!Df`HTtQ`?!zzI=L(LY$*&$bw?{1 zw3SbZJwRdZr^G8tr=$=lb~`>!QaKi`lOi{dawp{prtBkQX49xB;TYhO7tAVK@Uo)o zNaTo2y@eXq;yQNC*vX4?Y9z47^qvhL7wfrX9tn3NEi=!Z==`!2NCH#-^3-*9A)QXq z@%xkC@)$0*2wyG{q?~q?JoRDvUHrVUhJiJQxcQ=B0f(Vkq#y20)z`Iz7lpg(lViRe zsfbg>bp4qv61jOk_f(jzG$z1SJx3asyg*j@FSbBg2~P2E#-{=ore6kXnDu@s=VW&I z&X)VmgZ%3$QQ}2}Q>V&A$#gn}2k+bbWQ(BEQPS?x%vQXkiH6-TwnF^k%D=Pqf;i@z zKtHb954I8%I!u7H3}Rqu{bURNo&E^u0$y}%GDRVr5)TF{I39ck&JwIM+!h!SaC{fO1n0AInkU}L$km#`wSz*QcAy0Oy%xQFr}TQ~=6 zOTc#n+X9|7azHK^x)%X?)!K5;jjl{aP zs&KSt8P%*j(L-9~XnL!QrtU-$j5FLj6l0%-%$hQJ@$h46E*o0bPHeXzhu}{yA>5 z72i|-mp7{~{ggB~`5vwbp$A3q)Ikx+gZ$dxyyq47P8?}JOr6&17%ADF*xR5;3QrVp z?Ho9C3#fw*i6TC8&TPnbM-m8JGw##;TD2cD zRb56RmhGxmJjWOx;(F6|plc~2foxrm$lD;jnTF@fU6oHRTB+jKU(Q=dQ^hmHGu@Dj zXE@^Uz+y_jQ<%4D6y1Yryt2fLx*c*XWPFru*4R5Z*^mvzTIfIFN=G)y?xj7t=gdiR zH8pDBo@fsxZ9nUzX|y2a0|T15F|j?h7?F_@E4-l7e?_a5DdGQ2OMwkVq~yQqN{5m| z!L%@d)+ObEdlY|9EAm8?P?$stAT23mNP^=+^A*H@ROkoX$Tp_fA#C{X#M;V!Mc9`a1yNRx5oka1dwAdVE1De0^6WE zAlv|}^+yMeZva%o<~-aAoBiJh@b-Z%003!tc*1HOTsJ-rAK{2>tb*SF8T5K$1XxwS>h%abhbRB8?#a~~PBJeQou`b}#)!)_caT*_SaR6) zMotghbL5M3y24sWCNUe6V?#;gvuo5s6wkM233Z-k zyjLB|e(rcd!KBy#UpIGp||kV*d2DQSH84 z3gK98*Qh2Q`ix(>7jyVDX%CV>)4+Qea@C8_m3C5WY z!gxT#e=*FG491wEiGuh+A}H-N+oy>1Gaq!dylxQoa-2lQ{0$aMA2>^g}Cp1BZw(?MdXhvHM^`5;y*Y9C8d~{U9R`^ zKFL8+Dsy$%#4lB#a2Rb()hbpOO3NfA-`ks-(rvKys(wU;kSq{a)RXf;L?c!4$NZ_J zoFGNn&lJWHE3_}GYA(=MyN|o))4B6JbTS)>lOO&TgWtM!<*wz&m6t2+Ue_NR?MxYyT$40NX}I`W?3RZro5wkl?_vLjUaNL z37Z&|8XV>M>ogY@7s6lWJTh5MQ;bc;aNKC>fcK6dh?zyN1x3_`o0QZKHu z{h0a{eYEU~`~oTJB0CNxg>3wTGW0o~N2MZR zC4;djJE14d!}v&cH@rp$i8%|lU8mr%GYJnnUbMEI8m<}`LZN(I$7CG132fveFKbRp z6l!YP2-jEP*$CWt+HE6HjKAaCJ~KOJ-Wo$Ab8C6TTRdD zP0R60CPLkj8cjdlkxGvi(?))p$%!d;k|iN)%$l0G$*EnsE=pMzcdFPW(v zLb0Ao7?W`k#xirtMzYj^ds3*f?0}g`e!$Fep+7QX4l~n;E-^I<1r{>4l-kW4V!ZtUeNd9DO1FIs?P+A57vtad*n6I*uv2Q$|etzpSb@)yF) zq;UhuxN9Qkr1gUxK4O`vM;Bw6+507#Y*9@QHQFlAj_;DeLoO)={O+fKz+Yzr(fj*K zm7um3u-ar`e!R#Zjvz)c4&Z8P;m)vfz7vrdRsEUZvihJm5f2`1ni#} zhv6fcN?6MPT_SVf;*F=P9USIYHB*Td;V8li{1$Fzq+1t4PDtc#h8k=>7%KaRRL^c=>2 zqbq+KGQad089HtqUQqf~|8ceG#6B^8GBTrtks7Ry# zU{MtP%r*NPpHuUm7+}MNxep2|(YWTnV;~*lU9dUkaJ~cK% zV1NJVp)&eoJ|Y&cJ!LcEo5K{^JS~Dl`i&ljF&z_hIOfthg1a@0Gw^gqK<-}MsH(hi za#y5V_W1?b{*14M+c*OIinof!JUANlhm0bonNBoOYzy1AzI0`Yx~$+-`sUn17{_c9 zri!%auqD4(oAxu(?WNsx6AEP^@l%?$&%(JYyX!q&)<$y$-}nC}u5w~8Kef;&f9;hX zo7*`yoTCVwr>KXAwLg6b3SWM9!24Gu~yuFlNhybUJm>zBfh;Khcgu zuPh)*>HKcawnwii>!_nKZ2~Dxc>hVd!^x&;~;0WW+`Z zgzhj|o)w)UxJ8Fvx%%#+C{k55xI}s?+eOlj%l(iKhvgF2I15L&Qpg!~v(-yWt-Wz( zo%%;lJP}Eyd0@P(%)c%}5^rB}xIe+`$n0`*VBQR2nkS`ZV!Cl`!Y~A znS(|}v?(!37*&tg0h7vvRBi*YQ%*}5+kTgsv=0jAi(eNx%>A~96d6IMV@u_)>C0Z*iSLgm0t_sNe6Fm7gmXm|9Tv1z; zryEB{Zv8b^UZ*HJ_owvw6s}fHHaeHhs6LZ0pK_2E#|vRy$3YFt%2IY9lPVp05;`M0 zJfbmGjE9Miu+uEacy!rXYrZzmdNaoz9B&uhgHqi)J*K5zYm_wQdqSIQPO`gqPgRGA zH2YBg^N4yQ!qKqW@Meqm1y$PH%jwTMq#fc{*lBl~lzjKAkhqtue0=NtU0Gvk9KyBv zG19-i!AI>?55z8%EZ?%#J+&efs9@RyL}eNZL`8ut$e@lENMy*fh(PZpQ~*&i!7uRl z(*r2%Nd)GC!f_Z<&eH%MsdyxeEEU45Nq|0$;9{$Eg7gY_Ea!});T%IaqaU^ca^U!h z0|O)v+fWG45U`z*gS|X&92;^49t4{cg`l<_yo@b@&#@qNA$TgFda&Rvfe931@##Ep zR)IY$^un%hGk`q;iq)Ma{wiu&@G8CS>hN5+d`_TGBYlvkdxvhqWc27$gGbxs`j^*k zzPHu>gXoxZN zyTIzdut|Gsb8UepH3U85gmb*ox8`+ErCVA;S;aYFSxUui(K-6221&$R3+v6TDg$$s-EC=>2>V;N%A$)ja)sJW5>0pgkS8O7T;DT5FGwR6GBXdy1rR zMNc>;6E0c@LCXKKVL?U>gV)hST*R*k$w(Cl8}WEVI;lR|$vQsv4XY7bb_n&ZN9CV) zOO}#|{WMpQn@&O3yzAalljNrw6--hDiC-FG-dc^467wG9qj-{r`WY|2&6IA{^yyFvIe*|9`9= zmUb9h6$~KGu#N}y01nc;;3#bPvj!e^8xHXG!DlI4tkqEHH4c9ZgIe%09w1&=pb8WS zz+kbg91M0@v!CO2kp4Apj)bj-JP@XZJ%A|yo`kT51t=Zj<<*LyZa5q0EMVpg$)=xY z7^q0{tTG5<%q>0f^2C)@#MYj;NN(9XqOQH76X97Zhac>J3n$dmyZ097ib&Y9A;-Yg zOsY?J3#3oXcYgM4{(M)>ZYspepJ`}B;X1!p#WnkErMgizXql~33U5PXg>|RUg`8IN zcK#eod@wap3*NxwSqmkqhxY^cuMIbYz0e-ceZJI~S9iYPBmem0`kgCQ!c{Bhj{1%l zUffrH))yf_NK}zUe7lKMj&{ZkEDgS>NHHtdZ)rc(ZCnrQ&({ zv2geHk7$5p{ixjzmkayXvFCq|WdVB!-M7uH_Gy0~yQ>kY4#2Sp10~u^N!k<+k$uOq ze#A;06sY{~V_5@Wdmvju91M-eJrX?K;#RX}V_ur6GqT)|w<4p~oKm38rv{zrFLD|l z#`Svh)Y1&{da;g!9w+=1)8QpzJ7hhyivv_3`lPsqT{xcjuR=}yg50gjY5Uz8j|E6Wu1Q| zdbl{(!1a?|eZfQ??%QCR<6uF|nYv;hpBB9Inv2iQK?m%rcFa`o8ol|Qn9b+hwVY3K zRGwWbbh%YKH6YB|=H>edt-QXA zg03`&sI!t+ySnWn+ZT(|1>?Uul?XbO z{=HMbPu{@p*HS?6j@^MO35j7$&S{W!=8u1h*YNeesZ0)azwEJ5 z!L)@@RZGLOV!2;&bGs+B!#o>SdkbO;;wB_z_=U76_}+)4-8QaQBHA0>rGFe!TXjU)Sny-O2C4fVq1W1UZPjdW78)Cmz;b70i! z;vD%ba5Y}@9T#m&8WHD!GTS}F zXC3Ho-(S8JIYucS?9Hf=K>h6v$&BIcLcmyYc7GZDRnx{tr%IR zY6nd5O3)gwVoRluM{{zDh!{H;agJE2P4rWVXi z_2Y(GpOb9nRO`nLf~edK&GhROS^Jep-lBKsHz`hcBM!;gH=Pk0V%O3A+Cz?{9ka_+ z(RZ6xXXE~0BHr>q=%nmYv~6}aQJ_EJ%dXAX&XeVLYUCd-kUt3}VM9F$9!cE2GC>gd zp>~Lgb|8cd)8H&^?SI-$)*bNyuropZM&dPeao?PVzg>dQdZ>k}TBVCwZ0gTC<3K6E zm=s)1iWPQ}{HPv9hKDT@4{FC?6-pA;-h>l+u^-<7hv$K&IEZ7wdNzM|_c@T|gI!kU zfK}+hh2I}^pii()P563XKQ<%k7hklz!zGWUF+9u2w?MG$+ivKX-b1wW?2%jMacZyI z))q43aUR#Kn3w4z*CP;TOKv3iA}V`LW;poVJ{HwQdM_p0uCYGbdzlr0Z&EYn`>p34 zM(!!oTaXu>vNN(WVHOV6t&T?8%l-Y^k zZ)+S-ZkelN;BYv4enw8yyh51g?acADUKiC}ZJ&V$6h<52)de!S+?s8tZIY!WJ){3a zTlfySbVXIEsdDwAJC9NIsgkmfv$l0`-)J?`;%#TF&~5kl6t74MXY2ebWBhM>DoKGu zivYZ~0g%$yh?jln0c8&{r&&`|LNQ`^?Gf%qIlsw%H#@15MUihSZCgW}irSQ>$)%dC zIFoplQ(8Kt_Bf9h)FF-{14GCj>HynMQADY!6DlJ^`%zJNUUDc1FW7<5Z*Bk;#cmGa zdLy7hY6Jm+8gSVLX++^wc;dPZy3-=mGtaUi)CV7Gwg72_8E;h6*7Msj1`IBkhAUASU+XwonwLYL18CEm8r}z~N*NSzhKj)X z&tE3&{)}QbhU>=d%SeIJu|E>@08))L0pZO7zHjdX%KjgejfLB=Cf&Xa>p^4#K%zmu z4fY{F2K2rNK$gCTJHqD&0Mxz&yqbi~Lhz6uO<+%;gNUYmi38UtIC`}pG77uI1lAN# zg*C!DR!rslH%1;GJ-k#To3zft>A7x!C;7qH^H!5Ak!Nf7dc3%gXUYwskuNXE-9BO} zBCK&Be~q@XiRZ%u!n16ep2T}Tz0U>YY>#qV%eNIa>y*nO^yW*vo}Dij)8C8?9VmKg zd1RRE5&1K++)l=+7tA{|U9&9}kJnW)N*pVibW??{_UFAW=CLhWl!JprjI(Pb!5$S=bWiDsq&fvf^sMHl76ya2(lBEBAi@ DtAIjt literal 0 HcmV?d00001 diff --git a/examples/models/gltf/Monster/glTF-Draco/Monster.gltf b/examples/models/gltf/Monster/glTF-Draco/Monster.gltf index 633cef30f5bb15..a8f9b4d27e3761 100644 --- a/examples/models/gltf/Monster/glTF-Draco/Monster.gltf +++ b/examples/models/gltf/Monster/glTF-Draco/Monster.gltf @@ -4201,167 +4201,167 @@ { "buffer": 0, "byteOffset": 51032, - "byteLength": 4485 + "byteLength": 189 }, { "buffer": 0, - "byteOffset": 55517, - "byteLength": 4485 + "byteOffset": 51221, + "byteLength": 1047 }, { "buffer": 0, - "byteOffset": 60002, - "byteLength": 4485 + "byteOffset": 52268, + "byteLength": 1440 }, { "buffer": 0, - "byteOffset": 64487, - "byteLength": 4485 + "byteOffset": 53708, + "byteLength": 1526 }, { "buffer": 0, - "byteOffset": 68972, - "byteLength": 4485 + "byteOffset": 55234, + "byteLength": 1325 }, { "buffer": 0, - "byteOffset": 73457, - "byteLength": 4485 + "byteOffset": 56559, + "byteLength": 189 }, { "buffer": 0, - "byteOffset": 77942, - "byteLength": 4485 + "byteOffset": 56748, + "byteLength": 1461 }, { "buffer": 0, - "byteOffset": 82427, - "byteLength": 4485 + "byteOffset": 58209, + "byteLength": 1030 }, { "buffer": 0, - "byteOffset": 86912, - "byteLength": 4485 + "byteOffset": 59239, + "byteLength": 985 }, { "buffer": 0, - "byteOffset": 91397, - "byteLength": 4485 + "byteOffset": 60224, + "byteLength": 1053 }, { "buffer": 0, - "byteOffset": 95882, - "byteLength": 4485 + "byteOffset": 61277, + "byteLength": 1016 }, { "buffer": 0, - "byteOffset": 100367, - "byteLength": 4485 + "byteOffset": 62293, + "byteLength": 189 }, { "buffer": 0, - "byteOffset": 104852, - "byteLength": 4485 + "byteOffset": 62482, + "byteLength": 1440 }, { "buffer": 0, - "byteOffset": 109337, - "byteLength": 4485 + "byteOffset": 63922, + "byteLength": 1077 }, { "buffer": 0, - "byteOffset": 113822, - "byteLength": 4485 + "byteOffset": 64999, + "byteLength": 1053 }, { "buffer": 0, - "byteOffset": 118307, - "byteLength": 4485 + "byteOffset": 66052, + "byteLength": 1101 }, { "buffer": 0, - "byteOffset": 122792, - "byteLength": 4485 + "byteOffset": 67153, + "byteLength": 1031 }, { "buffer": 0, - "byteOffset": 127277, - "byteLength": 4485 + "byteOffset": 68184, + "byteLength": 189 }, { "buffer": 0, - "byteOffset": 131762, - "byteLength": 4485 + "byteOffset": 68373, + "byteLength": 1445 }, { "buffer": 0, - "byteOffset": 136247, - "byteLength": 4485 + "byteOffset": 69818, + "byteLength": 1061 }, { "buffer": 0, - "byteOffset": 140732, - "byteLength": 4485 + "byteOffset": 70879, + "byteLength": 1069 }, { "buffer": 0, - "byteOffset": 145217, - "byteLength": 4485 + "byteOffset": 71948, + "byteLength": 944 }, { "buffer": 0, - "byteOffset": 149702, - "byteLength": 4485 + "byteOffset": 72892, + "byteLength": 189 }, { "buffer": 0, - "byteOffset": 154187, - "byteLength": 4485 + "byteOffset": 73081, + "byteLength": 1482 }, { "buffer": 0, - "byteOffset": 158672, - "byteLength": 4485 + "byteOffset": 74563, + "byteLength": 1034 }, { "buffer": 0, - "byteOffset": 163157, - "byteLength": 4485 + "byteOffset": 75597, + "byteLength": 1103 }, { "buffer": 0, - "byteOffset": 167642, - "byteLength": 4485 + "byteOffset": 76700, + "byteLength": 1004 }, { "buffer": 0, - "byteOffset": 172127, - "byteLength": 4485 + "byteOffset": 77704, + "byteLength": 189 }, { "buffer": 0, - "byteOffset": 176612, - "byteLength": 4485 + "byteOffset": 77893, + "byteLength": 1393 }, { "buffer": 0, - "byteOffset": 181097, - "byteLength": 4485 + "byteOffset": 79286, + "byteLength": 1019 }, { "buffer": 0, - "byteOffset": 185582, - "byteLength": 4485 + "byteOffset": 80305, + "byteLength": 189 }, { "buffer": 0, - "byteOffset": 190067, - "byteLength": 4485 + "byteOffset": 80494, + "byteLength": 189 } ], "buffers": [ { - "byteLength": 194552, + "byteLength": 80683, "uri": "0.bin" } ], From 6367e1d938cd08e04969c23b922c23e74c8d3fa2 Mon Sep 17 00:00:00 2001 From: Fan Zhang Date: Tue, 2 Jan 2018 15:19:51 -0800 Subject: [PATCH 5/5] Updated Monster and CesiumMan model using both mesh and animation compression --- examples/js/loaders/draco/draco_decoder.js | 21 +- .../gltf/CesiumMan/glTF-Draco/CesiumMan.gltf | 5716 +++++++++-------- .../gltf/CesiumMan/glTF-Draco/CesiumMan0.bin | Bin 115593 -> 0 bytes examples/models/gltf/Monster/glTF-Draco/0.bin | Bin 80683 -> 38102 bytes .../gltf/Monster/glTF-Draco/Monster.gltf | 1406 ++-- 5 files changed, 3765 insertions(+), 3378 deletions(-) delete mode 100644 examples/models/gltf/CesiumMan/glTF-Draco/CesiumMan0.bin diff --git a/examples/js/loaders/draco/draco_decoder.js b/examples/js/loaders/draco/draco_decoder.js index 3c3cfdd00b1307..b9bb7cd7cc29f0 100644 --- a/examples/js/loaders/draco/draco_decoder.js +++ b/examples/js/loaders/draco/draco_decoder.js @@ -1,23 +1,21 @@ var DracoDecoderModule = function(DracoDecoderModule) { DracoDecoderModule = DracoDecoderModule || {}; - var Module = DracoDecoderModule; + var Module = DracoDecoderModule; // included code may refer to Module (e.g. from file packager), so alias it -var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=(function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}});Module["onModuleParsed"]=(function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}});function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]==0)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var Module;if(!Module)Module=(typeof DracoDecoderModule!=="undefined"?DracoDecoderModule:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function shell_read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function shell_print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function shell_printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}if(!Module["quit"]){Module["quit"]=(function(status,toThrow){throw toThrow})}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value;return value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i>2];var end=(ret+size+15|0)&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>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)}}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}var ALLOC_NORMAL=0;var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(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>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)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=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}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){var __cxa_demangle_func=Module["___cxa_demangle"]||Module["__cxa_demangle"];if(__cxa_demangle_func){try{var s=func.substr(1);var len=lengthBytesUTF8(s)+1;var buf=_malloc(len);stringToUTF8(s,buf,len);var status=_malloc(4);var ret=__cxa_demangle_func(buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}return func}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var ASMJS_PAGE_SIZE=16777216;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}if(!Module["reallocBuffer"])Module["reallocBuffer"]=(function(size){var ret;try{if(ArrayBuffer.transfer){ret=ArrayBuffer.transfer(buffer,size)}else{var oldHEAP8=HEAP8;ret=new ArrayBuffer(size);var temp=new Int8Array(ret);temp.set(oldHEAP8)}}catch(e){return false}var success=_emscripten_replace_memory(ret);if(!success)return false;return ret});function enlargeMemory(){var PAGE_MULTIPLE=Module["usingWasm"]?WASM_PAGE_SIZE:ASMJS_PAGE_SIZE;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["fround"]){var froundBuffer=new Float32Array(1);Math["fround"]=(function(x){froundBuffer[0]=x;return froundBuffer[0]})}Math.fround=Math["fround"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=Runtime.GLOBAL_BASE;STATICTOP=STATIC_BASE+27904;__ATINIT__.push();allocate([52,24,0,0,183,24,0,0,92,24,0,0,144,24,0,0,8,0,0,0,0,0,0,0,92,24,0,0,212,24,0,0,8,0,0,0,0,0,0,0,92,24,0,0,253,24,0,0,64,0,0,0,0,0,0,0,52,24,0,0,25,25,0,0,92,24,0,0,235,26,0,0,48,0,0,0,0,0,0,0,52,24,0,0,13,27,0,0,92,24,0,0,50,27,0,0,48,0,0,0,0,0,0,0,92,24,0,0,115,40,0,0,88,0,0,0,0,0,0,0,92,24,0,0,98,27,0,0,144,0,0,0,0,0,0,0,92,24,0,0,187,27,0,0,160,0,0,0,0,0,0,0,92,24,0,0,15,28,0,0,176,0,0,0,0,0,0,0,92,24,0,0,67,28,0,0,192,0,0,0,0,0,0,0,52,24,0,0,110,28,0,0,92,24,0,0,146,28,0,0,216,0,0,0,0,0,0,0,52,24,0,0,48,29,0,0,92,24,0,0,122,30,0,0,240,0,0,0,0,0,0,0,92,24,0,0,18,31,0,0,144,0,0,0,0,0,0,0,92,24,0,0,155,31,0,0,240,0,0,0,0,0,0,0,92,24,0,0,53,32,0,0,240,0,0,0,0,0,0,0,92,24,0,0,199,32,0,0,240,0,0,0,0,0,0,0,92,24,0,0,109,33,0,0,240,0,0,0,0,0,0,0,92,24,0,0,8,34,0,0,240,0,0,0,0,0,0,0,92,24,0,0,158,34,0,0,96,1,0,0,0,0,0,0,52,24,0,0,73,35,0,0,92,24,0,0,244,35,0,0,120,1,0,0,0,0,0,0,92,24,0,0,153,36,0,0,144,0,0,0,0,0,0,0,92,24,0,0,47,37,0,0,120,1,0,0,0,0,0,0,92,24,0,0,214,37,0,0,120,1,0,0,0,0,0,0,92,24,0,0,117,38,0,0,120,1,0,0,0,0,0,0,92,24,0,0,40,39,0,0,120,1,0,0,0,0,0,0,92,24,0,0,208,39,0,0,120,1,0,0,0,0,0,0,92,24,0,0,252,77,0,0,112,0,0,0,0,0,0,0,92,24,0,0,27,45,0,0,248,1,0,0,0,0,0,0,92,24,0,0,140,45,0,0,160,0,0,0,0,0,0,0,92,24,0,0,187,47,0,0,24,2,0,0,0,0,0,0,52,24,0,0,113,48,0,0,92,24,0,0,217,50,0,0,48,2,0,0,0,0,0,0,92,24,0,0,137,51,0,0,248,1,0,0,0,0,0,0,92,24,0,0,203,52,0,0,48,2,0,0,0,0,0,0,92,24,0,0,21,54,0,0,48,2,0,0,0,0,0,0,92,24,0,0,191,54,0,0,48,2,0,0,0,0,0,0,92,24,0,0,125,55,0,0,48,2,0,0,0,0,0,0,92,24,0,0,48,56,0,0,48,2,0,0,0,0,0,0,92,24,0,0,222,56,0,0,160,2,0,0,0,0,0,0,52,24,0,0,161,57,0,0,92,24,0,0,100,58,0,0,184,2,0,0,0,0,0,0,92,24,0,0,33,59,0,0,248,1,0,0,0,0,0,0,92,24,0,0,207,59,0,0,184,2,0,0,0,0,0,0,92,24,0,0,142,60,0,0,184,2,0,0,0,0,0,0,92,24,0,0,69,61,0,0,184,2,0,0,0,0,0,0,92,24,0,0,16,62,0,0,184,2,0,0,0,0,0,0,92,24,0,0,208,62,0,0,184,2,0,0,0,0,0,0,92,24,0,0,139,63,0,0,40,3,0,0,0,0,0,0,92,24,0,0,215,63,0,0,56,3,0,0,0,0,0,0,52,24,0,0,31,64,0,0,92,24,0,0,255,64,0,0,80,3,0,0,0,0,0,0,92,24,0,0,99,65,0,0,160,0,0,0,0,0,0,0,92,24,0,0,194,65,0,0,112,3,0,0,0,0,0,0,52,24,0,0,107,66,0,0,92,24,0,0,20,67,0,0,136,3,0,0,0,0,0,0,92,24,0,0,183,67,0,0,80,3,0,0,0,0,0,0,92,24,0,0,75,68,0,0,136,3,0,0,0,0,0,0,92,24,0,0,240,68,0,0,136,3,0,0,0,0,0,0,92,24,0,0,141,69,0,0,136,3,0,0,0,0,0,0,92,24,0,0,62,70,0,0,136,3,0,0,0,0,0,0,92,24,0,0,228,70,0,0,136,3,0,0,0,0,0,0,92,24,0,0,133,71,0,0,248,3,0,0,0,0,0,0,52,24,0,0,59,72,0,0,92,24,0,0,241,72,0,0,16,4,0,0,0,0,0,0,92,24,0,0,161,73,0,0,80,3,0,0,0,0,0,0,92,24,0,0,66,74,0,0,16,4,0,0,0,0,0,0,92,24,0,0,244,74,0,0,16,4,0,0,0,0,0,0,92,24,0,0,158,75,0,0,16,4,0,0,0,0,0,0,92,24,0,0,92,76,0,0,16,4,0,0,0,0,0,0,92,24,0,0,15,77,0,0,16,4,0,0,0,0,0,0,92,24,0,0,189,77,0,0,56,3,0,0,0,0,0,0,92,24,0,0,39,78,0,0,112,0,0,0,0,0,0,0,92,24,0,0,191,78,0,0,80,5,0,0,0,0,0,0,92,24,0,0,213,78,0,0,144,4,0,0,0,0,0,0,92,24,0,0,195,81,0,0,8,5,0,0,0,0,0,0,52,24,0,0,246,78,0,0,92,24,0,0,62,79,0,0,216,4,0,0,0,0,0,0,52,24,0,0,8,80,0,0,52,24,0,0,34,80,0,0,92,24,0,0,93,80,0,0,216,4,0,0,0,0,0,0,92,24,0,0,6,81,0,0,216,4,0,0,0,0,0,0,52,24,0,0,15,82,0,0,92,24,0,0,61,82,0,0,8,5,0,0,0,0,0,0,92,24,0,0,147,82,0,0,8,5,0,0,0,0,0,0,92,24,0,0,0,83,0,0,144,4,0,0,0,0,0,0,92,24,0,0,230,82,0,0,216,4,0,0,0,0,0,0,52,24,0,0,32,83,0,0,92,24,0,0,83,84,0,0,80,5,0,0,0,0,0,0,92,24,0,0,117,84,0,0,80,5,0,0,0,0,0,0,92,24,0,0,131,85,0,0,136,5,0,0,0,0,0,0,52,24,0,0,138,86,0,0,52,24,0,0,11,101,0,0,92,24,0,0,107,101,0,0,168,5,0,0,0,0,0,0,92,24,0,0,24,101,0,0,184,5,0,0,0,0,0,0,52,24,0,0,57,101,0,0,92,24,0,0,70,101,0,0,152,5,0,0,0,0,0,0,92,24,0,0,92,102,0,0,144,5,0,0,0,0,0,0,92,24,0,0,141,102,0,0,168,5,0,0,0,0,0,0,92,24,0,0,105,102,0,0,224,5,0,0,0,0,0,0,0,0,0,0,16,0,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,32,0,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,192,0,0,0,0,48,0,0,0,5,0,0,0,6,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,1,0,0,0,7,0,0,0,5,0,0,0,0,0,0,0,72,0,0,0,5,0,0,0,7,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,9,0,0,0,5,0,0,0,0,0,0,0,88,0,0,0,8,0,0,0,9,0,0,0,2,0,0,0,10,0,0,0,3,0,0,0,4,0,0,0,11,0,0,0,12,0,0,0,5,0,0,0,0,0,0,192,0,0,0,0,96,0,0,0,10,0,0,0,11,0,0,0,1,0,0,0,13,0,0,0,14,0,0,0,5,0,0,0,3,0,0,0,4,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,6,0,0,0,1,0,0,0,0,0,0,0,112,0,0,0,12,0,0,0,13,0,0,0,6,0,0,0,10,0,0,0,3,0,0,0,4,0,0,0,18,0,0,0,12,0,0,0,7,0,0,0,8,0,0,0,1,0,0,0,7,0,0,0,19,0,0,0,0,0,0,0,144,0,0,0,14,0,0,0,15,0,0,0,1,0,0,0,8,0,0,0,1,0,0,0,9,0,0,0,20,0,0,0,21,0,0,0,10,0,0,0,11,0,0,0,22,0,0,0,1,0,0,0,0,0,0,0,128,0,0,0,14,0,0,0,16,0,0,0,12,0,0,0,8,0,0,0,13,0,0,0,9,0,0,0,20,0,0,0,21,0,0,0,10,0,0,0,11,0,0,0,22,0,0,0,1,0,0,0,0,0,0,0,64,1,0,0,14,0,0,0,17,0,0,0,14,0,0,0,8,0,0,0,15,0,0,0,9,0,0,0,20,0,0,0,21,0,0,0,10,0,0,0,11,0,0,0,22,0,0,0,2,0,0,0,0,0,0,0,48,1,0,0,14,0,0,0,18,0,0,0,16,0,0,0,8,0,0,0,17,0,0,0,9,0,0,0,20,0,0,0,21,0,0,0,10,0,0,0,11,0,0,0,22,0,0,0,3,0,0,0,0,0,0,0,32,1,0,0,19,0,0,0,20,0,0,0,18,0,0,0,8,0,0,0,19,0,0,0,9,0,0,0,20,0,0,0,21,0,0,0,10,0,0,0,11,0,0,0,23,0,0,0,4,0,0,0,0,0,0,0,16,1,0,0,21,0,0,0,22,0,0,0,20,0,0,0,8,0,0,0,21,0,0,0,22,0,0,0,24,0,0,0,25,0,0,0,10,0,0,0,11,0,0,0,26,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,23,0,0,0,24,0,0,0,23,0,0,0,8,0,0,0,24,0,0,0,25,0,0,0,27,0,0,0,28,0,0,0,10,0,0,0,11,0,0,0,29,0,0,0,6,0,0,0,0,0,0,0,224,0,0,0,25,0,0,0,26,0,0,0,26,0,0,0,8,0,0,0,27,0,0,0,28,0,0,0,30,0,0,0,31,0,0,0,10,0,0,0,11,0,0,0,32,0,0,0,7,0,0,0,0,0,0,0,200,0,0,0,27,0,0,0,28,0,0,0,33,0,0,0,29,0,0,0,2,0,0,0,0,0,0,0,200,1,0,0,14,0,0,0,29,0,0,0,30,0,0,0,8,0,0,0,31,0,0,0,9,0,0,0,20,0,0,0,21,0,0,0,10,0,0,0,11,0,0,0,22,0,0,0,8,0,0,0,0,0,0,0,184,1,0,0,14,0,0,0,30,0,0,0,32,0,0,0,8,0,0,0,33,0,0,0,9,0,0,0,20,0,0,0,21,0,0,0,10,0,0,0,11,0,0,0,22,0,0,0,9,0,0,0,0,0,0,0,168,1,0,0,31,0,0,0,32,0,0,0,34,0,0,0,8,0,0,0,35,0,0,0,9,0,0,0,20,0,0,0,21,0,0,0,10,0,0,0,11,0,0,0,34,0,0,0,10,0,0,0,0,0,0,0,152,1,0,0,33,0,0,0,34,0,0,0,36,0,0,0,8,0,0,0,37,0,0,0,38,0,0,0,35,0,0,0,36,0,0,0,10,0,0,0,11,0,0,0,37,0,0,0,11,0,0,0,0,0,0,0,136,1,0,0,35,0,0,0,36,0,0,0,39,0,0,0,8,0,0,0,40,0,0,0,41,0,0,0,38,0,0,0,39,0,0,0,10,0,0,0,11,0,0,0,40,0,0,0,12,0,0,0,0,0,0,0,104,1,0,0,37,0,0,0,38,0,0,0,42,0,0,0,8,0,0,0,43,0,0,0,44,0,0,0,41,0,0,0,42,0,0,0,10,0,0,0,11,0,0,0,43,0,0,0,13,0,0,0,0,0,0,0,80,1,0,0,39,0,0,0,40,0,0,0,44,0,0,0,45,0,0,0,3,0,0,0,0,0,0,0,216,1,0,0,12,0,0,0,41,0,0,0,9,0,0,0,10,0,0,0,3,0,0,0,10,0,0,0,18,0,0,0,12,0,0,0,7,0,0,0,11,0,0,0,2,0,0,0,46,0,0,0,45,0,0,0,0,0,0,0,112,4,0,0,42,0,0,0,43,0,0,0,47,0,0,0,0,0,0,0,24,3,0,0,42,0,0,0,44,0,0,0,48,0,0,0,0,0,0,0,232,1,0,0,45,0,0,0,46,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,46,0,0,0,47,0,0,0,53,0,0,0,54,0,0,0,48,0,0,0,14,0,0,0,0,0,0,0,128,2,0,0,45,0,0,0,47,0,0,0,55,0,0,0,50,0,0,0,56,0,0,0,52,0,0,0,46,0,0,0,47,0,0,0,53,0,0,0,54,0,0,0,48,0,0,0,15,0,0,0,0,0,0,0,112,2,0,0,45,0,0,0,48,0,0,0,57,0,0,0,50,0,0,0,58,0,0,0,52,0,0,0,46,0,0,0,47,0,0,0,53,0,0,0,54,0,0,0,48,0,0,0,16,0,0,0,0,0,0,0,96,2,0,0,49,0,0,0,50,0,0,0,59,0,0,0,50,0,0,0,60,0,0,0,52,0,0,0,46,0,0,0,47,0,0,0,53,0,0,0,54,0,0,0,49,0,0,0,17,0,0,0,0,0,0,0,80,2,0,0,51,0,0,0,52,0,0,0,61,0,0,0,50,0,0,0,62,0,0,0,63,0,0,0,50,0,0,0,51,0,0,0,53,0,0,0,54,0,0,0,52,0,0,0,18,0,0,0,0,0,0,0,64,2,0,0,53,0,0,0,54,0,0,0,64,0,0,0,50,0,0,0,65,0,0,0,66,0,0,0,53,0,0,0,54,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,19,0,0,0,0,0,0,0,32,2,0,0,55,0,0,0,56,0,0,0,67,0,0,0,50,0,0,0,68,0,0,0,69,0,0,0,56,0,0,0,57,0,0,0,53,0,0,0,54,0,0,0,58,0,0,0,20,0,0,0,0,0,0,0,8,2,0,0,57,0,0,0,58,0,0,0,59,0,0,0,70,0,0,0,4,0,0,0,0,0,0,0,8,3,0,0,45,0,0,0,59,0,0,0,71,0,0,0,50,0,0,0,72,0,0,0,52,0,0,0,46,0,0,0,47,0,0,0,53,0,0,0,54,0,0,0,48,0,0,0,21,0,0,0,0,0,0,0,248,2,0,0,45,0,0,0,60,0,0,0,73,0,0,0,50,0,0,0,74,0,0,0,52,0,0,0,46,0,0,0,47,0,0,0,53,0,0,0,54,0,0,0,48,0,0,0,22,0,0,0,0,0,0,0,232,2,0,0,61,0,0,0,62,0,0,0,75,0,0,0,50,0,0,0,76,0,0,0,52,0,0,0,46,0,0,0,47,0,0,0,53,0,0,0,54,0,0,0,60,0,0,0,23,0,0,0,0,0,0,0,216,2,0,0,63,0,0,0,64,0,0,0,77,0,0,0,50,0,0,0,78,0,0,0,79,0,0,0,61,0,0,0,62,0,0,0,53,0,0,0,54,0,0,0,63,0,0,0,24,0,0,0,0,0,0,0,200,2,0,0,65,0,0,0,66,0,0,0,80,0,0,0,50,0,0,0,81,0,0,0,82,0,0,0,64,0,0,0,65,0,0,0,53,0,0,0,54,0,0,0,66,0,0,0,25,0,0,0,0,0,0,0,168,2,0,0,67,0,0,0,68,0,0,0,83,0,0,0,50,0,0,0,84,0,0,0,85,0,0,0,67,0,0,0,68,0,0,0,53,0,0,0,54,0,0,0,69,0,0,0,26,0,0,0,0,0,0,0,144,2,0,0,69,0,0,0,70,0,0,0,70,0,0,0,86,0,0,0,5,0,0,0,0,0,0,0,64,3,0,0,71,0,0,0,72,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,71,0,0,0,72,0,0,0,91,0,0,0,92,0,0,0,73,0,0,0,27,0,0,0,0,0,0,0,216,3,0,0,71,0,0,0,73,0,0,0,93,0,0,0,88,0,0,0,94,0,0,0,90,0,0,0,71,0,0,0,72,0,0,0,91,0,0,0,92,0,0,0,73,0,0,0,28,0,0,0,0,0,0,0,200,3,0,0,71,0,0,0,74,0,0,0,95,0,0,0,88,0,0,0,96,0,0,0,90,0,0,0,71,0,0,0,72,0,0,0,91,0,0,0,92,0,0,0,73,0,0,0,29,0,0,0,0,0,0,0,184,3,0,0,75,0,0,0,76,0,0,0,97,0,0,0,88,0,0,0,98,0,0,0,90,0,0,0,71,0,0,0,72,0,0,0,91,0,0,0,92,0,0,0,74,0,0,0,30,0,0,0,0,0,0,0,168,3,0,0,77,0,0,0,78,0,0,0,99,0,0,0,88,0,0,0,100,0,0,0,101,0,0,0,75,0,0,0,76,0,0,0,91,0,0,0,92,0,0,0,77,0,0,0,31,0,0,0,0,0,0,0,152,3,0,0,79,0,0,0,80,0,0,0,102,0,0,0,88,0,0,0,103,0,0,0,104,0,0,0,78,0,0,0,79,0,0,0,91,0,0,0,92,0,0,0,80,0,0,0,32,0,0,0,0,0,0,0,120,3,0,0,81,0,0,0,82,0,0,0,105,0,0,0,88,0,0,0,106,0,0,0,107,0,0,0,81,0,0,0,82,0,0,0,91,0,0,0,92,0,0,0,83,0,0,0,33,0,0,0,0,0,0,0,96,3,0,0,83,0,0,0,84,0,0,0,84,0,0,0,108,0,0,0,6,0,0,0,0,0,0,0,96,4,0,0,71,0,0,0,85,0,0,0,109,0,0,0,88,0,0,0,110,0,0,0,90,0,0,0,71,0,0,0,72,0,0,0,91,0,0,0,92,0,0,0,73,0,0,0,34,0,0,0,0,0,0,0,80,4,0,0,71,0,0,0,86,0,0,0,111,0,0,0,88,0,0,0,112,0,0,0,90,0,0,0,71,0,0,0,72,0,0,0,91,0,0,0,92,0,0,0,73,0,0,0,35,0,0,0,0,0,0,0,64,4,0,0,87,0,0,0,88,0,0,0,113,0,0,0,88,0,0,0,114,0,0,0,90,0,0,0,71,0,0,0,72,0,0,0,91,0,0,0,92,0,0,0,85,0,0,0,36,0,0,0,0,0,0,0,48,4,0,0,89,0,0,0,90,0,0,0,115,0,0,0,88,0,0,0,116,0,0,0,117,0,0,0,86,0,0,0,87,0,0,0,91,0,0,0,92,0,0,0,88,0,0,0,37,0,0,0,0,0,0,0,32,4,0,0,91,0,0,0,92,0,0,0,118,0,0,0,88,0,0,0,119,0,0,0,120,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,91,0,0,0,38,0,0,0,0,0,0,0,0,4,0,0,93,0,0,0,94,0,0,0,121,0,0,0,88,0,0,0,122,0,0,0,123,0,0,0,92,0,0,0,93,0,0,0,91,0,0,0,92,0,0,0,94,0,0,0,39,0,0,0,0,0,0,0,232,3,0,0,95,0,0,0,96,0,0,0,95,0,0,0,124,0,0,0,7,0,0,0,0,0,0,0,128,4,0,0,97,0,0,0,98,0,0,0,12,0,0,0,10,0,0,0,3,0,0,0,13,0,0,0,18,0,0,0,12,0,0,0,7,0,0,0,14,0,0,0,1,0,0,0,7,0,0,0,96,0,0,0,125,0,0,0,97,0,0,0,0,0,0,0,144,4,0,0,99,0,0,0,100,0,0,0,126,0,0,0,127,0,0,0,1,0,0,0,128,0,0,0,129,0,0,0,130,0,0,0,131,0,0,0,132,0,0,0,98,0,0,0,99,0,0,0,1,0,0,0,0,0,0,0,160,4,0,0,101,0,0,0,102,0,0,0,126,0,0,0,133,0,0,0,100,0,0,0,128,0,0,0,129,0,0,0,130,0,0,0,134,0,0,0,135,0,0,0,101,0,0,0,102,0,0,0,136,0,0,0,0,0,0,0,176,4,0,0,103,0,0,0,104,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,137,0,0,0,138,0,0,0,139,0,0,0,140,0,0,0,0,0,0,0,200,4,0,0,105,0,0,0,106,0,0,0,107,0,0,0,141,0,0,0,0,0,0,0,192,4,0,0,107,0,0,0,108,0,0,0,109,0,0,0,0,0,0,192,0,0,0,0,232,4,0,0,110,0,0,0,111,0,0,0,108,0,0,0,142,0,0,0,0,0,0,0,224,4,0,0,112,0,0,0,113,0,0,0,114,0,0,0,0,0,0,0,248,4,0,0,115,0,0,0,116,0,0,0,109,0,0,0,143,0,0,0,0,0,0,0,16,5,0,0,117,0,0,0,118,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,144,0,0,0,145,0,0,0,146,0,0,0,147,0,0,0,0,0,0,0,32,5,0,0,119,0,0,0,120,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,148,0,0,0,149,0,0,0,150,0,0,0,151,0,0,0,0,0,0,0,1,0,0,0,3,0,0,0,5,0,0,0,7,0,0,0,0,0,0,0,48,5,0,0,99,0,0,0,121,0,0,0,126,0,0,0,127,0,0,0,118,0,0,0,128,0,0,0,129,0,0,0,130,0,0,0,131,0,0,0,132,0,0,0,98,0,0,0,99,0,0,0,152,0,0,0,0,0,0,0,64,5,0,0,122,0,0,0,123,0,0,0,119,0,0,0,153,0,0,0,0,0,0,0,80,5,0,0,99,0,0,0,124,0,0,0,154,0,0,0,127,0,0,0,1,0,0,0,155,0,0,0,129,0,0,0,130,0,0,0,131,0,0,0,0,0,0,0,88,5,0,0,99,0,0,0,125,0,0,0,154,0,0,0,127,0,0,0,120,0,0,0,156,0,0,0,129,0,0,0,130,0,0,0,131,0,0,0,0,0,0,0,104,5,0,0,99,0,0,0,126,0,0,0,154,0,0,0,127,0,0,0,121,0,0,0,157,0,0,0,129,0,0,0,130,0,0,0,131,0,0,0,0,0,0,192,0,0,0,192,0,0,0,0,120,5,0,0,127,0,0,0,128,0,0,0,8,0,0,0,3,0,0,0,158,0,0,0,129,0,0,0,9,0,0,0,0,0,0,192,0,0,0,0,136,5,0,0,130,0,0,0,131,0,0,0,10,0,0,0,4,0,0,0,158,0,0,0,129,0,0,0,11,0,0,0,0,0,0,192,0,0,0,192,0,0,0,192,0,0,0,192,0,0,0,192,56,20,0,0,5,0,0,0,0,0,0,0,0,0,0,0,159,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,16,0,0,0,244,104,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,104,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,172,21,0,0,5,0,0,0,0,0,0,0,0,0,0,0,159,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,0,0,0,16,0,0,0,252,104,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,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,5,0,0,0,7,0,0,0,11,0,0,0,13,0,0,0,17,0,0,0,19,0,0,0,23,0,0,0,29,0,0,0,31,0,0,0,37,0,0,0,41,0,0,0,43,0,0,0,47,0,0,0,53,0,0,0,59,0,0,0,61,0,0,0,67,0,0,0,71,0,0,0,73,0,0,0,79,0,0,0,83,0,0,0,89,0,0,0,97,0,0,0,101,0,0,0,103,0,0,0,107,0,0,0,109,0,0,0,113,0,0,0,127,0,0,0,131,0,0,0,137,0,0,0,139,0,0,0,149,0,0,0,151,0,0,0,157,0,0,0,163,0,0,0,167,0,0,0,173,0,0,0,179,0,0,0,181,0,0,0,191,0,0,0,193,0,0,0,197,0,0,0,199,0,0,0,211,0,0,0,1,0,0,0,11,0,0,0,13,0,0,0,17,0,0,0,19,0,0,0,23,0,0,0,29,0,0,0,31,0,0,0,37,0,0,0,41,0,0,0,43,0,0,0,47,0,0,0,53,0,0,0,59,0,0,0,61,0,0,0,67,0,0,0,71,0,0,0,73,0,0,0,79,0,0,0,83,0,0,0,89,0,0,0,97,0,0,0,101,0,0,0,103,0,0,0,107,0,0,0,109,0,0,0,113,0,0,0,121,0,0,0,127,0,0,0,131,0,0,0,137,0,0,0,139,0,0,0,143,0,0,0,149,0,0,0,151,0,0,0,157,0,0,0,163,0,0,0,167,0,0,0,169,0,0,0,173,0,0,0,179,0,0,0,181,0,0,0,187,0,0,0,191,0,0,0,193,0,0,0,197,0,0,0,199,0,0,0,209,0,0,0,2,0,0,0,2,101,0,0,0,0,0,0,152,5,0,0,132,0,0,0,133,0,0,0,134,0,0,0,135,0,0,0,19,0,0,0,1,0,0,0,1,0,0,0,3,0,0,0,0,0,0,0,192,5,0,0,132,0,0,0,136,0,0,0,134,0,0,0,135,0,0,0,19,0,0,0,2,0,0,0,2,0,0,0,4,0,0,0,0,0,0,0,208,5,0,0,137,0,0,0,138,0,0,0,160,0,0,0,78,53,100,114,97,99,111,50,56,65,116,116,114,105,98,117,116,101,79,99,116,97,104,101,100,114,111,110,84,114,97,110,115,102,111,114,109,69,0,78,53,100,114,97,99,111,49,56,65,116,116,114,105,98,117,116,101,84,114,97,110,115,102,111,114,109,69,0,78,53,100,114,97,99,111,51,48,65,116,116,114,105,98,117,116,101,81,117,97,110,116,105,122,97,116,105,111,110,84,114,97,110,115,102,111,114,109,69,0,78,53,100,114,97,99,111,49,55,65,116,116,114,105,98,117,116,101,115,68,101,99,111,100,101,114,69,0,78,53,100,114,97,99,111,50,54,65,116,116,114,105,98,117,116,101,115,68,101,99,111,100,101,114,73,110,116,101,114,102,97,99,101,69,0,75,100,84,114,101,101,65,116,116,114,105,98,117,116,101,115,68,101,99,111,100,101,114,58,32,99,111,109,112,114,101,115,115,105,111,110,32,108,101,118,101,108,32,37,105,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,10,0,40,118,97,108,46,115,105,122,101,40,41,41,32,61,61,32,40,100,105,109,101,110,115,105,111,110,95,116,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,107,100,95,116,114,101,101,95,97,116,116,114,105,98,117,116,101,115,95,100,101,99,111,100,101,114,46,99,99,0,111,112,101,114,97,116,111,114,61,0,77,101,116,104,111,100,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,32,10,0,86,101,114,115,105,111,110,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,32,10,0,40,105,110,102,111,46,114,97,110,103,101,41,32,62,61,32,40,48,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,112,111,105,110,116,95,99,108,111,117,100,47,97,108,103,111,114,105,116,104,109,115,47,113,117,97,110,116,105,122,101,95,112,111,105,110,116,115,95,51,46,104,0,68,101,113,117,97,110,116,105,122,101,80,111,105,110,116,115,51,0,78,53,100,114,97,99,111,50,51,75,100,84,114,101,101,65,116,116,114,105,98,117,116,101,115,68,101,99,111,100,101,114,69,0,78,53,100,114,97,99,111,50,54,83,101,113,117,101,110,116,105,97,108,65,116,116,114,105,98,117,116,101,68,101,99,111,100,101,114,69,0,78,53,100,114,97,99,111,51,55,83,101,113,117,101,110,116,105,97,108,65,116,116,114,105,98,117,116,101,68,101,99,111,100,101,114,115,67,111,110,116,114,111,108,108,101,114,69,0,78,53,100,114,97,99,111,50,56,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,108,116,97,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,69,69,0,78,53,100,114,97,99,111,50,51,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,69,69,0,78,53,100,114,97,99,111,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,121,112,101,100,68,101,99,111,100,101,114,73,110,116,101,114,102,97,99,101,73,105,105,69,69,0,78,53,100,114,97,99,111,51,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,110,116,101,114,102,97,99,101,69,0,78,53,100,114,97,99,111,50,53,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,73,110,116,101,114,102,97,99,101,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,65,114,101,97,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,66,97,115,101,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,102,97,108,115,101,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,95,119,114,97,112,95,116,114,97,110,115,102,111,114,109,95,98,97,115,101,46,104,0,113,117,97,110,116,105,122,97,116,105,111,110,95,98,105,116,115,0,78,53,100,114,97,99,111,52,50,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,50,55,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,80,111,114,116,97,98,108,101,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,51,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,53,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,67,111,110,115,116,114,97,105,110,101,100,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,53,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,48,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,65,114,101,97,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,66,97,115,101,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,50,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,50,55,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,80,111,114,116,97,98,108,101,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,51,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,53,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,67,111,110,115,116,114,97,105,110,101,100,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,53,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,51,55,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,48,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,51,55],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,87,114,97,112,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,51,51,83,101,113,117,101,110,116,105,97,108,73,110,116,101,103,101,114,65,116,116,114,105,98,117,116,101,68,101,99,111,100,101,114,69,0,40,113,41,32,62,61,32,40,50,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,110,111,114,109,97,108,95,99,111,109,112,114,101,115,115,105,111,110,95,117,116,105,108,115,46,104,0,83,101,116,81,117,97,110,116,105,122,97,116,105,111,110,66,105,116,115,0,40,113,41,32,60,61,32,40,51,48,41,0,40,105,110,95,115,41,32,62,61,32,40,48,41,0,79,99,116,97,104,101,114,100,97,108,67,111,111,114,100,115,84,111,85,110,105,116,86,101,99,116,111,114,0,40,105,110,95,116,41,32,62,61,32,40,48,41,0,40,105,110,95,115,41,32,60,61,32,40,49,41,0,40,105,110,95,116,41,32,60,61,32,40,49,41,0,40,112,114,101,100,95,118,97,108,115,91,48,93,41,32,60,61,32,40,50,32,42,32,116,104,105,115,45,62,99,101,110,116,101,114,95,118,97,108,117,101,40,41,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,95,110,111,114,109,97,108,95,111,99,116,97,104,101,100,114,111,110,95,99,97,110,111,110,105,99,97,108,105,122,101,100,95,100,101,99,111,100,105,110,103,95,116,114,97,110,115,102,111,114,109,46,104,0,67,111,109,112,117,116,101,79,114,105,103,105,110,97,108,86,97,108,117,101,0,40,112,114,101,100,95,118,97,108,115,91,49,93,41,32,60,61,32,40,50,32,42,32,116,104,105,115,45,62,99,101,110,116,101,114,95,118,97,108,117,101,40,41,41,0,40,99,111,114,114,95,118,97,108,115,91,48,93,41,32,60,61,32,40,50,32,42,32,116,104,105,115,45,62,99,101,110,116,101,114,95,118,97,108,117,101,40,41,41,0,40,99,111,114,114,95,118,97,108,115,91,49,93,41,32,60,61,32,40,50,32,42,32,116,104,105,115,45,62,99,101,110,116,101,114,95,118,97,108,117,101,40,41,41,0,40,48,41,32,60,61,32,40,112,114,101,100,95,118,97,108,115,91,48,93,41,0,40,48,41,32,60,61,32,40,112,114,101,100,95,118,97,108,115,91,49,93,41,0,40,48,41,32,60,61,32,40,99,111,114,114,95,118,97,108,115,91,48,93,41,0,40,48,41,32,60,61,32,40,99,111,114,114,95,118,97,108,115,91,49,93,41,0,40,115,41,32,60,61,32,40,99,101,110,116,101,114,95,118,97,108,117,101,95,41,0,73,115,73,110,68,105,97,109,111,110,100,0,40,116,41,32,60,61,32,40,99,101,110,116,101,114,95,118,97,108,117,101,95,41,0,40,115,41,32,62,61,32,40,45,99,101,110,116,101,114,95,118,97,108,117,101,95,41,0,40,116,41,32,62,61,32,40,45,99,101,110,116,101,114,95,118,97,108,117,101,95,41,0,40,42,115,41,32,60,61,32,40,99,101,110,116,101,114,95,118,97,108,117,101,95,41,0,73,110,118,101,114,116,68,105,97,109,111,110,100,0,40,42,116,41,32,60,61,32,40,99,101,110,116,101,114,95,118,97,108,117,101,95,41,0,40,42,115,41,32,62,61,32,40,45,99,101,110,116,101,114,95,118,97,108,117,101,95,41,0,40,42,116,41,32,62,61,32,40,45,99,101,110,116,101,114,95,118,97,108,117,101,95,41,0,40,109,97,120,95,113,117,97,110,116,105,122,101,100,95,118,97,108,117,101,32,37,32,50,41,32,61,61,32,40,49,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,95,110,111,114,109,97,108,95,111,99,116,97,104,101,100,114,111,110,95,116,114,97,110,115,102,111,114,109,95,98,97,115,101,46,104,0,115,101,116,95,109,97,120,95,113,117,97,110,116,105,122,101,100,95,118,97,108,117,101,0,78,53,100,114,97,99,111,50,56,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,108,116,97,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,69,69,0,78,53,100,114,97,99,111,50,51,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,69,69,0,116,104,105,115,45,62,73,115,73,110,105,116,105,97,108,105,122,101,100,40,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,115,47,109,101,115,104,95,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,95,103,101,111,109,101,116,114,105,99,95,110,111,114,109,97,108,95,112,114,101,100,105,99,116,111,114,95,97,114,101,97,46,104,0,67,111,109,112,117,116,101,80,114,101,100,105,99,116,101,100,86,97,108,117,101,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,115,47,109,101,115,104,95,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,95,103,101,111,109,101,116,114,105,99,95,110,111,114,109,97,108,95,112,114,101,100,105,99,116,111,114,95,98,97,115,101,46,104,0,71,101,116,80,111,115,105,116,105,111,110,70,111,114,67,111,114,110,101,114,0,40,110,111,114,109,97,108,46,65,98,115,83,117,109,40,41,41,32,60,61,32,40,117,112,112,101,114,95,98,111,117,110,100,41,0,71,101,116,80,111,115,105,116,105,111,110,70,111,114,68,97,116,97,73,100,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,65,114,101,97,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,66,97,115,101,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,115,47,109,101,115,104,95,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,95,103,101,111,109,101,116,114,105,99,95,110,111,114,109,97,108,95,100,101,99,111,100,101,114,46,104,0,67,111,109,112,117,116,101,79,114,105,103,105,110,97,108,86,97,108,117,101,115,0,40,110,117,109,95,99,111,109,112,111,110,101,110,116,115,41,32,61,61,32,40,50,41,0,40,112,114,101,100,95,110,111,114,109,97,108,95,51,100,46,65,98,115,83,117,109,40,41,41,32,61,61,32,40,111,99,116,97,104,101,100,114,111,110,95,116,111,111,108,95,98,111,120,95,46,99,101,110,116,101,114,95,118,97,108,117,101,40,41,41,0,40,115,116,100,58,58,97,98,115,40,105,110,116,95,118,101,99,91,48,93,41,32,43,32,115,116,100,58,58,97,98,115,40,105,110,116,95,118,101,99,91,49,93,41,32,43,32,115,116,100,58,58,97,98,115,40,105,110,116,95,118,101,99,91,50,93,41,41,32,61,61,32,40,99,101,110,116,101,114,95,118,97,108,117,101,95,41,0,73,110,116,101,103,101,114,86,101,99,116,111,114,84,111,81,117,97,110,116,105,122,101,100,79,99,116,97,104,101,100,114,97,108,67,111,111,114,100,115,0,40,105,41,32,61,61,32,40,48,41,0,71,101,116,80,97,114,101,110,116,65,116,116,114,105,98,117,116,101,84,121,112,101,0,78,53,100,114,97,99,111,52,50,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,50,55,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,115,47,109,101,115,104,95,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,95,116,101,120,95,99,111,111,114,100,115,95,112,111,114,116,97,98,108,101,95,100,101,99,111,100,101,114,46,104,0,78,53,100,114,97,99,111,52,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,80,111,114,116,97,98,108,101,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,115,47,109,101,115,104,95,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,95,116,101,120,95,99,111,111,114,100,115,95,100,101,99,111,100,101,114,46,104,0,78,53,100,114,97,99,111,51,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,53,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,67,111,110,115,116,114,97,105,110,101,100,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,53,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,48,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,65,114,101,97,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,66,97,115,101,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,50,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,50,55,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,80,111,114,116,97,98,108,101,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,51,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,53,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,67,111,110,115,116,114,97,105,110,101,100,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,53,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,48,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,54,50,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,0,78,53,100,114,97,99,111,53,56,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,67,97,110,111,110,105,99,97,108,105,122,101,100,84,114,97,110,115,102,111,114,109,66,97,115,101,73,105,69,69,0,78,53,100,114,97,99,111,52,53,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,84,114,97,110,115,102,111,114,109,66,97,115,101,73,105,69,69,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,97,116,116,114,105,98,117,116,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,115,47,112,114,101,100,105,99,116,105,111,110,95,115,99,104,101,109,101,95,110,111,114,109,97,108,95,111,99,116,97,104,101,100,114,111,110,95,100,101,99,111,100,105,110,103,95,116,114,97,110,115,102,111,114,109,46,104,0,78,53,100,114,97,99,111,50,56,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,108,116,97,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,69,69,0,78,53,100,114,97,99,111,50,51,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,65,114,101,97,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,66,97,115,101,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,50,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,50,55,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,80,111,114,116,97,98,108,101,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,51,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,53,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,67,111,110,115,116,114,97,105,110,101,100,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,53,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,48,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,65,114,101,97,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,56,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,80,114,101,100,105,99,116,111,114,66,97,115,101,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,50,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,71,101,111,109,101,116,114,105,99,78,111,114,109,97,108,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,50,55,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,80,111,114,116,97,98,108,101,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,51,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,84,101,120,67,111,111,114,100,115,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,53,54,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,67,111,110,115,116,114,97,105,110,101,100,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,53,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,77,117,108,116,105,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,48,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,80,97,114,97,108,108,101,108,111,103,114,97,109,68,101,99,111,100,101,114,73,105,78,83,95,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,78,83,95,50,52,77,101,115,104,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,68,97,116,97,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,69,69,0,78,53,100,114,97,99,111,52,57,80,114,101,100,105,99,116,105,111,110,83,99,104,101,109,101,78,111,114,109,97,108,79,99,116,97,104,101,100,114,111,110,68,101,99,111,100,105,110,103,84,114,97,110,115,102,111,114,109,73,105,69,69,0,78,53,100,114,97,99,111,51,50,83,101,113,117,101,110,116,105,97,108,78,111,114,109,97,108,65,116,116,114,105,98,117,116,101,68,101,99,111,100,101,114,69,0,78,53,100,114,97,99,111,51,56,83,101,113,117,101,110,116,105,97,108,81,117,97,110,116,105,122,97,116,105,111,110,65,116,116,114,105,98,117,116,101,68,101,99,111,100,101,114,69,0,85,110,115,117,112,112,111,114,116,101,100,32,101,110,99,111,100,105,110,103,32,109,101,116,104,111,100,46,0,73,110,112,117,116,32,105,115,32,110,111,116,32,97,32,109,101,115,104,46,0,73,110,112,117,116,32,105,115,32,110,111,116,32,97,32,112,111,105,110,116,32,99,108,111,117,100,46,0,115,107,105,112,95,97,116,116,114,105,98,117,116,101,95,116,114,97,110,115,102,111,114,109,0,78,53,100,114,97,99,111,49,49,77,101,115,104,68,101,99,111,100,101,114,69,0,78,53,100,114,97,99,111,50,50,77,101,115,104,69,100,103,101,66,114,101,97,107,101,114,68,101,99,111,100,101,114,69,0,78,53,100,114,97,99,111,50,57,67,111,114,110,101,114,84,97,98,108,101,84,114,97,118,101,114,115,97,108,80,114,111,99,101,115,115,111,114,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,0,78,53,100,114,97,99,111,50,50,77,101,115,104,84,114,97,118,101,114,115,97,108,83,101,113,117,101,110,99,101,114,73,78,83,95,50,48,69,100,103,101,66,114,101,97,107,101,114,84,114,97,118,101,114,115,101,114,73,78,83,95,50,57,67,111,114,110,101,114,84,97,98,108,101,84,114,97,118,101,114,115,97,108,80,114,111,99,101,115,115,111,114,73,78,83,95,50,52,77,101,115,104,65,116,116,114,105,98,117,116,101,67,111,114,110,101,114,84,97,98,108,101,69,69,69,78,83,95,51,54,77,101,115,104,65,116,116,114,105,98,117,116,101,73,110,100,105,99,101,115,69,110,99,111,100,105,110,103,79,98,115,101,114,118,101,114,73,83,51,95,69,69,78,83,95,49,57,69,100,103,101,66,114,101,97,107,101,114,79,98,115,101,114,118,101,114,69,69,69,69,69],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([78,53,100,114,97,99,111,49,53,80,111,105,110,116,115,83,101,113,117,101,110,99,101,114,69,0,78,53,100,114,97,99,111,50,57,67,111,114,110,101,114,84,97,98,108,101,84,114,97,118,101,114,115,97,108,80,114,111,99,101,115,115,111,114,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,0,78,53,100,114,97,99,111,50,50,77,101,115,104,84,114,97,118,101,114,115,97,108,83,101,113,117,101,110,99,101,114,73,78,83,95,50,53,80,114,101,100,105,99,116,105,111,110,68,101,103,114,101,101,84,114,97,118,101,114,115,101,114,73,78,83,95,50,57,67,111,114,110,101,114,84,97,98,108,101,84,114,97,118,101,114,115,97,108,80,114,111,99,101,115,115,111,114,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,78,83,95,51,54,77,101,115,104,65,116,116,114,105,98,117,116,101,73,110,100,105,99,101,115,69,110,99,111,100,105,110,103,79,98,115,101,114,118,101,114,73,83,51,95,69,69,69,69,69,69,0,78,53,100,114,97,99,111,50,50,77,101,115,104,84,114,97,118,101,114,115,97,108,83,101,113,117,101,110,99,101,114,73,78,83,95,50,48,69,100,103,101,66,114,101,97,107,101,114,84,114,97,118,101,114,115,101,114,73,78,83,95,50,57,67,111,114,110,101,114,84,97,98,108,101,84,114,97,118,101,114,115,97,108,80,114,111,99,101,115,115,111,114,73,78,83,95,49,49,67,111,114,110,101,114,84,97,98,108,101,69,69,69,78,83,95,51,54,77,101,115,104,65,116,116,114,105,98,117,116,101,73,110,100,105,99,101,115,69,110,99,111,100,105,110,103,79,98,115,101,114,118,101,114,73,83,51,95,69,69,78,83,95,49,57,69,100,103,101,66,114,101,97,107,101,114,79,98,115,101,114,118,101,114,69,69,69,69,69,0,78,53,100,114,97,99,111,50,54,77,101,115,104,69,100,103,101,66,114,101,97,107,101,114,68,101,99,111,100,101,114,73,109,112,108,73,78,83,95,51,49,77,101,115,104,69,100,103,101,66,114,101,97,107,101,114,84,114,97,118,101,114,115,97,108,68,101,99,111,100,101,114,69,69,69,0,78,53,100,114,97,99,111,51,53,77,101,115,104,69,100,103,101,66,114,101,97,107,101,114,68,101,99,111,100,101,114,73,109,112,108,73,110,116,101,114,102,97,99,101,69,0,78,53,100,114,97,99,111,50,54,77,101,115,104,69,100,103,101,66,114,101,97,107,101,114,68,101,99,111,100,101,114,73,109,112,108,73,78,83,95,52,49,77,101,115,104,69,100,103,101,66,114,101,97,107,101,114,84,114,97,118,101,114,115,97,108,80,114,101,100,105,99,116,105,118,101,68,101,99,111,100,101,114,69,69,69,0,78,53,100,114,97,99,111,50,54,77,101,115,104,69,100,103,101,66,114,101,97,107,101,114,68,101,99,111,100,101,114,73,109,112,108,73,78,83,95,51,56,77,101,115,104,69,100,103,101,66,114,101,97,107,101,114,84,114,97,118,101,114,115,97,108,86,97,108,101,110,99,101,68,101,99,111,100,101,114,69,69,69,0,78,53,100,114,97,99,111,49,53,76,105,110,101,97,114,83,101,113,117,101,110,99,101,114,69,0,78,53,100,114,97,99,111,50,49,77,101,115,104,83,101,113,117,101,110,116,105,97,108,68,101,99,111,100,101,114,69,0,78,53,100,114,97,99,111,49,55,80,111,105,110,116,67,108,111,117,100,68,101,99,111,100,101,114,69,0,70,97,105,108,101,100,32,116,111,32,112,97,114,115,101,32,68,114,97,99,111,32,104,101,97,100,101,114,46,0,68,82,65,67,79,0,78,111,116,32,97,32,68,114,97,99,111,32,102,105,108,101,46,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,109,101,116,97,100,97,116,97,46,0,85,115,105,110,103,32,105,110,99,111,109,112,97,116,105,98,108,101,32,100,101,99,111,100,101,114,32,102,111,114,32,116,104,101,32,105,110,112,117,116,32,103,101,111,109,101,116,114,121,46,0,85,110,107,110,111,119,110,32,109,97,106,111,114,32,118,101,114,115,105,111,110,46,0,85,110,107,110,111,119,110,32,109,105,110,111,114,32,118,101,114,115,105,111,110,46,0,70,97,105,108,101,100,32,116,111,32,105,110,105,116,105,97,108,105,122,101,32,116,104,101,32,100,101,99,111,100,101,114,46,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,103,101,111,109,101,116,114,121,32,100,97,116,97,46,0,70,97,105,108,101,100,32,116,111,32,100,101,99,111,100,101,32,112,111,105,110,116,32,97,116,116,114,105,98,117,116,101,115,46,0,78,53,100,114,97,99,111,50,51,80,111,105,110,116,67,108,111,117,100,75,100,84,114,101,101,68,101,99,111,100,101,114,69,0,78,53,100,114,97,99,111,50,55,80,111,105,110,116,67,108,111,117,100,83,101,113,117,101,110,116,105,97,108,68,101,99,111,100,101,114,69,0,37,100,0,40,110,98,105,116,115,41,32,62,61,32,40,48,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,114,101,47,100,101,99,111,100,101,114,95,98,117,102,102,101,114,46,104,0,71,101,116,66,105,116,115,0,40,110,98,105,116,115,41,32,60,61,32,40,51,50,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,114,101,47,98,105,116,95,99,111,100,101,114,115,47,114,97,110,115,95,98,105,116,95,100,101,99,111,100,101,114,46,99,99,0,78,53,100,114,97,99,111,52,77,101,115,104,69,0,33,105,100,101,110,116,105,116,121,95,109,97,112,112,105,110,103,95,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,97,116,116,114,105,98,117,116,101,115,47,112,111,105,110,116,95,97,116,116,114,105,98,117,116,101,46,104,0,83,101,116,80,111,105,110,116,77,97,112,69,110,116,114,121,0,97,116,116,95,105,100,32,62,61,32,48,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,112,111,105,110,116,95,99,108,111,117,100,47,112,111,105,110,116,95,99,108,111,117,100,46,99,99,0,83,101,116,65,116,116,114,105,98,117,116,101,0,78,53,100,114,97,99,111,49,48,80,111,105,110,116,67,108,111,117,100,69,0,70,108,111,97,116,80,111,105,110,116,115,84,114,101,101,68,101,99,111,100,101,114,58,32,99,111,109,112,114,101,115,115,105,111,110,32,108,101,118,101,108,32,37,105,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,10,0,40,116,114,117,101,41,32,61,61,32,40,110,117,109,95,114,101,109,97,105,110,105,110,103,95,112,111,105,110,116,115,32,33,61,32,48,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,109,112,114,101,115,115,105,111,110,47,112,111,105,110,116,95,99,108,111,117,100,47,97,108,103,111,114,105,116,104,109,115,47,100,121,110,97,109,105,99,95,105,110,116,101,103,101,114,95,112,111,105,110,116,115,95,107,100,95,116,114,101,101,95,100,101,99,111,100,101,114,46,104,0,68,101,99,111,100,101,73,110,116,101,114,110,97,108,0,40,116,114,117,101,41,32,61,61,32,40,110,98,105,116,115,32,60,61,32,51,50,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,99,111,114,101,47,98,105,116,95,99,111,100,101,114,115,47,100,105,114,101,99,116,95,98,105,116,95,100,101,99,111,100,101,114,46,104,0,68,101,99,111,100,101,76,101,97,115,116,83,105,103,110,105,102,105,99,97,110,116,66,105,116,115,51,50,0,40,116,114,117,101,41,32,61,61,32,40,110,98,105,116,115,32,62,32,48,41,0,40,48,41,32,60,61,32,40,97,116,116,95,105,100,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,112,111,105,110,116,95,99,108,111,117,100,47,112,111,105,110,116,95,99,108,111,117,100,46,104,0,97,116,116,114,105,98,117,116,101,0,40,97,116,116,95,105,100,41,32,60,32,40,115,116,97,116,105,99,95,99,97,115,116,60,105,110,116,51,50,95,116,62,40,97,116,116,114,105,98,117,116,101,115,95,46,115,105,122,101,40,41,41,41,0,110,97,109,101,0,40,48,41,32,60,61,32,40,102,97,99,101,95,105,100,46,118,97,108,117,101,40,41,41,0,47,103,111,111,103,108,101,47,115,114,99,47,99,108,111,117,100,47,111,115,116,97,118,97,47,102,105,120,50,47,103,111,111,103,108,101,51,47,116,104,105,114,100,95,112,97,114,116,121,47,100,114,97,99,111,47,115,114,99,47,100,114,97,99,111,47,109,101,115,104,47,109,101,115,104,46,104,0,102,97,99,101,0,40,102,97,99,101,95,105,100,46,118,97,108,117,101,40,41,41,32,60,32,40,115,116,97,116,105,99,95,99,97,115,116,60,105,110,116,62,40,102,97,99,101,115,95,46,115,105,122,101,40,41,41,41,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,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,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,117,115,114,47,108,111,99,97,108,47,103,111,111,103,108,101,47,104,111,109,101,47,111,115,116,97,118,97,47,100,101,118,101,47,101,109,115,100,107,95,119,97,115,109,47,101,109,115,100,107,47,101,109,115,99,114,105,112,116,101,110,47,105,110,99,111,109,105,110,103,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,33,34,118,101,99,116,111,114,32,111,117,116,95,111,102,95,114,97,110,103,101,34,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,117,115,114,47,108,111,99,97,108,47,103,111,111,103,108,101,47,104,111,109,101,47,111,115,116,97,118,97,47,100,101,118,101,47,101,109,115,100,107,95,119,97,115,109,47,101,109,115,100,107,47,101,109,115,99,114,105,112,116,101,110,47,105,110,99,111,109,105,110,103,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,111,117,116,95,111,102,95,114,97,110,103,101,34,0,95,95,116,104,114,111,119,95,111,117,116,95,111,102,95,114,97,110,103,101,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,83,116,57,101,120,99,101,112,116,105,111,110,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,83,116,57,116,121,112,101,95,105,110,102,111,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,83,116,57,98,97,100,95,97,108,108,111,99,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],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);var tempDoublePtr=STATICTOP;STATICTOP+=16;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&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(Runtime.setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(Runtime.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>2];info.adjusted=thrown;return(Runtime.setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(Runtime.setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}Module["_memset"]=_memset;Module["_bitshift64Shl"]=_bitshift64Shl;function _abort(){Module["abort"]()}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}Module["_i64Add"]=_i64Add;var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);Module["_llvm_cttz_i32"]=_llvm_cttz_i32;Module["___udivmoddi4"]=___udivmoddi4;Module["___divdi3"]=___divdi3;var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}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["_bitshift64Ashr"]=_bitshift64Ashr;Module["_bitshift64Lshr"]=_bitshift64Lshr;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function _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}}Module["___udivdi3"]=___udivdi3;Module["___muldsi3"]=___muldsi3;Module["___muldi3"]=___muldi3;function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}Module["_sbrk"]=_sbrk;Module["_memmove"]=_memmove;function ___gxx_personality_v0(){}Module["___uremdi3"]=___uremdi3;Module["_llvm_bswap_i32"]=_llvm_bswap_i32;function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=DYNAMIC_BASE;staticSealed=true;function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_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;Module["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity,"byteLength":byteLength};Module.asmLibraryArg={"abort":abort,"assert":assert,"enlargeMemory":enlargeMemory,"getTotalMemory":getTotalMemory,"abortOnCannotGrowMemory":abortOnCannotGrowMemory,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_v":invoke_v,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_viiii":invoke_viiii,"_pthread_getspecific":_pthread_getspecific,"_pthread_setspecific":_pthread_setspecific,"___cxa_throw":___cxa_throw,"___gxx_personality_v0":___gxx_personality_v0,"___syscall6":___syscall6,"___setErrNo":___setErrNo,"_abort":_abort,"___cxa_begin_catch":___cxa_begin_catch,"_pthread_key_create":_pthread_key_create,"___syscall146":___syscall146,"_pthread_once":_pthread_once,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___syscall140":___syscall140,"___resumeException":___resumeException,"___cxa_find_matching_catch":___cxa_find_matching_catch,"___assert_fail":___assert_fail,"___cxa_pure_virtual":___cxa_pure_virtual,"___cxa_allocate_exception":___cxa_allocate_exception,"__ZSt18uncaught_exceptionv":__ZSt18uncaught_exceptionv,"DYNAMICTOP_PTR":DYNAMICTOP_PTR,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM -var asm=(function(global,env,buffer) { -"almost asm";var a=global.Int8Array;var b=new a(buffer);var c=global.Int16Array;var d=new c(buffer);var e=global.Int32Array;var f=new e(buffer);var g=global.Uint8Array;var h=new g(buffer);var i=global.Uint16Array;var j=new i(buffer);var k=global.Uint32Array;var l=new k(buffer);var m=global.Float32Array;var n=new m(buffer);var o=global.Float64Array;var p=new o(buffer);var q=global.byteLength;var r=env.DYNAMICTOP_PTR|0;var s=env.tempDoublePtr|0;var t=env.ABORT|0;var u=env.STACKTOP|0;var v=env.STACK_MAX|0;var w=env.cttz_i8|0;var x=0;var y=0;var z=0;var A=0;var B=global.NaN,C=global.Infinity;var D=0,E=0,F=0,G=0,H=0.0;var I=0;var J=global.Math.floor;var K=global.Math.abs;var L=global.Math.sqrt;var M=global.Math.pow;var N=global.Math.cos;var O=global.Math.sin;var P=global.Math.tan;var Q=global.Math.acos;var R=global.Math.asin;var S=global.Math.atan;var T=global.Math.atan2;var U=global.Math.exp;var V=global.Math.log;var W=global.Math.ceil;var X=global.Math.imul;var Y=global.Math.min;var Z=global.Math.max;var _=global.Math.clz32;var $=global.Math.fround;var aa=env.abort;var ba=env.assert;var ca=env.enlargeMemory;var da=env.getTotalMemory;var ea=env.abortOnCannotGrowMemory;var fa=env.invoke_iiii;var ga=env.invoke_viiiii;var ha=env.invoke_vi;var ia=env.invoke_vii;var ja=env.invoke_iiiiiii;var ka=env.invoke_ii;var la=env.invoke_viii;var ma=env.invoke_v;var na=env.invoke_viiiiii;var oa=env.invoke_iii;var pa=env.invoke_viiii;var qa=env._pthread_getspecific;var ra=env._pthread_setspecific;var sa=env.___cxa_throw;var ta=env.___gxx_personality_v0;var ua=env.___syscall6;var va=env.___setErrNo;var wa=env._abort;var xa=env.___cxa_begin_catch;var ya=env._pthread_key_create;var za=env.___syscall146;var Aa=env._pthread_once;var Ba=env._emscripten_memcpy_big;var Ca=env.___syscall54;var Da=env.___syscall140;var Ea=env.___resumeException;var Fa=env.___cxa_find_matching_catch;var Ga=env.___assert_fail;var Ha=env.___cxa_pure_virtual;var Ia=env.___cxa_allocate_exception;var Ja=env.__ZSt18uncaught_exceptionv;var Ka=$(0);const La=$(0);function Ma(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;b=new a(newBuffer);d=new c(newBuffer);f=new e(newBuffer);h=new g(newBuffer);j=new i(newBuffer);l=new k(newBuffer);n=new m(newBuffer);p=new o(newBuffer);buffer=newBuffer;return true} +var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=(function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}});Module["onModuleParsed"]=(function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}});function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=2)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var Module;if(!Module)Module=(typeof DracoDecoderModule!=="undefined"?DracoDecoderModule:null)||{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};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);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"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}else{Module["read"]=function shell_read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function shell_print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function shell_printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw new Error("Unknown runtime environment. Where are we?")}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}if(!Module["quit"]){Module["quit"]=(function(status,toThrow){throw toThrow})}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value;return value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i>2];var end=(ret+size+15|0)&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i>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)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(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>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)}var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=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}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var WASM_PAGE_SIZE=65536;var ASMJS_PAGE_SIZE=16777216;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}if(!Module["reallocBuffer"])Module["reallocBuffer"]=(function(size){var ret;try{if(ArrayBuffer.transfer){ret=ArrayBuffer.transfer(buffer,size)}else{var oldHEAP8=HEAP8;ret=new ArrayBuffer(size);var temp=new Int8Array(ret);temp.set(oldHEAP8)}}catch(e){return false}var success=_emscripten_replace_memory(ret);if(!success)return false;return ret});function enlargeMemory(){var PAGE_MULTIPLE=Module["usingWasm"]?WASM_PAGE_SIZE:ASMJS_PAGE_SIZE;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}assert(Math["imul"]&&Math["fround"]&&Math["clz32"]&&Math["trunc"],"this is a legacy browser, build with LEGACY_VM_SUPPORT");var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}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["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=Runtime.GLOBAL_BASE;STATICTOP=STATIC_BASE+16592;__ATINIT__.push();memoryInitializer="data:application/octet-stream;base64,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SwAAAEwAAABNAAAATgAAABIAAAABAAAAAQAAAAMAAAAAAAAAOAMAAEsAAABPAAAATQAAAE4AAAASAAAAAgAAAAIAAAAEAAAAAAAAAEgDAABQAAAAUQAAAE8AAAAAAAAAWAMAAFAAAABSAAAATwAAAE41ZHJhY28yOEF0dHJpYnV0ZU9jdGFoZWRyb25UcmFuc2Zvcm1FAE41ZHJhY28xOEF0dHJpYnV0ZVRyYW5zZm9ybUUATjVkcmFjbzMwQXR0cmlidXRlUXVhbnRpemF0aW9uVHJhbnNmb3JtRQBONWRyYWNvMTdBdHRyaWJ1dGVzRGVjb2RlckUATjVkcmFjbzI2QXR0cmlidXRlc0RlY29kZXJJbnRlcmZhY2VFAE41ZHJhY28yNlNlcXVlbnRpYWxBdHRyaWJ1dGVEZWNvZGVyRQBONWRyYWNvMzdTZXF1ZW50aWFsQXR0cmlidXRlRGVjb2RlcnNDb250cm9sbGVyRQBONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAE41ZHJhY28zN1ByZWRpY3Rpb25TY2hlbWVUeXBlZERlY29kZXJJbnRlcmZhY2VJaWlFRQBONWRyYWNvMzJQcmVkaWN0aW9uU2NoZW1lRGVjb2RlckludGVyZmFjZUUATjVkcmFjbzI1UHJlZGljdGlvblNjaGVtZUludGVyZmFjZUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAGZhbHNlAC9nb29nbGUvc3JjL2Nsb3VkL29zdGF2YS9maXhfcGVyZjMvZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvcHJlZGljdGlvbl9zY2hlbWVfd3JhcF90cmFuc2Zvcm1fYmFzZS5oAHF1YW50aXphdGlvbl9iaXRzAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAvZ29vZ2xlL3NyYy9jbG91ZC9vc3RhdmEvZml4X3BlcmYzL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfdGV4X2Nvb3Jkc19wb3J0YWJsZV9kZWNvZGVyLmgATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDBNZXNoUHJlZGljdGlvblNjaGVtZVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28zM1NlcXVlbnRpYWxJbnRlZ2VyQXR0cmlidXRlRGVjb2RlckUAKHEpID49ICgyKQAvZ29vZ2xlL3NyYy9jbG91ZC9vc3RhdmEvZml4X3BlcmYzL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvbm9ybWFsX2NvbXByZXNzaW9uX3V0aWxzLmgAU2V0UXVhbnRpemF0aW9uQml0cwAocSkgPD0gKDMwKQAoaW5fcykgPj0gKDApAE9jdGFoZXJkYWxDb29yZHNUb1VuaXRWZWN0b3IAKGluX3QpID49ICgwKQAoaW5fcykgPD0gKDEpAChpbl90KSA8PSAoMSkAKHByZWRfdmFsc1swXSkgPD0gKDIgKiB0aGlzLT5jZW50ZXJfdmFsdWUoKSkAL2dvb2dsZS9zcmMvY2xvdWQvb3N0YXZhL2ZpeF9wZXJmMy9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9jb21wcmVzc2lvbi9hdHRyaWJ1dGVzL3ByZWRpY3Rpb25fc2NoZW1lcy9wcmVkaWN0aW9uX3NjaGVtZV9ub3JtYWxfb2N0YWhlZHJvbl9jYW5vbmljYWxpemVkX2RlY29kaW5nX3RyYW5zZm9ybS5oAENvbXB1dGVPcmlnaW5hbFZhbHVlAChwcmVkX3ZhbHNbMV0pIDw9ICgyICogdGhpcy0+Y2VudGVyX3ZhbHVlKCkpAChjb3JyX3ZhbHNbMF0pIDw9ICgyICogdGhpcy0+Y2VudGVyX3ZhbHVlKCkpAChjb3JyX3ZhbHNbMV0pIDw9ICgyICogdGhpcy0+Y2VudGVyX3ZhbHVlKCkpACgwKSA8PSAocHJlZF92YWxzWzBdKQAoMCkgPD0gKHByZWRfdmFsc1sxXSkAKDApIDw9IChjb3JyX3ZhbHNbMF0pACgwKSA8PSAoY29ycl92YWxzWzFdKQAocykgPD0gKGNlbnRlcl92YWx1ZV8pAElzSW5EaWFtb25kACh0KSA8PSAoY2VudGVyX3ZhbHVlXykAKHMpID49ICgtY2VudGVyX3ZhbHVlXykAKHQpID49ICgtY2VudGVyX3ZhbHVlXykAKCpzKSA8PSAoY2VudGVyX3ZhbHVlXykASW52ZXJ0RGlhbW9uZAAoKnQpIDw9IChjZW50ZXJfdmFsdWVfKQAoKnMpID49ICgtY2VudGVyX3ZhbHVlXykAKCp0KSA+PSAoLWNlbnRlcl92YWx1ZV8pAChtYXhfcXVhbnRpemVkX3ZhbHVlICUgMikgPT0gKDEpAC9nb29nbGUvc3JjL2Nsb3VkL29zdGF2YS9maXhfcGVyZjMvZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvcHJlZGljdGlvbl9zY2hlbWVfbm9ybWFsX29jdGFoZWRyb25fdHJhbnNmb3JtX2Jhc2UuaABzZXRfbWF4X3F1YW50aXplZF92YWx1ZQBONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAHRoaXMtPklzSW5pdGlhbGl6ZWQoKQAvZ29vZ2xlL3NyYy9jbG91ZC9vc3RhdmEvZml4X3BlcmYzL2dvb2dsZTMvdGhpcmRfcGFydHkvZHJhY28vc3JjL2RyYWNvL2NvbXByZXNzaW9uL2F0dHJpYnV0ZXMvcHJlZGljdGlvbl9zY2hlbWVzL21lc2hfcHJlZGljdGlvbl9zY2hlbWVfZ2VvbWV0cmljX25vcm1hbF9wcmVkaWN0b3JfYXJlYS5oAENvbXB1dGVQcmVkaWN0ZWRWYWx1ZQAobm9ybWFsLkFic1N1bSgpKSA8PSAodXBwZXJfYm91bmQpAC9nb29nbGUvc3JjL2Nsb3VkL29zdGF2YS9maXhfcGVyZjMvZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvbWVzaF9wcmVkaWN0aW9uX3NjaGVtZV9nZW9tZXRyaWNfbm9ybWFsX3ByZWRpY3Rvcl9iYXNlLmgAR2V0UG9zaXRpb25Gb3JDb3JuZXIATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAC9nb29nbGUvc3JjL2Nsb3VkL29zdGF2YS9maXhfcGVyZjMvZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29tcHJlc3Npb24vYXR0cmlidXRlcy9wcmVkaWN0aW9uX3NjaGVtZXMvbWVzaF9wcmVkaWN0aW9uX3NjaGVtZV9nZW9tZXRyaWNfbm9ybWFsX2RlY29kZXIuaABDb21wdXRlT3JpZ2luYWxWYWx1ZXMAKG51bV9jb21wb25lbnRzKSA9PSAoMikAKHByZWRfbm9ybWFsXzNkLkFic1N1bSgpKSA9PSAob2N0YWhlZHJvbl90b29sX2JveF8uY2VudGVyX3ZhbHVlKCkpAChzdGQ6OmFicyhpbnRfdmVjWzBdKSArIHN0ZDo6YWJzKGludF92ZWNbMV0pICsgc3RkOjphYnMoaW50X3ZlY1syXSkpID09IChjZW50ZXJfdmFsdWVfKQBJbnRlZ2VyVmVjdG9yVG9RdWFudGl6ZWRPY3RhaGVkcmFsQ29vcmRzAChpKSA9PSAoMCkAR2V0UGFyZW50QXR0cmlidXRlVHlwZQBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzMyU2VxdWVudGlhbE5vcm1hbEF0dHJpYnV0ZURlY29kZXJFAE41ZHJhY28zOFNlcXVlbnRpYWxRdWFudGl6YXRpb25BdHRyaWJ1dGVEZWNvZGVyRQBVbnN1cHBvcnRlZCBlbmNvZGluZyBtZXRob2QuAFVuc3VwcG9ydGVkIGdlb21ldHJ5IHR5cGUuAElucHV0IGlzIG5vdCBhIG1lc2guAHNraXBfYXR0cmlidXRlX3RyYW5zZm9ybQBONWRyYWNvMTFNZXNoRGVjb2RlckUATjVkcmFjbzIyTWVzaEVkZ2VCcmVha2VyRGVjb2RlckUATjVkcmFjbzI5Q29ybmVyVGFibGVUcmF2ZXJzYWxQcm9jZXNzb3JJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUUAIWlkZW50aXR5X21hcHBpbmdfAC9nb29nbGUvc3JjL2Nsb3VkL29zdGF2YS9maXhfcGVyZjMvZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vYXR0cmlidXRlcy9wb2ludF9hdHRyaWJ1dGUuaABTZXRQb2ludE1hcEVudHJ5AE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjBFZGdlQnJlYWtlclRyYXZlcnNlcklOU18yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzNfRUVOU18xOUVkZ2VCcmVha2VyT2JzZXJ2ZXJFRUVFRQBONWRyYWNvMTVQb2ludHNTZXF1ZW5jZXJFAE41ZHJhY28yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzExQ29ybmVyVGFibGVFRUUATjVkcmFjbzIyTWVzaFRyYXZlcnNhbFNlcXVlbmNlcklOU18yNVByZWRpY3Rpb25EZWdyZWVUcmF2ZXJzZXJJTlNfMjlDb3JuZXJUYWJsZVRyYXZlcnNhbFByb2Nlc3NvcklOU18xMUNvcm5lclRhYmxlRUVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzNfRUVFRUVFAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjBFZGdlQnJlYWtlclRyYXZlcnNlcklOU18yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzExQ29ybmVyVGFibGVFRUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTM19FRU5TXzE5RWRnZUJyZWFrZXJPYnNlcnZlckVFRUVFAE41ZHJhY28yNk1lc2hFZGdlQnJlYWtlckRlY29kZXJJbXBsSU5TXzMxTWVzaEVkZ2VCcmVha2VyVHJhdmVyc2FsRGVjb2RlckVFRQBONWRyYWNvMzVNZXNoRWRnZUJyZWFrZXJEZWNvZGVySW1wbEludGVyZmFjZUUATjVkcmFjbzI2TWVzaEVkZ2VCcmVha2VyRGVjb2RlckltcGxJTlNfMzhNZXNoRWRnZUJyZWFrZXJUcmF2ZXJzYWxWYWxlbmNlRGVjb2RlckVFRQBONWRyYWNvMTVMaW5lYXJTZXF1ZW5jZXJFAE41ZHJhY28yMU1lc2hTZXF1ZW50aWFsRGVjb2RlckUATjVkcmFjbzE3UG9pbnRDbG91ZERlY29kZXJFAEZhaWxlZCB0byBwYXJzZSBEcmFjbyBoZWFkZXIuAERSQUNPAE5vdCBhIERyYWNvIGZpbGUuAEZhaWxlZCB0byBkZWNvZGUgbWV0YWRhdGEuAFVzaW5nIGluY29tcGF0aWJsZSBkZWNvZGVyIGZvciB0aGUgaW5wdXQgZ2VvbWV0cnkuAFVua25vd24gbWFqb3IgdmVyc2lvbi4AVW5rbm93biBtaW5vciB2ZXJzaW9uLgBGYWlsZWQgdG8gaW5pdGlhbGl6ZSB0aGUgZGVjb2Rlci4ARmFpbGVkIHRvIGRlY29kZSBnZW9tZXRyeSBkYXRhLgBGYWlsZWQgdG8gZGVjb2RlIHBvaW50IGF0dHJpYnV0ZXMuAChuYml0cykgPj0gKDApAC9nb29nbGUvc3JjL2Nsb3VkL29zdGF2YS9maXhfcGVyZjMvZ29vZ2xlMy90aGlyZF9wYXJ0eS9kcmFjby9zcmMvZHJhY28vY29yZS9kZWNvZGVyX2J1ZmZlci5oAEdldEJpdHMAKG5iaXRzKSA8PSAoMzIpAE41ZHJhY280TWVzaEUAYXR0X2lkID49IDAAL2dvb2dsZS9zcmMvY2xvdWQvb3N0YXZhL2ZpeF9wZXJmMy9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9wb2ludF9jbG91ZC9wb2ludF9jbG91ZC5jYwBTZXRBdHRyaWJ1dGUAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBONWRyYWNvMTBQb2ludENsb3VkRQAoMCkgPD0gKGF0dF9pZCkAL2dvb2dsZS9zcmMvY2xvdWQvb3N0YXZhL2ZpeF9wZXJmMy9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9wb2ludF9jbG91ZC9wb2ludF9jbG91ZC5oAGF0dHJpYnV0ZQAoYXR0X2lkKSA8IChzdGF0aWNfY2FzdDxpbnQzMl90PihhdHRyaWJ1dGVzXy5zaXplKCkpKQAoMCkgPD0gKGZhY2VfaWQudmFsdWUoKSkAL2dvb2dsZS9zcmMvY2xvdWQvb3N0YXZhL2ZpeF9wZXJmMy9nb29nbGUzL3RoaXJkX3BhcnR5L2RyYWNvL3NyYy9kcmFjby9tZXNoL21lc2guaABmYWNlAChmYWNlX2lkLnZhbHVlKCkpIDwgKHN0YXRpY19jYXN0PGludD4oZmFjZXNfLnNpemUoKSkpABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOADAxMjM0NTY3ODlBQkNERUYuAFQhIhkNAQIDEUscDBAECx0SHidobm9wcWIgBQYPExQVGggWBygkFxgJCg4bHyUjg4J9JiorPD0+P0NHSk1YWVpbXF1eX2BhY2RlZmdpamtscnN0eXp7fABJbGxlZ2FsIGJ5dGUgc2VxdWVuY2UARG9tYWluIGVycm9yAFJlc3VsdCBub3QgcmVwcmVzZW50YWJsZQBOb3QgYSB0dHkAUGVybWlzc2lvbiBkZW5pZWQAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQBObyBzdWNoIHByb2Nlc3MARmlsZSBleGlzdHMAVmFsdWUgdG9vIGxhcmdlIGZvciBkYXRhIHR5cGUATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UAT3V0IG9mIG1lbW9yeQBSZXNvdXJjZSBidXN5AEludGVycnVwdGVkIHN5c3RlbSBjYWxsAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAEludmFsaWQgc2VlawBDcm9zcy1kZXZpY2UgbGluawBSZWFkLW9ubHkgZmlsZSBzeXN0ZW0ARGlyZWN0b3J5IG5vdCBlbXB0eQBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIAT3BlcmF0aW9uIHRpbWVkIG91dABDb25uZWN0aW9uIHJlZnVzZWQASG9zdCBpcyBkb3duAEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgAAJWQAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABTdDExbG9naWNfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0U=";var tempDoublePtr=STATICTOP;STATICTOP+=16;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 ___cxa_allocate_exception(size){return _malloc(size)}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(Runtime.setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(Runtime.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>2];info.adjusted=thrown;return(Runtime.setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(Runtime.setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);function ___gxx_personality_v0(){}var SYSCALLS={varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}__ATEXIT__.push((function(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}));DYNAMICTOP_PTR=Runtime.staticAlloc(4);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=Runtime.alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var decodeBase64=typeof atob==="function"?atob:(function(input){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i2147483648)return false;b=new a(newBuffer);d=new c(newBuffer);f=new e(newBuffer);h=new g(newBuffer);j=new i(newBuffer);l=new k(newBuffer);n=new m(newBuffer);p=new o(newBuffer);buffer=newBuffer;return true} // EMSCRIPTEN_START_FUNCS -function Qc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;g=(h[g>>0]|h[g+1>>0]<<8)<<16>>16;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=(i&65535)<<16>>16;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=(i>>>16&65535)<<16>>16;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=a+2|0;g=h[g>>0]|h[g+1>>0]<<8;i=a+4|0;i=h[i>>0]|h[i+1>>0]<<8;a=(h[a>>0]|h[a+1>>0]<<8)<<16>>16;j=d;f[j>>2]=a;f[j+4>>2]=((a|0)<0)<<31>>31;g=g<<16>>16;j=d+8|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=i<<16>>16;j=d+16|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=d+24|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;a=Do(Ro(j|0,i|0,48)|0,I|0,48)|0;g=d;f[g>>2]=a;f[g+4>>2]=I;g=Do(0,j|0,48)|0;a=d+8|0;f[a>>2]=g;f[a+4>>2]=I;a=Do(Ro(j|0,i|0,16)|0,I|0,48)|0;g=d+16|0;f[g>>2]=a;f[g+4>>2]=I;i=Do(j|0,i|0,48)|0;j=d+24|0;f[j>>2]=i;f[j+4>>2]=I;j=1;return j|0}default:{j=0;return j|0}}return 0}function Rc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;i=d;f[i>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[i+4>>2]=0;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i;f[j+4>>2]=0;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=a+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=a+8|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;f[j+4>>2]=0;j=d+8|0;f[j>>2]=g;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i;f[j+4>>2]=0;j=d+24|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}e=c+e|0;a=e+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;g=e+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=e+12|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;f[j+4>>2]=0;j=d+8|0;f[j>>2]=a;f[j+4>>2]=0;j=d+16|0;f[j>>2]=g;f[j+4>>2]=0;j=d+24|0;f[j>>2]=i;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Sc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;i=t+4|0;s=t;if(!(te(a,c)|0)){s=0;u=t;return s|0}p=f[a+88>>2]|0;p=(Sa[f[(f[p>>2]|0)+32>>2]&255](p)|0)+36|0;if(((h[p>>0]|0)<<8&65535)<512){o=c+8|0;p=f[o>>2]|0;o=f[o+4>>2]|0;j=c+16|0;e=j;d=f[e>>2]|0;e=Kp(d|0,f[e+4>>2]|0,4,0)|0;g=I;if((o|0)<(g|0)|(o|0)==(g|0)&p>>>0>>0)d=0;else{d=(f[c>>2]|0)+d|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;f[i>>2]=d;k=j;f[k>>2]=e;f[k+4>>2]=g;k=7}}else if(rk(i,c)|0){d=f[i>>2]|0;k=7}else d=0;if((k|0)==7){k=a+96|0;i=(f[k>>2]|0)+d|0;f[k>>2]=i;k=a+100|0;f[s>>2]=0;g=a+104|0;e=f[g>>2]|0;d=f[k>>2]|0;j=e-d>>2;if(i>>>0<=j>>>0){if(i>>>0>>0?(l=d+(i<<2)|0,(e|0)!=(l|0)):0)f[g>>2]=e+(~((e+-4-l|0)>>>2)<<2)}else Xh(k,i-j|0,s);p=c+8|0;o=f[p+4>>2]|0;g=c+16|0;e=g;d=f[e>>2]|0;e=f[e+4>>2]|0;if((o|0)>(e|0)|((o|0)==(e|0)?(f[p>>2]|0)>>>0>d>>>0:0)?(p=b[(f[c>>2]|0)+d>>0]|0,n=Kp(d|0,e|0,1,0)|0,o=g,f[o>>2]=n,f[o+4>>2]=I,p<<24>>24==0):0){f[a+120>>2]=2;f[a+124>>2]=7;p=a+128|0;o=a+132|0;e=f[o>>2]|0;g=f[p>>2]|0;j=e-g|0;i=(j|0)/12|0;d=e;if(i>>>0>=6){if((j|0)!=72?(m=g+72|0,(d|0)!=(m|0)):0){do{e=d+-12|0;f[o>>2]=e;g=f[e>>2]|0;if(!g)d=e;else{e=d+-8|0;d=f[e>>2]|0;if((d|0)!=(g|0))f[e>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g);d=f[o>>2]|0}}while((d|0)!=(m|0));e=d}}else{yg(p,6-i|0);e=f[o>>2]|0}n=a+140|0;d=f[p>>2]|0;l=(e-d|0)/12|0;j=a+144|0;i=f[j>>2]|0;g=f[n>>2]|0;k=i-g>>2;if(l>>>0<=k>>>0){if(l>>>0>>0?(q=g+(l<<2)|0,(i|0)!=(q|0)):0)f[j>>2]=i+(~((i+-4-q|0)>>>2)<<2)}else{mj(n,l-k|0);e=f[o>>2]|0;d=f[p>>2]|0}if((e|0)==(d|0))d=1;else{m=0;do{rk(s,c)|0;d=f[s>>2]|0;if(d|0){e=f[p>>2]|0;k=e+(m*12|0)|0;j=e+(m*12|0)+4|0;i=f[j>>2]|0;g=f[k>>2]|0;l=i-g>>2;if(d>>>0<=l>>>0){if(d>>>0>>0?(r=g+(d<<2)|0,(i|0)!=(r|0)):0)f[j>>2]=i+(~((i+-4-r|0)>>>2)<<2)}else{mj(k,d-l|0);e=f[p>>2]|0;d=f[s>>2]|0}Sj(d,1,c,f[e+(m*12|0)>>2]|0)|0;f[(f[n>>2]|0)+(m<<2)>>2]=f[s>>2]}m=m+1|0}while(m>>>0<(((f[o>>2]|0)-(f[p>>2]|0)|0)/12|0)>>>0);d=1}}else d=0}s=d;u=t;return s|0}function Tc(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=La,j=0,k=0,l=0;switch(b[a+24>>0]|0){case 1:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;g=a+40|0;c=Kp(mo(f[g>>2]|0,f[g+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=I;j=f[a>>2]|0;g=f[j>>2]|0;if(!((k|0)<0|((k|0)==0?c>>>0<((f[j+4>>2]|0)-g|0)>>>0:0))){k=0;return k|0}e=$(b[g+c>>0]|0);i=$(e/$(127.0));n[d>>2]=(b[a+32>>0]|0)==0?e:i;k=d+4|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;k=1;return k|0}case 2:{l=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,2,0)|0;l=I;k=f[a>>2]|0;g=f[k>>2]|0;if((l|0)>0|((l|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8;c=(l&65535)>>>8&255;e=$((l&255)<<24>>24);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c<<24>>24)}else{e=$(e/$(127.0));n[d>>2]=e;e=$($(c<<24>>24)/$(127.0))}n[d+4>>2]=e;l=d+8|0;f[l>>2]=0;f[l+4>>2]=0;l=1;return l|0}case 3:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,3,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=b[l+1>>0]|0;g=b[l+2>>0]|0;e=$(b[l>>0]|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c<<24>>24);e=$(g<<24>>24)}else{i=$(e/$(127.0));n[d>>2]=i;i=$($(c<<24>>24)/$(127.0));e=$($(g<<24>>24)/$(127.0))}n[d+4>>2]=i;n[d+8>>2]=e;n[d+12>>2]=$(0.0);l=1;return l|0}case 4:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,4,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;c=l>>>8&255;g=l>>>16&255;j=l>>>24&255;e=$((l&255)<<24>>24);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c<<24>>24);n[d+4>>2]=i;i=$(g<<24>>24);n[d+8>>2]=i;i=$(j<<24>>24);n[d+12>>2]=i;l=1;return l|0}else{i=$(e/$(127.0));n[d>>2]=i;i=$($(c<<24>>24)/$(127.0));n[d+4>>2]=i;i=$($(g<<24>>24)/$(127.0));n[d+8>>2]=i;i=$($(j<<24>>24)/$(127.0));n[d+12>>2]=i;l=1;return l|0}}default:{l=0;return l|0}}return 0}function Uc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=La,i=0,j=0,k=0,l=La;switch(b[a+24>>0]|0){case 1:{k=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;k=I;i=f[a>>2]|0;e=f[i>>2]|0;if((k|0)>0|((k|0)==0?j>>>0>((f[i+4>>2]|0)-e|0)>>>0:0)){k=0;return k|0}k=e+c|0;l=$((h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24)>>>0);g=$(l*$(2.32830644e-10));n[d>>2]=(b[a+32>>0]|0)==0?l:g;n[d+4>>2]=$(0.0);k=1;return k|0}case 2:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,8,0)|0;i=I;k=f[a>>2]|0;e=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-e|0)>>>0:0)){k=0;return k|0}c=e+c|0;k=c;c=c+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=$((h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24)>>>0);if(!(b[a+32>>0]|0)){n[d>>2]=g;l=$(c>>>0);n[d+4>>2]=l;k=1;return k|0}else{l=$(g*$(2.32830644e-10));n[d>>2]=l;l=$($(c>>>0)*$(2.32830644e-10));n[d+4>>2]=l;k=1;return k|0}}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,12,0)|0;i=I;k=f[a>>2]|0;e=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-e|0)>>>0:0)){k=0;return k|0}k=e+c|0;c=k+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=$((h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24)>>>0);if(!(b[a+32>>0]|0)){n[d>>2]=g;l=$(c>>>0);n[d+4>>2]=l;k=1;return k|0}else{l=$(g*$(2.32830644e-10));n[d>>2]=l;l=$($(c>>>0)*$(2.32830644e-10));n[d+4>>2]=l;k=1;return k|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,16,0)|0;i=I;k=f[a>>2]|0;e=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-e|0)>>>0:0)){k=0;return k|0}k=e+c|0;c=k+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=$((h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24)>>>0);if(!(b[a+32>>0]|0)){n[d>>2]=g;l=$(c>>>0);n[d+4>>2]=l;k=1;return k|0}else{l=$(g*$(2.32830644e-10));n[d>>2]=l;l=$($(c>>>0)*$(2.32830644e-10));n[d+4>>2]=l;k=1;return k|0}}default:{k=0;return k|0}}return 0}function Vc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;a=Do(0,j|0,32)|0;g=d;f[g>>2]=a;f[g+4>>2]=I;i=Do(j|0,i|0,32)|0;j=d+8|0;f[j>>2]=i;f[j+4>>2]=I;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;a=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=i+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=i+8|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=a;f[j+4>>2]=((a|0)<0)<<31>>31;j=d+8|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;j=d+16|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;a=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=i+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=i+8|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=a;f[j+4>>2]=((a|0)<0)<<31>>31;j=d+8|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;j=d+16|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}default:{j=0;return j|0}}return 0}function Wc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=La,i=0,j=0,k=0,l=La;switch(b[a+24>>0]|0){case 1:{k=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;k=I;i=f[a>>2]|0;e=f[i>>2]|0;if((k|0)>0|((k|0)==0?j>>>0>((f[i+4>>2]|0)-e|0)>>>0:0)){k=0;return k|0}k=e+c|0;l=$(h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24|0);g=$(l*$(4.65661287e-10));n[d>>2]=(b[a+32>>0]|0)==0?l:g;n[d+4>>2]=$(0.0);k=1;return k|0}case 2:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,8,0)|0;i=I;k=f[a>>2]|0;e=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-e|0)>>>0:0)){k=0;return k|0}c=e+c|0;k=c;c=c+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=$(h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24|0);if(!(b[a+32>>0]|0)){n[d>>2]=g;l=$(c|0);n[d+4>>2]=l;k=1;return k|0}else{l=$(g*$(4.65661287e-10));n[d>>2]=l;l=$($(c|0)*$(4.65661287e-10));n[d+4>>2]=l;k=1;return k|0}}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,12,0)|0;i=I;k=f[a>>2]|0;e=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-e|0)>>>0:0)){k=0;return k|0}k=e+c|0;c=k+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=$(h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24|0);if(!(b[a+32>>0]|0)){n[d>>2]=g;l=$(c|0);n[d+4>>2]=l;k=1;return k|0}else{l=$(g*$(4.65661287e-10));n[d>>2]=l;l=$($(c|0)*$(4.65661287e-10));n[d+4>>2]=l;k=1;return k|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,16,0)|0;i=I;k=f[a>>2]|0;e=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-e|0)>>>0:0)){k=0;return k|0}k=e+c|0;c=k+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=$(h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24|0);if(!(b[a+32>>0]|0)){n[d>>2]=g;l=$(c|0);n[d+4>>2]=l;k=1;return k|0}else{l=$(g*$(4.65661287e-10));n[d>>2]=l;l=$($(c|0)*$(4.65661287e-10));n[d+4>>2]=l;k=1;return k|0}}default:{k=0;return k|0}}return 0}function Xc(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=La,j=0,k=0,l=0;switch(b[a+24>>0]|0){case 1:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;g=a+40|0;c=Kp(mo(f[g>>2]|0,f[g+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=I;j=f[a>>2]|0;g=f[j>>2]|0;if(!((k|0)<0|((k|0)==0?c>>>0<((f[j+4>>2]|0)-g|0)>>>0:0))){k=0;return k|0}e=$(h[g+c>>0]|0);i=$(e/$(255.0));n[d>>2]=(b[a+32>>0]|0)==0?e:i;k=d+4|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;k=1;return k|0}case 2:{l=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,2,0)|0;l=I;k=f[a>>2]|0;g=f[k>>2]|0;if((l|0)>0|((l|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8;c=(l&65535)>>>8&255;e=$(l&255);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c&255)}else{e=$(e/$(255.0));n[d>>2]=e;e=$($(c&255)/$(255.0))}n[d+4>>2]=e;l=d+8|0;f[l>>2]=0;f[l+4>>2]=0;l=1;return l|0}case 3:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,3,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=b[l+1>>0]|0;g=b[l+2>>0]|0;e=$(h[l>>0]|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c&255);e=$(g&255)}else{i=$(e/$(255.0));n[d>>2]=i;i=$($(c&255)/$(255.0));e=$($(g&255)/$(255.0))}n[d+4>>2]=i;n[d+8>>2]=e;n[d+12>>2]=$(0.0);l=1;return l|0}case 4:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,4,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;c=l>>>8&255;g=l>>>16&255;j=l>>>24&255;e=$(l&255);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c&255);n[d+4>>2]=i;i=$(g&255);n[d+8>>2]=i;i=$(j&255);n[d+12>>2]=i;l=1;return l|0}else{i=$(e/$(255.0));n[d>>2]=i;i=$($(c&255)/$(255.0));n[d+4>>2]=i;i=$($(g&255)/$(255.0));n[d+8>>2]=i;i=$($(j&255)/$(255.0));n[d+12>>2]=i;l=1;return l|0}}default:{l=0;return l|0}}return 0}function Yc(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)ds(c);f[e>>2]=0;return}if(b>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}q=no(b<<2)|0;c=f[a>>2]|0;f[a>>2]=q;if(c|0)ds(c);f[e>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;c=f[h+4>>2]|0;p=b+-1|0;q=(p&b|0)==0;if(q)g=c&p;else g=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;c=f[h>>2]|0;if(!c)return;else{i=h;e=c;c=h}a:while(1){o=c;b:while(1){c:do if(q){c=e;while(1){n=f[c+4>>2]&p;if((n|0)==(g|0))break c;e=(f[a>>2]|0)+(n<<2)|0;if(!(f[e>>2]|0)){g=n;break b}m=c+10|0;k=c+12|0;l=c+14|0;e=f[c>>2]|0;d:do if(!e)e=c;else{j=d[c+8>>1]|0;h=c;while(1){if(j<<16>>16!=(d[e+8>>1]|0)){e=h;break d}if((d[m>>1]|0)!=(d[e+10>>1]|0)){e=h;break d}if((d[k>>1]|0)!=(d[e+12>>1]|0)){e=h;break d}if((d[l>>1]|0)!=(d[e+14>>1]|0)){e=h;break d}h=f[e>>2]|0;if(!h)break;else{r=e;e=h;h=r}}}while(0);f[o>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(n<<2)>>2]>>2];f[f[(f[a>>2]|0)+(n<<2)>>2]>>2]=c;c=f[i>>2]|0;if(!c){c=40;break a}}}else{c=e;while(1){n=((f[c+4>>2]|0)>>>0)%(b>>>0)|0;if((n|0)==(g|0))break c;e=(f[a>>2]|0)+(n<<2)|0;if(!(f[e>>2]|0)){g=n;break b}m=c+10|0;k=c+12|0;l=c+14|0;e=f[c>>2]|0;e:do if(!e)e=c;else{j=d[c+8>>1]|0;h=c;while(1){if(j<<16>>16!=(d[e+8>>1]|0)){e=h;break e}if((d[m>>1]|0)!=(d[e+10>>1]|0)){e=h;break e}if((d[k>>1]|0)!=(d[e+12>>1]|0)){e=h;break e}if((d[l>>1]|0)!=(d[e+14>>1]|0)){e=h;break e}h=f[e>>2]|0;if(!h)break;else{r=e;e=h;h=r}}}while(0);f[o>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(n<<2)>>2]>>2];f[f[(f[a>>2]|0)+(n<<2)>>2]>>2]=c;c=f[i>>2]|0;if(!c){c=40;break a}}}while(0);e=f[c>>2]|0;if(!e){c=40;break a}else{i=c;o=c}}f[e>>2]=o;e=f[c>>2]|0;if(!e){c=40;break}else i=c}if((c|0)==40)return}function Zc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)ds(c);f[d>>2]=0;return}if(b>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}p=no(b<<2)|0;c=f[a>>2]|0;f[a>>2]=p;if(c|0)ds(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;g=f[d>>2]|0;if(!g)return;c=f[g+4>>2]|0;o=b+-1|0;p=(o&b|0)==0;if(p)e=c&o;else e=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(e<<2)>>2]=d;c=f[g>>2]|0;if(!c)return;else{h=g;d=c;c=g}a:while(1){n=c;b:while(1){c:do if(p){c=d;while(1){m=f[c+4>>2]&o;if((m|0)==(e|0))break c;d=(f[a>>2]|0)+(m<<2)|0;if(!(f[d>>2]|0)){e=m;break b}l=c+12|0;j=c+16|0;k=c+20|0;d=f[c>>2]|0;d:do if(!d)d=c;else{i=f[c+8>>2]|0;g=c;while(1){if((i|0)!=(f[d+8>>2]|0)){d=g;break d}if((f[l>>2]|0)!=(f[d+12>>2]|0)){d=g;break d}if((f[j>>2]|0)!=(f[d+16>>2]|0)){d=g;break d}if((f[k>>2]|0)!=(f[d+20>>2]|0)){d=g;break d}g=f[d>>2]|0;if(!g)break;else{q=d;d=g;g=q}}}while(0);f[n>>2]=f[d>>2];f[d>>2]=f[f[(f[a>>2]|0)+(m<<2)>>2]>>2];f[f[(f[a>>2]|0)+(m<<2)>>2]>>2]=c;c=f[h>>2]|0;if(!c){c=40;break a}}}else{c=d;while(1){m=((f[c+4>>2]|0)>>>0)%(b>>>0)|0;if((m|0)==(e|0))break c;d=(f[a>>2]|0)+(m<<2)|0;if(!(f[d>>2]|0)){e=m;break b}l=c+12|0;j=c+16|0;k=c+20|0;d=f[c>>2]|0;e:do if(!d)d=c;else{i=f[c+8>>2]|0;g=c;while(1){if((i|0)!=(f[d+8>>2]|0)){d=g;break e}if((f[l>>2]|0)!=(f[d+12>>2]|0)){d=g;break e}if((f[j>>2]|0)!=(f[d+16>>2]|0)){d=g;break e}if((f[k>>2]|0)!=(f[d+20>>2]|0)){d=g;break e}g=f[d>>2]|0;if(!g)break;else{q=d;d=g;g=q}}}while(0);f[n>>2]=f[d>>2];f[d>>2]=f[f[(f[a>>2]|0)+(m<<2)>>2]>>2];f[f[(f[a>>2]|0)+(m<<2)>>2]>>2]=c;c=f[h>>2]|0;if(!c){c=40;break a}}}while(0);d=f[c>>2]|0;if(!d){c=40;break a}else{h=c;n=c}}f[d>>2]=n;d=f[c>>2]|0;if(!d){c=40;break}else h=c}if((c|0)==40)return}function _c(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)ds(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}q=no(c<<2)|0;d=f[a>>2]|0;f[a>>2]=q;if(d|0)ds(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;d=f[h+4>>2]|0;p=c+-1|0;q=(p&c|0)==0;if(q)g=d&p;else g=(d>>>0)%(c>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;d=f[h>>2]|0;if(!d)return;else{i=h;e=d;d=h}a:while(1){o=d;b:while(1){c:do if(q){d=e;while(1){n=f[d+4>>2]&p;if((n|0)==(g|0))break c;e=(f[a>>2]|0)+(n<<2)|0;if(!(f[e>>2]|0)){g=n;break b}m=d+9|0;k=d+10|0;l=d+11|0;e=f[d>>2]|0;d:do if(!e)e=d;else{j=b[d+8>>0]|0;h=d;while(1){if(j<<24>>24!=(b[e+8>>0]|0)){e=h;break d}if((b[m>>0]|0)!=(b[e+9>>0]|0)){e=h;break d}if((b[k>>0]|0)!=(b[e+10>>0]|0)){e=h;break d}if((b[l>>0]|0)!=(b[e+11>>0]|0)){e=h;break d}h=f[e>>2]|0;if(!h)break;else{r=e;e=h;h=r}}}while(0);f[o>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(n<<2)>>2]>>2];f[f[(f[a>>2]|0)+(n<<2)>>2]>>2]=d;d=f[i>>2]|0;if(!d){d=40;break a}}}else{d=e;while(1){n=((f[d+4>>2]|0)>>>0)%(c>>>0)|0;if((n|0)==(g|0))break c;e=(f[a>>2]|0)+(n<<2)|0;if(!(f[e>>2]|0)){g=n;break b}m=d+9|0;k=d+10|0;l=d+11|0;e=f[d>>2]|0;e:do if(!e)e=d;else{j=b[d+8>>0]|0;h=d;while(1){if(j<<24>>24!=(b[e+8>>0]|0)){e=h;break e}if((b[m>>0]|0)!=(b[e+9>>0]|0)){e=h;break e}if((b[k>>0]|0)!=(b[e+10>>0]|0)){e=h;break e}if((b[l>>0]|0)!=(b[e+11>>0]|0)){e=h;break e}h=f[e>>2]|0;if(!h)break;else{r=e;e=h;h=r}}}while(0);f[o>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(n<<2)>>2]>>2];f[f[(f[a>>2]|0)+(n<<2)>>2]>>2]=d;d=f[i>>2]|0;if(!d){d=40;break a}}}while(0);e=f[d>>2]|0;if(!e){d=40;break a}else{i=d;o=d}}f[e>>2]=o;e=f[d>>2]|0;if(!e){d=40;break}else i=d}if((d|0)==40)return}function $c(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=0,j=0,k=0,l=La;switch(b[a+24>>0]|0){case 1:{k=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,2,0)|0;k=I;i=f[a>>2]|0;g=f[i>>2]|0;if((k|0)>0|((k|0)==0?j>>>0>((f[i+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;l=$((h[k>>0]|h[k+1>>0]<<8)<<16>>16);e=$(l/$(32767.0));n[d>>2]=(b[a+32>>0]|0)==0?l:e;n[d+4>>2]=$(0.0);k=1;return k|0}case 2:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;c=k>>>16&65535;e=$((k&65535)<<16>>16);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c<<16>>16);n[d+4>>2]=l;k=1;return k|0}else{l=$(e/$(32767.0));n[d>>2]=l;l=$($(c<<16>>16)/$(32767.0));n[d+4>>2]=l;k=1;return k|0}}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,6,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;c=k+2|0;c=h[c>>0]|h[c+1>>0]<<8;e=$((h[k>>0]|h[k+1>>0]<<8)<<16>>16);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c<<16>>16);n[d+4>>2]=l;k=1;return k|0}else{l=$(e/$(32767.0));n[d>>2]=l;l=$($(c<<16>>16)/$(32767.0));n[d+4>>2]=l;k=1;return k|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,8,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}c=g+c|0;j=c;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;c=c+4|0;k=(b[a+32>>0]|0)==0;c=(Wo(j|0,h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24|0,16)|0)&65535;e=$((j&65535)<<16>>16);if(k){n[d>>2]=e;l=$(c<<16>>16);n[d+4>>2]=l;k=1;return k|0}else{l=$(e/$(32767.0));n[d>>2]=l;l=$($(c<<16>>16)/$(32767.0));n[d+4>>2]=l;k=1;return k|0}}default:{k=0;return k|0}}return 0}function ad(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=0,j=0,k=La,l=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;g=a+40|0;c=Kp(mo(f[g>>2]|0,f[g+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=I;i=f[a>>2]|0;g=f[i>>2]|0;if(!((j|0)<0|((j|0)==0?c>>>0<((f[i+4>>2]|0)-g|0)>>>0:0))){j=0;return j|0}k=$(b[g+c>>0]|0);e=$(k/$(127.0));n[d>>2]=(b[a+32>>0]|0)==0?k:e;j=d+4|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 2:{l=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,2,0)|0;l=I;j=f[a>>2]|0;g=f[j>>2]|0;if((l|0)>0|((l|0)==0?i>>>0>((f[j+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8;c=(l&65535)>>>8&255;e=$((l&255)<<24>>24);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c<<24>>24)}else{e=$(e/$(127.0));n[d>>2]=e;e=$($(c<<24>>24)/$(127.0))}n[d+4>>2]=e;n[d+8>>2]=$(0.0);l=1;return l|0}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,3,0)|0;i=I;l=f[a>>2]|0;g=f[l>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=b[l+1>>0]|0;g=b[l+2>>0]|0;e=$(b[l>>0]|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;k=$(c<<24>>24);n[d+4>>2]=k;k=$(g<<24>>24);n[d+8>>2]=k;l=1;return l|0}else{k=$(e/$(127.0));n[d>>2]=k;k=$($(c<<24>>24)/$(127.0));n[d+4>>2]=k;k=$($(g<<24>>24)/$(127.0));n[d+8>>2]=k;l=1;return l|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;i=I;l=f[a>>2]|0;g=f[l>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;c=l>>>8&255;g=l>>>16&255;e=$((l&255)<<24>>24);if(!(b[a+32>>0]|0)){n[d>>2]=e;k=$(c<<24>>24);n[d+4>>2]=k;k=$(g<<24>>24);n[d+8>>2]=k;l=1;return l|0}else{k=$(e/$(127.0));n[d>>2]=k;k=$($(c<<24>>24)/$(127.0));n[d+4>>2]=k;k=$($(g<<24>>24)/$(127.0));n[d+8>>2]=k;l=1;return l|0}}default:{l=0;return l|0}}return 0}function bd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=La,l=La;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];i=~~$(n[s>>2]);f[d>>2]=i;f[d+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;i=j;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=~~(f[s>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24,$(n[s>>2]));f[d>>2]=i;j=~~(f[s>>2]=j,$(n[s>>2]));f[d+4>>2]=j;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];l=$(n[s>>2]);j=j+4|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];k=$(n[s>>2]);f[d>>2]=~~l;f[d+4>>2]=~~k;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];k=$(n[s>>2]);j=j+4|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];l=$(n[s>>2]);f[d>>2]=~~k;f[d+4>>2]=~~l;j=1;return j|0}default:{j=0;return j|0}}return 0}function cd(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=0,j=0,k=0,l=La;switch(b[a+24>>0]|0){case 1:{k=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,2,0)|0;k=I;i=f[a>>2]|0;g=f[i>>2]|0;if((k|0)>0|((k|0)==0?j>>>0>((f[i+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;l=$((h[k>>0]|h[k+1>>0]<<8)&65535);e=$(l/$(65535.0));n[d>>2]=(b[a+32>>0]|0)==0?l:e;n[d+4>>2]=$(0.0);k=1;return k|0}case 2:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;c=k>>>16&65535;e=$(k&65535);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c&65535);n[d+4>>2]=l;k=1;return k|0}else{l=$(e/$(65535.0));n[d>>2]=l;l=$($(c&65535)/$(65535.0));n[d+4>>2]=l;k=1;return k|0}}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,6,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;c=k+2|0;c=h[c>>0]|h[c+1>>0]<<8;e=$((h[k>>0]|h[k+1>>0]<<8)&65535);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c&65535);n[d+4>>2]=l;k=1;return k|0}else{l=$(e/$(65535.0));n[d>>2]=l;l=$($(c&65535)/$(65535.0));n[d+4>>2]=l;k=1;return k|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,8,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}c=g+c|0;j=c;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;c=c+4|0;k=(b[a+32>>0]|0)==0;c=(Wo(j|0,h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24|0,16)|0)&65535;e=$(j&65535);if(k){n[d>>2]=e;l=$(c&65535);n[d+4>>2]=l;k=1;return k|0}else{l=$(e/$(65535.0));n[d>>2]=l;l=$($(c&65535)/$(65535.0));n[d+4>>2]=l;k=1;return k|0}}default:{k=0;return k|0}}return 0}function dd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;g=(h[g>>0]|h[g+1>>0]<<8)<<16>>16;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=(i&65535)<<16>>16;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=(i>>>16&65535)<<16>>16;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=a+2|0;g=h[g>>0]|h[g+1>>0]<<8;i=a+4|0;i=h[i>>0]|h[i+1>>0]<<8;a=(h[a>>0]|h[a+1>>0]<<8)<<16>>16;j=d;f[j>>2]=a;f[j+4>>2]=((a|0)<0)<<31>>31;g=g<<16>>16;j=d+8|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=i<<16>>16;j=d+16|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=Do(Ro(j|0,i|0,48)|0,I|0,48)|0;a=d;f[a>>2]=g;f[a+4>>2]=I;a=Do(0,j|0,48)|0;g=d+8|0;f[g>>2]=a;f[g+4>>2]=I;i=Do(Ro(j|0,i|0,16)|0,I|0,48)|0;j=d+16|0;f[j>>2]=i;f[j+4>>2]=I;j=1;return j|0}default:{j=0;return j|0}}return 0}function ed(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=Sa[f[(f[a>>2]|0)+44>>2]&255](a)|0;if((r|0)<1){c=0;return c|0}m=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;s=X(m,r)|0;kh(a,m,r);m=a+16|0;q=f[m>>2]|0;q=(f[f[q>>2]>>2]|0)+(f[q+48>>2]|0)|0;o=d+8|0;g=o;e=f[g>>2]|0;g=f[g+4>>2]|0;p=d+16|0;l=p;k=f[l>>2]|0;l=f[l+4>>2]|0;if(!((g|0)>(l|0)|(g|0)==(l|0)&e>>>0>k>>>0)){c=0;return c|0}h=f[d>>2]|0;n=b[h+k>>0]|0;i=Kp(k|0,l|0,1,0)|0;j=I;t=p;f[t>>2]=i;f[t+4>>2]=j;a:do if(!(n<<24>>24)){if(!((g|0)>(j|0)|(g|0)==(j|0)&e>>>0>i>>>0)){t=0;return t|0}n=b[h+i>>0]|0;t=Kp(k|0,l|0,2,0)|0;l=p;f[l>>2]=t;f[l+4>>2]=I;l=n&255;t=(l|0)==(bn(5)|0);e=f[(f[m>>2]|0)+64>>2]|0;e=(f[e+4>>2]|0)-(f[e>>2]|0)|0;if(t){g=s<<2;if(e>>>0>>0){t=0;return t|0}m=o;o=f[m>>2]|0;m=f[m+4>>2]|0;t=p;e=f[t>>2]|0;t=Kp(e|0,f[t+4>>2]|0,g|0,0)|0;n=I;if((m|0)<(n|0)|(m|0)==(n|0)&o>>>0>>0){t=0;return t|0}else{Fh(q|0,(f[d>>2]|0)+e|0,g|0)|0;t=p;t=Kp(f[t>>2]|0,f[t+4>>2]|0,g|0,0)|0;i=p;f[i>>2]=t;f[i+4>>2]=I;i=18;break}}i=X(l,s)|0;if(e>>>0>>0){t=0;return t|0}j=o;h=f[j>>2]|0;j=f[j+4>>2]|0;g=p;e=f[g>>2]|0;g=f[g+4>>2]|0;t=_o(h|0,j|0,e|0,g|0)|0;k=I;m=((i|0)<0)<<31>>31;if((k|0)<(m|0)|(k|0)==(m|0)&t>>>0>>0){t=0;return t|0}if(!s)i=19;else{k=n&255;i=j;j=0;while(1){t=Kp(e|0,g|0,k|0,0)|0;n=I;if(!((i|0)<(n|0)|(i|0)==(n|0)&h>>>0>>0)){Fh(q+(j<<2)|0,(f[d>>2]|0)+e|0,l|0)|0;e=p;e=Kp(f[e>>2]|0,f[e+4>>2]|0,k|0,0)|0;g=I;t=p;f[t>>2]=e;f[t+4>>2]=g}j=j+1|0;if((j|0)==(s|0)){i=18;break a}h=o;i=f[h+4>>2]|0;h=f[h>>2]|0}}}else if(Sj(s,r,d,q)|0)i=18;else{t=0;return t|0}while(0);do if((i|0)==18)if((s|0)>0){g=a+20|0;e=f[g>>2]|0;if(e|0?Sa[f[(f[e>>2]|0)+32>>2]&255](e)|0:0){h=1;break}wn(q,s,q);h=1}else i=19;while(0);if((i|0)==19){g=a+20|0;h=0}e=f[g>>2]|0;if(e|0){if(!(Wa[f[(f[e>>2]|0)+40>>2]&127](e,d)|0)){t=0;return t|0}if(h?(t=f[g>>2]|0,!(Ra[f[(f[t>>2]|0)+44>>2]&63](t,q,q,s,r,f[c>>2]|0)|0)):0){t=0;return t|0}}t=1;return t|0}function fd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=La,k=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;b[s>>0]=b[g>>0];b[s+1>>0]=b[g+1>>0];b[s+2>>0]=b[g+2>>0];b[s+3>>0]=b[g+3>>0];j=$(n[s>>2]);g=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;i=d;f[i>>2]=~~+j>>>0;f[i+4>>2]=g;i=1;return i|0}case 2:{k=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;k=I;i=f[a>>2]|0;c=f[i>>2]|0;if((k|0)>0|((k|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}i=c+e|0;j=(f[s>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24,$(n[s>>2]));i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=1;return k|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;k=a+40|0;e=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;k=f[a>>2]|0;c=f[k>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[k+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}i=c+e|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];j=$(n[s>>2]);i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=1;return k|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;k=a+40|0;e=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;k=f[a>>2]|0;c=f[k>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[k+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}i=c+e|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];j=$(n[s>>2]);i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=1;return k|0}default:{k=0;return k|0}}return 0}function gd(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=0,j=0,k=La,l=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;g=a+40|0;c=Kp(mo(f[g>>2]|0,f[g+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=I;i=f[a>>2]|0;g=f[i>>2]|0;if(!((j|0)<0|((j|0)==0?c>>>0<((f[i+4>>2]|0)-g|0)>>>0:0))){j=0;return j|0}k=$(h[g+c>>0]|0);e=$(k/$(255.0));n[d>>2]=(b[a+32>>0]|0)==0?k:e;j=d+4|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 2:{l=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,2,0)|0;l=I;j=f[a>>2]|0;g=f[j>>2]|0;if((l|0)>0|((l|0)==0?i>>>0>((f[j+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8;c=(l&65535)>>>8&255;e=$(l&255);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c&255)}else{e=$(e/$(255.0));n[d>>2]=e;e=$($(c&255)/$(255.0))}n[d+4>>2]=e;n[d+8>>2]=$(0.0);l=1;return l|0}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,3,0)|0;i=I;l=f[a>>2]|0;g=f[l>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=b[l+1>>0]|0;g=b[l+2>>0]|0;e=$(h[l>>0]|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;k=$(c&255);n[d+4>>2]=k;k=$(g&255);n[d+8>>2]=k;l=1;return l|0}else{k=$(e/$(255.0));n[d>>2]=k;k=$($(c&255)/$(255.0));n[d+4>>2]=k;k=$($(g&255)/$(255.0));n[d+8>>2]=k;l=1;return l|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;i=I;l=f[a>>2]|0;g=f[l>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;c=l>>>8&255;g=l>>>16&255;e=$(l&255);if(!(b[a+32>>0]|0)){n[d>>2]=e;k=$(c&255);n[d+4>>2]=k;k=$(g&255);n[d+8>>2]=k;l=1;return l|0}else{k=$(e/$(255.0));n[d>>2]=k;k=$($(c&255)/$(255.0));n[d+4>>2]=k;k=$($(g&255)/$(255.0));n[d+8>>2]=k;l=1;return l|0}}default:{l=0;return l|0}}return 0}function hd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;i=d;f[i>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[i+4>>2]=0;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i;f[j+4>>2]=0;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=a+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=a+8|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;f[j+4>>2]=0;j=d+8|0;f[j>>2]=g;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=a+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=a+8|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;f[j+4>>2]=0;j=d+8|0;f[j>>2]=g;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function id(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;i=d;f[i>>2]=(h[g>>0]|h[g+1>>0]<<8)&65535;f[i+4>>2]=0;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=i&65535;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i>>>16;f[j+4>>2]=0;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=a+2|0;g=h[g>>0]|h[g+1>>0]<<8;i=a+4|0;i=h[i>>0]|h[i+1>>0]<<8;j=d;f[j>>2]=(h[a>>0]|h[a+1>>0]<<8)&65535;f[j+4>>2]=0;j=d+8|0;f[j>>2]=g&65535;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i&65535;f[j+4>>2]=0;j=d+24|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;a=d;f[a>>2]=j&65535;f[a+4>>2]=0;a=Wo(j|0,i|0,16)|0;g=d+8|0;f[g>>2]=a&65535;f[g+4>>2]=0;g=d+16|0;f[g>>2]=i&65535;f[g+4>>2]=0;i=Wo(j|0,i|0,48)|0;j=d+24|0;f[j>>2]=i;f[j+4>>2]=I;j=1;return j|0}default:{j=0;return j|0}}return 0}function jd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;w=u;u=u+48|0;s=w+32|0;o=w+28|0;p=w+24|0;q=w+20|0;r=w+16|0;v=w;t=c+24|0;k=b[t>>0]|0;m=k<<24>>24;n=f[a+80>>2]|0;h=X(n,m)|0;f[v>>2]=f[1289];f[v+4>>2]=f[1290];f[v+8>>2]=f[1291];f[v+12>>2]=f[1292];g=d+4|0;e=f[g>>2]|0;a=f[d>>2]|0;i=e-a>>2;if(h>>>0<=i>>>0){if(h>>>0>>0?(j=a+(h<<2)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-4-j|0)>>>2)<<2)}else mj(d,h-i|0);if((n|0)<=0){v=1;u=w;return v|0}l=c+84|0;j=c+68|0;a:do if(k<<24>>24>0){h=0;i=0;while(1){if(!(b[l>>0]|0))a=f[(f[j>>2]|0)+(i<<2)>>2]|0;else a=i;switch(b[t>>0]|0){case 1:{f[o>>2]=a;f[s>>2]=f[o>>2];a=hg(c,s,v)|0;break}case 2:{f[p>>2]=a;f[s>>2]=f[p>>2];a=gg(c,s,v)|0;break}case 3:{f[q>>2]=a;f[s>>2]=f[q>>2];a=fg(c,s,v)|0;break}case 4:{f[r>>2]=a;f[s>>2]=f[r>>2];a=eg(c,s,v)|0;break}default:break a}if(!a){a=0;e=29;break}a=f[d>>2]|0;e=h;g=0;while(1){f[a+(e<<2)>>2]=f[v+(g<<2)>>2];g=g+1|0;if((g|0)==(m|0))break;else e=e+1|0}i=i+1|0;if((i|0)>=(n|0)){a=1;e=29;break}else h=m+h|0}if((e|0)==29){u=w;return a|0}}else{e=0;while(1){if(!(b[l>>0]|0))a=f[(f[j>>2]|0)+(e<<2)>>2]|0;else a=e;switch(b[t>>0]|0){case 1:{f[o>>2]=a;f[s>>2]=f[o>>2];a=hg(c,s,v)|0;break}case 2:{f[p>>2]=a;f[s>>2]=f[p>>2];a=gg(c,s,v)|0;break}case 3:{f[q>>2]=a;f[s>>2]=f[q>>2];a=fg(c,s,v)|0;break}case 4:{f[r>>2]=a;f[s>>2]=f[r>>2];a=eg(c,s,v)|0;break}default:break a}if(!a){a=0;e=29;break}e=e+1|0;if((e|0)>=(n|0)){a=1;e=29;break}}if((e|0)==29){u=w;return a|0}}while(0);v=0;u=w;return v|0}function kd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}g=b[c+e>>0]|0;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8;g=(i&255)<<24>>24;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=((i&65535)>>>8&255)<<24>>24;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=b[a+1>>0]|0;i=b[a+2>>0]|0;a=b[a>>0]|0;j=d;f[j>>2]=a;f[j+4>>2]=((a|0)<0)<<31>>31;g=g<<24>>24;j=d+8|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=i<<24>>24;j=d+16|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=d+24|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=(i&255)<<24>>24;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;j=(i>>>8&255)<<24>>24;g=d+8|0;f[g>>2]=j;f[g+4>>2]=((j|0)<0)<<31>>31;g=(i>>>16&255)<<24>>24;j=d+16|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=(i>>>24&255)<<24>>24;j=d+24|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}default:{j=0;return j|0}}return 0}function ld(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+64|0;E=F;g=E;i=g+40|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(i|0));a:do if(qe(E,d)|0?bf(E,d)|0:0){g=(a|0)>0;b:do if(g){if(!(f[E+12>>2]|0)){k=0;break a}Nh(d,0,0)|0;if(g){z=E+44|0;C=E+48|0;y=E+40|0;s=E+16|0;t=E+28|0;A=(c|0)>0;D=d+36|0;x=d+32|0;v=d+24|0;w=d+28|0;i=f[C>>2]|0;B=0;g=0;while(1){c:do if(i>>>0<16384){j=f[z>>2]|0;do{if((j|0)<=0)break c;r=f[y>>2]|0;j=j+-1|0;f[z>>2]=j;i=h[r+j>>0]|i<<8;f[C>>2]=i}while(i>>>0<16384)}while(0);p=i&4095;r=f[(f[s>>2]|0)+(p<<2)>>2]|0;q=f[t>>2]|0;i=(X(f[q+(r<<3)>>2]|0,i>>>12)|0)+p-(f[q+(r<<3)+4>>2]|0)|0;f[C>>2]=i;if(A){p=(r|0)>0;if((r|0)<=-1){g=22;break}if((r|0)<33){q=0;o=g}else{g=21;break}while(1){if(!(b[D>>0]|0)){k=0;break a}if(p){l=f[v>>2]|0;m=f[w>>2]|0;k=f[x>>2]|0;n=0;j=0;do{g=l+(k>>>3)|0;if(g>>>0>>0){g=(h[g>>0]|0)>>>(k&7)&1;k=k+1|0;f[x>>2]=k}else g=0;j=g<>2]=j;q=q+1|0;if((q|0)>=(c|0))break;else o=g}}B=B+c|0;if((B|0)>=(a|0))break b}if((g|0)==21){if(!(b[D>>0]|0)){k=0;break a}Ga(21773,21677,156,21765)}else if((g|0)==22){if(!(b[D>>0]|0)){k=0;break a}Ga(21662,21677,155,21765)}}}else Nh(d,0,0)|0;while(0);gn(d);k=1}else k=0;while(0);g=f[E+28>>2]|0;if(g|0){j=E+32|0;i=f[j>>2]|0;if((i|0)!=(g|0))f[j>>2]=i+(~((i+-8-g|0)>>>3)<<3);ds(g)}g=f[E+16>>2]|0;if(g|0){j=E+20|0;i=f[j>>2]|0;if((i|0)!=(g|0))f[j>>2]=i+(~((i+-4-g|0)>>>2)<<2);ds(g)}j=f[E>>2]|0;if(!j){u=F;return k|0}i=E+4|0;g=f[i>>2]|0;if((g|0)!=(j|0))f[i>>2]=g+(~((g+-4-j|0)>>>2)<<2);ds(j);u=F;return k|0}function md(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;x=e>>>0>1073741823?-1:e<<2;t=as(x)|0;_j(t|0,0,x|0)|0;u=as(x)|0;_j(u|0,0,x|0)|0;x=a+8|0;$i(x,t,b,c);s=f[a+32>>2]|0;v=a+40|0;h=f[v>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;r=g-d|0;w=r>>2;if((r|0)<=4){bs(u);bs(t);return 1}n=f[a+36>>2]|0;q=(e|0)>0;r=s+64|0;p=s+28|0;o=e<<2;a=1;while(1){if(g-d>>2>>>0<=a>>>0){Oq(h);d=f[h>>2]|0}m=f[d+(a<<2)>>2]|0;if(q)_j(t|0,0,o|0)|0;if((m|0)>-1){l=f[s>>2]|0;k=m;j=0;do{if(((f[l+(k>>>5<<2)>>2]&1<<(k&31)|0)==0?(B=f[(f[(f[r>>2]|0)+12>>2]|0)+(k<<2)>>2]|0,(B|0)>=0):0)?(A=f[p>>2]|0,i=f[n>>2]|0,y=f[i+(f[A+(B<<2)>>2]<<2)>>2]|0,z=B+1|0,z=f[i+(f[A+((((z|0)%3|0|0)==0?B+-2|0:z)<<2)>>2]<<2)>>2]|0,A=f[i+(f[A+((((B>>>0)%3|0|0)==0?2:-1)+B<<2)>>2]<<2)>>2]|0,(y|0)<(a|0)&(z|0)<(a|0)&(A|0)<(a|0)):0){g=X(y,e)|0;h=X(z,e)|0;i=X(A,e)|0;if(q){d=0;do{f[u+(d<<2)>>2]=(f[c+(d+i<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+g<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(q){d=0;do{i=t+(d<<2)|0;f[i>>2]=(f[i>>2]|0)+(f[u+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}j=j+1|0}d=(((k>>>0)%3|0|0)==0?2:-1)+k|0;do if(!(f[l+(d>>>5<<2)>>2]&1<<(d&31))){if((d|0)>=0){d=f[(f[(f[r>>2]|0)+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}}else d=-1073741824;while(0);k=(d|0)==(m|0)?-1073741824:d}while((k|0)>-1);d=X(a,e)|0;if(!j)C=29;else{if(q){g=0;do{m=t+(g<<2)|0;f[m>>2]=(f[m>>2]|0)/(j|0)|0;g=g+1|0}while((g|0)!=(e|0))}$i(x,t,b+(d<<2)|0,c+(d<<2)|0)}}else{d=X(a,e)|0;C=29}if((C|0)==29){C=0;$i(x,c+((X(a+-1|0,e)|0)<<2)|0,b+(d<<2)|0,c+(d<<2)|0)}a=a+1|0;if((a|0)>=(w|0))break;d=f[v>>2]|0;g=f[d+4>>2]|0;h=d;d=f[d>>2]|0}bs(u);bs(t);return 1}function nd(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var 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;y=e>>>0>1073741823?-1:e<<2;u=as(y)|0;_j(u|0,0,y|0)|0;v=as(y)|0;_j(v|0,0,y|0)|0;y=a+8|0;$i(y,u,b,c);t=f[a+32>>2]|0;w=a+40|0;h=f[w>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;s=g-d|0;x=s>>2;if((s|0)<=4){bs(v);bs(u);return 1}p=f[a+36>>2]|0;s=(e|0)>0;r=t+12|0;q=e<<2;a=1;while(1){if(g-d>>2>>>0<=a>>>0){Oq(h);d=f[h>>2]|0}o=f[d+(a<<2)>>2]|0;if(s)_j(u|0,0,q|0)|0;if((o|0)>-1){n=f[r>>2]|0;m=o;l=0;while(1){g=f[n+(m<<2)>>2]|0;if((g|0)>=0){h=f[t>>2]|0;i=f[p>>2]|0;k=f[i+(f[h+(g<<2)>>2]<<2)>>2]|0;d=g+1|0;d=((d|0)%3|0|0)==0?g+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[h+(d<<2)>>2]|0;j=f[i+(d<<2)>>2]|0;d=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((d|0)<0)d=-1073741824;else d=f[h+(d<<2)>>2]|0;d=f[i+(d<<2)>>2]|0;if((k|0)<(a|0)&(j|0)<(a|0)&(d|0)<(a|0)){i=X(k,e)|0;h=X(j,e)|0;g=X(d,e)|0;if(s){d=0;do{f[v+(d<<2)>>2]=(f[c+(d+g<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+i<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(s){d=0;do{k=u+(d<<2)|0;f[k>>2]=(f[k>>2]|0)+(f[v+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}h=l+1|0}else h=l}else h=l;d=(((m>>>0)%3|0|0)==0?2:-1)+m|0;do if((d|0)>=0){d=f[n+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}while(0);m=(d|0)==(o|0)?-1073741824:d;if((m|0)<=-1)break;else l=h}d=X(a,e)|0;if(!h)z=31;else{if(s){g=0;do{o=u+(g<<2)|0;f[o>>2]=(f[o>>2]|0)/(h|0)|0;g=g+1|0}while((g|0)!=(e|0))}$i(y,u,b+(d<<2)|0,c+(d<<2)|0)}}else{d=X(a,e)|0;z=31}if((z|0)==31){z=0;$i(y,c+((X(a+-1|0,e)|0)<<2)|0,b+(d<<2)|0,c+(d<<2)|0)}a=a+1|0;if((a|0)>=(x|0))break;d=f[w>>2]|0;g=f[d+4>>2]|0;h=d;d=f[d>>2]|0}bs(v);bs(u);return 1}function od(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)ds(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}s=no(c<<2)|0;d=f[a>>2]|0;f[a>>2]=s;if(d|0)ds(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;d=f[h+4>>2]|0;r=c+-1|0;s=(r&c|0)==0;if(s)g=d&r;else g=(d>>>0)%(c>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;d=f[h>>2]|0;if(!d)return;else{i=h;e=d;d=h}a:while(1){q=d;b:while(1){d=e;while(1){e=f[d+4>>2]|0;if(s)p=e&r;else p=(e>>>0)%(c>>>0)|0;if((p|0)==(g|0))break;e=(f[a>>2]|0)+(p<<2)|0;if(!(f[e>>2]|0))break b;e=f[d>>2]|0;c:do if(!e)e=d;else{n=d+8|0;m=b[n+11>>0]|0;k=m<<24>>24<0;m=m&255;o=k?f[d+12>>2]|0:m;l=(o|0)==0;if(k){h=d;while(1){j=e+8|0;m=b[j+11>>0]|0;k=m<<24>>24<0;if((o|0)!=((k?f[e+12>>2]|0:m&255)|0)){e=h;break c}if(!l?nm(f[n>>2]|0,k?f[j>>2]|0:j,o)|0:0){e=h;break c}h=f[e>>2]|0;if(!h)break c;else{m=e;e=h;h=m}}}if(l){h=d;while(1){o=b[e+8+11>>0]|0;if((o<<24>>24<0?f[e+12>>2]|0:o&255)|0){e=h;break c}h=f[e>>2]|0;if(!h)break c;else{o=e;e=h;h=o}}}l=d;while(1){h=e+8|0;k=b[h+11>>0]|0;j=k<<24>>24<0;if((o|0)!=((j?f[e+12>>2]|0:k&255)|0)){e=l;break c}h=j?f[h>>2]|0:h;if((f[n>>2]&255)<<24>>24==(b[h>>0]|0)){j=m;k=n}else{e=l;break c}while(1){j=j+-1|0;k=k+1|0;if(!j)break;h=h+1|0;if((b[k>>0]|0)!=(b[h>>0]|0)){e=l;break c}}h=f[e>>2]|0;if(!h)break;else{l=e;e=h}}}while(0);f[q>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(p<<2)>>2]>>2];f[f[(f[a>>2]|0)+(p<<2)>>2]>>2]=d;d=f[i>>2]|0;if(!d){d=41;break a}}e=f[d>>2]|0;if(!e){d=41;break a}else{i=d;q=d}}f[e>>2]=q;e=f[d>>2]|0;if(!e){d=41;break}else{i=d;g=p}}if((d|0)==41)return}function pd(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)ds(c);f[e>>2]=0;return}if(b>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}p=no(b<<2)|0;c=f[a>>2]|0;f[a>>2]=p;if(c|0)ds(c);f[e>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;c=f[h+4>>2]|0;o=b+-1|0;p=(o&b|0)==0;if(p)g=c&o;else g=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;c=f[h>>2]|0;if(!c)return;else{i=h;e=c;c=h}a:while(1){n=c;b:while(1){c:do if(p){c=e;while(1){m=f[c+4>>2]&o;if((m|0)==(g|0))break c;e=(f[a>>2]|0)+(m<<2)|0;if(!(f[e>>2]|0)){g=m;break b}l=c+10|0;k=c+12|0;e=f[c>>2]|0;d:do if(!e)e=c;else{j=d[c+8>>1]|0;h=c;while(1){if(j<<16>>16!=(d[e+8>>1]|0)){e=h;break d}if((d[l>>1]|0)!=(d[e+10>>1]|0)){e=h;break d}if((d[k>>1]|0)!=(d[e+12>>1]|0)){e=h;break d}h=f[e>>2]|0;if(!h)break;else{q=e;e=h;h=q}}}while(0);f[n>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(m<<2)>>2]>>2];f[f[(f[a>>2]|0)+(m<<2)>>2]>>2]=c;c=f[i>>2]|0;if(!c){c=38;break a}}}else{c=e;while(1){m=((f[c+4>>2]|0)>>>0)%(b>>>0)|0;if((m|0)==(g|0))break c;e=(f[a>>2]|0)+(m<<2)|0;if(!(f[e>>2]|0)){g=m;break b}l=c+10|0;k=c+12|0;e=f[c>>2]|0;e:do if(!e)e=c;else{j=d[c+8>>1]|0;h=c;while(1){if(j<<16>>16!=(d[e+8>>1]|0)){e=h;break e}if((d[l>>1]|0)!=(d[e+10>>1]|0)){e=h;break e}if((d[k>>1]|0)!=(d[e+12>>1]|0)){e=h;break e}h=f[e>>2]|0;if(!h)break;else{q=e;e=h;h=q}}}while(0);f[n>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(m<<2)>>2]>>2];f[f[(f[a>>2]|0)+(m<<2)>>2]>>2]=c;c=f[i>>2]|0;if(!c){c=38;break a}}}while(0);e=f[c>>2]|0;if(!e){c=38;break a}else{i=c;n=c}}f[e>>2]=n;e=f[c>>2]|0;if(!e){c=38;break}else i=c}if((c|0)==38)return}function qd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)ds(c);f[d>>2]=0;return}if(b>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}o=no(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)ds(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;g=f[d>>2]|0;if(!g)return;c=f[g+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)e=c&n;else e=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(e<<2)>>2]=d;c=f[g>>2]|0;if(!c)return;else{h=g;d=c;c=g}a:while(1){m=c;b:while(1){c:do if(o){c=d;while(1){l=f[c+4>>2]&n;if((l|0)==(e|0))break c;d=(f[a>>2]|0)+(l<<2)|0;if(!(f[d>>2]|0)){e=l;break b}k=c+12|0;j=c+16|0;d=f[c>>2]|0;d:do if(!d)d=c;else{i=f[c+8>>2]|0;g=c;while(1){if((i|0)!=(f[d+8>>2]|0)){d=g;break d}if((f[k>>2]|0)!=(f[d+12>>2]|0)){d=g;break d}if((f[j>>2]|0)!=(f[d+16>>2]|0)){d=g;break d}g=f[d>>2]|0;if(!g)break;else{p=d;d=g;g=p}}}while(0);f[m>>2]=f[d>>2];f[d>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=c;c=f[h>>2]|0;if(!c){c=38;break a}}}else{c=d;while(1){l=((f[c+4>>2]|0)>>>0)%(b>>>0)|0;if((l|0)==(e|0))break c;d=(f[a>>2]|0)+(l<<2)|0;if(!(f[d>>2]|0)){e=l;break b}k=c+12|0;j=c+16|0;d=f[c>>2]|0;e:do if(!d)d=c;else{i=f[c+8>>2]|0;g=c;while(1){if((i|0)!=(f[d+8>>2]|0)){d=g;break e}if((f[k>>2]|0)!=(f[d+12>>2]|0)){d=g;break e}if((f[j>>2]|0)!=(f[d+16>>2]|0)){d=g;break e}g=f[d>>2]|0;if(!g)break;else{p=d;d=g;g=p}}}while(0);f[m>>2]=f[d>>2];f[d>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=c;c=f[h>>2]|0;if(!c){c=38;break a}}}while(0);d=f[c>>2]|0;if(!d){c=38;break a}else{h=c;m=c}}f[d>>2]=m;d=f[c>>2]|0;if(!d){c=38;break}else h=c}if((c|0)==38)return}function rd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)ds(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}p=no(c<<2)|0;d=f[a>>2]|0;f[a>>2]=p;if(d|0)ds(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;d=f[h+4>>2]|0;o=c+-1|0;p=(o&c|0)==0;if(p)g=d&o;else g=(d>>>0)%(c>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;d=f[h>>2]|0;if(!d)return;else{i=h;e=d;d=h}a:while(1){n=d;b:while(1){c:do if(p){d=e;while(1){m=f[d+4>>2]&o;if((m|0)==(g|0))break c;e=(f[a>>2]|0)+(m<<2)|0;if(!(f[e>>2]|0)){g=m;break b}l=d+9|0;k=d+10|0;e=f[d>>2]|0;d:do if(!e)e=d;else{j=b[d+8>>0]|0;h=d;while(1){if(j<<24>>24!=(b[e+8>>0]|0)){e=h;break d}if((b[l>>0]|0)!=(b[e+9>>0]|0)){e=h;break d}if((b[k>>0]|0)!=(b[e+10>>0]|0)){e=h;break d}h=f[e>>2]|0;if(!h)break;else{q=e;e=h;h=q}}}while(0);f[n>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(m<<2)>>2]>>2];f[f[(f[a>>2]|0)+(m<<2)>>2]>>2]=d;d=f[i>>2]|0;if(!d){d=38;break a}}}else{d=e;while(1){m=((f[d+4>>2]|0)>>>0)%(c>>>0)|0;if((m|0)==(g|0))break c;e=(f[a>>2]|0)+(m<<2)|0;if(!(f[e>>2]|0)){g=m;break b}l=d+9|0;k=d+10|0;e=f[d>>2]|0;e:do if(!e)e=d;else{j=b[d+8>>0]|0;h=d;while(1){if(j<<24>>24!=(b[e+8>>0]|0)){e=h;break e}if((b[l>>0]|0)!=(b[e+9>>0]|0)){e=h;break e}if((b[k>>0]|0)!=(b[e+10>>0]|0)){e=h;break e}h=f[e>>2]|0;if(!h)break;else{q=e;e=h;h=q}}}while(0);f[n>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(m<<2)>>2]>>2];f[f[(f[a>>2]|0)+(m<<2)>>2]>>2]=d;d=f[i>>2]|0;if(!d){d=38;break a}}}while(0);e=f[d>>2]|0;if(!e){d=38;break a}else{i=d;n=d}}f[e>>2]=n;e=f[d>>2]|0;if(!e){d=38;break}else i=d}if((d|0)==38)return}function sd(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;x=e>>>0>1073741823?-1:e<<2;t=as(x)|0;_j(t|0,0,x|0)|0;u=as(x)|0;_j(u|0,0,x|0)|0;x=a+8|0;dj(x,t,b,c);s=f[a+32>>2]|0;v=a+40|0;h=f[v>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;r=g-d|0;w=r>>2;if((r|0)<=4){bs(u);bs(t);return 1}n=f[a+36>>2]|0;q=(e|0)>0;r=s+64|0;p=s+28|0;o=e<<2;a=1;while(1){if(g-d>>2>>>0<=a>>>0){Oq(h);d=f[h>>2]|0}m=f[d+(a<<2)>>2]|0;if(q)_j(t|0,0,o|0)|0;if((m|0)>-1){l=f[s>>2]|0;k=m;j=0;do{if(((f[l+(k>>>5<<2)>>2]&1<<(k&31)|0)==0?(B=f[(f[(f[r>>2]|0)+12>>2]|0)+(k<<2)>>2]|0,(B|0)>=0):0)?(A=f[p>>2]|0,i=f[n>>2]|0,y=f[i+(f[A+(B<<2)>>2]<<2)>>2]|0,z=B+1|0,z=f[i+(f[A+((((z|0)%3|0|0)==0?B+-2|0:z)<<2)>>2]<<2)>>2]|0,A=f[i+(f[A+((((B>>>0)%3|0|0)==0?2:-1)+B<<2)>>2]<<2)>>2]|0,(y|0)<(a|0)&(z|0)<(a|0)&(A|0)<(a|0)):0){g=X(y,e)|0;h=X(z,e)|0;i=X(A,e)|0;if(q){d=0;do{f[u+(d<<2)>>2]=(f[c+(d+i<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+g<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(q){d=0;do{i=t+(d<<2)|0;f[i>>2]=(f[i>>2]|0)+(f[u+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}j=j+1|0}d=(((k>>>0)%3|0|0)==0?2:-1)+k|0;do if(!(f[l+(d>>>5<<2)>>2]&1<<(d&31))){if((d|0)>=0){d=f[(f[(f[r>>2]|0)+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}}else d=-1073741824;while(0);k=(d|0)==(m|0)?-1073741824:d}while((k|0)>-1);d=X(a,e)|0;if(!j)C=29;else{if(q){g=0;do{m=t+(g<<2)|0;f[m>>2]=(f[m>>2]|0)/(j|0)|0;g=g+1|0}while((g|0)!=(e|0))}dj(x,t,b+(d<<2)|0,c+(d<<2)|0)}}else{d=X(a,e)|0;C=29}if((C|0)==29){C=0;dj(x,c+((X(a+-1|0,e)|0)<<2)|0,b+(d<<2)|0,c+(d<<2)|0)}a=a+1|0;if((a|0)>=(w|0))break;d=f[v>>2]|0;g=f[d+4>>2]|0;h=d;d=f[d>>2]|0}bs(u);bs(t);return 1}function td(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var 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;y=e>>>0>1073741823?-1:e<<2;u=as(y)|0;_j(u|0,0,y|0)|0;v=as(y)|0;_j(v|0,0,y|0)|0;y=a+8|0;dj(y,u,b,c);t=f[a+32>>2]|0;w=a+40|0;h=f[w>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;s=g-d|0;x=s>>2;if((s|0)<=4){bs(v);bs(u);return 1}p=f[a+36>>2]|0;s=(e|0)>0;r=t+12|0;q=e<<2;a=1;while(1){if(g-d>>2>>>0<=a>>>0){Oq(h);d=f[h>>2]|0}o=f[d+(a<<2)>>2]|0;if(s)_j(u|0,0,q|0)|0;if((o|0)>-1){n=f[r>>2]|0;m=o;l=0;while(1){g=f[n+(m<<2)>>2]|0;if((g|0)>=0){h=f[t>>2]|0;i=f[p>>2]|0;k=f[i+(f[h+(g<<2)>>2]<<2)>>2]|0;d=g+1|0;d=((d|0)%3|0|0)==0?g+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[h+(d<<2)>>2]|0;j=f[i+(d<<2)>>2]|0;d=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((d|0)<0)d=-1073741824;else d=f[h+(d<<2)>>2]|0;d=f[i+(d<<2)>>2]|0;if((k|0)<(a|0)&(j|0)<(a|0)&(d|0)<(a|0)){i=X(k,e)|0;h=X(j,e)|0;g=X(d,e)|0;if(s){d=0;do{f[v+(d<<2)>>2]=(f[c+(d+g<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+i<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(s){d=0;do{k=u+(d<<2)|0;f[k>>2]=(f[k>>2]|0)+(f[v+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}h=l+1|0}else h=l}else h=l;d=(((m>>>0)%3|0|0)==0?2:-1)+m|0;do if((d|0)>=0){d=f[n+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}while(0);m=(d|0)==(o|0)?-1073741824:d;if((m|0)<=-1)break;else l=h}d=X(a,e)|0;if(!h)z=31;else{if(s){g=0;do{o=u+(g<<2)|0;f[o>>2]=(f[o>>2]|0)/(h|0)|0;g=g+1|0}while((g|0)!=(e|0))}dj(y,u,b+(d<<2)|0,c+(d<<2)|0)}}else{d=X(a,e)|0;z=31}if((z|0)==31){z=0;dj(y,c+((X(a+-1|0,e)|0)<<2)|0,b+(d<<2)|0,c+(d<<2)|0)}a=a+1|0;if((a|0)>=(x|0))break;d=f[w>>2]|0;g=f[d+4>>2]|0;h=d;d=f[d>>2]|0}bs(v);bs(u);return 1}function ud(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=f[a>>2]|0;i=a+4|0;d=f[i>>2]|0;h=c+4|0;if((d|0)==(e|0)){g=h;d=a;j=f[h>>2]|0;h=e;f[d>>2]=j;f[g>>2]=h;h=c+8|0;e=f[i>>2]|0;d=f[h>>2]|0;f[i>>2]=d;f[h>>2]=e;h=a+8|0;a=c+12|0;i=f[h>>2]|0;e=f[a>>2]|0;f[h>>2]=e;f[a>>2]=i;a=f[g>>2]|0;f[c>>2]=a;return}g=f[h>>2]|0;do{l=d;d=d+-116|0;f[g+-116>>2]=f[d>>2];j=l+-112|0;f[g+-112>>2]=f[j>>2];k=l+-108|0;f[g+-108>>2]=f[k>>2];m=l+-104|0;f[g+-104>>2]=f[m>>2];f[j>>2]=0;f[k>>2]=0;f[m>>2]=0;m=l+-100|0;f[g+-100>>2]=f[m>>2];k=l+-96|0;f[g+-96>>2]=f[k>>2];j=l+-92|0;f[g+-92>>2]=f[j>>2];f[m>>2]=0;f[k>>2]=0;f[j>>2]=0;b[g+-88>>0]=b[l+-88>>0]|0;j=g+-84|0;k=l+-84|0;f[j>>2]=0;m=g+-80|0;f[m>>2]=0;f[g+-76>>2]=0;f[j>>2]=f[k>>2];j=l+-80|0;f[m>>2]=f[j>>2];m=l+-76|0;f[g+-76>>2]=f[m>>2];f[m>>2]=0;f[j>>2]=0;f[k>>2]=0;k=g+-72|0;j=l+-72|0;f[k>>2]=0;m=g+-68|0;f[m>>2]=0;f[g+-64>>2]=0;f[k>>2]=f[j>>2];k=l+-68|0;f[m>>2]=f[k>>2];m=l+-64|0;f[g+-64>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[j>>2]=0;j=g+-60|0;k=l+-60|0;f[j>>2]=0;m=g+-56|0;f[m>>2]=0;f[g+-52>>2]=0;f[j>>2]=f[k>>2];j=l+-56|0;f[m>>2]=f[j>>2];m=l+-52|0;f[g+-52>>2]=f[m>>2];f[m>>2]=0;f[j>>2]=0;f[k>>2]=0;f[g+-48>>2]=f[l+-48>>2];b[g+-44>>0]=b[l+-44>>0]|0;k=g+-40|0;j=l+-40|0;f[k>>2]=0;m=g+-36|0;f[m>>2]=0;f[g+-32>>2]=0;f[k>>2]=f[j>>2];k=l+-36|0;f[m>>2]=f[k>>2];m=l+-32|0;f[g+-32>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[j>>2]=0;j=g+-28|0;k=l+-28|0;f[j>>2]=0;m=g+-24|0;f[m>>2]=0;f[g+-20>>2]=0;f[j>>2]=f[k>>2];j=l+-24|0;f[m>>2]=f[j>>2];m=l+-20|0;f[g+-20>>2]=f[m>>2];f[m>>2]=0;f[j>>2]=0;f[k>>2]=0;f[g+-16>>2]=f[l+-16>>2];k=g+-12|0;j=l+-12|0;f[k>>2]=0;m=g+-8|0;f[m>>2]=0;f[g+-4>>2]=0;f[k>>2]=f[j>>2];k=l+-8|0;f[m>>2]=f[k>>2];l=l+-4|0;f[g+-4>>2]=f[l>>2];f[l>>2]=0;f[k>>2]=0;f[j>>2]=0;g=(f[h>>2]|0)+-116|0;f[h>>2]=g}while((d|0)!=(e|0));m=h;l=a;k=g;j=f[a>>2]|0;f[l>>2]=k;f[m>>2]=j;j=c+8|0;l=f[i>>2]|0;k=f[j>>2]|0;f[i>>2]=k;f[j>>2]=l;j=a+8|0;l=c+12|0;k=f[j>>2]|0;a=f[l>>2]|0;f[j>>2]=a;f[l>>2]=k;m=f[m>>2]|0;f[c>>2]=m;return}function vd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+48|0;m=r+32|0;h=r+28|0;p=r+16|0;q=r;j=a+16|0;d=f[j>>2]|0;if(d|0){g=f[b>>2]|0;c=j;a:while(1){e=d;while(1){if((f[e+16>>2]|0)>=(g|0))break;d=f[e+4>>2]|0;if(!d)break a;else e=d}d=f[e>>2]|0;if(!d){c=e;break}else c=e}if((c|0)!=(j|0)?(g|0)>=(f[c+16>>2]|0):0){q=c;q=q+20|0;u=r;return q|0}}Iq(p);f[q>>2]=f[b>>2];l=q+4|0;f[q+8>>2]=0;k=q+12|0;f[k>>2]=0;n=q+8|0;f[l>>2]=n;c=f[p>>2]|0;o=p+4|0;if((c|0)!=(o|0)){g=n;e=c;d=c;while(1){c=e+16|0;f[h>>2]=g;f[m>>2]=f[h>>2];_h(l,m,c,c)|0;c=f[d+4>>2]|0;if(!c)while(1){c=f[d+8>>2]|0;if((f[c>>2]|0)==(d|0))break;else d=c}else while(1){d=f[c>>2]|0;if(!d)break;else c=d}if((c|0)==(o|0))break;else{e=c;d=c}}}i=a+12|0;c=f[j>>2]|0;do if(c){e=f[q>>2]|0;g=c;while(1){c=f[g+16>>2]|0;if((e|0)<(c|0)){c=f[g>>2]|0;if(!c){c=19;break}}else{if((c|0)>=(e|0)){c=24;break}d=g+4|0;c=f[d>>2]|0;if(!c){c=23;break}}g=c}if((c|0)==19){f[m>>2]=g;h=g;b=g;break}else if((c|0)==23){f[m>>2]=g;h=g;b=d;break}else if((c|0)==24){f[m>>2]=g;h=g;b=m;break}}else{f[m>>2]=j;h=j;b=j}while(0);c=f[b>>2]|0;if(!c){c=no(32)|0;f[c+16>>2]=f[q>>2];g=c+20|0;f[g>>2]=f[l>>2];e=c+24|0;d=f[q+8>>2]|0;f[e>>2]=d;m=f[k>>2]|0;f[c+28>>2]=m;if(!m)f[g>>2]=e;else{f[d+8>>2]=e;f[l>>2]=n;f[n>>2]=0;f[k>>2]=0}f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=h;f[b>>2]=c;d=f[f[i>>2]>>2]|0;if(!d)d=c;else{f[i>>2]=d;d=f[b>>2]|0}Af(f[a+16>>2]|0,d);a=a+20|0;f[a>>2]=(f[a>>2]|0)+1}nk(q+4|0,f[n>>2]|0);nk(p,f[o>>2]|0);q=c;q=q+20|0;u=r;return q|0}function wd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+16|0;r=y+12|0;s=y+4|0;p=y+8|0;q=y;x=a+8+(b*12|0)|0;d=f[x>>2]|0;t=a+8+(b*12|0)+4|0;e=f[t>>2]|0;if((e|0)!=(d|0))f[t>>2]=e+(~((e+-4-d|0)>>>2)<<2);d=f[c>>2]|0;m=a+4|0;f[s>>2]=(d|0)<0?-1073741824:(d>>>0)/3|0;w=a+56|0;l=a+8+(b*12|0)+8|0;e=d;o=0;do{n=(o|0)==1;if(n){g=(d|0)<0;do if(!g)if(!((d>>>0)%3|0)){e=d+2|0;break}else{e=d+-1|0;break}else e=d;while(0);f[p>>2]=e;f[r>>2]=f[p>>2];if((yh(a,r)|0)<0)break;e=d+1|0;if(g){v=12;break}e=((e|0)%3|0|0)==0?d+-2|0:e;f[c>>2]=e;g=e+1|0;if((e|0)<0){v=16;break}e=((g|0)%3|0|0)==0?e+-2|0:g;if((e|0)<0){v=16;break}e=f[(f[(f[m>>2]|0)+12>>2]|0)+(e<<2)>>2]|0;g=e+1|0;if((e|0)<0){v=16;break}e=((g|0)%3|0|0)==0?e+-2|0:g;f[c>>2]=e;if((e|0)<0)break;else{g=0;v=18}}else{i=f[s>>2]|0;k=e;j=0}while(1){if((v|0)==18){v=0;i=(e>>>0)/3|0;f[s>>2]=i;k=e;j=g}h=(f[w>>2]|0)+(i>>>5<<2)|0;g=1<<(i&31);e=f[h>>2]|0;if(g&e|0){e=k;g=j;break}f[h>>2]=e|g;e=f[t>>2]|0;if((e|0)==(f[l>>2]|0))Bj(x,s);else{f[e>>2]=f[s>>2];f[t>>2]=e+4}g=j+1|0;if((j|0)>0){do if(!(g&1)){d=n?k:d;if((k|0)>=0)if(!((k>>>0)%3|0)){e=k+2|0;break}else{e=k+-1|0;break}else e=k}else{e=k+1|0;if((k|0)<0)e=k;else e=((e|0)%3|0|0)==0?k+-2|0:e}while(0);f[c>>2]=e}else e=k;f[q>>2]=e;f[r>>2]=f[q>>2];e=yh(a,r)|0;f[c>>2]=e;if((e|0)<0)break;else v=18}if(!((g&1|0)==0|n^1)){n=f[t>>2]|0;j=f[n+-4>>2]|0;k=(f[w>>2]|0)+(j>>>5<<2)|0;f[k>>2]=f[k>>2]&~(1<<(j&31));f[t>>2]=n+-4}o=o+1|0}while((o|0)<2);if((v|0)==12){f[c>>2]=d;e=d;v=16}if((v|0)==16)f[c>>2]=e;f[a+44+(b<<2)>>2]=d;e=f[t>>2]|0;d=f[x>>2]|0;h=d;if((e|0)==(d|0)){u=y;return}g=f[w>>2]|0;e=e-d>>2;d=0;do{w=f[h+(d<<2)>>2]|0;x=g+(w>>>5<<2)|0;f[x>>2]=f[x>>2]&~(1<<(w&31));d=d+1|0}while(d>>>0>>0);u=y;return}function xd(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=a+4|0;s=f[c>>2]|0;c=s;do if((s|0)!=(n|0)){i=s+16|0;o=b[e+11>>0]|0;p=o<<24>>24<0;o=p?f[e+4>>2]|0:o&255;h=b[i+11>>0]|0;l=h<<24>>24<0;h=l?f[s+20>>2]|0:h&255;k=h>>>0>>0;g=k?h:o;if((g|0)!=0?(j=nm(p?f[e>>2]|0:e,l?f[i>>2]|0:i,g)|0,(j|0)!=0):0){if((j|0)<0)break}else t=4;if((t|0)==4?o>>>0>>0:0)break;g=o>>>0>>0?o:h;if((g|0)!=0?(m=nm(l?f[i>>2]|0:i,p?f[e>>2]|0:e,g)|0,(m|0)!=0):0){if((m|0)>=0)t=34}else t=20;if((t|0)==20?!k:0)t=34;if((t|0)==34){f[d>>2]=c;return d|0}k=s+4|0;c=f[k>>2]|0;l=(c|0)==0;if(l){g=s;while(1){c=f[g+8>>2]|0;if((f[c>>2]|0)==(g|0))break;else g=c}}else while(1){g=f[c>>2]|0;if(!g)break;else c=g}do if((c|0)!=(n|0)){h=c+16|0;i=b[h+11>>0]|0;j=i<<24>>24<0;i=j?f[c+20>>2]|0:i&255;g=i>>>0>>0?i:o;if((g|0)!=0?(q=nm(p?f[e>>2]|0:e,j?f[h>>2]|0:h,g)|0,(q|0)!=0):0){if((q|0)<0)break}else t=28;if((t|0)==28?o>>>0>>0:0)break;d=sh(a,d,e)|0;return d|0}while(0);if(l){f[d>>2]=s;d=k;return d|0}else{f[d>>2]=c;d=c;return d|0}}while(0);do if((s|0)!=(f[a>>2]|0)){c=f[s>>2]|0;if(!c){g=s;while(1){c=f[g+8>>2]|0;if((f[c>>2]|0)==(g|0))g=c;else{g=c;break}}}else while(1){g=f[c+4>>2]|0;if(!g){g=c;break}else c=g}c=g;k=g+16|0;h=b[k+11>>0]|0;l=h<<24>>24<0;h=l?f[g+20>>2]|0:h&255;i=b[e+11>>0]|0;j=i<<24>>24<0;i=j?f[e+4>>2]|0:i&255;g=i>>>0>>0?i:h;if((g|0)!=0?(r=nm(l?f[k>>2]|0:k,j?f[e>>2]|0:e,g)|0,(r|0)!=0):0){if((r|0)<0)break}else t=12;if((t|0)==12?h>>>0>>0:0)break;d=sh(a,d,e)|0;return d|0}while(0);if(!(f[s>>2]|0)){f[d>>2]=s;d=s;return d|0}else{t=c;f[d>>2]=t;d=t+4|0;return d|0}return 0}function yd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+48|0;r=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;q=v+16|0;t=v;s=c+24|0;e=b[s>>0]|0;j=e<<24>>24;k=f[a+80>>2]|0;m=X(k,j)|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;f[t+12>>2]=0;vg(d,0,0+(m<<2)|0);if((k|0)<=0){t=1;u=v;return t|0}m=c+84|0;l=c+68|0;a:do if(e<<24>>24>0){h=0;i=0;while(1){if(!(b[m>>0]|0))a=f[(f[l>>2]|0)+(i<<2)>>2]|0;else a=i;switch(b[s>>0]|0){case 1:{f[n>>2]=a;f[r>>2]=f[n>>2];a=dg(c,r,t)|0;break}case 2:{f[o>>2]=a;f[r>>2]=f[o>>2];a=cg(c,r,t)|0;break}case 3:{f[p>>2]=a;f[r>>2]=f[p>>2];a=bg(c,r,t)|0;break}case 4:{f[q>>2]=a;f[r>>2]=f[q>>2];a=ag(c,r,t)|0;break}default:break a}if(!a){a=0;e=24;break}a=f[d>>2]|0;e=h;g=0;while(1){f[a+(e<<2)>>2]=f[t+(g<<2)>>2];g=g+1|0;if((g|0)==(j|0))break;else e=e+1|0}i=i+1|0;if((i|0)>=(k|0)){a=1;e=24;break}else h=j+h|0}if((e|0)==24){u=v;return a|0}}else{e=0;while(1){if(!(b[m>>0]|0))a=f[(f[l>>2]|0)+(e<<2)>>2]|0;else a=e;switch(b[s>>0]|0){case 1:{f[n>>2]=a;f[r>>2]=f[n>>2];a=dg(c,r,t)|0;break}case 2:{f[o>>2]=a;f[r>>2]=f[o>>2];a=cg(c,r,t)|0;break}case 3:{f[p>>2]=a;f[r>>2]=f[p>>2];a=bg(c,r,t)|0;break}case 4:{f[q>>2]=a;f[r>>2]=f[q>>2];a=ag(c,r,t)|0;break}default:break a}if(!a){a=0;e=24;break}e=e+1|0;if((e|0)>=(k|0)){a=1;e=24;break}}if((e|0)==24){u=v;return a|0}}while(0);t=0;u=v;return t|0}function zd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=La,i=0,j=0,k=La,l=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;e=a+40|0;c=Kp(mo(f[e>>2]|0,f[e+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=I;i=f[a>>2]|0;e=f[i>>2]|0;if(!((j|0)<0|((j|0)==0?c>>>0<((f[i+4>>2]|0)-e|0)>>>0:0))){j=0;return j|0}k=$(b[e+c>>0]|0);g=$(k/$(127.0));n[d>>2]=(b[a+32>>0]|0)==0?k:g;n[d+4>>2]=$(0.0);j=1;return j|0}case 2:{l=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,2,0)|0;l=I;j=f[a>>2]|0;e=f[j>>2]|0;if((l|0)>0|((l|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;l=h[l>>0]|h[l+1>>0]<<8;c=(l&65535)>>>8&255;g=$((l&255)<<24>>24);if(!(b[a+32>>0]|0)){n[d>>2]=g;k=$(c<<24>>24);n[d+4>>2]=k;l=1;return l|0}else{k=$(g/$(127.0));n[d>>2]=k;k=$($(c<<24>>24)/$(127.0));n[d+4>>2]=k;l=1;return l|0}}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,3,0)|0;i=I;l=f[a>>2]|0;e=f[l>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[l+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;c=b[l+1>>0]|0;g=$(b[l>>0]|0);if(!(b[a+32>>0]|0)){n[d>>2]=g;k=$(c<<24>>24);n[d+4>>2]=k;l=1;return l|0}else{k=$(g/$(127.0));n[d>>2]=k;k=$($(c<<24>>24)/$(127.0));n[d+4>>2]=k;l=1;return l|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;i=I;l=f[a>>2]|0;e=f[l>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[l+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;c=l>>>8&255;g=$((l&255)<<24>>24);if(!(b[a+32>>0]|0)){n[d>>2]=g;k=$(c<<24>>24);n[d+4>>2]=k;l=1;return l|0}else{k=$(g/$(127.0));n[d>>2]=k;k=$($(c<<24>>24)/$(127.0));n[d+4>>2]=k;l=1;return l|0}}default:{l=0;return l|0}}return 0}function Ad(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;a=Do(0,j|0,32)|0;g=d;f[g>>2]=a;f[g+4>>2]=I;i=Do(j|0,i|0,32)|0;j=d+8|0;f[j>>2]=i;f[j+4>>2]=I;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}default:{j=0;return j|0}}return 0}function Bd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=c;n=d;i=n;if(!k){g=(e|0)!=0;if(!i){if(g){f[e>>2]=(l>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(l>>>0)/(h>>>0)>>>0;return (I=n,e)|0}else{if(!g){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;e=0;return (I=n,e)|0}}g=(i|0)==0;do if(h){if(!g){g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}g=h-1|0;if(g&h|0){i=(_(h|0)|0)+33-(_(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(e|0){f[e>>2]=g&l;f[e+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (I=o,p)|0}else{p=Cn(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (I=o,p)|0}}else{if(g){if(e|0){f[e>>2]=(k>>>0)%(h>>>0);f[e+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (I=o,p)|0}if(!l){if(e|0){f[e>>2]=0;f[e+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (I=o,p)|0}g=i-1|0;if(!(g&i)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=g&k|b&0}o=0;p=k>>>((Cn(i|0)|0)>>>0);return (I=o,p)|0}g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;o=0;p=0;return (I=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=c|0|0;l=n|d&0;k=Kp(m|0,l|0,-1,-1)|0;c=I;j=i;i=0;do{d=j;j=g>>>31|j<<1;g=i|g<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;_o(k|0,c|0,d|0,n|0)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=_o(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=I;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(e|0){f[e>>2]=a;f[e+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (I=o,p)|0}function Cd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=La,i=0,j=0,k=La,l=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;e=a+40|0;c=Kp(mo(f[e>>2]|0,f[e+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=I;i=f[a>>2]|0;e=f[i>>2]|0;if(!((j|0)<0|((j|0)==0?c>>>0<((f[i+4>>2]|0)-e|0)>>>0:0))){j=0;return j|0}k=$(h[e+c>>0]|0);g=$(k/$(255.0));n[d>>2]=(b[a+32>>0]|0)==0?k:g;n[d+4>>2]=$(0.0);j=1;return j|0}case 2:{l=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,2,0)|0;l=I;j=f[a>>2]|0;e=f[j>>2]|0;if((l|0)>0|((l|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;l=h[l>>0]|h[l+1>>0]<<8;c=(l&65535)>>>8&255;g=$(l&255);if(!(b[a+32>>0]|0)){n[d>>2]=g;k=$(c&255);n[d+4>>2]=k;l=1;return l|0}else{k=$(g/$(255.0));n[d>>2]=k;k=$($(c&255)/$(255.0));n[d+4>>2]=k;l=1;return l|0}}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,3,0)|0;i=I;l=f[a>>2]|0;e=f[l>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[l+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;c=b[l+1>>0]|0;g=$(h[l>>0]|0);if(!(b[a+32>>0]|0)){n[d>>2]=g;k=$(c&255);n[d+4>>2]=k;l=1;return l|0}else{k=$(g/$(255.0));n[d>>2]=k;k=$($(c&255)/$(255.0));n[d+4>>2]=k;l=1;return l|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;i=I;l=f[a>>2]|0;e=f[l>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[l+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;c=l>>>8&255;g=$(l&255);if(!(b[a+32>>0]|0)){n[d>>2]=g;k=$(c&255);n[d+4>>2]=k;l=1;return l|0}else{k=$(g/$(255.0));n[d>>2]=k;k=$($(c&255)/$(255.0));n[d+4>>2]=k;l=1;return l|0}}default:{l=0;return l|0}}return 0}function Dd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;n[d+4>>2]=$(0.0);i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=i;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;a=i;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;g=j;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;j=j+4|0;b[j>>0]=i;b[j+1>>0]=i>>8;b[j+2>>0]=i>>16;b[j+3>>0]=i>>24;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;a=i;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;g=j;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;j=j+4|0;b[j>>0]=i;b[j+1>>0]=i>>8;b[j+2>>0]=i>>16;b[j+3>>0]=i>>24;j=1;return j|0}default:{j=0;return j|0}}return 0}function Ed(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;f[d+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=i;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;a=i;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;g=j;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;j=j+4|0;b[j>>0]=i;b[j+1>>0]=i>>8;b[j+2>>0]=i>>16;b[j+3>>0]=i>>24;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;a=i;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;g=j;b[g>>0]=a;b[g+1>>0]=a>>8;b[g+2>>0]=a>>16;b[g+3>>0]=a>>24;j=j+4|0;b[j>>0]=i;b[j+1>>0]=i>>8;b[j+2>>0]=i>>16;b[j+3>>0]=i>>24;j=1;return j|0}default:{j=0;return j|0}}return 0}function Fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;o=t+8|0;p=t+4|0;r=t;q=a+68|0;f[q>>2]=(f[q>>2]|0)+1;q=(f[a+8+(b*12|0)+4>>2]|0)-(f[a+8+(b*12|0)>>2]|0)|0;s=q>>2;if((q|0)<=0){u=t;return}n=a+4|0;m=a+56|0;q=a+72|0;k=f[c>>2]|0;i=k+4|0;j=k+8|0;l=a+76|0;c=f[a+44+(b<<2)>>2]|0;h=0;do{g=(c|0)<0;b=g?-1073741824:(c>>>0)/3|0;d=(f[m>>2]|0)+(b>>>5<<2)|0;f[d>>2]=f[d>>2]|1<<(b&31);f[q>>2]=(f[q>>2]|0)+1;do if(h){f[p>>2]=c;b=f[n>>2]|0;d=f[a>>2]|0;f[o>>2]=f[p>>2];d=pl(o,b,d)|0;f[l>>2]=d;f[o>>2]=d;b=f[i>>2]|0;if(b>>>0<(f[j>>2]|0)>>>0){f[b>>2]=d;f[i>>2]=b+4}else Bj(k,o);if(!(h&1)){b=c+1|0;if(g)break;c=((b|0)%3|0|0)==0?c+-2|0:b;e=31;break}if(!g)if(!((c>>>0)%3|0)){c=c+2|0;e=31;break}else{c=c+-1|0;e=31;break}}else{f[p>>2]=c;b=f[n>>2]|0;d=f[a>>2]|0;f[o>>2]=f[p>>2];d=pl(o,b,d)|0;f[r>>2]=d;b=f[i>>2]|0;if(b>>>0<(f[j>>2]|0)>>>0){f[b>>2]=d;f[i>>2]=b+4}else Bj(k,r);b=c+1|0;if(g)b=c;else b=((b|0)%3|0|0)==0?c+-2|0:b;f[p>>2]=b;b=f[n>>2]|0;d=f[a>>2]|0;f[o>>2]=f[p>>2];d=pl(o,b,d)|0;f[r>>2]=d;b=f[i>>2]|0;if(b>>>0<(f[j>>2]|0)>>>0){f[b>>2]=d;f[i>>2]=b+4}else Bj(k,r);do if(!g)if(!((c>>>0)%3|0)){b=c+2|0;break}else{b=c+-1|0;break}else b=c;while(0);f[p>>2]=b;b=f[n>>2]|0;d=f[a>>2]|0;f[o>>2]=f[p>>2];d=pl(o,b,d)|0;f[l>>2]=d;f[o>>2]=d;b=f[i>>2]|0;if(b>>>0<(f[j>>2]|0)>>>0){f[b>>2]=d;f[i>>2]=b+4}else Bj(k,o);e=31}while(0);if((e|0)==31){e=0;if((c|0)>=0)c=f[(f[(f[n>>2]|0)+12>>2]|0)+(c<<2)>>2]|0}h=h+1|0}while((h|0)<(s|0));u=t;return}function Gd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;i=d;f[i>>2]=(h[g>>0]|h[g+1>>0]<<8)&65535;f[i+4>>2]=0;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=i&65535;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i>>>16;f[j+4>>2]=0;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=a+2|0;g=h[g>>0]|h[g+1>>0]<<8;i=a+4|0;i=h[i>>0]|h[i+1>>0]<<8;j=d;f[j>>2]=(h[a>>0]|h[a+1>>0]<<8)&65535;f[j+4>>2]=0;j=d+8|0;f[j>>2]=g&65535;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i&65535;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=g&65535;f[j+4>>2]=0;g=Wo(g|0,i|0,16)|0;j=d+8|0;f[j>>2]=g&65535;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i&65535;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Hd(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)ds(c);f[e>>2]=0;return}if(b>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}o=no(b<<2)|0;c=f[a>>2]|0;f[a>>2]=o;if(c|0)ds(c);f[e>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;c=f[h+4>>2]|0;n=b+-1|0;o=(n&b|0)==0;if(o)g=c&n;else g=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;c=f[h>>2]|0;if(!c)return;else{i=h;e=c;c=h}a:while(1){m=c;b:while(1){c:do if(o){c=e;while(1){l=f[c+4>>2]&n;if((l|0)==(g|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){g=l;break b}k=c+10|0;e=f[c>>2]|0;d:do if(!e)e=c;else{j=d[c+8>>1]|0;h=c;while(1){if(j<<16>>16!=(d[e+8>>1]|0)){e=h;break d}if((d[k>>1]|0)!=(d[e+10>>1]|0)){e=h;break d}h=f[e>>2]|0;if(!h)break;else{p=e;e=h;h=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=c;c=f[i>>2]|0;if(!c){c=36;break a}}}else{c=e;while(1){l=((f[c+4>>2]|0)>>>0)%(b>>>0)|0;if((l|0)==(g|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){g=l;break b}k=c+10|0;e=f[c>>2]|0;e:do if(!e)e=c;else{j=d[c+8>>1]|0;h=c;while(1){if(j<<16>>16!=(d[e+8>>1]|0)){e=h;break e}if((d[k>>1]|0)!=(d[e+10>>1]|0)){e=h;break e}h=f[e>>2]|0;if(!h)break;else{p=e;e=h;h=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=c;c=f[i>>2]|0;if(!c){c=36;break a}}}while(0);e=f[c>>2]|0;if(!e){c=36;break a}else{i=c;m=c}}f[e>>2]=m;e=f[c>>2]|0;if(!e){c=36;break}else i=c}if((c|0)==36)return}function Id(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=b[c+11>>0]|0;m=n<<24>>24<0;o=m?f[c>>2]|0:c;n=m?f[c+4>>2]|0:n&255;if(n>>>0>3){c=o;g=n;d=n;while(1){m=X(h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24,1540483477)|0;g=(X(m>>>24^m,1540483477)|0)^(X(g,1540483477)|0);d=d+-4|0;if(d>>>0<=3)break;else c=c+4|0}m=n+-4|0;d=m&-4;e=o+(d+4)|0;c=g;d=m-d|0}else{e=o;c=n;d=n}switch(d|0){case 3:{i=h[e+2>>0]<<16^c;l=6;break}case 2:{i=c;l=6;break}case 1:{j=c;l=7;break}default:k=c}if((l|0)==6){j=h[e+1>>0]<<8^i;l=7}if((l|0)==7)k=X(h[e>>0]^j,1540483477)|0;c=X(k>>>13^k,1540483477)|0;c=c>>>15^c;k=f[a+4>>2]|0;if(!k){o=0;return o|0}l=k+-1|0;d=(l&k|0)==0;if(d)m=c&l;else m=(c>>>0)%(k>>>0)|0;c=f[(f[a>>2]|0)+(m<<2)>>2]|0;if(!c){o=0;return o|0}c=f[c>>2]|0;if(!c){o=0;return o|0}a=(n|0)==0;if(d){a:while(1){if((f[c+4>>2]&l|0)!=(m|0)){c=0;l=35;break}d=c+8|0;g=b[d+11>>0]|0;j=g<<24>>24<0;g=g&255;do if(((j?f[c+12>>2]|0:g)|0)==(n|0)){e=f[d>>2]|0;i=j?e:d;if(j){if(a){l=35;break a}if(!(nm(i,o,n)|0)){l=35;break a}else break}if(a){l=35;break a}if((e&255)<<24>>24==(b[o>>0]|0)){e=o;do{g=g+-1|0;d=d+1|0;if(!g){l=35;break a}e=e+1|0}while((b[d>>0]|0)==(b[e>>0]|0))}}while(0);c=f[c>>2]|0;if(!c){c=0;l=35;break}}if((l|0)==35)return c|0}else{b:while(1){if((((f[c+4>>2]|0)>>>0)%(k>>>0)|0|0)!=(m|0)){c=0;l=35;break}d=c+8|0;g=b[d+11>>0]|0;j=g<<24>>24<0;g=g&255;do if(((j?f[c+12>>2]|0:g)|0)==(n|0)){e=f[d>>2]|0;i=j?e:d;if(j){if(a){l=35;break b}if(!(nm(i,o,n)|0)){l=35;break b}else break}if(a){l=35;break b}if((e&255)<<24>>24==(b[o>>0]|0)){e=o;do{g=g+-1|0;d=d+1|0;if(!g){l=35;break b}e=e+1|0}while((b[d>>0]|0)==(b[e>>0]|0))}}while(0);c=f[c>>2]|0;if(!c){c=0;l=35;break}}if((l|0)==35)return c|0}return 0}function Jd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}g=b[c+e>>0]|0;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8;g=(i&255)<<24>>24;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=((i&65535)>>>8&255)<<24>>24;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=b[a+1>>0]|0;i=b[a+2>>0]|0;a=b[a>>0]|0;j=d;f[j>>2]=a;f[j+4>>2]=((a|0)<0)<<31>>31;g=g<<24>>24;j=d+8|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=i<<24>>24;j=d+16|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=(i&255)<<24>>24;g=d;f[g>>2]=j;f[g+4>>2]=((j|0)<0)<<31>>31;g=(i>>>8&255)<<24>>24;j=d+8|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=(i>>>16&255)<<24>>24;j=d+16|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}default:{j=0;return j|0}}return 0}function Kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)ds(c);f[d>>2]=0;return}if(b>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}n=no(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)ds(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;g=f[d>>2]|0;if(!g)return;c=f[g+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)e=c&m;else e=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(e<<2)>>2]=d;c=f[g>>2]|0;if(!c)return;else{h=g;d=c;c=g}a:while(1){l=c;b:while(1){c:do if(n){c=d;while(1){k=f[c+4>>2]&m;if((k|0)==(e|0))break c;d=(f[a>>2]|0)+(k<<2)|0;if(!(f[d>>2]|0)){e=k;break b}j=c+12|0;d=f[c>>2]|0;d:do if(!d)d=c;else{i=f[c+8>>2]|0;g=c;while(1){if((i|0)!=(f[d+8>>2]|0)){d=g;break d}if((f[j>>2]|0)!=(f[d+12>>2]|0)){d=g;break d}g=f[d>>2]|0;if(!g)break;else{o=d;d=g;g=o}}}while(0);f[l>>2]=f[d>>2];f[d>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=c;c=f[h>>2]|0;if(!c){c=36;break a}}}else{c=d;while(1){k=((f[c+4>>2]|0)>>>0)%(b>>>0)|0;if((k|0)==(e|0))break c;d=(f[a>>2]|0)+(k<<2)|0;if(!(f[d>>2]|0)){e=k;break b}j=c+12|0;d=f[c>>2]|0;e:do if(!d)d=c;else{i=f[c+8>>2]|0;g=c;while(1){if((i|0)!=(f[d+8>>2]|0)){d=g;break e}if((f[j>>2]|0)!=(f[d+12>>2]|0)){d=g;break e}g=f[d>>2]|0;if(!g)break;else{o=d;d=g;g=o}}}while(0);f[l>>2]=f[d>>2];f[d>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=c;c=f[h>>2]|0;if(!c){c=36;break a}}}while(0);d=f[c>>2]|0;if(!d){c=36;break a}else{h=c;l=c}}f[d>>2]=l;d=f[c>>2]|0;if(!d){c=36;break}else h=c}if((c|0)==36)return}function Ld(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)ds(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}o=no(c<<2)|0;d=f[a>>2]|0;f[a>>2]=o;if(d|0)ds(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;d=f[h+4>>2]|0;n=c+-1|0;o=(n&c|0)==0;if(o)g=d&n;else g=(d>>>0)%(c>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;d=f[h>>2]|0;if(!d)return;else{i=h;e=d;d=h}a:while(1){m=d;b:while(1){c:do if(o){d=e;while(1){l=f[d+4>>2]&n;if((l|0)==(g|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){g=l;break b}k=d+9|0;e=f[d>>2]|0;d:do if(!e)e=d;else{j=b[d+8>>0]|0;h=d;while(1){if(j<<24>>24!=(b[e+8>>0]|0)){e=h;break d}if((b[k>>0]|0)!=(b[e+9>>0]|0)){e=h;break d}h=f[e>>2]|0;if(!h)break;else{p=e;e=h;h=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[i>>2]|0;if(!d){d=36;break a}}}else{d=e;while(1){l=((f[d+4>>2]|0)>>>0)%(c>>>0)|0;if((l|0)==(g|0))break c;e=(f[a>>2]|0)+(l<<2)|0;if(!(f[e>>2]|0)){g=l;break b}k=d+9|0;e=f[d>>2]|0;e:do if(!e)e=d;else{j=b[d+8>>0]|0;h=d;while(1){if(j<<24>>24!=(b[e+8>>0]|0)){e=h;break e}if((b[k>>0]|0)!=(b[e+9>>0]|0)){e=h;break e}h=f[e>>2]|0;if(!h)break;else{p=e;e=h;h=p}}}while(0);f[m>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(l<<2)>>2]>>2];f[f[(f[a>>2]|0)+(l<<2)>>2]>>2]=d;d=f[i>>2]|0;if(!d){d=36;break a}}}while(0);e=f[d>>2]|0;if(!e){d=36;break a}else{i=d;m=d}}f[e>>2]=m;e=f[d>>2]|0;if(!e){d=36;break}else i=d}if((d|0)==36)return}function Md(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;g=(h[g>>0]|h[g+1>>0]<<8)<<16>>16;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=(i&65535)<<16>>16;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=(i>>>16&65535)<<16>>16;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=g+2|0;i=h[i>>0]|h[i+1>>0]<<8;g=(h[g>>0]|h[g+1>>0]<<8)<<16>>16;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=i<<16>>16;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=g;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=g+4|0;g=Do(Ro(i|0,h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24|0,48)|0,I|0,48)|0;j=d;f[j>>2]=g;f[j+4>>2]=I;i=Do(0,i|0,48)|0;j=d+8|0;f[j>>2]=i;f[j+4>>2]=I;j=1;return j|0}default:{j=0;return j|0}}return 0}function Nd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}i=d;f[i>>2]=h[c+e>>0];f[i+4>>2]=0;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8;j=d;f[j>>2]=i&255;f[j+4>>2]=0;j=d+8|0;f[j>>2]=(i&65535)>>>8&65535;f[j+4>>2]=0;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=b[a+1>>0]|0;i=b[a+2>>0]|0;j=d;f[j>>2]=h[a>>0];f[j+4>>2]=0;j=d+8|0;f[j>>2]=g&255;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i&255;f[j+4>>2]=0;j=d+24|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=i&255;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i>>>8&255;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i>>>16&255;f[j+4>>2]=0;j=d+24|0;f[j>>2]=i>>>24;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Od(a,c,e,g,i){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0;m=u;u=u+32|0;k=m+12|0;l=m;f[c+40>>2]=e;j=c+32|0;f[j>>2]=g;f[c+4>>2]=i;rc(a,g,k);if(f[a>>2]|0){u=m;return}i=a+4|0;Op(i);g=h[k+7>>0]|0;if((g|0)!=(Sa[f[(f[c>>2]|0)+8>>2]&255](c)|0)){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;Jk(l,21389,50);f[a>>2]=-1;im(i,l);Op(l);u=m;return}e=b[k+5>>0]|0;b[c+36>>0]=e;g=b[k+6>>0]|0;b[c+37>>0]=g;if((e+-1&255)>1){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;Jk(l,21440,22);f[a>>2]=-5;im(i,l);Op(l);u=m;return}if(e<<24>>24==2&(g&255)>1){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;Jk(l,21463,22);f[a>>2]=-5;im(i,l);Op(l);u=m;return}g=(g&255|(e&255)<<8)&65535;d[(f[j>>2]|0)+38>>1]=g;do if((g&65535)>258?(d[k+10>>1]|0)<0:0){ig(a,c);if(!(f[a>>2]|0)){Op(i);break}else{u=m;return}}while(0);if(!(Sa[f[(f[c>>2]|0)+12>>2]&255](c)|0)){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;Jk(l,21486,33);f[a>>2]=-1;im(i,l);Op(l);u=m;return}if(!(Sa[f[(f[c>>2]|0)+20>>2]&255](c)|0)){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;Jk(l,21520,31);f[a>>2]=-1;im(i,l);Op(l);u=m;return}if(Sa[f[(f[c>>2]|0)+24>>2]&255](c)|0){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=m;return}else{f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;Jk(l,21552,34);f[a>>2]=-1;im(i,l);Op(l);u=m;return}}function Pd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;i=d;f[i>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[i+4>>2]=0;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=g+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=g+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Qd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)<<16>>16;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j<<16>>16;f[d+4>>2]=j>>16;j=d+8|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=g+2|0;i=h[i>>0]|h[i+1>>0]<<8;j=g+4|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=(h[g>>0]|h[g+1>>0]<<8)<<16>>16;f[d+4>>2]=i<<16>>16;f[d+8>>2]=j<<16>>16;f[d+12>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;i=j;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=i<<16>>16;f[d+4>>2]=i>>16;g=Ro(j|0,0,16)|0;f[d+8>>2]=g>>16;j=Ro(Wo(i|0,j|0,48)|0,I|0,16)|0;f[d+12>>2]=j>>16;j=1;return j|0}default:{j=0;return j|0}}return 0}function Rd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)&65535;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j&65535;f[d+4>>2]=j>>>16;j=d+8|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=g+2|0;i=h[i>>0]|h[i+1>>0]<<8;j=g+4|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=(h[g>>0]|h[g+1>>0]<<8)&65535;f[d+4>>2]=i&65535;f[d+8>>2]=j&65535;f[d+12>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;i=j;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=i&65535;g=Wo(i|0,j|0,16)|0;f[d+4>>2]=g&65535;f[d+8>>2]=j&65535;j=Wo(i|0,j|0,48)|0;f[d+12>>2]=j;j=1;return j|0}default:{j=0;return j|0}}return 0}function Sd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+176|0;h=t+136|0;s=t+64|0;o=t;j=t+32|0;i=f[(f[c+4>>2]|0)+44>>2]|0;n=no(88)|0;f[n+4>>2]=0;f[n>>2]=4720;k=n+12|0;f[k>>2]=4700;m=n+64|0;f[m>>2]=0;f[n+68>>2]=0;f[n+72>>2]=0;e=n+16|0;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[n+76>>2]=i;f[n+80>>2]=d;f[n+84>>2]=0;l=n;q=s+4|0;f[q>>2]=4700;p=s+56|0;f[p>>2]=0;r=s+60|0;f[r>>2]=0;f[s+64>>2]=0;e=s+8|0;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));e=f[c+8>>2]|0;f[o>>2]=4700;c=o+4|0;g=c+4|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;g=e;f[c>>2]=g;g=((f[g+4>>2]|0)-(f[e>>2]|0)>>2>>>0)/3|0;b[h>>0]=0;Rh(o+8|0,g,h);Pa[f[(f[o>>2]|0)+8>>2]&255](o);Dg(j,o);Dg(h,j);f[s>>2]=f[h+4>>2];g=s+4|0;dh(g,h)|0;f[h>>2]=4700;c=f[h+20>>2]|0;if(c|0)ds(c);c=f[h+8>>2]|0;if(c|0)ds(c);f[s+36>>2]=e;f[s+40>>2]=d;f[s+44>>2]=i;f[s+48>>2]=n;f[j>>2]=4700;c=f[j+20>>2]|0;if(c|0)ds(c);c=f[j+8>>2]|0;if(c|0)ds(c);f[n+8>>2]=f[s>>2];dh(k,g)|0;c=n+44|0;n=s+36|0;f[c>>2]=f[n>>2];f[c+4>>2]=f[n+4>>2];f[c+8>>2]=f[n+8>>2];f[c+12>>2]=f[n+12>>2];b[c+16>>0]=b[n+16>>0]|0;Eg(m,f[p>>2]|0,f[r>>2]|0);f[a>>2]=l;f[o>>2]=4700;c=f[o+20>>2]|0;if(c|0)ds(c);c=f[o+8>>2]|0;if(c|0)ds(c);c=f[p>>2]|0;if(c|0){e=f[r>>2]|0;if((e|0)!=(c|0))f[r>>2]=e+(~((e+-4-c|0)>>>2)<<2);ds(c)}f[q>>2]=4700;c=f[s+24>>2]|0;if(c|0)ds(c);c=f[s+12>>2]|0;if(!c){u=t;return}ds(c);u=t;return}function Td(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)ds(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}v=no(c<<2)|0;d=f[a>>2]|0;f[a>>2]=v;if(d|0)ds(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;d=f[h+4>>2]|0;u=c+-1|0;v=(u&c|0)==0;if(v)g=d&u;else g=(d>>>0)%(c>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;d=f[h>>2]|0;if(!d)return;t=a+24|0;i=h;e=d;d=h;a:while(1){s=d;b:while(1){d=e;while(1){e=f[d+4>>2]|0;if(v)r=e&u;else r=(e>>>0)%(c>>>0)|0;if((r|0)==(g|0))break;e=(f[a>>2]|0)+(r<<2)|0;if(!(f[e>>2]|0))break b;e=f[d>>2]|0;c:do if(!e)e=d;else{p=f[d+8>>2]|0;n=f[t>>2]|0;o=f[n+8>>2]|0;n=(f[n+12>>2]|0)-o|0;q=n>>>2;if((n|0)>0)l=d;else while(1){h=f[e>>2]|0;if(!h)break c;else e=h}while(1){m=f[e+8>>2]|0;n=0;do{h=f[o+(n<<2)>>2]|0;j=(b[h+84>>0]|0)==0;if(j)k=f[(f[h+68>>2]|0)+(p<<2)>>2]|0;else k=p;if((q|0)<=(n|0)){d=35;break a}if(j)h=f[(f[h+68>>2]|0)+(m<<2)>>2]|0;else h=m;n=n+1|0;if((k|0)!=(h|0)){e=l;break c}}while((n|0)<(q|0));h=f[e>>2]|0;if(!h)break;else{l=e;e=h}}}while(0);f[s>>2]=f[e>>2];f[e>>2]=f[f[(f[a>>2]|0)+(r<<2)>>2]>>2];f[f[(f[a>>2]|0)+(r<<2)>>2]>>2]=d;d=f[i>>2]|0;if(!d){d=40;break a}}e=f[d>>2]|0;if(!e){d=40;break a}else{i=d;s=d}}f[e>>2]=s;e=f[d>>2]|0;if(!e){d=40;break}else{i=d;g=r}}if((d|0)==35)Ga(22727,22625,67,22717);else if((d|0)==40)return}function Ud(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;i=d;f[i>>2]=(h[g>>0]|h[g+1>>0]<<8)&65535;f[i+4>>2]=0;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=i&65535;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i>>>16;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=g+2|0;i=h[i>>0]|h[i+1>>0]<<8;j=d;f[j>>2]=(h[g>>0]|h[g+1>>0]<<8)&65535;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i&65535;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=d;f[g>>2]=j&65535;f[g+4>>2]=0;i=Wo(j|0,i|0,16)|0;j=d+8|0;f[j>>2]=i&65535;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Vd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}i=d;f[i>>2]=h[c+e>>0];f[i+4>>2]=0;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8;j=d;f[j>>2]=i&255;f[j+4>>2]=0;j=d+8|0;f[j>>2]=(i&65535)>>>8&65535;f[j+4>>2]=0;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}a=c+e|0;g=b[a+1>>0]|0;i=b[a+2>>0]|0;j=d;f[j>>2]=h[a>>0];f[j+4>>2]=0;j=d+8|0;f[j>>2]=g&255;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i&255;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=i&255;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i>>>8&255;f[j+4>>2]=0;j=d+16|0;f[j>>2]=i>>>16&255;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Wd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}g=b[c+e>>0]|0;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8;g=(i&255)<<24>>24;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=((i&65535)>>>8&255)<<24>>24;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=b[g+1>>0]|0;g=b[g>>0]|0;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=i<<24>>24;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=(i&255)<<24>>24;j=d;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;i=(i>>>8&255)<<24>>24;j=d+8|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}default:{j=0;return j|0}}return 0}function Xd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];i=~~$(n[s>>2]);f[d>>2]=i;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=~~(f[s>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24,$(n[s>>2]));f[d>>2]=j;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];j=~~$(n[s>>2]);f[d>>2]=j;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];j=~~$(n[s>>2]);f[d>>2]=j;j=1;return j|0}default:{j=0;return j|0}}return 0}function Yd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)<<16>>16;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j<<16>>16;f[d+4>>2]=j>>16;f[d+8>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=g+2|0;i=h[i>>0]|h[i+1>>0]<<8;j=g+4|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=(h[g>>0]|h[g+1>>0]<<8)<<16>>16;f[d+4>>2]=i<<16>>16;f[d+8>>2]=j<<16>>16;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;i=j;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=i<<16>>16;f[d+4>>2]=i>>16;j=Ro(j|0,0,16)|0;f[d+8>>2]=j>>16;j=1;return j|0}default:{j=0;return j|0}}return 0}function Zd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=u;u=u+16|0;z=B+8|0;x=B;y=B+4|0;if(!(ik(a,b)|0)){a=0;u=B;return a|0}A=b+96|0;n=b+100|0;d=f[n>>2]|0;b=f[A>>2]|0;if((d-b|0)<=0){a=1;u=B;return a|0}m=a+56|0;t=a+8|0;q=a+12|0;r=a+20|0;o=a+24|0;s=a+32|0;p=a+36|0;v=a+68|0;w=a+76|0;l=f[c>>2]|0;h=l+4|0;j=l+8|0;i=a+4|0;k=a+72|0;g=l;e=0;do{if(!(f[(f[m>>2]|0)+(e>>>5<<2)>>2]&1<<(e&31))){C=e*3|0;f[x>>2]=C;f[z>>2]=f[x>>2];wd(a,0,z);d=(f[q>>2]|0)-(f[t>>2]|0)>>2;f[x>>2]=C+1;f[z>>2]=f[x>>2];wd(a,1,z);b=(f[o>>2]|0)-(f[r>>2]|0)>>2;c=b>>>0>d>>>0;f[x>>2]=C+2;f[z>>2]=f[x>>2];wd(a,2,z);d=(f[p>>2]|0)-(f[s>>2]|0)>>2>>>0>(c?b:d)>>>0?2:c?1:((d|0)==0)<<31>>31;if((f[v>>2]|0)>0){b=f[w>>2]|0;f[z>>2]=b;c=f[h>>2]|0;if(c>>>0<(f[j>>2]|0)>>>0){f[c>>2]=b;f[h>>2]=c+4}else Bj(l,z);f[x>>2]=f[a+44+(d<<2)>>2];b=f[i>>2]|0;c=f[a>>2]|0;f[z>>2]=f[x>>2];c=pl(z,b,c)|0;f[z>>2]=c;b=f[h>>2]|0;if(b>>>0<(f[j>>2]|0)>>>0){f[b>>2]=c;f[h>>2]=b+4}else Bj(l,z);C=(f[k>>2]|0)+2|0;f[k>>2]=C;if(C&1|0){f[z>>2]=c;b=f[h>>2]|0;if(b>>>0<(f[j>>2]|0)>>>0){f[b>>2]=c;f[h>>2]=b+4}else Bj(l,z);f[k>>2]=(f[k>>2]|0)+1}}f[y>>2]=g;f[z>>2]=f[y>>2];Fd(a,d,z);b=f[A>>2]|0;d=f[n>>2]|0}e=e+1|0}while((e|0)<((d-b|0)/12|0|0));b=1;u=B;return b|0}function _d(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)&65535;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j&65535;f[d+4>>2]=j>>>16;f[d+8>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=g+2|0;i=h[i>>0]|h[i+1>>0]<<8;j=g+4|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=(h[g>>0]|h[g+1>>0]<<8)&65535;f[d+4>>2]=i&65535;f[d+8>>2]=j&65535;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;i=j;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=i&65535;i=Wo(i|0,j|0,16)|0;f[d+4>>2]=i&65535;f[d+8>>2]=j&65535;j=1;return j|0}default:{j=0;return j|0}}return 0}function $d(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=La,l=La;switch(b[a+24>>0]|0){case 1:{j=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;g=a+40|0;c=Kp(mo(f[g>>2]|0,f[g+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,4,0)|0;j=I;g=f[a>>2]|0;e=f[g>>2]|0;if((j|0)>0|((j|0)==0?i>>>0>((f[g+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;l=$((h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)>>>0);k=$(l*$(2.32830644e-10));n[d>>2]=(b[a+32>>0]|0)==0?l:k;j=1;return j|0}case 2:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$((h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)>>>0);l=$(k*$(2.32830644e-10));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}case 3:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$((h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)>>>0);l=$(k*$(2.32830644e-10));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}case 4:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$((h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)>>>0);l=$(k*$(2.32830644e-10));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}default:{j=0;return j|0}}return 0}function ae(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=La,l=La;switch(b[a+24>>0]|0){case 1:{j=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;g=a+40|0;c=Kp(mo(f[g>>2]|0,f[g+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,4,0)|0;j=I;g=f[a>>2]|0;e=f[g>>2]|0;if((j|0)>0|((j|0)==0?i>>>0>((f[g+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;l=$(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24|0);k=$(l*$(4.65661287e-10));n[d>>2]=(b[a+32>>0]|0)==0?l:k;j=1;return j|0}case 2:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24|0);l=$(k*$(4.65661287e-10));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}case 3:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24|0);l=$(k*$(4.65661287e-10));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}case 4:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24|0);l=$(k*$(4.65661287e-10));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}default:{j=0;return j|0}}return 0}function be(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4744;is(a+352|0);b=f[a+340>>2]|0;if(b|0){d=a+344|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}d=a+320|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0){d=c+-4|0;b=f[d>>2]|0;if(b|0){b=c+(b<<4)|0;do{b=b+-16|0;is(b)}while((b|0)!=(c|0))}bs(d)}is(a+304|0);is(a+264|0);wj(a+224|0);b=f[a+208>>2]|0;if(b|0){d=a+212|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+196>>2]|0;if(b|0){d=a+200|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+184>>2]|0;if(b|0){d=a+188|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+172>>2]|0;if(b|0){d=a+176|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+156>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;ds(d)}while((b|0)!=0);d=a+148|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)ds(b);b=f[a+132>>2]|0;if(b|0)ds(b);b=f[a+120>>2]|0;if(b|0)ds(b);b=f[a+108>>2]|0;if(b|0)ds(b);b=f[a+84>>2]|0;if(b|0){d=a+88|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+72>>2]|0;if(b|0){d=a+76|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+60>>2]|0;if(b|0)ds(b);b=f[a+48>>2]|0;if(b|0){d=a+52|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+36>>2]|0;if(b|0){d=a+40|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);ds(b)}b=f[a+24>>2]|0;if(b|0){d=a+28|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+12>>2]|0;if(b|0){d=a+16|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}a=a+8|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;mk(b);ds(b);return}function ce(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+92|0;i=f[b>>2]|0;j=(i|0)<0;l=i+1|0;do if(!j){b=((l|0)%3|0|0)==0?i+-2|0:l;if(!((i>>>0)%3|0)){d=b;g=i+2|0;break}else{d=b;g=i+-1|0;break}}else{d=i;g=i}while(0);h=a+128|0;b=f[h>>2]|0;switch(b|0){case 1:case 0:{if((d|0)<0)b=-1073741824;else b=f[(f[f[k>>2]>>2]|0)+(d<<2)>>2]|0;c=f[a+100>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((g|0)<0){d=1;b=-1073741824;e=28}else{d=1;b=f[(f[f[k>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}case 5:{if(j)b=-1073741824;else b=f[(f[f[k>>2]>>2]|0)+(i<<2)>>2]|0;c=f[a+100>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((d|0)<0)b=-1073741824;else b=f[(f[f[k>>2]>>2]|0)+(d<<2)>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((g|0)<0){d=2;b=-1073741824;e=28}else{d=2;b=f[(f[f[k>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}case 3:{if(j)b=-1073741824;else b=f[(f[f[k>>2]>>2]|0)+(i<<2)>>2]|0;c=f[a+100>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((d|0)<0)b=-1073741824;else b=f[(f[f[k>>2]>>2]|0)+(d<<2)>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+2;if((g|0)<0){d=1;b=-1073741824;e=28}else{d=1;b=f[(f[f[k>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}case 7:{if(j)b=-1073741824;else b=f[(f[f[k>>2]>>2]|0)+(i<<2)>>2]|0;c=f[a+100>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+2;if((d|0)<0)b=-1073741824;else b=f[(f[f[k>>2]>>2]|0)+(d<<2)>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+2;if((g|0)<0){d=2;b=-1073741824;e=28}else{d=2;b=f[(f[f[k>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}default:{}}if((e|0)==28){b=c+(b<<2)|0;f[b>>2]=(f[b>>2]|0)+d;b=f[h>>2]|0}switch(b|0){case 5:case 0:break;default:{f[a+132>>2]=-1;return}}b=f[k>>2]|0;if(!j?(m=((l|0)%3|0|0)==0?i+-2|0:l,(m|0)>=0):0)b=f[(f[b>>2]|0)+(m<<2)>>2]|0;else b=-1073741824;f[a+132>>2]=(f[(f[a+100>>2]|0)+(b<<2)>>2]|0)<6?5:0;return}function de(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)ds(c);f[e>>2]=0;return}if(b>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}n=no(b<<2)|0;c=f[a>>2]|0;f[a>>2]=n;if(c|0)ds(c);f[e>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;c=f[h+4>>2]|0;m=b+-1|0;n=(m&b|0)==0;if(n)g=c&m;else g=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;c=f[h>>2]|0;if(!c)return;else{i=h;e=c;c=h}a:while(1){b:do if(n){l=i;j=c;while(1){c=e;while(1){k=f[c+4>>2]&m;if((k|0)==(g|0))break;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){h=j;g=k;break b}i=c+8|0;h=c;while(1){e=f[h>>2]|0;if(!e)break;if((d[i>>1]|0)==(d[e+8>>1]|0))h=e;else break}f[j>>2]=e;f[h>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=c;c=f[l>>2]|0;if(!c){c=34;break a}}e=f[c>>2]|0;if(!e){c=34;break a}else{l=c;j=c}}}else{l=i;j=c;while(1){c=e;while(1){k=((f[c+4>>2]|0)>>>0)%(b>>>0)|0;if((k|0)==(g|0))break;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){h=j;g=k;break b}i=c+8|0;h=c;while(1){e=f[h>>2]|0;if(!e)break;if((d[i>>1]|0)==(d[e+8>>1]|0))h=e;else break}f[j>>2]=e;f[h>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=c;c=f[l>>2]|0;if(!c){c=34;break a}}e=f[c>>2]|0;if(!e){c=34;break a}else{l=c;j=c}}}while(0);f[e>>2]=h;e=f[c>>2]|0;if(!e){c=34;break}else i=c}if((c|0)==34)return}function ee(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)ds(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}n=no(c<<2)|0;d=f[a>>2]|0;f[a>>2]=n;if(d|0)ds(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;h=f[e>>2]|0;if(!h)return;d=f[h+4>>2]|0;m=c+-1|0;n=(m&c|0)==0;if(n)g=d&m;else g=(d>>>0)%(c>>>0)|0;f[(f[a>>2]|0)+(g<<2)>>2]=e;d=f[h>>2]|0;if(!d)return;else{i=h;e=d;d=h}a:while(1){b:do if(n){l=i;j=d;while(1){d=e;while(1){k=f[d+4>>2]&m;if((k|0)==(g|0))break;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){h=j;g=k;break b}i=d+8|0;h=d;while(1){e=f[h>>2]|0;if(!e)break;if((b[i>>0]|0)==(b[e+8>>0]|0))h=e;else break}f[j>>2]=e;f[h>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[l>>2]|0;if(!d){d=34;break a}}e=f[d>>2]|0;if(!e){d=34;break a}else{l=d;j=d}}}else{l=i;j=d;while(1){d=e;while(1){k=((f[d+4>>2]|0)>>>0)%(c>>>0)|0;if((k|0)==(g|0))break;e=(f[a>>2]|0)+(k<<2)|0;if(!(f[e>>2]|0)){h=j;g=k;break b}i=d+8|0;h=d;while(1){e=f[h>>2]|0;if(!e)break;if((b[i>>0]|0)==(b[e+8>>0]|0))h=e;else break}f[j>>2]=e;f[h>>2]=f[f[(f[a>>2]|0)+(k<<2)>>2]>>2];f[f[(f[a>>2]|0)+(k<<2)>>2]>>2]=d;d=f[l>>2]|0;if(!d){d=34;break a}}e=f[d>>2]|0;if(!e){d=34;break a}else{l=d;j=d}}}while(0);f[e>>2]=h;e=f[d>>2]|0;if(!e){d=34;break}else i=d}if((d|0)==34)return}function fe(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;g=(h[g>>0]|h[g+1>>0]<<8)<<16>>16;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=((h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24)&65535)<<16>>16;j=d;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=(h[i>>0]|h[i+1>>0]<<8)<<16>>16;j=d;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i;i=i+4|0;i=Do(Ro(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24|0,h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24|0,48)|0,I|0,48)|0;j=d;f[j>>2]=i;f[j+4>>2]=I;j=1;return j|0}default:{j=0;return j|0}}return 0}function ge(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)ds(c);f[d>>2]=0;return}if(b>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}m=no(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)ds(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;g=f[d>>2]|0;if(!g)return;c=f[g+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(m)e=c&l;else e=(c>>>0)%(b>>>0)|0;f[(f[a>>2]|0)+(e<<2)>>2]=d;c=f[g>>2]|0;if(!c)return;else{h=g;d=c;c=g}a:while(1){b:do if(m){k=h;i=c;while(1){c=d;while(1){j=f[c+4>>2]&l;if((j|0)==(e|0))break;d=(f[a>>2]|0)+(j<<2)|0;if(!(f[d>>2]|0)){g=i;e=j;break b}h=c+8|0;g=c;while(1){d=f[g>>2]|0;if(!d)break;if((f[h>>2]|0)==(f[d+8>>2]|0))g=d;else break}f[i>>2]=d;f[g>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=c;c=f[k>>2]|0;if(!c){c=34;break a}}d=f[c>>2]|0;if(!d){c=34;break a}else{k=c;i=c}}}else{k=h;i=c;while(1){c=d;while(1){j=((f[c+4>>2]|0)>>>0)%(b>>>0)|0;if((j|0)==(e|0))break;d=(f[a>>2]|0)+(j<<2)|0;if(!(f[d>>2]|0)){g=i;e=j;break b}h=c+8|0;g=c;while(1){d=f[g>>2]|0;if(!d)break;if((f[h>>2]|0)==(f[d+8>>2]|0))g=d;else break}f[i>>2]=d;f[g>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=c;c=f[k>>2]|0;if(!c){c=34;break a}}d=f[c>>2]|0;if(!d){c=34;break a}else{k=c;i=c}}}while(0);f[d>>2]=g;d=f[c>>2]|0;if(!d){c=34;break}else h=c}if((c|0)==34)return}function he(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=La,l=La;switch(b[a+24>>0]|0){case 1:{j=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;g=a+40|0;c=Kp(mo(f[g>>2]|0,f[g+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,2,0)|0;j=I;g=f[a>>2]|0;e=f[g>>2]|0;if((j|0)>0|((j|0)==0?i>>>0>((f[g+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;l=$((h[j>>0]|h[j+1>>0]<<8)<<16>>16);k=$(l/$(32767.0));n[d>>2]=(b[a+32>>0]|0)==0?l:k;j=1;return j|0}case 2:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$(((h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)&65535)<<16>>16);l=$(k/$(32767.0));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}case 3:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$((h[j>>0]|h[j+1>>0]<<8)<<16>>16);l=$(k/$(32767.0));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}case 4:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$(((h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)&65535)<<16>>16);l=$(k/$(32767.0));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}default:{j=0;return j|0}}return 0}function ie(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;v=u;u=u+32|0;e=v+24|0;q=v+20|0;t=v+8|0;s=v+4|0;m=v;f[e>>2]=0;rk(e,f[a>>2]|0)|0;a:do if(f[e>>2]|0){d=0;while(1){d=d+1|0;if(!(Be(a,c)|0)){d=0;break}if(d>>>0>=(f[e>>2]|0)>>>0)break a}u=v;return d|0}while(0);f[q>>2]=0;rk(q,f[a>>2]|0)|0;b:do if(!(f[q>>2]|0))d=1;else{i=0;while(1){f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;g=f[a>>2]|0;w=g+8|0;x=f[w+4>>2]|0;h=g+16|0;e=h;d=f[e>>2]|0;e=f[e+4>>2]|0;if((x|0)>(e|0)|((x|0)==(e|0)?(f[w>>2]|0)>>>0>d>>>0:0)?(l=b[(f[g>>2]|0)+d>>0]|0,j=Kp(d|0,e|0,1,0)|0,p=h,f[p>>2]=j,f[p+4>>2]=I,p=l&255,tk(t,p,0),j=f[a>>2]|0,o=rm(t,0)|0,g=j+8|0,w=f[g>>2]|0,g=f[g+4>>2]|0,r=j+16|0,x=r,k=f[x>>2]|0,l=l&255,x=Kp(k|0,f[x+4>>2]|0,l|0,0)|0,h=I,!((g|0)<(h|0)|(g|0)==(h|0)&w>>>0>>0)):0){Fh(o|0,(f[j>>2]|0)+k|0,p|0)|0;w=r;w=Kp(f[w>>2]|0,f[w+4>>2]|0,l|0,0)|0;x=r;f[x>>2]=w;f[x+4>>2]=I;x=no(40)|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;n[x+16>>2]=$(1.0);w=x+20|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;f[w+12>>2]=0;n[x+36>>2]=$(1.0);f[s>>2]=x;if(ie(a,x)|0){d=f[s>>2]|0;f[s>>2]=0;f[m>>2]=d;gh(c,t,m)|0;Ej(m);d=0}else d=1;Ej(s)}else d=1;Op(t);i=i+1|0;if(d|0){d=0;break b}if(i>>>0>=(f[q>>2]|0)>>>0){d=1;break}}}while(0);x=d;u=v;return x|0}function je(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+92|0;c=f[b>>2]|0;d=(c|0)<0;b=c+1|0;do if(!d){b=((b|0)%3|0|0)==0?c+-2|0:b;if(!((c>>>0)%3|0)){h=b;g=c+2|0;break}else{h=b;g=c+-1|0;break}}else{h=c;g=c}while(0);switch(f[a+112>>2]|0){case 1:case 0:{if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;c=f[a+100>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((g|0)<0){d=1;b=-1073741824;e=28}else{d=1;b=f[(f[f[i>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}case 5:{if(d)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(c<<2)>>2]|0;c=f[a+100>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((g|0)<0){d=2;b=-1073741824;e=28}else{d=2;b=f[(f[f[i>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}case 3:{if(d)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(c<<2)>>2]|0;c=f[a+100>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+2;if((g|0)<0){d=1;b=-1073741824;e=28}else{d=1;b=f[(f[f[i>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}case 7:{if(d)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(c<<2)>>2]|0;c=f[a+100>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+2;if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+2;if((g|0)<0){d=2;b=-1073741824;e=28}else{d=2;b=f[(f[f[i>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}default:{}}if((e|0)==28){g=c+(b<<2)|0;f[g>>2]=(f[g>>2]|0)+d}if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;b=f[(f[a+100>>2]|0)+(b<<2)>>2]|0;c=f[a+120>>2]|0;if((b|0)<(c|0)){i=c;i=i-c|0;a=a+116|0;f[a>>2]=i;return}i=f[a+124>>2]|0;i=(b|0)>(i|0)?i:b;i=i-c|0;a=a+116|0;f[a>>2]=i;return}function ke(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){a=0;return a|0}t=a+12|0;do if((e&65535)<512){o=c+8|0;q=f[o>>2]|0;o=f[o+4>>2]|0;g=c+16|0;r=g;e=f[r>>2]|0;r=Kp(e|0,f[r+4>>2]|0,4,0)|0;p=I;if((o|0)<(p|0)|(o|0)==(p|0)&q>>>0>>0){a=0;return a|0}else{e=(f[c>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[t>>0]=e;b[t+1>>0]=e>>8;b[t+2>>0]=e>>16;b[t+3>>0]=e>>24;q=g;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=g;f[r>>2]=q;f[r+4>>2]=I;break}}else if(rk(t,c)|0){e=f[t>>2]|0;break}else{a=0;return a|0}while(0);j=a+4|0;i=f[j>>2]|0;g=f[a>>2]|0;k=i-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(l=g+(e<<2)|0,(i|0)!=(l|0)):0)f[j>>2]=i+(~((i+-4-l|0)>>>2)<<2)}else{mj(a,e-k|0);e=f[t>>2]|0}if(!e){a=1;return a|0}q=c+8|0;r=c+16|0;p=0;a:while(1){n=q;m=f[n>>2]|0;n=f[n+4>>2]|0;i=r;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;s=23;break}o=f[c>>2]|0;j=b[o+g>>0]|0;i=Kp(g|0,i|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;k=j&255;l=k&3;k=k>>>2;switch(j&3){case 3:{g=k+p|0;if(g>>>0>=e>>>0){e=0;s=23;break a}_j((f[a>>2]|0)+(p<<2)|0,0,(k<<2)+4|0)|0;e=g;break}case 0:{e=k;s=20;break}default:{j=0;e=k;while(1){if(!((n|0)>(g|0)|(n|0)==(g|0)&m>>>0>i>>>0)){e=0;s=23;break a}s=b[o+i>>0]|0;i=Kp(i|0,g|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;e=(s&255)<<(j<<3|6)|e;j=j+1|0;if((j|0)>=(l|0)){s=20;break}}}}if((s|0)==20){s=0;f[(f[a>>2]|0)+(p<<2)>>2]=e;e=p}p=e+1|0;e=f[t>>2]|0;if(p>>>0>=e>>>0){s=22;break}}if((s|0)==22){a=li(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((s|0)==23)return e|0;return 0}function le(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){a=0;return a|0}t=a+12|0;do if((e&65535)<512){o=c+8|0;q=f[o>>2]|0;o=f[o+4>>2]|0;g=c+16|0;r=g;e=f[r>>2]|0;r=Kp(e|0,f[r+4>>2]|0,4,0)|0;p=I;if((o|0)<(p|0)|(o|0)==(p|0)&q>>>0>>0){a=0;return a|0}else{e=(f[c>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[t>>0]=e;b[t+1>>0]=e>>8;b[t+2>>0]=e>>16;b[t+3>>0]=e>>24;q=g;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=g;f[r>>2]=q;f[r+4>>2]=I;break}}else if(rk(t,c)|0){e=f[t>>2]|0;break}else{a=0;return a|0}while(0);j=a+4|0;i=f[j>>2]|0;g=f[a>>2]|0;k=i-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(l=g+(e<<2)|0,(i|0)!=(l|0)):0)f[j>>2]=i+(~((i+-4-l|0)>>>2)<<2)}else{mj(a,e-k|0);e=f[t>>2]|0}if(!e){a=1;return a|0}q=c+8|0;r=c+16|0;p=0;a:while(1){n=q;m=f[n>>2]|0;n=f[n+4>>2]|0;i=r;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;s=23;break}o=f[c>>2]|0;j=b[o+g>>0]|0;i=Kp(g|0,i|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;k=j&255;l=k&3;k=k>>>2;switch(j&3){case 3:{g=k+p|0;if(g>>>0>=e>>>0){e=0;s=23;break a}_j((f[a>>2]|0)+(p<<2)|0,0,(k<<2)+4|0)|0;e=g;break}case 0:{e=k;s=20;break}default:{j=0;e=k;while(1){if(!((n|0)>(g|0)|(n|0)==(g|0)&m>>>0>i>>>0)){e=0;s=23;break a}s=b[o+i>>0]|0;i=Kp(i|0,g|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;e=(s&255)<<(j<<3|6)|e;j=j+1|0;if((j|0)>=(l|0)){s=20;break}}}}if((s|0)==20){s=0;f[(f[a>>2]|0)+(p<<2)>>2]=e;e=p}p=e+1|0;e=f[t>>2]|0;if(p>>>0>=e>>>0){s=22;break}}if((s|0)==22){a=oi(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((s|0)==23)return e|0;return 0}function me(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){a=0;return a|0}t=a+12|0;do if((e&65535)<512){o=c+8|0;q=f[o>>2]|0;o=f[o+4>>2]|0;g=c+16|0;r=g;e=f[r>>2]|0;r=Kp(e|0,f[r+4>>2]|0,4,0)|0;p=I;if((o|0)<(p|0)|(o|0)==(p|0)&q>>>0>>0){a=0;return a|0}else{e=(f[c>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[t>>0]=e;b[t+1>>0]=e>>8;b[t+2>>0]=e>>16;b[t+3>>0]=e>>24;q=g;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=g;f[r>>2]=q;f[r+4>>2]=I;break}}else if(rk(t,c)|0){e=f[t>>2]|0;break}else{a=0;return a|0}while(0);j=a+4|0;i=f[j>>2]|0;g=f[a>>2]|0;k=i-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(l=g+(e<<2)|0,(i|0)!=(l|0)):0)f[j>>2]=i+(~((i+-4-l|0)>>>2)<<2)}else{mj(a,e-k|0);e=f[t>>2]|0}if(!e){a=1;return a|0}q=c+8|0;r=c+16|0;p=0;a:while(1){n=q;m=f[n>>2]|0;n=f[n+4>>2]|0;i=r;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;s=23;break}o=f[c>>2]|0;j=b[o+g>>0]|0;i=Kp(g|0,i|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;k=j&255;l=k&3;k=k>>>2;switch(j&3){case 3:{g=k+p|0;if(g>>>0>=e>>>0){e=0;s=23;break a}_j((f[a>>2]|0)+(p<<2)|0,0,(k<<2)+4|0)|0;e=g;break}case 0:{e=k;s=20;break}default:{j=0;e=k;while(1){if(!((n|0)>(g|0)|(n|0)==(g|0)&m>>>0>i>>>0)){e=0;s=23;break a}s=b[o+i>>0]|0;i=Kp(i|0,g|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;e=(s&255)<<(j<<3|6)|e;j=j+1|0;if((j|0)>=(l|0)){s=20;break}}}}if((s|0)==20){s=0;f[(f[a>>2]|0)+(p<<2)>>2]=e;e=p}p=e+1|0;e=f[t>>2]|0;if(p>>>0>=e>>>0){s=22;break}}if((s|0)==22){a=pi(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((s|0)==23)return e|0;return 0}function ne(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){a=0;return a|0}t=a+12|0;do if((e&65535)<512){o=c+8|0;q=f[o>>2]|0;o=f[o+4>>2]|0;g=c+16|0;r=g;e=f[r>>2]|0;r=Kp(e|0,f[r+4>>2]|0,4,0)|0;p=I;if((o|0)<(p|0)|(o|0)==(p|0)&q>>>0>>0){a=0;return a|0}else{e=(f[c>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[t>>0]=e;b[t+1>>0]=e>>8;b[t+2>>0]=e>>16;b[t+3>>0]=e>>24;q=g;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=g;f[r>>2]=q;f[r+4>>2]=I;break}}else if(rk(t,c)|0){e=f[t>>2]|0;break}else{a=0;return a|0}while(0);j=a+4|0;i=f[j>>2]|0;g=f[a>>2]|0;k=i-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(l=g+(e<<2)|0,(i|0)!=(l|0)):0)f[j>>2]=i+(~((i+-4-l|0)>>>2)<<2)}else{mj(a,e-k|0);e=f[t>>2]|0}if(!e){a=1;return a|0}q=c+8|0;r=c+16|0;p=0;a:while(1){n=q;m=f[n>>2]|0;n=f[n+4>>2]|0;i=r;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;s=23;break}o=f[c>>2]|0;j=b[o+g>>0]|0;i=Kp(g|0,i|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;k=j&255;l=k&3;k=k>>>2;switch(j&3){case 3:{g=k+p|0;if(g>>>0>=e>>>0){e=0;s=23;break a}_j((f[a>>2]|0)+(p<<2)|0,0,(k<<2)+4|0)|0;e=g;break}case 0:{e=k;s=20;break}default:{j=0;e=k;while(1){if(!((n|0)>(g|0)|(n|0)==(g|0)&m>>>0>i>>>0)){e=0;s=23;break a}s=b[o+i>>0]|0;i=Kp(i|0,g|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;e=(s&255)<<(j<<3|6)|e;j=j+1|0;if((j|0)>=(l|0)){s=20;break}}}}if((s|0)==20){s=0;f[(f[a>>2]|0)+(p<<2)>>2]=e;e=p}p=e+1|0;e=f[t>>2]|0;if(p>>>0>=e>>>0){s=22;break}}if((s|0)==22){a=qi(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((s|0)==23)return e|0;return 0}function oe(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){a=0;return a|0}t=a+12|0;do if((e&65535)<512){o=c+8|0;q=f[o>>2]|0;o=f[o+4>>2]|0;g=c+16|0;r=g;e=f[r>>2]|0;r=Kp(e|0,f[r+4>>2]|0,4,0)|0;p=I;if((o|0)<(p|0)|(o|0)==(p|0)&q>>>0>>0){a=0;return a|0}else{e=(f[c>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[t>>0]=e;b[t+1>>0]=e>>8;b[t+2>>0]=e>>16;b[t+3>>0]=e>>24;q=g;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=g;f[r>>2]=q;f[r+4>>2]=I;break}}else if(rk(t,c)|0){e=f[t>>2]|0;break}else{a=0;return a|0}while(0);j=a+4|0;i=f[j>>2]|0;g=f[a>>2]|0;k=i-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(l=g+(e<<2)|0,(i|0)!=(l|0)):0)f[j>>2]=i+(~((i+-4-l|0)>>>2)<<2)}else{mj(a,e-k|0);e=f[t>>2]|0}if(!e){a=1;return a|0}q=c+8|0;r=c+16|0;p=0;a:while(1){n=q;m=f[n>>2]|0;n=f[n+4>>2]|0;i=r;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;s=23;break}o=f[c>>2]|0;j=b[o+g>>0]|0;i=Kp(g|0,i|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;k=j&255;l=k&3;k=k>>>2;switch(j&3){case 3:{g=k+p|0;if(g>>>0>=e>>>0){e=0;s=23;break a}_j((f[a>>2]|0)+(p<<2)|0,0,(k<<2)+4|0)|0;e=g;break}case 0:{e=k;s=20;break}default:{j=0;e=k;while(1){if(!((n|0)>(g|0)|(n|0)==(g|0)&m>>>0>i>>>0)){e=0;s=23;break a}s=b[o+i>>0]|0;i=Kp(i|0,g|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;e=(s&255)<<(j<<3|6)|e;j=j+1|0;if((j|0)>=(l|0)){s=20;break}}}}if((s|0)==20){s=0;f[(f[a>>2]|0)+(p<<2)>>2]=e;e=p}p=e+1|0;e=f[t>>2]|0;if(p>>>0>=e>>>0){s=22;break}}if((s|0)==22){a=ri(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((s|0)==23)return e|0;return 0}function pe(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){a=0;return a|0}t=a+12|0;do if((e&65535)<512){o=c+8|0;q=f[o>>2]|0;o=f[o+4>>2]|0;g=c+16|0;r=g;e=f[r>>2]|0;r=Kp(e|0,f[r+4>>2]|0,4,0)|0;p=I;if((o|0)<(p|0)|(o|0)==(p|0)&q>>>0>>0){a=0;return a|0}else{e=(f[c>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[t>>0]=e;b[t+1>>0]=e>>8;b[t+2>>0]=e>>16;b[t+3>>0]=e>>24;q=g;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=g;f[r>>2]=q;f[r+4>>2]=I;break}}else if(rk(t,c)|0){e=f[t>>2]|0;break}else{a=0;return a|0}while(0);j=a+4|0;i=f[j>>2]|0;g=f[a>>2]|0;k=i-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(l=g+(e<<2)|0,(i|0)!=(l|0)):0)f[j>>2]=i+(~((i+-4-l|0)>>>2)<<2)}else{mj(a,e-k|0);e=f[t>>2]|0}if(!e){a=1;return a|0}q=c+8|0;r=c+16|0;p=0;a:while(1){n=q;m=f[n>>2]|0;n=f[n+4>>2]|0;i=r;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;s=23;break}o=f[c>>2]|0;j=b[o+g>>0]|0;i=Kp(g|0,i|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;k=j&255;l=k&3;k=k>>>2;switch(j&3){case 3:{g=k+p|0;if(g>>>0>=e>>>0){e=0;s=23;break a}_j((f[a>>2]|0)+(p<<2)|0,0,(k<<2)+4|0)|0;e=g;break}case 0:{e=k;s=20;break}default:{j=0;e=k;while(1){if(!((n|0)>(g|0)|(n|0)==(g|0)&m>>>0>i>>>0)){e=0;s=23;break a}s=b[o+i>>0]|0;i=Kp(i|0,g|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;e=(s&255)<<(j<<3|6)|e;j=j+1|0;if((j|0)>=(l|0)){s=20;break}}}}if((s|0)==20){s=0;f[(f[a>>2]|0)+(p<<2)>>2]=e;e=p}p=e+1|0;e=f[t>>2]|0;if(p>>>0>=e>>>0){s=22;break}}if((s|0)==22){a=ti(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((s|0)==23)return e|0;return 0}function qe(a,c){a=a|0;c=c|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;e=d[c+38>>1]|0;if(!(e<<16>>16)){a=0;return a|0}t=a+12|0;do if((e&65535)<512){o=c+8|0;q=f[o>>2]|0;o=f[o+4>>2]|0;g=c+16|0;r=g;e=f[r>>2]|0;r=Kp(e|0,f[r+4>>2]|0,4,0)|0;p=I;if((o|0)<(p|0)|(o|0)==(p|0)&q>>>0>>0){a=0;return a|0}else{e=(f[c>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[t>>0]=e;b[t+1>>0]=e>>8;b[t+2>>0]=e>>16;b[t+3>>0]=e>>24;q=g;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=g;f[r>>2]=q;f[r+4>>2]=I;break}}else if(rk(t,c)|0){e=f[t>>2]|0;break}else{a=0;return a|0}while(0);j=a+4|0;i=f[j>>2]|0;g=f[a>>2]|0;k=i-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(l=g+(e<<2)|0,(i|0)!=(l|0)):0)f[j>>2]=i+(~((i+-4-l|0)>>>2)<<2)}else{mj(a,e-k|0);e=f[t>>2]|0}if(!e){a=1;return a|0}q=c+8|0;r=c+16|0;p=0;a:while(1){n=q;m=f[n>>2]|0;n=f[n+4>>2]|0;i=r;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((n|0)>(i|0)|(n|0)==(i|0)&m>>>0>g>>>0)){e=0;s=23;break}o=f[c>>2]|0;j=b[o+g>>0]|0;i=Kp(g|0,i|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;k=j&255;l=k&3;k=k>>>2;switch(j&3){case 3:{g=k+p|0;if(g>>>0>=e>>>0){e=0;s=23;break a}_j((f[a>>2]|0)+(p<<2)|0,0,(k<<2)+4|0)|0;e=g;break}case 0:{e=k;s=20;break}default:{j=0;e=k;while(1){if(!((n|0)>(g|0)|(n|0)==(g|0)&m>>>0>i>>>0)){e=0;s=23;break a}s=b[o+i>>0]|0;i=Kp(i|0,g|0,1,0)|0;g=I;k=r;f[k>>2]=i;f[k+4>>2]=g;e=(s&255)<<(j<<3|6)|e;j=j+1|0;if((j|0)>=(l|0)){s=20;break}}}}if((s|0)==20){s=0;f[(f[a>>2]|0)+(p<<2)>>2]=e;e=p}p=e+1|0;e=f[t>>2]|0;if(p>>>0>=e>>>0){s=22;break}}if((s|0)==22){a=ui(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((s|0)==23)return e|0;return 0}function re(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=La,l=La;switch(b[a+24>>0]|0){case 1:{j=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;g=a+40|0;c=Kp(mo(f[g>>2]|0,f[g+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,2,0)|0;j=I;g=f[a>>2]|0;e=f[g>>2]|0;if((j|0)>0|((j|0)==0?i>>>0>((f[g+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;l=$((h[j>>0]|h[j+1>>0]<<8)&65535);k=$(l/$(65535.0));n[d>>2]=(b[a+32>>0]|0)==0?l:k;j=1;return j|0}case 2:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$((h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)&65535);l=$(k/$(65535.0));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}case 3:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$((h[j>>0]|h[j+1>>0]<<8)&65535);l=$(k/$(65535.0));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}case 4:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;e=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-e|0)>>>0:0)){j=0;return j|0}j=e+c|0;k=$((h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)&65535);l=$(k/$(65535.0));n[d>>2]=(b[a+32>>0]|0)==0?k:l;j=1;return j|0}default:{j=0;return j|0}}return 0}function se(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=a+8|0;f[t>>2]=e;j=a+32|0;i=a+36|0;h=f[i>>2]|0;g=f[j>>2]|0;k=h-g>>2;if(k>>>0>=e>>>0)if(k>>>0>e>>>0?(l=g+(e<<2)|0,(h|0)!=(l|0)):0){f[i>>2]=h+(~((h+-4-l|0)>>>2)<<2);g=e}else g=e;else{mj(j,e-k|0);g=f[t>>2]|0}r=e>>>0>1073741823?-1:e<<2;s=as(r)|0;_j(s|0,0,r|0)|0;if((g|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;j=0;do{g=f[s+(j<<2)>>2]|0;h=f[l>>2]|0;if((g|0)>(h|0)){k=f[i>>2]|0;f[k+(j<<2)>>2]=h}else{r=f[m>>2]|0;k=f[i>>2]|0;f[k+(j<<2)>>2]=(g|0)<(r|0)?r:g}j=j+1|0;g=f[t>>2]|0}while((j|0)<(g|0));if((g|0)>0){j=a+20|0;i=0;do{g=(f[b+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=c+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[l>>2]|0)){if((g|0)<(f[m>>2]|0)){g=(f[j>>2]|0)+g|0;u=18}}else{g=g-(f[j>>2]|0)|0;u=18}if((u|0)==18){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}if((e|0)>=(d|0)){bs(s);return 1}p=0-e|0;q=a+16|0;o=a+32|0;r=a+12|0;n=a+20|0;a=e;do{l=c+(a<<2)|0;j=l+(p<<2)|0;m=b+(a<<2)|0;if((g|0)>0){i=0;do{g=f[j+(i<<2)>>2]|0;h=f[q>>2]|0;if((g|0)>(h|0)){k=f[o>>2]|0;f[k+(i<<2)>>2]=h}else{h=f[r>>2]|0;k=f[o>>2]|0;f[k+(i<<2)>>2]=(g|0)<(h|0)?h:g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0));if((g|0)>0){i=0;do{g=(f[m+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[q>>2]|0)){if((g|0)<(f[r>>2]|0)){g=(f[n>>2]|0)+g|0;u=33}}else{g=g-(f[n>>2]|0)|0;u=33}if((u|0)==33){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}a=a+e|0}while((a|0)<(d|0));bs(s);return 1}function te(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+48|0;m=o+40|0;n=o;if(!(Nh(a,1,m)|0)){n=0;u=o;return n|0}l=a+40|0;e=a+16|0;i=f[e>>2]|0;c=(f[a>>2]|0)+i|0;j=a+8|0;e=_o(f[j>>2]|0,f[j+4>>2]|0,i|0,f[e+4>>2]|0)|0;i=a+38|0;ao(l,c,e,d[i>>1]|0);e=m;c=f[e>>2]|0;e=f[e+4>>2]|0;j=a+48|0;p=j;k=a+56|0;h=k;g=f[h>>2]|0;h=f[h+4>>2]|0;p=_o(f[p>>2]|0,f[p+4>>2]|0,g|0,h|0)|0;q=I;if(e>>>0>q>>>0|(e|0)==(q|0)&c>>>0>p>>>0){q=0;u=o;return q|0}p=Kp(g|0,h|0,c|0,e|0)|0;q=k;f[q>>2]=p;f[q+4>>2]=I;if(!(Nh(l,1,m)|0)){q=0;u=o;return q|0}Hn(n);e=k;q=f[e>>2]|0;c=(f[l>>2]|0)+q|0;h=j;e=_o(f[h>>2]|0,f[h+4>>2]|0,q|0,f[e+4>>2]|0)|0;ao(n,c,e,d[i>>1]|0);e=m;c=f[e>>2]|0;e=f[e+4>>2]|0;q=n+8|0;i=n+16|0;h=i;g=f[h>>2]|0;h=f[h+4>>2]|0;q=_o(f[q>>2]|0,f[q+4>>2]|0,g|0,h|0)|0;p=I;a:do if(e>>>0>p>>>0|(e|0)==(p|0)&c>>>0>q>>>0)b=0;else{c=Kp(g|0,h|0,c|0,e|0)|0;j=i;f[j>>2]=c;f[j+4>>2]=I;j=a+84|0;c=f[j>>2]|0;if((c|0)>0){h=c<<4;h=as(c>>>0>268435455|h>>>0>4294967291?-1:h+4|0)|0;f[h>>2]=c;h=h+4|0;e=h+(c<<4)|0;c=h;do{Ar(c);c=c+16|0}while((c|0)!=(e|0));i=a+80|0;g=f[i>>2]|0;f[i>>2]=h;if(g|0){e=g+-4|0;c=f[e>>2]|0;if(c|0){c=g+(c<<4)|0;do{c=c+-16|0;is(c)}while((c|0)!=(g|0))}bs(e)}if((f[j>>2]|0)>0){c=0;do{if(!(xg((f[i>>2]|0)+(c<<4)|0,n)|0)){b=0;break a}c=c+1|0}while((c|0)<(f[j>>2]|0))}}c=n;e=b+40|0;do{f[b>>2]=f[c>>2];b=b+4|0;c=c+4|0}while((b|0)<(e|0));b=1}while(0);is(n+24|0);q=b;u=o;return q|0}function ue(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)&65535;f[d+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j&65535;f[d+4>>2]=j>>>16;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i+2|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)&65535;f[d+4>>2]=j&65535;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;i=j;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=i&65535;j=Wo(i|0,j|0,16)|0;f[d+4>>2]=j&65535;j=1;return j|0}default:{j=0;return j|0}}return 0}function ve(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=c+8|0;j=f[i+4>>2]|0;h=c+16|0;e=h;g=f[e>>2]|0;e=f[e+4>>2]|0;if(!((j|0)>(e|0)|((j|0)==(e|0)?(f[i>>2]|0)>>>0>g>>>0:0))){j=0;return j|0}j=b[(f[c>>2]|0)+g>>0]|0;g=Kp(g|0,e|0,1,0)|0;i=h;f[i>>2]=g;f[i+4>>2]=I;do switch(j<<24>>24){case 1:{j=tg(a,c,d)|0;return j|0}case 2:{j=tg(a,c,d)|0;return j|0}case 3:{j=tg(a,c,d)|0;return j|0}case 4:{j=tg(a,c,d)|0;return j|0}case 5:{j=tg(a,c,d)|0;return j|0}case 6:{j=tg(a,c,d)|0;return j|0}case 7:{j=tg(a,c,d)|0;return j|0}case 8:{j=tg(a,c,d)|0;return j|0}case 9:{j=sg(a,c,d)|0;return j|0}case 10:{j=qg(a,c,d)|0;return j|0}case 11:{j=pg(a,c,d)|0;return j|0}case 12:{j=og(a,c,d)|0;return j|0}case 13:{j=ng(a,c,d)|0;return j|0}case 14:{j=mg(a,c,d)|0;return j|0}case 15:{j=mg(a,c,d)|0;return j|0}case 16:{j=mg(a,c,d)|0;return j|0}case 17:{j=mg(a,c,d)|0;return j|0}case 18:{j=mg(a,c,d)|0;return j|0}default:{j=0;return j|0}}while(0);return 0}function we(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=Do(0,h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24|0,32)|0;j=d;f[j>>2]=i;f[j+4>>2]=I;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}default:{j=0;return j|0}}return 0}function xe(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}f[d>>2]=b[c+e>>0];i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=(j&65535)<<24>>24;f[d+4>>2]=((j&65535)>>>8&65535)<<24>>24;j=d+8|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=b[g+1>>0]|0;j=b[g+2>>0]|0;f[d>>2]=b[g>>0];f[d+4>>2]=i<<24>>24;f[d+8>>2]=j<<24>>24;f[d+12>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j<<24>>24;f[d+4>>2]=j<<16>>24;f[d+8>>2]=j<<8>>24;f[d+12>>2]=j>>24;j=1;return j|0}default:{j=0;return j|0}}return 0}function ye(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}i=d;f[i>>2]=h[c+e>>0];f[i+4>>2]=0;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8;j=d;f[j>>2]=i&255;f[j+4>>2]=0;j=d+8|0;f[j>>2]=(i&65535)>>>8&65535;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=b[g+1>>0]|0;j=d;f[j>>2]=h[g>>0];f[j+4>>2]=0;j=d+8|0;f[j>>2]=i&255;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=i&255;f[j+4>>2]=0;j=d+8|0;f[j>>2]=i>>>8&255;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function ze(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}f[d>>2]=h[c+e>>0];i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=j&255;f[d+4>>2]=(j&65535)>>>8&65535;j=d+8|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=b[g+1>>0]|0;j=b[g+2>>0]|0;f[d>>2]=h[g>>0];f[d+4>>2]=i&255;f[d+8>>2]=j&255;f[d+12>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j&255;f[d+4>>2]=j>>>8&255;f[d+8>>2]=j>>>16&255;f[d+12>>2]=j>>>24;j=1;return j|0}default:{j=0;return j|0}}return 0}function Ae(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4580;d=a+320|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0){d=c+-4|0;b=f[d>>2]|0;if(b|0){b=c+(b<<4)|0;do{b=b+-16|0;is(b)}while((b|0)!=(c|0))}bs(d)}is(a+304|0);is(a+264|0);wj(a+224|0);b=f[a+208>>2]|0;if(b|0){d=a+212|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+196>>2]|0;if(b|0){d=a+200|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+184>>2]|0;if(b|0){d=a+188|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+172>>2]|0;if(b|0){d=a+176|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+156>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;ds(d)}while((b|0)!=0);d=a+148|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)ds(b);b=f[a+132>>2]|0;if(b|0)ds(b);b=f[a+120>>2]|0;if(b|0)ds(b);b=f[a+108>>2]|0;if(b|0)ds(b);b=f[a+84>>2]|0;if(b|0){d=a+88|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+72>>2]|0;if(b|0){d=a+76|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+60>>2]|0;if(b|0)ds(b);b=f[a+48>>2]|0;if(b|0){d=a+52|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+36>>2]|0;if(b|0){d=a+40|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);ds(b)}b=f[a+24>>2]|0;if(b|0){d=a+28|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+12>>2]|0;if(b|0){d=a+16|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}a=a+8|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;mk(b);ds(b);return}function Be(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=u;u=u+32|0;m=n+16|0;k=n+12|0;l=n;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;d=f[a>>2]|0;j=d+8|0;i=f[j+4>>2]|0;h=d+16|0;e=h;g=f[e>>2]|0;e=f[e+4>>2]|0;if(!((i|0)>(e|0)|((i|0)==(e|0)?(f[j>>2]|0)>>>0>g>>>0:0))){l=0;Op(m);u=n;return l|0}q=b[(f[d>>2]|0)+g>>0]|0;d=Kp(g|0,e|0,1,0)|0;i=h;f[i>>2]=d;f[i+4>>2]=I;i=q&255;tk(m,i,0);d=f[a>>2]|0;h=rm(m,0)|0;r=d+8|0;p=f[r>>2]|0;r=f[r+4>>2]|0;j=d+16|0;o=j;e=f[o>>2]|0;g=q&255;o=Kp(e|0,f[o+4>>2]|0,g|0,0)|0;q=I;if((r|0)<(q|0)|(r|0)==(q|0)&p>>>0>>0){r=0;Op(m);u=n;return r|0}Fh(h|0,(f[d>>2]|0)+e|0,i|0)|0;i=j;i=Kp(f[i>>2]|0,f[i+4>>2]|0,g|0,0)|0;d=j;f[d>>2]=i;f[d+4>>2]=I;f[k>>2]=0;rk(k,f[a>>2]|0)|0;d=f[k>>2]|0;f[l>>2]=0;i=l+4|0;f[i>>2]=0;f[l+8>>2]=0;if(!d)h=0;else{if((d|0)<0)Pq(l);e=no(d)|0;f[i>>2]=e;f[l>>2]=e;f[l+8>>2]=e+d;do{b[e>>0]=0;e=(f[i>>2]|0)+1|0;f[i>>2]=e;d=d+-1|0}while((d|0)!=0);h=f[k>>2]|0}d=f[a>>2]|0;o=d+8|0;q=f[o>>2]|0;o=f[o+4>>2]|0;g=d+16|0;r=g;e=f[r>>2]|0;r=Kp(e|0,f[r+4>>2]|0,h|0,0)|0;p=I;if((o|0)<(p|0)|(o|0)==(p|0)&q>>>0>>0)e=0;else{Fh(f[l>>2]|0,(f[d>>2]|0)+e|0,h|0)|0;r=g;r=Kp(f[r>>2]|0,f[r+4>>2]|0,h|0,0)|0;e=g;f[e>>2]=r;f[e+4>>2]=I;Kn(c,m,l);e=1}d=f[l>>2]|0;if(d|0){if((f[i>>2]|0)!=(d|0))f[i>>2]=d;ds(d)}r=e;Op(m);u=n;return r|0}function Ce(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;y=u;u=u+16|0;x=y+4|0;w=y;f[a+72>>2]=e;f[a+64>>2]=g;t=as(e>>>0>1073741823?-1:e<<2)|0;v=a+68|0;d=f[v>>2]|0;f[v>>2]=t;if(d|0)bs(d);t=a+8|0;f[t>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else mj(i,e-j|0);o=a+56|0;h=f[o>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;r=g-d|0;s=r>>2;if((r|0)<=0){u=y;return 1}q=a+16|0;n=a+32|0;r=a+12|0;p=a+20|0;i=h;h=0;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}f[w>>2]=f[d+(h<<2)>>2];f[x>>2]=f[w>>2];tc(a,x,c,h);m=X(h,e)|0;i=f[v>>2]|0;l=b+(m<<2)|0;m=c+(m<<2)|0;if((f[t>>2]|0)>0){j=0;do{d=f[i+(j<<2)>>2]|0;g=f[q>>2]|0;if((d|0)>(g|0)){k=f[n>>2]|0;f[k+(j<<2)>>2]=g}else{g=f[r>>2]|0;k=f[n>>2]|0;f[k+(j<<2)>>2]=(d|0)<(g|0)?g:d}j=j+1|0;d=f[t>>2]|0}while((j|0)<(d|0));if((d|0)>0){i=0;do{d=(f[l+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;g=m+(i<<2)|0;f[g>>2]=d;if((d|0)<=(f[q>>2]|0)){if((d|0)<(f[r>>2]|0)){d=(f[p>>2]|0)+d|0;z=24}}else{d=d-(f[p>>2]|0)|0;z=24}if((z|0)==24){z=0;f[g>>2]=d}i=i+1|0}while((i|0)<(f[t>>2]|0))}}h=h+1|0;if((h|0)>=(s|0))break;i=f[o>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}u=y;return 1}function De(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=La,k=La,l=0;switch(b[a+24>>0]|0){case 1:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;e=a+40|0;c=Kp(mo(f[e>>2]|0,f[e+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=I;g=f[a>>2]|0;e=f[g>>2]|0;if(!((i|0)<0|((i|0)==0?c>>>0<((f[g+4>>2]|0)-e|0)>>>0:0))){i=0;return i|0}k=$(b[e+c>>0]|0);j=$(k/$(127.0));n[d>>2]=(b[a+32>>0]|0)==0?k:j;i=1;return i|0}case 2:{l=f[c>>2]|0;c=a+48|0;g=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,g|0,c|0)|0;g=Kp(c|0,I|0,2,0)|0;l=I;i=f[a>>2]|0;e=f[i>>2]|0;if((l|0)>0|((l|0)==0?g>>>0>((f[i+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;j=$(((h[l>>0]|h[l+1>>0]<<8)&255)<<24>>24);k=$(j/$(127.0));n[d>>2]=(b[a+32>>0]|0)==0?j:k;l=1;return l|0}case 3:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,3,0)|0;g=I;l=f[a>>2]|0;e=f[l>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[l+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}j=$(b[e+c>>0]|0);k=$(j/$(127.0));n[d>>2]=(b[a+32>>0]|0)==0?j:k;l=1;return l|0}case 4:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,4,0)|0;g=I;l=f[a>>2]|0;e=f[l>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[l+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;j=$(((h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24)&255)<<24>>24);k=$(j/$(127.0));n[d>>2]=(b[a+32>>0]|0)==0?j:k;l=1;return l|0}default:{l=0;return l|0}}return 0}function Ee(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=i;j=d+8|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}rn(d|0,c+e|0,12)|0;n[d+12>>2]=$(0.0);j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}rn(d|0,c+e|0,16)|0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Fe(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;y=u;u=u+16|0;x=y+4|0;w=y;f[a+72>>2]=e;f[a+64>>2]=g;t=as(e>>>0>1073741823?-1:e<<2)|0;v=a+68|0;d=f[v>>2]|0;f[v>>2]=t;if(d|0)bs(d);t=a+8|0;f[t>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else mj(i,e-j|0);o=a+56|0;h=f[o>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;r=g-d|0;s=r>>2;if((r|0)<=0){u=y;return 1}q=a+16|0;n=a+32|0;r=a+12|0;p=a+20|0;i=h;h=0;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}f[w>>2]=f[d+(h<<2)>>2];f[x>>2]=f[w>>2];qc(a,x,c,h);m=X(h,e)|0;i=f[v>>2]|0;l=b+(m<<2)|0;m=c+(m<<2)|0;if((f[t>>2]|0)>0){j=0;do{d=f[i+(j<<2)>>2]|0;g=f[q>>2]|0;if((d|0)>(g|0)){k=f[n>>2]|0;f[k+(j<<2)>>2]=g}else{g=f[r>>2]|0;k=f[n>>2]|0;f[k+(j<<2)>>2]=(d|0)<(g|0)?g:d}j=j+1|0;d=f[t>>2]|0}while((j|0)<(d|0));if((d|0)>0){i=0;do{d=(f[l+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;g=m+(i<<2)|0;f[g>>2]=d;if((d|0)<=(f[q>>2]|0)){if((d|0)<(f[r>>2]|0)){d=(f[p>>2]|0)+d|0;z=24}}else{d=d-(f[p>>2]|0)|0;z=24}if((z|0)==24){z=0;f[g>>2]=d}i=i+1|0}while((i|0)<(f[t>>2]|0))}}h=h+1|0;if((h|0)>=(s|0))break;i=f[o>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}u=y;return 1}function Ge(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=i;j=d+8|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}rn(d|0,c+e|0,12)|0;f[d+12>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}rn(d|0,c+e|0,16)|0;j=1;return j|0}default:{j=0;return j|0}}return 0}function He(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=La,k=La,l=0;switch(b[a+24>>0]|0){case 1:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;e=a+40|0;c=Kp(mo(f[e>>2]|0,f[e+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=I;g=f[a>>2]|0;e=f[g>>2]|0;if(!((i|0)<0|((i|0)==0?c>>>0<((f[g+4>>2]|0)-e|0)>>>0:0))){i=0;return i|0}k=$(h[e+c>>0]|0);j=$(k/$(255.0));n[d>>2]=(b[a+32>>0]|0)==0?k:j;i=1;return i|0}case 2:{l=f[c>>2]|0;c=a+48|0;g=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,g|0,c|0)|0;g=Kp(c|0,I|0,2,0)|0;l=I;i=f[a>>2]|0;e=f[i>>2]|0;if((l|0)>0|((l|0)==0?g>>>0>((f[i+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;j=$((h[l>>0]|h[l+1>>0]<<8)&255);k=$(j/$(255.0));n[d>>2]=(b[a+32>>0]|0)==0?j:k;l=1;return l|0}case 3:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,3,0)|0;g=I;l=f[a>>2]|0;e=f[l>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[l+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}j=$(h[e+c>>0]|0);k=$(j/$(255.0));n[d>>2]=(b[a+32>>0]|0)==0?j:k;l=1;return l|0}case 4:{g=f[c>>2]|0;c=a+48|0;i=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,c|0)|0;i=Kp(c|0,I|0,4,0)|0;g=I;l=f[a>>2]|0;e=f[l>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[l+4>>2]|0)-e|0)>>>0:0)){l=0;return l|0}l=e+c|0;j=$((h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24)&255);k=$(j/$(255.0));n[d>>2]=(b[a+32>>0]|0)==0?j:k;l=1;return l|0}default:{l=0;return l|0}}return 0}function Ie(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)<<16>>16;f[d+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j<<16>>16;f[d+4>>2]=j>>16;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i+2|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)<<16>>16;f[d+4>>2]=j<<16>>16;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j<<16>>16;f[d+4>>2]=j>>16;j=1;return j|0}default:{j=0;return j|0}}return 0}function Je(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=a+8|0;e=f[k>>2]|0;switch(f[e+28>>2]|0){case 2:{d=b[e+24>>0]|0;j=d<<24>>24;i=as((j|0)>-1?j:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;a:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Fh(f[f[e+64>>2]>>2]|0,i|0,j|0)|0;if((c|0)==1)break;else{d=1;a=0}while(1){a=a+j|0;Fh((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+a|0,i|0,j|0)|0;d=d+1|0;if((d|0)==(c|0))break a}}while(1){d=0;g=e;while(1){b[i+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(j|0))break;else g=g+1|0}Fh((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+j|0}}while(0);bs(i);c=1;return c|0}case 1:{d=b[e+24>>0]|0;j=d<<24>>24;i=as((j|0)>-1?j:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;b:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Fh(f[f[e+64>>2]>>2]|0,i|0,j|0)|0;if((c|0)==1)break;else{d=1;a=0}while(1){a=a+j|0;Fh((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+a|0,i|0,j|0)|0;d=d+1|0;if((d|0)==(c|0))break b}}while(1){d=0;g=e;while(1){b[i+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(j|0))break;else g=g+1|0}Fh((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+j|0}}while(0);bs(i);c=1;return c|0}case 4:{Xi(a,c);c=1;return c|0}case 3:{Xi(a,c);c=1;return c|0}case 6:{Yi(a,c);c=1;return c|0}case 5:{Yi(a,c);c=1;return c|0}default:{c=0;return c|0}}return 0}function Ke(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}f[d>>2]=b[c+e>>0];i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=(j&65535)<<24>>24;f[d+4>>2]=((j&65535)>>>8&65535)<<24>>24;f[d+8>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=b[g+1>>0]|0;j=b[g+2>>0]|0;f[d>>2]=b[g>>0];f[d+4>>2]=i<<24>>24;f[d+8>>2]=j<<24>>24;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j<<24>>24;f[d+4>>2]=j<<16>>24;f[d+8>>2]=j<<8>>24;j=1;return j|0}default:{j=0;return j|0}}return 0}function Le(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;i=d;f[i>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=d;f[j>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=d;f[j>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=d;f[j>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Me(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}f[d>>2]=h[c+e>>0];i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=j&255;f[d+4>>2]=(j&65535)>>>8&65535;f[d+8>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}g=c+e|0;i=b[g+1>>0]|0;j=b[g+2>>0]|0;f[d>>2]=h[g>>0];f[d+4>>2]=i&255;f[d+8>>2]=j&255;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j&255;f[d+4>>2]=j>>>8&255;f[d+8>>2]=j>>>16&255;j=1;return j|0}default:{j=0;return j|0}}return 0}function Ne(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=i;n[d+8>>2]=$(0.0);j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}rn(d|0,c+e|0,12)|0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}rn(d|0,c+e|0,12)|0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Oe(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;i=d;f[i>>2]=(h[g>>0]|h[g+1>>0]<<8)&65535;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=d;f[j>>2]=(h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24)&65535;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=d;f[j>>2]=(h[i>>0]|h[i+1>>0]<<8)&65535;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=d;f[j>>2]=(h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24)&65535;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Pe(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;f[j+4>>2]=i;f[d+8>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}rn(d|0,c+e|0,12)|0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}rn(d|0,c+e|0,12)|0;j=1;return j|0}default:{j=0;return j|0}}return 0}function Qe(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}g=b[c+e>>0]|0;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=((h[i>>0]|h[i+1>>0]<<8)&255)<<24>>24;j=d;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=b[c+e>>0]|0;j=d;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;i=((h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24)&255)<<24>>24;j=d;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}default:{j=0;return j|0}}return 0}function Re(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=f[b>>2]|0;k=f[b+4>>2]|0;n=((f[c>>2]|0)-p<<3)+(f[c+4>>2]|0)-k|0;c=p;if((n|0)<=0){b=d+4|0;d=f[d>>2]|0;f[a>>2]=d;a=a+4|0;d=f[b>>2]|0;f[a>>2]=d;return}if(!k){l=d+4|0;e=f[l>>2]|0;g=n}else{i=32-k|0;m=(n|0)<(i|0)?n:i;i=-1>>>(i-m|0)&-1<>2];l=d+4|0;e=f[l>>2]|0;j=32-e|0;g=j>>>0>>0?j:m;h=f[d>>2]|0;e=f[h>>2]&~(-1>>>(j-g|0)&-1<>2]=e;j=f[l>>2]|0;f[h>>2]=(j>>>0>k>>>0?i<>>(k-j|0))|e;e=(f[l>>2]|0)+g|0;h=h+(e>>>5<<2)|0;f[d>>2]=h;e=e&31;f[l>>2]=e;j=m-g|0;if((j|0)>0){f[h>>2]=i>>>(k+g|0)|f[h>>2]&~(-1>>>(32-j|0));f[l>>2]=j;e=j}c=c+4|0;f[b>>2]=c;g=n-m|0}p=32-e|0;o=-1<>>0>31){n=~o;m=f[d>>2]|0;j=g+-32|0;h=j>>>5;i=h+1|0;h=j-(h<<5)|0;j=f[m>>2]|0;k=m;e=g;g=c;while(1){q=f[g>>2]|0;r=j&n;f[k>>2]=r;f[k>>2]=q<>2]|r;k=k+4|0;j=f[k>>2]&o|q>>>p;f[k>>2]=j;e=e+-32|0;if(e>>>0<=31)break;else g=g+4|0}c=c+(i<<2)|0;f[b>>2]=c;f[d>>2]=m+(i<<2)}else h=g;if(!h){q=l;r=f[d>>2]|0;f[a>>2]=r;r=a+4|0;q=f[q>>2]|0;f[r>>2]=q;return}i=f[c>>2]&-1>>>(32-h|0);g=(p|0)<(h|0)?p:h;e=f[d>>2]|0;c=f[e>>2]&~(-1<>2]&-1>>>(p-g|0));f[e>>2]=c;f[e>>2]=c|i<>2];c=(f[l>>2]|0)+g|0;e=e+(c>>>5<<2)|0;f[d>>2]=e;f[l>>2]=c&31;c=h-g|0;if((c|0)<=0){q=l;r=f[d>>2]|0;f[a>>2]=r;r=a+4|0;q=f[q>>2]|0;f[r>>2]=q;return}f[e>>2]=f[e>>2]&~(-1>>>(32-c|0))|i>>>g;f[l>>2]=c;q=l;r=f[d>>2]|0;f[a>>2]=r;r=a+4|0;q=f[q>>2]|0;f[r>>2]=q;return}function Se(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+16|0;n=p+4|0;m=p;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;q=Kp(g|0,j|0,4,0)|0;r=I;if((k|0)<(r|0)|(k|0)==(r|0)&e>>>0>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;r=Kp(g|0,j|0,4,0)|0;q=I;if((i|0)<(q|0)|(i|0)==(q|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;q=l;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=l;f[r>>2]=q;f[r+4>>2]=I}if(!e){r=1;u=p;return r|0}else e=0;do{if(!(xg(a+12+(e<<4)|0,c)|0)){e=0;o=14;break}e=e+1|0}while((e|0)<32);if((o|0)==14){u=p;return e|0}if(!(xg(a+524|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+540|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+560|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+580|0,c)|0)){r=0;u=p;return r|0}r=f[k>>2]|0;f[m>>2]=f[d>>2];f[n>>2]=f[m>>2];lb(a,r,n);r=1;u=p;return r|0}function Te(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+16|0;n=p+4|0;m=p;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;q=Kp(g|0,j|0,4,0)|0;r=I;if((k|0)<(r|0)|(k|0)==(r|0)&e>>>0>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;r=Kp(g|0,j|0,4,0)|0;q=I;if((i|0)<(q|0)|(i|0)==(q|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;q=l;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=l;f[r>>2]=q;f[r+4>>2]=I}if(!e){r=1;u=p;return r|0}else e=0;do{if(!(xg(a+12+(e<<4)|0,c)|0)){e=0;o=14;break}e=e+1|0}while((e|0)<32);if((o|0)==14){u=p;return e|0}if(!(xg(a+524|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+540|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+560|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+580|0,c)|0)){r=0;u=p;return r|0}r=f[k>>2]|0;f[m>>2]=f[d>>2];f[n>>2]=f[m>>2];pb(a,r,n);r=1;u=p;return r|0}function Ue(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+16|0;n=p+4|0;m=p;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;q=Kp(g|0,j|0,4,0)|0;r=I;if((k|0)<(r|0)|(k|0)==(r|0)&e>>>0>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;r=Kp(g|0,j|0,4,0)|0;q=I;if((i|0)<(q|0)|(i|0)==(q|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;q=l;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=l;f[r>>2]=q;f[r+4>>2]=I}if(!e){r=1;u=p;return r|0}else e=0;do{if(!(xg(a+12+(e<<4)|0,c)|0)){e=0;o=14;break}e=e+1|0}while((e|0)<32);if((o|0)==14){u=p;return e|0}if(!(xg(a+524|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+540|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+560|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+580|0,c)|0)){r=0;u=p;return r|0}r=f[k>>2]|0;f[m>>2]=f[d>>2];f[n>>2]=f[m>>2];mb(a,r,n);r=1;u=p;return r|0}function Ve(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;j=1;return j|0}default:{j=0;return j|0}}return 0}function We(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=a+32|0;c=f[h>>2]|0;o=c+8|0;n=f[o+4>>2]|0;g=c+16|0;d=g;e=f[d>>2]|0;d=f[d+4>>2]|0;if(!((n|0)>(d|0)|((n|0)==(d|0)?(f[o>>2]|0)>>>0>e>>>0:0))){a=0;return a|0}n=b[(f[c>>2]|0)+e>>0]|0;m=Kp(e|0,d|0,1,0)|0;o=g;f[o>>2]=m;f[o+4>>2]=I;o=n&255;g=n<<24>>24==0;a:do if(!g){c=0;while(1){if(!(Wa[f[(f[a>>2]|0)+16>>2]&127](a,c)|0)){c=0;break}c=c+1|0;if((c|0)>=(o|0))break a}return c|0}while(0);n=a+8|0;c=f[n>>2]|0;d=f[a+12>>2]|0;b:do if((c|0)!=(d|0)){e=a+4|0;while(1){m=f[c>>2]|0;c=c+4|0;if(!(Na[f[(f[m>>2]|0)+8>>2]&31](m,a,f[e>>2]|0)|0)){c=0;break}if((c|0)==(d|0))break b}return c|0}while(0);if(!g){c=0;do{m=f[(f[n>>2]|0)+(c<<2)>>2]|0;c=c+1|0;if(!(Wa[f[(f[m>>2]|0)+12>>2]&127](m,f[h>>2]|0)|0)){c=0;i=26;break}}while((c|0)<(o|0));if((i|0)==26)return c|0;if(!g){i=a+20|0;h=a+24|0;l=0;do{j=f[(f[n>>2]|0)+(l<<2)>>2]|0;j=Sa[f[(f[j>>2]|0)+24>>2]&255](j)|0;if((j|0)>0){m=0;do{k=f[(f[n>>2]|0)+(l<<2)>>2]|0;k=Wa[f[(f[k>>2]|0)+20>>2]&127](k,m)|0;d=f[h>>2]|0;c=f[i>>2]|0;g=d-c>>2;do if(k>>>0>=g>>>0){e=k+1|0;if(e>>>0>g>>>0){mj(i,e-g|0);c=f[i>>2]|0;break}if(e>>>0>>0?(p=c+(e<<2)|0,(d|0)!=(p|0)):0)f[h>>2]=d+(~((d+-4-p|0)>>>2)<<2)}while(0);f[c+(k<<2)>>2]=l;m=m+1|0}while((m|0)!=(j|0))}l=l+1|0}while((l|0)!=(o|0))}}if(!(Sa[f[(f[a>>2]|0)+28>>2]&255](a)|0)){a=0;return a|0}a=Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0;return a|0}function Xe(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;g=q;do if((j[c+38>>1]|0)<512){i=c+8|0;d=f[i>>2]|0;i=f[i+4>>2]|0;o=c+16|0;k=o;e=f[k>>2]|0;k=Kp(e|0,f[k+4>>2]|0,8,0)|0;l=I;if((i|0)<(l|0)|(i|0)==(l|0)&d>>>0>>0){a=0;u=q;return a|0}else{m=(f[c>>2]|0)+e|0;n=m;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;e=g;f[e>>2]=n;f[e+4>>2]=m;e=o;f[e>>2]=k;f[e+4>>2]=l;e=o;break}}else if(Oj(g,c)|0){n=g;i=c+8|0;e=c+16|0;l=e;d=f[i>>2]|0;i=f[i+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=f[n+4>>2]|0;n=f[n>>2]|0;break}else{a=0;u=q;return a|0}while(0);o=_o(d|0,i|0,k|0,l|0)|0;i=I;if(m>>>0>i>>>0|(m|0)==(i|0)&n>>>0>o>>>0){a=0;u=q;return a|0}g=(f[c>>2]|0)+k|0;o=Kp(k|0,l|0,n|0,m|0)|0;c=e;f[c>>2]=o;f[c+4>>2]=I;if((n|0)<1){a=0;u=q;return a|0}f[a+40>>2]=g;e=n+-1|0;d=g+e|0;a:do switch((h[d>>0]|0)>>>6&3){case 0:{f[a+44>>2]=e;p=b[d>>0]&63;break}case 1:if((n|0)<2){a=0;u=q;return a|0}else{f[a+44>>2]=n+-2;p=g+n+-2|0;p=(h[p+1>>0]|0)<<8&16128|(h[p>>0]|0);break a}case 2:if((n|0)<3){a=0;u=q;return a|0}else{f[a+44>>2]=n+-3;p=g+n+-3|0;p=(h[p+1>>0]|0)<<8|(h[p>>0]|0)|(h[p+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=n+-4;p=g+n+-4|0;p=(h[p+2>>0]|0)<<16|(h[p+3>>0]|0)<<24&1056964608|(h[p+1>>0]|0)<<8|(h[p>>0]|0);break}default:{}}while(0);p=p+4194304|0;f[a+48>>2]=p;a=p>>>0<1073741824;u=q;return a|0}function Ye(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;g=q;do if((j[c+38>>1]|0)<512){i=c+8|0;d=f[i>>2]|0;i=f[i+4>>2]|0;o=c+16|0;k=o;e=f[k>>2]|0;k=Kp(e|0,f[k+4>>2]|0,8,0)|0;l=I;if((i|0)<(l|0)|(i|0)==(l|0)&d>>>0>>0){a=0;u=q;return a|0}else{m=(f[c>>2]|0)+e|0;n=m;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;e=g;f[e>>2]=n;f[e+4>>2]=m;e=o;f[e>>2]=k;f[e+4>>2]=l;e=o;break}}else if(Oj(g,c)|0){n=g;i=c+8|0;e=c+16|0;l=e;d=f[i>>2]|0;i=f[i+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=f[n+4>>2]|0;n=f[n>>2]|0;break}else{a=0;u=q;return a|0}while(0);o=_o(d|0,i|0,k|0,l|0)|0;i=I;if(m>>>0>i>>>0|(m|0)==(i|0)&n>>>0>o>>>0){a=0;u=q;return a|0}g=(f[c>>2]|0)+k|0;o=Kp(k|0,l|0,n|0,m|0)|0;c=e;f[c>>2]=o;f[c+4>>2]=I;if((n|0)<1){a=0;u=q;return a|0}f[a+40>>2]=g;e=n+-1|0;d=g+e|0;a:do switch((h[d>>0]|0)>>>6&3){case 0:{f[a+44>>2]=e;p=b[d>>0]&63;break}case 1:if((n|0)<2){a=0;u=q;return a|0}else{f[a+44>>2]=n+-2;p=g+n+-2|0;p=(h[p+1>>0]|0)<<8&16128|(h[p>>0]|0);break a}case 2:if((n|0)<3){a=0;u=q;return a|0}else{f[a+44>>2]=n+-3;p=g+n+-3|0;p=(h[p+1>>0]|0)<<8|(h[p>>0]|0)|(h[p+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=n+-4;p=g+n+-4|0;p=(h[p+2>>0]|0)<<16|(h[p+3>>0]|0)<<24&1056964608|(h[p+1>>0]|0)<<8|(h[p>>0]|0);break}default:{}}while(0);p=p+2097152|0;f[a+48>>2]=p;a=p>>>0<536870912;u=q;return a|0}function Ze(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;g=q;do if((j[c+38>>1]|0)<512){i=c+8|0;d=f[i>>2]|0;i=f[i+4>>2]|0;o=c+16|0;k=o;e=f[k>>2]|0;k=Kp(e|0,f[k+4>>2]|0,8,0)|0;l=I;if((i|0)<(l|0)|(i|0)==(l|0)&d>>>0>>0){a=0;u=q;return a|0}else{m=(f[c>>2]|0)+e|0;n=m;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;e=g;f[e>>2]=n;f[e+4>>2]=m;e=o;f[e>>2]=k;f[e+4>>2]=l;e=o;break}}else if(Oj(g,c)|0){n=g;i=c+8|0;e=c+16|0;l=e;d=f[i>>2]|0;i=f[i+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=f[n+4>>2]|0;n=f[n>>2]|0;break}else{a=0;u=q;return a|0}while(0);o=_o(d|0,i|0,k|0,l|0)|0;i=I;if(m>>>0>i>>>0|(m|0)==(i|0)&n>>>0>o>>>0){a=0;u=q;return a|0}g=(f[c>>2]|0)+k|0;o=Kp(k|0,l|0,n|0,m|0)|0;c=e;f[c>>2]=o;f[c+4>>2]=I;if((n|0)<1){a=0;u=q;return a|0}f[a+40>>2]=g;e=n+-1|0;d=g+e|0;a:do switch((h[d>>0]|0)>>>6&3){case 0:{f[a+44>>2]=e;p=b[d>>0]&63;break}case 1:if((n|0)<2){a=0;u=q;return a|0}else{f[a+44>>2]=n+-2;p=g+n+-2|0;p=(h[p+1>>0]|0)<<8&16128|(h[p>>0]|0);break a}case 2:if((n|0)<3){a=0;u=q;return a|0}else{f[a+44>>2]=n+-3;p=g+n+-3|0;p=(h[p+1>>0]|0)<<8|(h[p>>0]|0)|(h[p+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=n+-4;p=g+n+-4|0;p=(h[p+2>>0]|0)<<16|(h[p+3>>0]|0)<<24&1056964608|(h[p+1>>0]|0)<<8|(h[p>>0]|0);break}default:{}}while(0);p=p+1048576|0;f[a+48>>2]=p;a=p>>>0<268435456;u=q;return a|0}function _e(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;g=q;do if((j[c+38>>1]|0)<512){i=c+8|0;d=f[i>>2]|0;i=f[i+4>>2]|0;o=c+16|0;k=o;e=f[k>>2]|0;k=Kp(e|0,f[k+4>>2]|0,8,0)|0;l=I;if((i|0)<(l|0)|(i|0)==(l|0)&d>>>0>>0){a=0;u=q;return a|0}else{m=(f[c>>2]|0)+e|0;n=m;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;e=g;f[e>>2]=n;f[e+4>>2]=m;e=o;f[e>>2]=k;f[e+4>>2]=l;e=o;break}}else if(Oj(g,c)|0){n=g;i=c+8|0;e=c+16|0;l=e;d=f[i>>2]|0;i=f[i+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=f[n+4>>2]|0;n=f[n>>2]|0;break}else{a=0;u=q;return a|0}while(0);o=_o(d|0,i|0,k|0,l|0)|0;i=I;if(m>>>0>i>>>0|(m|0)==(i|0)&n>>>0>o>>>0){a=0;u=q;return a|0}g=(f[c>>2]|0)+k|0;o=Kp(k|0,l|0,n|0,m|0)|0;c=e;f[c>>2]=o;f[c+4>>2]=I;if((n|0)<1){a=0;u=q;return a|0}f[a+40>>2]=g;e=n+-1|0;d=g+e|0;a:do switch((h[d>>0]|0)>>>6&3){case 0:{f[a+44>>2]=e;p=b[d>>0]&63;break}case 1:if((n|0)<2){a=0;u=q;return a|0}else{f[a+44>>2]=n+-2;p=g+n+-2|0;p=(h[p+1>>0]|0)<<8&16128|(h[p>>0]|0);break a}case 2:if((n|0)<3){a=0;u=q;return a|0}else{f[a+44>>2]=n+-3;p=g+n+-3|0;p=(h[p+1>>0]|0)<<8|(h[p>>0]|0)|(h[p+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=n+-4;p=g+n+-4|0;p=(h[p+2>>0]|0)<<16|(h[p+3>>0]|0)<<24&1056964608|(h[p+1>>0]|0)<<8|(h[p>>0]|0);break}default:{}}while(0);p=p+262144|0;f[a+48>>2]=p;a=p>>>0<67108864;u=q;return a|0}function $e(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;g=q;do if((j[c+38>>1]|0)<512){i=c+8|0;d=f[i>>2]|0;i=f[i+4>>2]|0;o=c+16|0;k=o;e=f[k>>2]|0;k=Kp(e|0,f[k+4>>2]|0,8,0)|0;l=I;if((i|0)<(l|0)|(i|0)==(l|0)&d>>>0>>0){a=0;u=q;return a|0}else{m=(f[c>>2]|0)+e|0;n=m;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;e=g;f[e>>2]=n;f[e+4>>2]=m;e=o;f[e>>2]=k;f[e+4>>2]=l;e=o;break}}else if(Oj(g,c)|0){n=g;i=c+8|0;e=c+16|0;l=e;d=f[i>>2]|0;i=f[i+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=f[n+4>>2]|0;n=f[n>>2]|0;break}else{a=0;u=q;return a|0}while(0);o=_o(d|0,i|0,k|0,l|0)|0;i=I;if(m>>>0>i>>>0|(m|0)==(i|0)&n>>>0>o>>>0){a=0;u=q;return a|0}g=(f[c>>2]|0)+k|0;o=Kp(k|0,l|0,n|0,m|0)|0;c=e;f[c>>2]=o;f[c+4>>2]=I;if((n|0)<1){a=0;u=q;return a|0}f[a+40>>2]=g;e=n+-1|0;d=g+e|0;a:do switch((h[d>>0]|0)>>>6&3){case 0:{f[a+44>>2]=e;p=b[d>>0]&63;break}case 1:if((n|0)<2){a=0;u=q;return a|0}else{f[a+44>>2]=n+-2;p=g+n+-2|0;p=(h[p+1>>0]|0)<<8&16128|(h[p>>0]|0);break a}case 2:if((n|0)<3){a=0;u=q;return a|0}else{f[a+44>>2]=n+-3;p=g+n+-3|0;p=(h[p+1>>0]|0)<<8|(h[p>>0]|0)|(h[p+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=n+-4;p=g+n+-4|0;p=(h[p+2>>0]|0)<<16|(h[p+3>>0]|0)<<24&1056964608|(h[p+1>>0]|0)<<8|(h[p>>0]|0);break}default:{}}while(0);p=p+131072|0;f[a+48>>2]=p;a=p>>>0<33554432;u=q;return a|0}function af(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;g=q;do if((j[c+38>>1]|0)<512){i=c+8|0;d=f[i>>2]|0;i=f[i+4>>2]|0;o=c+16|0;k=o;e=f[k>>2]|0;k=Kp(e|0,f[k+4>>2]|0,8,0)|0;l=I;if((i|0)<(l|0)|(i|0)==(l|0)&d>>>0>>0){a=0;u=q;return a|0}else{m=(f[c>>2]|0)+e|0;n=m;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;e=g;f[e>>2]=n;f[e+4>>2]=m;e=o;f[e>>2]=k;f[e+4>>2]=l;e=o;break}}else if(Oj(g,c)|0){n=g;i=c+8|0;e=c+16|0;l=e;d=f[i>>2]|0;i=f[i+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=f[n+4>>2]|0;n=f[n>>2]|0;break}else{a=0;u=q;return a|0}while(0);o=_o(d|0,i|0,k|0,l|0)|0;i=I;if(m>>>0>i>>>0|(m|0)==(i|0)&n>>>0>o>>>0){a=0;u=q;return a|0}g=(f[c>>2]|0)+k|0;o=Kp(k|0,l|0,n|0,m|0)|0;c=e;f[c>>2]=o;f[c+4>>2]=I;if((n|0)<1){a=0;u=q;return a|0}f[a+40>>2]=g;e=n+-1|0;d=g+e|0;a:do switch((h[d>>0]|0)>>>6&3){case 0:{f[a+44>>2]=e;p=b[d>>0]&63;break}case 1:if((n|0)<2){a=0;u=q;return a|0}else{f[a+44>>2]=n+-2;p=g+n+-2|0;p=(h[p+1>>0]|0)<<8&16128|(h[p>>0]|0);break a}case 2:if((n|0)<3){a=0;u=q;return a|0}else{f[a+44>>2]=n+-3;p=g+n+-3|0;p=(h[p+1>>0]|0)<<8|(h[p>>0]|0)|(h[p+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=n+-4;p=g+n+-4|0;p=(h[p+2>>0]|0)<<16|(h[p+3>>0]|0)<<24&1056964608|(h[p+1>>0]|0)<<8|(h[p>>0]|0);break}default:{}}while(0);p=p+32768|0;f[a+48>>2]=p;a=p>>>0<8388608;u=q;return a|0}function bf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+16|0;g=q;do if((j[c+38>>1]|0)<512){i=c+8|0;d=f[i>>2]|0;i=f[i+4>>2]|0;o=c+16|0;k=o;e=f[k>>2]|0;k=Kp(e|0,f[k+4>>2]|0,8,0)|0;l=I;if((i|0)<(l|0)|(i|0)==(l|0)&d>>>0>>0){a=0;u=q;return a|0}else{m=(f[c>>2]|0)+e|0;n=m;n=h[n>>0]|h[n+1>>0]<<8|h[n+2>>0]<<16|h[n+3>>0]<<24;m=m+4|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;e=g;f[e>>2]=n;f[e+4>>2]=m;e=o;f[e>>2]=k;f[e+4>>2]=l;e=o;break}}else if(Oj(g,c)|0){n=g;i=c+8|0;e=c+16|0;l=e;d=f[i>>2]|0;i=f[i+4>>2]|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=f[n+4>>2]|0;n=f[n>>2]|0;break}else{a=0;u=q;return a|0}while(0);o=_o(d|0,i|0,k|0,l|0)|0;i=I;if(m>>>0>i>>>0|(m|0)==(i|0)&n>>>0>o>>>0){a=0;u=q;return a|0}g=(f[c>>2]|0)+k|0;o=Kp(k|0,l|0,n|0,m|0)|0;c=e;f[c>>2]=o;f[c+4>>2]=I;if((n|0)<1){a=0;u=q;return a|0}f[a+40>>2]=g;e=n+-1|0;d=g+e|0;a:do switch((h[d>>0]|0)>>>6&3){case 0:{f[a+44>>2]=e;p=b[d>>0]&63;break}case 1:if((n|0)<2){a=0;u=q;return a|0}else{f[a+44>>2]=n+-2;p=g+n+-2|0;p=(h[p+1>>0]|0)<<8&16128|(h[p>>0]|0);break a}case 2:if((n|0)<3){a=0;u=q;return a|0}else{f[a+44>>2]=n+-3;p=g+n+-3|0;p=(h[p+1>>0]|0)<<8|(h[p>>0]|0)|(h[p+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=n+-4;p=g+n+-4|0;p=(h[p+2>>0]|0)<<16|(h[p+3>>0]|0)<<24&1056964608|(h[p+1>>0]|0)<<8|(h[p>>0]|0);break}default:{}}while(0);p=p+16384|0;f[a+48>>2]=p;a=p>>>0<4194304;u=q;return a|0}function cf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}f[d>>2]=b[c+e>>0];f[d+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=(j&65535)<<24>>24;f[d+4>>2]=((j&65535)>>>8&65535)<<24>>24;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=b[i+1>>0]|0;f[d>>2]=b[i>>0];f[d+4>>2]=j<<24>>24;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j<<24>>24;f[d+4>>2]=j<<16>>24;j=1;return j|0}default:{j=0;return j|0}}return 0}function df(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;x=u;u=u+16|0;v=x+4|0;t=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else mj(i,e-j|0);n=a+56|0;i=f[n>>2]|0;g=f[i+4>>2]|0;d=f[i>>2]|0;q=g-d|0;r=q>>2;if((q|0)<=0){u=x;return 1}p=a+16|0;m=a+32|0;q=a+12|0;o=a+20|0;h=0;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}f[t>>2]=f[d+(h<<2)>>2];f[v>>2]=f[t>>2];Ob(w,v,c,h);l=X(h,e)|0;k=b+(l<<2)|0;l=c+(l<<2)|0;if((f[s>>2]|0)>0){i=0;do{d=f[a+68+(i<<2)>>2]|0;g=f[p>>2]|0;if((d|0)>(g|0)){j=f[m>>2]|0;f[j+(i<<2)>>2]=g}else{g=f[q>>2]|0;j=f[m>>2]|0;f[j+(i<<2)>>2]=(d|0)<(g|0)?g:d}i=i+1|0;d=f[s>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[k+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;g=l+(i<<2)|0;f[g>>2]=d;if((d|0)<=(f[p>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[o>>2]|0)+d|0;y=22}}else{d=d-(f[o>>2]|0)|0;y=22}if((y|0)==22){y=0;f[g>>2]=d}i=i+1|0}while((i|0)<(f[s>>2]|0))}}h=h+1|0;if((h|0)>=(r|0))break;i=f[n>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}u=x;return 1}function ef(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+16|0;n=p+8|0;m=p;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;q=Kp(g|0,j|0,4,0)|0;r=I;if((k|0)<(r|0)|(k|0)==(r|0)&e>>>0>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;r=Kp(g|0,j|0,4,0)|0;q=I;if((i|0)<(q|0)|(i|0)==(q|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;q=l;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=l;f[r>>2]=q;f[r+4>>2]=I}if(!e){r=1;u=p;return r|0}else e=0;do{if(!(xg(a+12+(e<<4)|0,c)|0)){e=0;o=14;break}e=e+1|0}while((e|0)<32);if((o|0)==14){u=p;return e|0}if(!(xg(a+524|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+540|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+560|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+580|0,c)|0)){r=0;u=p;return r|0}r=f[k>>2]|0;o=f[d+4>>2]|0;q=m;f[q>>2]=f[d>>2];f[q+4>>2]=o;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];jb(a,r,n);r=1;u=p;return r|0}function ff(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+16|0;n=p+8|0;m=p;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;q=Kp(g|0,j|0,4,0)|0;r=I;if((k|0)<(r|0)|(k|0)==(r|0)&e>>>0>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;r=Kp(g|0,j|0,4,0)|0;q=I;if((i|0)<(q|0)|(i|0)==(q|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;q=l;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=l;f[r>>2]=q;f[r+4>>2]=I}if(!e){r=1;u=p;return r|0}else e=0;do{if(!(xg(a+12+(e<<4)|0,c)|0)){e=0;o=14;break}e=e+1|0}while((e|0)<32);if((o|0)==14){u=p;return e|0}if(!(xg(a+524|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+540|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+560|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+580|0,c)|0)){r=0;u=p;return r|0}r=f[k>>2]|0;o=f[d+4>>2]|0;q=m;f[q>>2]=f[d>>2];f[q+4>>2]=o;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];nb(a,r,n);r=1;u=p;return r|0}function gf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=u;u=u+16|0;n=p+8|0;m=p;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;q=Kp(g|0,j|0,4,0)|0;r=I;if((k|0)<(r|0)|(k|0)==(r|0)&e>>>0>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;r=Kp(g|0,j|0,4,0)|0;q=I;if((i|0)<(q|0)|(i|0)==(q|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;q=l;q=Kp(f[q>>2]|0,f[q+4>>2]|0,4,0)|0;r=l;f[r>>2]=q;f[r+4>>2]=I}if(!e){r=1;u=p;return r|0}else e=0;do{if(!(xg(a+12+(e<<4)|0,c)|0)){e=0;o=14;break}e=e+1|0}while((e|0)<32);if((o|0)==14){u=p;return e|0}if(!(xg(a+524|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+540|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+560|0,c)|0)){r=0;u=p;return r|0}if(!(Ig(a+580|0,c)|0)){r=0;u=p;return r|0}r=f[k>>2]|0;o=f[d+4>>2]|0;q=m;f[q>>2]=f[d>>2];f[q+4>>2]=o;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];kb(a,r,n);r=1;u=p;return r|0}function hf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=f[b>>2]|0;k=b+4|0;e=f[k>>2]|0;h=((f[c>>2]|0)-m<<3)+(f[c+4>>2]|0)-e|0;c=m;if((h|0)<=0){b=d+4|0;d=f[d>>2]|0;f[a>>2]=d;a=a+4|0;d=f[b>>2]|0;f[a>>2]=d;return}if(!e){l=d+4|0;e=f[l>>2]|0}else{i=32-e|0;m=(h|0)<(i|0)?h:i;i=-1>>>(i-m|0)&-1<>2];l=d+4|0;c=f[l>>2]|0;j=32-c|0;e=j>>>0>>0?j:m;g=f[d>>2]|0;c=f[g>>2]&~(-1>>>(j-e|0)&-1<>2]=c;j=f[l>>2]|0;n=f[k>>2]|0;f[g>>2]=(j>>>0>n>>>0?i<>>(n-j|0))|c;c=(f[l>>2]|0)+e|0;g=g+(c>>>5<<2)|0;f[d>>2]=g;c=c&31;f[l>>2]=c;j=m-e|0;if((j|0)>0){c=f[g>>2]&~(-1>>>(32-j|0));f[g>>2]=c;f[g>>2]=i>>>((f[k>>2]|0)+e|0)|c;f[l>>2]=j;c=j}n=(f[b>>2]|0)+4|0;f[b>>2]=n;e=c;c=n;h=h-m|0}j=32-e|0;i=-1<>>0>31){g=~i;e=h;do{m=f[c>>2]|0;n=f[d>>2]|0;k=f[n>>2]&g;f[n>>2]=k;f[n>>2]=m<>2]|k;n=n+4|0;f[d>>2]=n;f[n>>2]=f[n>>2]&i|m>>>j;e=e+-32|0;c=(f[b>>2]|0)+4|0;f[b>>2]=c}while(e>>>0>31);h=h&31}if(!h){b=l;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;a=f[b>>2]|0;f[n>>2]=a;return}i=f[c>>2]&-1>>>(32-h|0);g=(j|0)<(h|0)?j:h;e=f[d>>2]|0;c=f[e>>2]&~(-1<>2]&-1>>>(j-g|0));f[e>>2]=c;f[e>>2]=c|i<>2];c=(f[l>>2]|0)+g|0;e=e+(c>>>5<<2)|0;f[d>>2]=e;f[l>>2]=c&31;c=h-g|0;if((c|0)<=0){b=l;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;a=f[b>>2]|0;f[n>>2]=a;return}f[e>>2]=f[e>>2]&~(-1>>>(32-c|0))|i>>>g;f[l>>2]=c;b=l;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;a=f[b>>2]|0;f[n>>2]=a;return}function jf(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4792;fi(a+240|0);wj(a+224|0);b=f[a+208>>2]|0;if(b|0){d=a+212|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+196>>2]|0;if(b|0){d=a+200|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+184>>2]|0;if(b|0){d=a+188|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+172>>2]|0;if(b|0){d=a+176|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+156>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;ds(d)}while((b|0)!=0);d=a+148|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)ds(b);b=f[a+132>>2]|0;if(b|0)ds(b);b=f[a+120>>2]|0;if(b|0)ds(b);b=f[a+108>>2]|0;if(b|0)ds(b);b=f[a+84>>2]|0;if(b|0){d=a+88|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+72>>2]|0;if(b|0){d=a+76|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+60>>2]|0;if(b|0)ds(b);b=f[a+48>>2]|0;if(b|0){d=a+52|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+36>>2]|0;if(b|0){d=a+40|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);ds(b)}b=f[a+24>>2]|0;if(b|0){d=a+28|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+12>>2]|0;if(b|0){d=a+16|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}a=a+8|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;mk(b);ds(b);return}function kf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;x=u;u=u+16|0;v=x+4|0;t=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else mj(i,e-j|0);n=a+56|0;i=f[n>>2]|0;g=f[i+4>>2]|0;d=f[i>>2]|0;q=g-d|0;r=q>>2;if((q|0)<=0){u=x;return 1}p=a+16|0;m=a+32|0;q=a+12|0;o=a+20|0;h=0;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}f[t>>2]=f[d+(h<<2)>>2];f[v>>2]=f[t>>2];Mb(w,v,c,h);l=X(h,e)|0;k=b+(l<<2)|0;l=c+(l<<2)|0;if((f[s>>2]|0)>0){i=0;do{d=f[a+68+(i<<2)>>2]|0;g=f[p>>2]|0;if((d|0)>(g|0)){j=f[m>>2]|0;f[j+(i<<2)>>2]=g}else{g=f[q>>2]|0;j=f[m>>2]|0;f[j+(i<<2)>>2]=(d|0)<(g|0)?g:d}i=i+1|0;d=f[s>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[k+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;g=l+(i<<2)|0;f[g>>2]=d;if((d|0)<=(f[p>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[o>>2]|0)+d|0;y=22}}else{d=d-(f[o>>2]|0)|0;y=22}if((y|0)==22){y=0;f[g>>2]=d}i=i+1|0}while((i|0)<(f[s>>2]|0))}}h=h+1|0;if((h|0)>=(r|0))break;i=f[n>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}u=x;return 1}function lf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)<<16>>16;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)<<16>>16;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=(h[j>>0]|h[j+1>>0]<<8)<<16>>16;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)<<16>>16;j=1;return j|0}default:{j=0;return j|0}}return 0}function mf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}f[d>>2]=h[c+e>>0];f[d+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8;f[d>>2]=j&255;f[d+4>>2]=(j&65535)>>>8&65535;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=b[i+1>>0]|0;f[d>>2]=h[i>>0];f[d+4>>2]=j&255;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;f[d>>2]=j&255;f[d+4>>2]=j>>>8&255;j=1;return j|0}default:{j=0;return j|0}}return 0} -function zb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=u;u=u+64|0;J=K+16|0;H=K;d=J;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[H>>2]=0;if(!e){d=0;g=0}else{Xh(J,e,H);d=f[J+12>>2]|0;g=f[J+16>>2]|0}f[H>>2]=0;h=J+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(j=d+(e<<2)|0,(g|0)!=(j|0)):0)f[h>>2]=g+(~((g+-4-j|0)>>>2)<<2)}else Xh(J+12|0,e-i|0,H);i=J+24|0;f[H>>2]=0;h=J+28|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else Xh(i,e-j|0,H);i=J+36|0;f[H>>2]=0;h=J+40|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else Xh(i,e-j|0,H);C=a+8|0;$i(C,f[J>>2]|0,b,c);v=f[a+32>>2]|0;t=f[a+36>>2]|0;D=no(16)|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;xl(H,e);A=a+40|0;h=f[A>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;z=g-d|0;B=z>>2;a:do if((z|0)>4){z=v+64|0;x=v+28|0;y=(e|0)>0;w=e<<2;i=h;h=1;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}o=f[d+(h<<2)>>2]|0;r=o+((o|0)<0?0:((o>>>0)%3|0|0)==0?2:-1)|0;q=r>>>5;s=1<<(r&31);p=(r|0)<0;g=o;n=1;d=0;b:while(1){do{if((g|0)<=-1){o=42;break b}i=f[J+(d*12|0)>>2]|0;if(((f[(f[v>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)|0)==0?(I=f[(f[(f[z>>2]|0)+12>>2]|0)+(g<<2)>>2]|0,(I|0)>=0):0)?(G=f[x>>2]|0,m=f[t>>2]|0,E=f[m+(f[G+(I<<2)>>2]<<2)>>2]|0,F=I+1|0,F=f[m+(f[G+((((F|0)%3|0|0)==0?I+-2|0:F)<<2)>>2]<<2)>>2]|0,G=f[m+(f[G+((((I>>>0)%3|0|0)==0?2:-1)+I<<2)>>2]<<2)>>2]|0,(E|0)<(h|0)&(F|0)<(h|0)&(G|0)<(h|0)):0){k=X(E,e)|0;l=X(F,e)|0;m=X(G,e)|0;if(y){j=0;do{f[i+(j<<2)>>2]=(f[c+(j+m<<2)>>2]|0)+(f[c+(j+l<<2)>>2]|0)-(f[c+(j+k<<2)>>2]|0);j=j+1|0}while((j|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;o=23;break b}}do if(n){i=g+1|0;g=((i|0)%3|0|0)==0?g+-2|0:i;i=f[v>>2]|0;if(!(f[i+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[z>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;j=g+1|0;if((g|0)>=0)g=((j|0)%3|0|0)==0?g+-2|0:j}}else g=-1073741824}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;i=f[v>>2]|0;if(!(f[i+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[z>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}else g=-1073741824}while(0);if((g|0)==(o|0)){o=42;break b}}while(!(n&(g|0)<0));g=(s&f[i+(q<<2)>>2]|0)!=0;if(g|p){g=g?-1073741824:r;n=0;continue}g=f[(f[(f[z>>2]|0)+12>>2]|0)+(r<<2)>>2]|0;if((g|0)<0){n=0;continue}if(!((g>>>0)%3|0)){g=g+2|0;n=0;continue}else{g=g+-1|0;n=0;continue}}if((o|0)==42)if((d|0)>0)o=23;else{d=X(h,e)|0;o=54}if((o|0)==23){o=0;if(y){_j(f[H>>2]|0,0,w|0)|0;k=d+-1|0;m=D+(k<<2)|0;k=f[a+44+(k*12|0)>>2]|0;l=f[H>>2]|0;n=0;j=0;do{s=f[m>>2]|0;f[m>>2]=s+1;if(!(f[k+(s>>>5<<2)>>2]&1<<(s&31))){g=f[J+(n*12|0)>>2]|0;i=0;do{s=l+(i<<2)|0;f[s>>2]=(f[s>>2]|0)+(f[g+(i<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0));j=j+1|0}n=n+1|0}while((n|0)!=(d|0))}else{g=d+-1|0;k=D+(g<<2)|0;g=f[a+44+(g*12|0)>>2]|0;i=f[k>>2]|0;l=0;j=0;do{s=i;i=i+1|0;f[k>>2]=i;j=j+((f[g+(s>>>5<<2)>>2]&1<<(s&31)|0)==0&1)|0;l=l+1|0}while((l|0)!=(d|0))}d=X(h,e)|0;if(!j)o=54;else{g=f[H>>2]|0;if(y){i=0;do{s=g+(i<<2)|0;f[s>>2]=(f[s>>2]|0)/(j|0)|0;i=i+1|0}while((i|0)!=(e|0))}$i(C,g,b+(d<<2)|0,c+(d<<2)|0)}}if((o|0)==54)$i(C,c+((X(h+-1|0,e)|0)<<2)|0,b+(d<<2)|0,c+(d<<2)|0);h=h+1|0;if((h|0)>=(B|0)){d=H;break a}i=f[A>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}}else d=H;while(0);h=f[d>>2]|0;if(h|0){g=H+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h)}ds(D);d=f[J+36>>2]|0;if(d|0){h=J+40|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[J+24>>2]|0;if(d|0){h=J+28|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[J+12>>2]|0;if(d|0){h=J+16|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}h=f[J>>2]|0;if(!h){u=K;return 1}g=J+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h);u=K;return 1}function Ab(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=u;u=u+64|0;J=K+16|0;H=K;d=J;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[H>>2]=0;if(!e){d=0;g=0}else{Xh(J,e,H);d=f[J+12>>2]|0;g=f[J+16>>2]|0}f[H>>2]=0;h=J+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(j=d+(e<<2)|0,(g|0)!=(j|0)):0)f[h>>2]=g+(~((g+-4-j|0)>>>2)<<2)}else Xh(J+12|0,e-i|0,H);i=J+24|0;f[H>>2]=0;h=J+28|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else Xh(i,e-j|0,H);i=J+36|0;f[H>>2]=0;h=J+40|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else Xh(i,e-j|0,H);C=a+8|0;dj(C,f[J>>2]|0,b,c);v=f[a+32>>2]|0;t=f[a+36>>2]|0;D=no(16)|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;xl(H,e);A=a+40|0;h=f[A>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;z=g-d|0;B=z>>2;a:do if((z|0)>4){z=v+64|0;x=v+28|0;y=(e|0)>0;w=e<<2;i=h;h=1;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}o=f[d+(h<<2)>>2]|0;r=o+((o|0)<0?0:((o>>>0)%3|0|0)==0?2:-1)|0;q=r>>>5;s=1<<(r&31);p=(r|0)<0;g=o;n=1;d=0;b:while(1){do{if((g|0)<=-1){o=42;break b}i=f[J+(d*12|0)>>2]|0;if(((f[(f[v>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)|0)==0?(I=f[(f[(f[z>>2]|0)+12>>2]|0)+(g<<2)>>2]|0,(I|0)>=0):0)?(G=f[x>>2]|0,m=f[t>>2]|0,E=f[m+(f[G+(I<<2)>>2]<<2)>>2]|0,F=I+1|0,F=f[m+(f[G+((((F|0)%3|0|0)==0?I+-2|0:F)<<2)>>2]<<2)>>2]|0,G=f[m+(f[G+((((I>>>0)%3|0|0)==0?2:-1)+I<<2)>>2]<<2)>>2]|0,(E|0)<(h|0)&(F|0)<(h|0)&(G|0)<(h|0)):0){k=X(E,e)|0;l=X(F,e)|0;m=X(G,e)|0;if(y){j=0;do{f[i+(j<<2)>>2]=(f[c+(j+m<<2)>>2]|0)+(f[c+(j+l<<2)>>2]|0)-(f[c+(j+k<<2)>>2]|0);j=j+1|0}while((j|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;o=23;break b}}do if(n){i=g+1|0;g=((i|0)%3|0|0)==0?g+-2|0:i;i=f[v>>2]|0;if(!(f[i+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[z>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;j=g+1|0;if((g|0)>=0)g=((j|0)%3|0|0)==0?g+-2|0:j}}else g=-1073741824}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;i=f[v>>2]|0;if(!(f[i+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[z>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}else g=-1073741824}while(0);if((g|0)==(o|0)){o=42;break b}}while(!(n&(g|0)<0));g=(s&f[i+(q<<2)>>2]|0)!=0;if(g|p){g=g?-1073741824:r;n=0;continue}g=f[(f[(f[z>>2]|0)+12>>2]|0)+(r<<2)>>2]|0;if((g|0)<0){n=0;continue}if(!((g>>>0)%3|0)){g=g+2|0;n=0;continue}else{g=g+-1|0;n=0;continue}}if((o|0)==42)if((d|0)>0)o=23;else{d=X(h,e)|0;o=54}if((o|0)==23){o=0;if(y){_j(f[H>>2]|0,0,w|0)|0;k=d+-1|0;m=D+(k<<2)|0;k=f[a+44+(k*12|0)>>2]|0;l=f[H>>2]|0;n=0;j=0;do{s=f[m>>2]|0;f[m>>2]=s+1;if(!(f[k+(s>>>5<<2)>>2]&1<<(s&31))){g=f[J+(n*12|0)>>2]|0;i=0;do{s=l+(i<<2)|0;f[s>>2]=(f[s>>2]|0)+(f[g+(i<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0));j=j+1|0}n=n+1|0}while((n|0)!=(d|0))}else{g=d+-1|0;k=D+(g<<2)|0;g=f[a+44+(g*12|0)>>2]|0;i=f[k>>2]|0;l=0;j=0;do{s=i;i=i+1|0;f[k>>2]=i;j=j+((f[g+(s>>>5<<2)>>2]&1<<(s&31)|0)==0&1)|0;l=l+1|0}while((l|0)!=(d|0))}d=X(h,e)|0;if(!j)o=54;else{g=f[H>>2]|0;if(y){i=0;do{s=g+(i<<2)|0;f[s>>2]=(f[s>>2]|0)/(j|0)|0;i=i+1|0}while((i|0)!=(e|0))}dj(C,g,b+(d<<2)|0,c+(d<<2)|0)}}if((o|0)==54)dj(C,c+((X(h+-1|0,e)|0)<<2)|0,b+(d<<2)|0,c+(d<<2)|0);h=h+1|0;if((h|0)>=(B|0)){d=H;break a}i=f[A>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}}else d=H;while(0);h=f[d>>2]|0;if(h|0){g=H+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h)}ds(D);d=f[J+36>>2]|0;if(d|0){h=J+40|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[J+24>>2]|0;if(d|0){h=J+28|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[J+12>>2]|0;if(d|0){h=J+16|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}h=f[J>>2]|0;if(!h){u=K;return 1}g=J+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h);u=K;return 1}function Bb(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;w=x;v=a+32|0;r=f[v>>2]|0;j=r+8|0;i=f[j>>2]|0;j=f[j+4>>2]|0;k=r+16|0;l=k;n=f[l>>2]|0;l=f[l+4>>2]|0;d=Kp(n|0,l|0,4,0)|0;c=I;if((j|0)<(c|0)|(j|0)==(c|0)&i>>>0>>0){a=0;u=x;return a|0}g=f[r>>2]|0;t=g+n|0;t=h[t>>0]|h[t+1>>0]<<8|h[t+2>>0]<<16|h[t+3>>0]<<24;s=k;f[s>>2]=d;f[s+4>>2]=c;if((t|0)<0){a=0;u=x;return a|0}c=Kp(n|0,l|0,8,0)|0;e=I;if((j|0)<(e|0)|(j|0)==(e|0)&i>>>0>>0){a=0;u=x;return a|0}s=g+d|0;s=h[s>>0]|h[s+1>>0]<<8|h[s+2>>0]<<16|h[s+3>>0]<<24;q=k;f[q>>2]=c;f[q+4>>2]=e;if(!((s|0)>-1&((j|0)>(e|0)|(j|0)==(e|0)&i>>>0>c>>>0))){a=0;u=x;return a|0}q=b[g+c>>0]|0;m=Kp(n|0,l|0,9,0)|0;j=I;p=k;f[p>>2]=m;f[p+4>>2]=j;a:do if(!(q<<24>>24)){if(!(Wf(a,t)|0)){a=0;u=x;return a|0}}else{if((s|0)<256){if((t|0)<=0)break;n=a+44|0;o=w+4|0;p=w+8|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;c=r+8|0;d=f[c>>2]|0;c=f[c+4>>2]|0;b:do if((c|0)>(j|0)|(c|0)==(j|0)&d>>>0>m>>>0){e=r;k=m;i=c;l=0;do{g=e+16|0;e=f[e>>2]|0;q=b[e+k>>0]|0;c=Kp(k|0,j|0,1,0)|0;r=I;m=g;f[m>>2]=c;f[m+4>>2]=r;f[w>>2]=q&255;if(!((i|0)>(r|0)|(i|0)==(r|0)&d>>>0>c>>>0))break b;q=b[e+c>>0]|0;c=Kp(k|0,j|0,2,0)|0;r=I;m=g;f[m>>2]=c;f[m+4>>2]=r;f[o>>2]=q&255;if(!((i|0)>(r|0)|(i|0)==(r|0)&d>>>0>c>>>0))break b;d=b[e+c>>0]|0;c=Kp(k|0,j|0,3,0)|0;e=g;f[e>>2]=c;f[e+4>>2]=I;f[p>>2]=d&255;d=f[n>>2]|0;e=d+100|0;c=f[e>>2]|0;if((c|0)==(f[d+104>>2]|0))hj(d+96|0,w);else{f[c>>2]=f[w>>2];f[c+4>>2]=f[w+4>>2];f[c+8>>2]=f[w+8>>2];f[e>>2]=(f[e>>2]|0)+12}l=l+1|0;if((l|0)>=(t|0))break a;e=f[v>>2]|0;j=e+16|0;k=f[j>>2]|0;j=f[j+4>>2]|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;i=e+8|0;d=f[i>>2]|0;i=f[i+4>>2]|0}while((i|0)>(j|0)|(i|0)==(j|0)&d>>>0>k>>>0)}while(0);a=0;u=x;return a|0}c=(t|0)>0;if((s|0)<65536){if(!c)break;o=a+44|0;p=w+4|0;q=w+8|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;e=r+8|0;i=f[e>>2]|0;e=f[e+4>>2]|0;c=Kp(n|0,l|0,11,0)|0;d=I;c:do if(!((e|0)<(d|0)|(e|0)==(d|0)&i>>>0>>0)){g=r;l=e;n=0;do{k=g+16|0;g=f[g>>2]|0;e=g+m|0;e=h[e>>0]|h[e+1>>0]<<8;r=k;f[r>>2]=c;f[r+4>>2]=d;f[w>>2]=e&65535;e=Kp(m|0,j|0,4,0)|0;d=I;if((l|0)<(d|0)|(l|0)==(d|0)&i>>>0>>0)break c;c=g+c|0;c=h[c>>0]|h[c+1>>0]<<8;r=k;f[r>>2]=e;f[r+4>>2]=d;f[p>>2]=c&65535;c=Kp(m|0,j|0,6,0)|0;d=I;if((l|0)<(d|0)|(l|0)==(d|0)&i>>>0>>0)break c;e=g+e|0;e=h[e>>0]|h[e+1>>0]<<8;r=k;f[r>>2]=c;f[r+4>>2]=d;f[q>>2]=e&65535;d=f[o>>2]|0;e=d+100|0;c=f[e>>2]|0;if((c|0)==(f[d+104>>2]|0))hj(d+96|0,w);else{f[c>>2]=f[w>>2];f[c+4>>2]=f[w+4>>2];f[c+8>>2]=f[w+8>>2];f[e>>2]=(f[e>>2]|0)+12}n=n+1|0;if((n|0)>=(t|0))break a;g=f[v>>2]|0;j=g+16|0;m=f[j>>2]|0;j=f[j+4>>2]|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;l=g+8|0;i=f[l>>2]|0;l=f[l+4>>2]|0;c=Kp(m|0,j|0,2,0)|0;d=I}while(!((l|0)<(d|0)|(l|0)==(d|0)&i>>>0>>0))}while(0);a=0;u=x;return a|0}else{if(!c)break;o=a+44|0;p=w+4|0;q=w+8|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;e=r+8|0;i=f[e>>2]|0;e=f[e+4>>2]|0;c=Kp(n|0,l|0,13,0)|0;d=I;d:do if(!((e|0)<(d|0)|(e|0)==(d|0)&i>>>0>>0)){g=r;l=e;n=0;do{k=g+16|0;g=f[g>>2]|0;e=g+m|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;r=k;f[r>>2]=c;f[r+4>>2]=d;f[w>>2]=e;e=Kp(m|0,j|0,8,0)|0;d=I;if((l|0)<(d|0)|(l|0)==(d|0)&i>>>0>>0)break d;c=g+c|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;r=k;f[r>>2]=e;f[r+4>>2]=d;f[p>>2]=c;c=Kp(m|0,j|0,12,0)|0;d=I;if((l|0)<(d|0)|(l|0)==(d|0)&i>>>0>>0)break d;e=g+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;r=k;f[r>>2]=c;f[r+4>>2]=d;f[q>>2]=e;d=f[o>>2]|0;e=d+100|0;c=f[e>>2]|0;if((c|0)==(f[d+104>>2]|0))hj(d+96|0,w);else{f[c>>2]=f[w>>2];f[c+4>>2]=f[w+4>>2];f[c+8>>2]=f[w+8>>2];f[e>>2]=(f[e>>2]|0)+12}n=n+1|0;if((n|0)>=(t|0))break a;g=f[v>>2]|0;j=g+16|0;m=f[j>>2]|0;j=f[j+4>>2]|0;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;l=g+8|0;i=f[l>>2]|0;l=f[l+4>>2]|0;c=Kp(m|0,j|0,4,0)|0;d=I}while(!((l|0)<(d|0)|(l|0)==(d|0)&i>>>0>>0))}while(0);a=0;u=x;return a|0}}while(0);f[(f[a+4>>2]|0)+80>>2]=s;a=1;u=x;return a|0}function Cb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=u;u=u+64|0;G=H+16|0;F=H;d=G;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[F>>2]=0;if(!e){d=0;g=0}else{Xh(G,e,F);d=f[G+12>>2]|0;g=f[G+16>>2]|0}f[F>>2]=0;h=G+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(j=d+(e<<2)|0,(g|0)!=(j|0)):0)f[h>>2]=g+(~((g+-4-j|0)>>>2)<<2)}else Xh(G+12|0,e-i|0,F);i=G+24|0;f[F>>2]=0;h=G+28|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else Xh(i,e-j|0,F);i=G+36|0;f[F>>2]=0;h=G+40|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else Xh(i,e-j|0,F);D=a+8|0;$i(D,f[G>>2]|0,b,c);x=f[a+32>>2]|0;w=f[a+36>>2]|0;E=no(16)|0;f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;f[E+12>>2]=0;xl(F,e);B=a+40|0;i=f[B>>2]|0;g=f[i+4>>2]|0;d=f[i>>2]|0;A=g-d|0;C=A>>2;a:do if((A|0)>4){z=x+12|0;A=(e|0)>0;y=e<<2;h=1;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}s=f[d+(h<<2)>>2]|0;v=(((s>>>0)%3|0|0)==0?2:-1)+s|0;t=(s|v|0)<0;r=(s|0)<0?s:v;g=s;q=1;d=0;b:while(1){do{if((g|0)<=-1){o=43;break b}o=f[G+(d*12|0)>>2]|0;p=f[z>>2]|0;j=f[p+(g<<2)>>2]|0;if((j|0)>=0){k=f[x>>2]|0;l=f[w>>2]|0;n=f[l+(f[k+(j<<2)>>2]<<2)>>2]|0;i=j+1|0;i=((i|0)%3|0|0)==0?j+-2|0:i;if((i|0)<0)i=-1073741824;else i=f[k+(i<<2)>>2]|0;m=f[l+(i<<2)>>2]|0;i=(((j>>>0)%3|0|0)==0?2:-1)+j|0;if((i|0)<0)i=-1073741824;else i=f[k+(i<<2)>>2]|0;i=f[l+(i<<2)>>2]|0;if((n|0)<(h|0)&(m|0)<(h|0)&(i|0)<(h|0)){l=X(n,e)|0;k=X(m,e)|0;j=X(i,e)|0;if(A){i=0;do{f[o+(i<<2)>>2]=(f[c+(i+j<<2)>>2]|0)+(f[c+(i+k<<2)>>2]|0)-(f[c+(i+l<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;o=26;break b}}}do if(q){o=g+1|0;g=((o|0)%3|0|0)==0?g+-2|0:o;if((g|0)>=0){g=f[p+(g<<2)>>2]|0;i=g+1|0;if((g|0)>=0)g=((i|0)%3|0|0)==0?g+-2|0:i}}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((g|0)>=0){g=f[p+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}while(0);if((g|0)==(s|0)){o=43;break b}}while(!(q&(g|0)<0));if(t){g=r;q=0;continue}g=f[p+(v<<2)>>2]|0;if((g|0)<0){q=0;continue}if(!((g>>>0)%3|0)){g=g+2|0;q=0;continue}else{g=g+-1|0;q=0;continue}}if((o|0)==43)if((d|0)>0)o=26;else{d=X(h,e)|0;o=55}if((o|0)==26){o=0;if(A){_j(f[F>>2]|0,0,y|0)|0;k=d+-1|0;m=E+(k<<2)|0;k=f[a+44+(k*12|0)>>2]|0;l=f[F>>2]|0;n=0;j=0;do{v=f[m>>2]|0;f[m>>2]=v+1;if(!(f[k+(v>>>5<<2)>>2]&1<<(v&31))){g=f[G+(n*12|0)>>2]|0;i=0;do{v=l+(i<<2)|0;f[v>>2]=(f[v>>2]|0)+(f[g+(i<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0));j=j+1|0}n=n+1|0}while((n|0)!=(d|0))}else{g=d+-1|0;k=E+(g<<2)|0;g=f[a+44+(g*12|0)>>2]|0;i=f[k>>2]|0;l=0;j=0;do{v=i;i=i+1|0;f[k>>2]=i;j=j+((f[g+(v>>>5<<2)>>2]&1<<(v&31)|0)==0&1)|0;l=l+1|0}while((l|0)!=(d|0))}d=X(h,e)|0;if(!j)o=55;else{g=f[F>>2]|0;if(A){i=0;do{v=g+(i<<2)|0;f[v>>2]=(f[v>>2]|0)/(j|0)|0;i=i+1|0}while((i|0)!=(e|0))}$i(D,g,b+(d<<2)|0,c+(d<<2)|0)}}if((o|0)==55)$i(D,c+((X(h+-1|0,e)|0)<<2)|0,b+(d<<2)|0,c+(d<<2)|0);h=h+1|0;if((h|0)>=(C|0)){d=F;break a}i=f[B>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}}else d=F;while(0);h=f[d>>2]|0;if(h|0){g=F+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h)}ds(E);d=f[G+36>>2]|0;if(d|0){h=G+40|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[G+24>>2]|0;if(d|0){h=G+28|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[G+12>>2]|0;if(d|0){h=G+16|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}h=f[G>>2]|0;if(!h){u=H;return 1}g=G+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h);u=H;return 1}function Db(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=La,p=La,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=La;P=u;u=u+48|0;O=P+12|0;K=P+32|0;N=P;G=O+16|0;f[O>>2]=0;f[O+4>>2]=0;f[O+8>>2]=0;f[O+12>>2]=0;n[G>>2]=$(1.0);M=a+80|0;xl(N,f[M>>2]|0);h=f[M>>2]|0;a:do if((h|0)>0){D=c+48|0;E=c+40|0;B=K+2|0;C=K+4|0;x=O+4|0;A=O+12|0;y=O+8|0;F=a+40|0;z=a+64|0;w=f[e>>2]|0;r=0;v=0;t=0;while(1){l=w+v|0;j=D;k=f[j>>2]|0;j=f[j+4>>2]|0;s=E;l=mo(f[s>>2]|0,f[s+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;j=Kp(l|0,I|0,k|0,j|0)|0;j=(f[f[c>>2]>>2]|0)+j|0;b[K>>0]=b[j>>0]|0;b[K+1>>0]=b[j+1>>0]|0;b[K+2>>0]=b[j+2>>0]|0;b[K+3>>0]=b[j+3>>0]|0;b[K+4>>0]=b[j+4>>0]|0;b[K+5>>0]=b[j+5>>0]|0;j=d[K>>1]|0;k=d[B>>1]|0;l=d[C>>1]|0;s=(((j^318)&65535)+239^k&65535)+239^l&65535;q=(r|0)==0;b:do if(!q){h=r+-1|0;g=(h&r|0)==0;if(g)i=s&h;else i=(s>>>0)%(r>>>0)|0;e=f[(f[O>>2]|0)+(i<<2)>>2]|0;do if(e|0?(J=f[e>>2]|0,J|0):0){c:do if(g){e=J;while(1){if((f[e+4>>2]&h|0)!=(i|0)){i=22;break c}if(((d[e+8>>1]|0)==j<<16>>16?(d[e+10>>1]|0)==k<<16>>16:0)?(d[e+12>>1]|0)==l<<16>>16:0){i=21;break c}e=f[e>>2]|0;if(!e){i=22;break}}}else{e=J;while(1){if((((f[e+4>>2]|0)>>>0)%(r>>>0)|0|0)!=(i|0)){i=22;break c}if(((d[e+8>>1]|0)==j<<16>>16?(d[e+10>>1]|0)==k<<16>>16:0)?(d[e+12>>1]|0)==l<<16>>16:0){i=21;break c}e=f[e>>2]|0;if(!e){i=22;break}}}while(0);if((i|0)==21){i=0;f[(f[N>>2]|0)+(v<<2)>>2]=f[e+16>>2];g=t;break b}else if((i|0)==22)if(q){e=0;i=39;break b}else break}while(0);i=r+-1|0;h=(i&r|0)==0;if(h)e=i&s;else e=(s>>>0)%(r>>>0)|0;g=f[(f[O>>2]|0)+(e<<2)>>2]|0;if((g|0)!=0?(H=f[g>>2]|0,(H|0)!=0):0)if(h){g=H;while(1){if((f[g+4>>2]&i|0)!=(e|0)){i=39;break b}if(((d[g+8>>1]|0)==j<<16>>16?(d[g+10>>1]|0)==k<<16>>16:0)?(d[g+12>>1]|0)==l<<16>>16:0){i=52;break b}g=f[g>>2]|0;if(!g){i=39;break}}}else{g=H;while(1){if((((f[g+4>>2]|0)>>>0)%(r>>>0)|0|0)!=(e|0)){i=39;break b}if(((d[g+8>>1]|0)==j<<16>>16?(d[g+10>>1]|0)==k<<16>>16:0)?(d[g+12>>1]|0)==l<<16>>16:0){i=52;break b}g=f[g>>2]|0;if(!g){i=39;break}}}else i=39}else{e=0;i=39}while(0);if((i|0)==39){i=0;m=no(20)|0;d[m+8>>1]=j;d[m+10>>1]=k;d[m+12>>1]=l;f[m+16>>2]=t;f[m+4>>2]=s;f[m>>2]=0;p=$(((f[A>>2]|0)+1|0)>>>0);Q=$(r>>>0);o=$(n[G>>2]);do if(q|p>$(Q*o)){e=(r>>>0<3|(r+-1&r|0)!=0)&1|r<<1;g=~~$(W($(p/o)))>>>0;Ei(O,e>>>0>>0?g:e);e=f[x>>2]|0;g=e+-1|0;if(!(g&e)){h=e;e=g&s;break}else{h=e;e=(s>>>0)%(e>>>0)|0;break}}else h=r;while(0);g=(f[O>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){f[m>>2]=f[y>>2];f[y>>2]=m;f[g>>2]=y;e=f[m>>2]|0;if(e|0){e=f[e+4>>2]|0;g=h+-1|0;if(!(g&h))e=e&g;else e=(e>>>0)%(h>>>0)|0;e=(f[O>>2]|0)+(e<<2)|0;i=50}}else{f[m>>2]=f[e>>2];i=50}if((i|0)==50)f[e>>2]=m;f[A>>2]=(f[A>>2]|0)+1;i=52}if((i|0)==52){s=F;g=f[s>>2]|0;s=mo(g|0,f[s+4>>2]|0,t|0,((t|0)<0)<<31>>31|0)|0;Fh((f[f[z>>2]>>2]|0)+s|0,K|0,g|0)|0;f[(f[N>>2]|0)+(v<<2)>>2]=t;g=t+1|0}e=v+1|0;h=f[M>>2]|0;if((e|0)>=(h|0)){m=g;break a}r=f[x>>2]|0;v=e;t=g}}else m=0;while(0);if((m|0)!=(h|0)){l=a+84|0;if(!(b[l>>0]|0)){h=f[a+68>>2]|0;e=(f[a+72>>2]|0)-h|0;if((e|0)>0){i=f[N>>2]|0;g=e>>2;e=0;do{a=h+(e<<2)|0;f[a>>2]=f[i+(f[a>>2]<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}else{b[l>>0]=0;j=a+68|0;i=a+72|0;g=f[i>>2]|0;e=f[j>>2]|0;k=g-e>>2;if(h>>>0<=k>>>0){if(h>>>0>>0?(L=e+(h<<2)|0,(g|0)!=(L|0)):0)f[i>>2]=g+(~((g+-4-L|0)>>>2)<<2)}else{Xh(j,h-k|0,1592);h=f[M>>2]|0}if((h|0)>0){i=f[N>>2]|0;if(b[l>>0]|0)Ga(21905,21924,89,22019);e=f[a+68>>2]|0;g=0;do{f[e+(g<<2)>>2]=f[i+(g<<2)>>2];g=g+1|0}while((g|0)<(h|0))}}f[M>>2]=m}h=f[N>>2]|0;if(h|0){g=N+4|0;e=f[g>>2]|0;if((e|0)!=(h|0))f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2);ds(h)}e=f[O+8>>2]|0;if(e|0)do{N=e;e=f[e>>2]|0;ds(N)}while((e|0)!=0);e=f[O>>2]|0;f[O>>2]=0;if(!e){u=P;return m|0}ds(e);u=P;return m|0}function Eb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=u;u=u+64|0;G=H+16|0;F=H;d=G;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[F>>2]=0;if(!e){d=0;g=0}else{Xh(G,e,F);d=f[G+12>>2]|0;g=f[G+16>>2]|0}f[F>>2]=0;h=G+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(j=d+(e<<2)|0,(g|0)!=(j|0)):0)f[h>>2]=g+(~((g+-4-j|0)>>>2)<<2)}else Xh(G+12|0,e-i|0,F);i=G+24|0;f[F>>2]=0;h=G+28|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else Xh(i,e-j|0,F);i=G+36|0;f[F>>2]=0;h=G+40|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else Xh(i,e-j|0,F);D=a+8|0;dj(D,f[G>>2]|0,b,c);x=f[a+32>>2]|0;w=f[a+36>>2]|0;E=no(16)|0;f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;f[E+12>>2]=0;xl(F,e);B=a+40|0;i=f[B>>2]|0;g=f[i+4>>2]|0;d=f[i>>2]|0;A=g-d|0;C=A>>2;a:do if((A|0)>4){z=x+12|0;A=(e|0)>0;y=e<<2;h=1;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}s=f[d+(h<<2)>>2]|0;v=(((s>>>0)%3|0|0)==0?2:-1)+s|0;t=(s|v|0)<0;r=(s|0)<0?s:v;g=s;q=1;d=0;b:while(1){do{if((g|0)<=-1){o=43;break b}o=f[G+(d*12|0)>>2]|0;p=f[z>>2]|0;j=f[p+(g<<2)>>2]|0;if((j|0)>=0){k=f[x>>2]|0;l=f[w>>2]|0;n=f[l+(f[k+(j<<2)>>2]<<2)>>2]|0;i=j+1|0;i=((i|0)%3|0|0)==0?j+-2|0:i;if((i|0)<0)i=-1073741824;else i=f[k+(i<<2)>>2]|0;m=f[l+(i<<2)>>2]|0;i=(((j>>>0)%3|0|0)==0?2:-1)+j|0;if((i|0)<0)i=-1073741824;else i=f[k+(i<<2)>>2]|0;i=f[l+(i<<2)>>2]|0;if((n|0)<(h|0)&(m|0)<(h|0)&(i|0)<(h|0)){l=X(n,e)|0;k=X(m,e)|0;j=X(i,e)|0;if(A){i=0;do{f[o+(i<<2)>>2]=(f[c+(i+j<<2)>>2]|0)+(f[c+(i+k<<2)>>2]|0)-(f[c+(i+l<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;o=26;break b}}}do if(q){o=g+1|0;g=((o|0)%3|0|0)==0?g+-2|0:o;if((g|0)>=0){g=f[p+(g<<2)>>2]|0;i=g+1|0;if((g|0)>=0)g=((i|0)%3|0|0)==0?g+-2|0:i}}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((g|0)>=0){g=f[p+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}while(0);if((g|0)==(s|0)){o=43;break b}}while(!(q&(g|0)<0));if(t){g=r;q=0;continue}g=f[p+(v<<2)>>2]|0;if((g|0)<0){q=0;continue}if(!((g>>>0)%3|0)){g=g+2|0;q=0;continue}else{g=g+-1|0;q=0;continue}}if((o|0)==43)if((d|0)>0)o=26;else{d=X(h,e)|0;o=55}if((o|0)==26){o=0;if(A){_j(f[F>>2]|0,0,y|0)|0;k=d+-1|0;m=E+(k<<2)|0;k=f[a+44+(k*12|0)>>2]|0;l=f[F>>2]|0;n=0;j=0;do{v=f[m>>2]|0;f[m>>2]=v+1;if(!(f[k+(v>>>5<<2)>>2]&1<<(v&31))){g=f[G+(n*12|0)>>2]|0;i=0;do{v=l+(i<<2)|0;f[v>>2]=(f[v>>2]|0)+(f[g+(i<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0));j=j+1|0}n=n+1|0}while((n|0)!=(d|0))}else{g=d+-1|0;k=E+(g<<2)|0;g=f[a+44+(g*12|0)>>2]|0;i=f[k>>2]|0;l=0;j=0;do{v=i;i=i+1|0;f[k>>2]=i;j=j+((f[g+(v>>>5<<2)>>2]&1<<(v&31)|0)==0&1)|0;l=l+1|0}while((l|0)!=(d|0))}d=X(h,e)|0;if(!j)o=55;else{g=f[F>>2]|0;if(A){i=0;do{v=g+(i<<2)|0;f[v>>2]=(f[v>>2]|0)/(j|0)|0;i=i+1|0}while((i|0)!=(e|0))}dj(D,g,b+(d<<2)|0,c+(d<<2)|0)}}if((o|0)==55)dj(D,c+((X(h+-1|0,e)|0)<<2)|0,b+(d<<2)|0,c+(d<<2)|0);h=h+1|0;if((h|0)>=(C|0)){d=F;break a}i=f[B>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}}else d=F;while(0);h=f[d>>2]|0;if(h|0){g=F+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h)}ds(E);d=f[G+36>>2]|0;if(d|0){h=G+40|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[G+24>>2]|0;if(d|0){h=G+28|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[G+12>>2]|0;if(d|0){h=G+16|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}h=f[G>>2]|0;if(!h){u=H;return 1}g=G+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h);u=H;return 1}function Fb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=La,o=La,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=La;O=u;u=u+48|0;N=O+12|0;J=O+32|0;M=O;F=N+16|0;f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;n[F>>2]=$(1.0);L=a+80|0;xl(M,f[L>>2]|0);g=f[L>>2]|0;a:do if((g|0)>0){C=c+48|0;D=c+40|0;A=J+1|0;B=J+2|0;w=N+4|0;z=N+12|0;x=N+8|0;E=a+40|0;y=a+64|0;v=f[d>>2]|0;q=0;t=0;s=0;while(1){k=v+t|0;i=C;j=f[i>>2]|0;i=f[i+4>>2]|0;r=D;k=mo(f[r>>2]|0,f[r+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;i=Kp(k|0,I|0,j|0,i|0)|0;i=(f[f[c>>2]>>2]|0)+i|0;b[J>>0]=b[i>>0]|0;b[J+1>>0]=b[i+1>>0]|0;b[J+2>>0]=b[i+2>>0]|0;i=b[J>>0]|0;j=b[A>>0]|0;k=b[B>>0]|0;r=((i&255^318)+239^j&255)+239^k&255;p=(q|0)==0;b:do if(!p){g=q+-1|0;e=(g&q|0)==0;if(e)h=r&g;else h=(r>>>0)%(q>>>0)|0;d=f[(f[N>>2]|0)+(h<<2)>>2]|0;do if(d|0?(H=f[d>>2]|0,H|0):0){c:do if(e){d=H;while(1){if((f[d+4>>2]&g|0)!=(h|0)){h=22;break c}if(((b[d+8>>0]|0)==i<<24>>24?(b[d+9>>0]|0)==j<<24>>24:0)?(b[d+10>>0]|0)==k<<24>>24:0){h=21;break c}d=f[d>>2]|0;if(!d){h=22;break}}}else{d=H;while(1){if((((f[d+4>>2]|0)>>>0)%(q>>>0)|0|0)!=(h|0)){h=22;break c}if(((b[d+8>>0]|0)==i<<24>>24?(b[d+9>>0]|0)==j<<24>>24:0)?(b[d+10>>0]|0)==k<<24>>24:0){h=21;break c}d=f[d>>2]|0;if(!d){h=22;break}}}while(0);if((h|0)==21){h=0;f[(f[M>>2]|0)+(t<<2)>>2]=f[d+12>>2];e=s;break b}else if((h|0)==22)if(p){d=0;h=39;break b}else break}while(0);h=q+-1|0;g=(h&q|0)==0;if(g)d=h&r;else d=(r>>>0)%(q>>>0)|0;e=f[(f[N>>2]|0)+(d<<2)>>2]|0;if((e|0)!=0?(G=f[e>>2]|0,(G|0)!=0):0)if(g){e=G;while(1){if((f[e+4>>2]&h|0)!=(d|0)){h=39;break b}if(((b[e+8>>0]|0)==i<<24>>24?(b[e+9>>0]|0)==j<<24>>24:0)?(b[e+10>>0]|0)==k<<24>>24:0){h=52;break b}e=f[e>>2]|0;if(!e){h=39;break}}}else{e=G;while(1){if((((f[e+4>>2]|0)>>>0)%(q>>>0)|0|0)!=(d|0)){h=39;break b}if(((b[e+8>>0]|0)==i<<24>>24?(b[e+9>>0]|0)==j<<24>>24:0)?(b[e+10>>0]|0)==k<<24>>24:0){h=52;break b}e=f[e>>2]|0;if(!e){h=39;break}}}else h=39}else{d=0;h=39}while(0);if((h|0)==39){h=0;l=no(16)|0;b[l+8>>0]=i;b[l+9>>0]=j;b[l+10>>0]=k;f[l+12>>2]=s;f[l+4>>2]=r;f[l>>2]=0;o=$(((f[z>>2]|0)+1|0)>>>0);P=$(q>>>0);m=$(n[F>>2]);do if(p|o>$(P*m)){d=(q>>>0<3|(q+-1&q|0)!=0)&1|q<<1;e=~~$(W($(o/m)))>>>0;Li(N,d>>>0>>0?e:d);d=f[w>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&r;break}else{g=d;d=(r>>>0)%(d>>>0)|0;break}}else g=q;while(0);e=(f[N>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[l>>2]=f[x>>2];f[x>>2]=l;f[e>>2]=x;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else d=(d>>>0)%(g>>>0)|0;d=(f[N>>2]|0)+(d<<2)|0;h=50}}else{f[l>>2]=f[d>>2];h=50}if((h|0)==50)f[d>>2]=l;f[z>>2]=(f[z>>2]|0)+1;h=52}if((h|0)==52){r=E;e=f[r>>2]|0;r=mo(e|0,f[r+4>>2]|0,s|0,((s|0)<0)<<31>>31|0)|0;Fh((f[f[y>>2]>>2]|0)+r|0,J|0,e|0)|0;f[(f[M>>2]|0)+(t<<2)>>2]=s;e=s+1|0}d=t+1|0;g=f[L>>2]|0;if((d|0)>=(g|0)){l=e;break a}q=f[w>>2]|0;t=d;s=e}}else l=0;while(0);if((l|0)!=(g|0)){k=a+84|0;if(!(b[k>>0]|0)){g=f[a+68>>2]|0;d=(f[a+72>>2]|0)-g|0;if((d|0)>0){h=f[M>>2]|0;e=d>>2;d=0;do{a=g+(d<<2)|0;f[a>>2]=f[h+(f[a>>2]<<2)>>2];d=d+1|0}while((d|0)<(e|0))}}else{b[k>>0]=0;i=a+68|0;h=a+72|0;e=f[h>>2]|0;d=f[i>>2]|0;j=e-d>>2;if(g>>>0<=j>>>0){if(g>>>0>>0?(K=d+(g<<2)|0,(e|0)!=(K|0)):0)f[h>>2]=e+(~((e+-4-K|0)>>>2)<<2)}else{Xh(i,g-j|0,1592);g=f[L>>2]|0}if((g|0)>0){h=f[M>>2]|0;if(b[k>>0]|0)Ga(21905,21924,89,22019);d=f[a+68>>2]|0;e=0;do{f[d+(e<<2)>>2]=f[h+(e<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}f[L>>2]=l}g=f[M>>2]|0;if(g|0){e=M+4|0;d=f[e>>2]|0;if((d|0)!=(g|0))f[e>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g)}d=f[N+8>>2]|0;if(d|0)do{M=d;d=f[d>>2]|0;ds(M)}while((d|0)!=0);d=f[N>>2]|0;f[N>>2]=0;if(!d){u=O;return l|0}ds(d);u=O;return l|0}function Gb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=La,o=La,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=La;O=u;u=u+48|0;N=O+24|0;J=O+12|0;M=O;F=N+16|0;f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;n[F>>2]=$(1.0);L=a+80|0;xl(M,f[L>>2]|0);g=f[L>>2]|0;a:do if((g|0)>0){C=c+48|0;D=c+40|0;A=J+4|0;B=J+8|0;w=N+4|0;z=N+12|0;x=N+8|0;E=a+40|0;y=a+64|0;v=f[d>>2]|0;r=0;t=0;s=0;while(1){g=v+t|0;e=C;d=f[e>>2]|0;e=f[e+4>>2]|0;q=D;g=mo(f[q>>2]|0,f[q+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0;e=Kp(g|0,I|0,d|0,e|0)|0;d=J;e=(f[f[c>>2]>>2]|0)+e|0;g=d+12|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));i=f[J>>2]|0;j=f[A>>2]|0;k=f[B>>2]|0;q=((i^318)+239^j)+239^k;p=(r|0)==0;b:do if(!p){g=r+-1|0;e=(g&r|0)==0;if(e)h=q&g;else h=(q>>>0)%(r>>>0)|0;d=f[(f[N>>2]|0)+(h<<2)>>2]|0;do if(d|0?(H=f[d>>2]|0,H|0):0){c:do if(e){d=H;while(1){if((f[d+4>>2]&g|0)!=(h|0)){h=22;break c}if(((f[d+8>>2]|0)==(i|0)?(f[d+12>>2]|0)==(j|0):0)?(f[d+16>>2]|0)==(k|0):0){h=21;break c}d=f[d>>2]|0;if(!d){h=22;break}}}else{d=H;while(1){if((((f[d+4>>2]|0)>>>0)%(r>>>0)|0|0)!=(h|0)){h=22;break c}if(((f[d+8>>2]|0)==(i|0)?(f[d+12>>2]|0)==(j|0):0)?(f[d+16>>2]|0)==(k|0):0){h=21;break c}d=f[d>>2]|0;if(!d){h=22;break}}}while(0);if((h|0)==21){h=0;f[(f[M>>2]|0)+(t<<2)>>2]=f[d+20>>2];e=s;break b}else if((h|0)==22)if(p){d=0;h=39;break b}else break}while(0);h=r+-1|0;g=(h&r|0)==0;if(g)d=h&q;else d=(q>>>0)%(r>>>0)|0;e=f[(f[N>>2]|0)+(d<<2)>>2]|0;if((e|0)!=0?(G=f[e>>2]|0,(G|0)!=0):0)if(g){e=G;while(1){if((f[e+4>>2]&h|0)!=(d|0)){h=39;break b}if(((f[e+8>>2]|0)==(i|0)?(f[e+12>>2]|0)==(j|0):0)?(f[e+16>>2]|0)==(k|0):0){h=52;break b}e=f[e>>2]|0;if(!e){h=39;break}}}else{e=G;while(1){if((((f[e+4>>2]|0)>>>0)%(r>>>0)|0|0)!=(d|0)){h=39;break b}if(((f[e+8>>2]|0)==(i|0)?(f[e+12>>2]|0)==(j|0):0)?(f[e+16>>2]|0)==(k|0):0){h=52;break b}e=f[e>>2]|0;if(!e){h=39;break}}}else h=39}else{d=0;h=39}while(0);if((h|0)==39){h=0;l=no(24)|0;f[l+8>>2]=i;f[l+12>>2]=j;f[l+16>>2]=k;f[l+20>>2]=s;f[l+4>>2]=q;f[l>>2]=0;o=$(((f[z>>2]|0)+1|0)>>>0);P=$(r>>>0);m=$(n[F>>2]);do if(p|o>$(P*m)){d=(r>>>0<3|(r+-1&r|0)!=0)&1|r<<1;e=~~$(W($(o/m)))>>>0;Ii(N,d>>>0>>0?e:d);d=f[w>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&q;break}else{g=d;d=(q>>>0)%(d>>>0)|0;break}}else g=r;while(0);e=(f[N>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[l>>2]=f[x>>2];f[x>>2]=l;f[e>>2]=x;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else d=(d>>>0)%(g>>>0)|0;d=(f[N>>2]|0)+(d<<2)|0;h=50}}else{f[l>>2]=f[d>>2];h=50}if((h|0)==50)f[d>>2]=l;f[z>>2]=(f[z>>2]|0)+1;h=52}if((h|0)==52){r=E;e=f[r>>2]|0;r=mo(e|0,f[r+4>>2]|0,s|0,((s|0)<0)<<31>>31|0)|0;Fh((f[f[y>>2]>>2]|0)+r|0,J|0,e|0)|0;f[(f[M>>2]|0)+(t<<2)>>2]=s;e=s+1|0}d=t+1|0;g=f[L>>2]|0;if((d|0)>=(g|0)){l=e;break a}r=f[w>>2]|0;t=d;s=e}}else l=0;while(0);if((l|0)!=(g|0)){k=a+84|0;if(!(b[k>>0]|0)){g=f[a+68>>2]|0;d=(f[a+72>>2]|0)-g|0;if((d|0)>0){h=f[M>>2]|0;e=d>>2;d=0;do{a=g+(d<<2)|0;f[a>>2]=f[h+(f[a>>2]<<2)>>2];d=d+1|0}while((d|0)<(e|0))}}else{b[k>>0]=0;i=a+68|0;h=a+72|0;e=f[h>>2]|0;d=f[i>>2]|0;j=e-d>>2;if(g>>>0<=j>>>0){if(g>>>0>>0?(K=d+(g<<2)|0,(e|0)!=(K|0)):0)f[h>>2]=e+(~((e+-4-K|0)>>>2)<<2)}else{Xh(i,g-j|0,1592);g=f[L>>2]|0}if((g|0)>0){h=f[M>>2]|0;if(b[k>>0]|0)Ga(21905,21924,89,22019);d=f[a+68>>2]|0;e=0;do{f[d+(e<<2)>>2]=f[h+(e<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}f[L>>2]=l}g=f[M>>2]|0;if(g|0){e=M+4|0;d=f[e>>2]|0;if((d|0)!=(g|0))f[e>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g)}d=f[N+8>>2]|0;if(d|0)do{M=d;d=f[d>>2]|0;ds(M)}while((d|0)!=0);d=f[N>>2]|0;f[N>>2]=0;if(!d){u=O;return l|0}ds(d);u=O;return l|0}function Hb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=u;u=u+48|0;L=M+24|0;J=M+12|0;z=M;if(!b){L=0;u=M;return L|0}I=a+12|0;A=a+4|0;k=f[A>>2]|0;c=f[a>>2]|0;i=k-c>>2;g=a+16|0;e=f[g>>2]|0;d=f[I>>2]|0;j=e-d>>2;l=c;if(i>>>0<=j>>>0)if(i>>>0>>0?(h=d+(i<<2)|0,(e|0)!=(h|0)):0){f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2);g=c}else g=c;else{Xh(I,i-j|0,5068);l=f[a>>2]|0;g=l;k=f[A>>2]|0}f[L>>2]=0;H=L+4|0;f[H>>2]=0;f[L+8>>2]=0;e=k-g|0;d=e>>2;c=L+8|0;do if(d)if(d>>>0>1073741823){M=Ia(4)|0;Hr(M);sa(M|0,1488,137)}else{i=no(e)|0;h=i;f[L>>2]=h;f[H>>2]=h;f[c>>2]=i+(d<<2);break}else{i=0;h=0}while(0);if((e|0)>0){v=i;w=k;x=g;d=h;o=h;p=i;q=i;r=i;s=h;j=h;n=g;e=i;t=0;while(1){l=f[l+(t<<2)>>2]|0;c=f[H>>2]|0;if((l|0)<(c-d>>2|0)){g=v;h=w;i=x;m=e;c=n}else{e=l+1|0;f[J>>2]=0;g=c-d>>2;if(e>>>0<=g>>>0)if(e>>>0>>0?(y=d+(e<<2)|0,(c|0)!=(y|0)):0){f[H>>2]=c+(~((c+-4-y|0)>>>2)<<2);d=v;e=w;c=x}else{d=v;e=w;c=x}else{Xh(L,e-g|0,J);d=f[L>>2]|0;e=f[A>>2]|0;c=f[a>>2]|0}j=d;g=d;h=e;i=c;o=j;p=d;q=d;r=d;s=j;m=d;k=e}G=m+(l<<2)|0;f[G>>2]=(f[G>>2]|0)+1;t=t+1|0;if((t|0)>=(k-c>>2|0)){l=s;i=q;break}else{v=g;w=h;x=i;l=c;d=m;n=c;e=m}}}else{c=g;j=h;l=h;r=i;o=h;p=i}c=k-c|0;h=c>>2;f[J>>2]=0;G=J+4|0;f[G>>2]=0;f[J+8>>2]=0;if(!h){d=0;e=0}else{if(h>>>0>536870911){Pq(J);M=Ia(4)|0;Hr(M);sa(M|0,1488,137)}g=no(c<<1)|0;f[G>>2]=g;f[J>>2]=g;f[J+8>>2]=g+(h<<3);e=g;c=h;d=g;while(1){F=e;f[F>>2]=-1;f[F+4>>2]=-1;d=d+8|0;c=c+-1|0;if(!c)break;else e=d}f[G>>2]=g+(h<<3);d=g;e=g}F=f[H>>2]|0;g=F-j|0;c=g>>2;f[z>>2]=0;E=z+4|0;f[E>>2]=0;f[z+8>>2]=0;do if(c)if(c>>>0>1073741823){Pq(z);M=Ia(4)|0;Hr(M);sa(M|0,1488,137)}else{D=no(g)|0;f[z>>2]=D;C=D+(c<<2)|0;f[z+8>>2]=C;_j(D|0,0,g|0)|0;f[E>>2]=C;B=D;break}else{B=0;C=0;D=0}while(0);if((F|0)!=(l|0)){h=F-r>>2;c=0;g=0;do{f[B+(c<<2)>>2]=g;g=(f[r+(c<<2)>>2]|0)+g|0;c=c+1|0}while(c>>>0>>0)}z=f[a>>2]|0;c=(f[A>>2]|0)-z|0;A=z;if((c|0)>0){z=a+40|0;y=c>>2;k=i;m=B;j=0;v=e;t=e;w=e;s=e;x=e;while(1){i=(j|0)<0;c=j+1|0;if(!i){c=((c|0)%3|0|0)==0?j+-2|0:c;if((c|0)<0)h=-1073741824;else h=f[A+(c<<2)>>2]|0;c=(j>>>0)%3|0;g=((c|0)==0?2:-1)+j|0;if((g|0)<0){r=-1073741824;q=h}else{r=f[A+(g<<2)>>2]|0;q=h}}else{c=(j>>>0)%3|0;r=-1073741824;q=-1073741824}if((j|0)==((i?-1073741824:j-c|0)|0)){if(i)c=-1073741824;else c=f[A+(j<<2)>>2]|0;if((q|0)==(r|0)|((c|0)==(q|0)|(c|0)==(r|0))){f[z>>2]=(f[z>>2]|0)+1;j=j+2|0;c=v;g=t;l=w;h=s;i=x}else K=60}else K=60;a:do if((K|0)==60){K=0;n=f[k+(r<<2)>>2]|0;b:do if((n|0)>0){c=0;i=f[m+(r<<2)>>2]|0;while(1){g=f[s+(i<<3)>>2]|0;if((g|0)<0){c=v;g=t;h=s;break b}if((g|0)==(q|0))break;c=c+1|0;if((c|0)<(n|0))i=i+1|0;else{c=v;g=t;h=s;break b}}l=f[s+(i<<3)+4>>2]|0;h=t;while(1){c=c+1|0;if((c|0)>=(n|0))break;g=i+1|0;f[h+(i<<3)>>2]=f[h+(g<<3)>>2];f[h+(i<<3)+4>>2]=f[h+(g<<3)+4>>2];if((f[v+(i<<3)>>2]|0)<0)break;else{i=g;h=v}}f[w+(i<<3)>>2]=-1;if((l|0)<0){c=w;g=w;h=w}else{c=f[I>>2]|0;f[c+(j<<2)>>2]=l;f[c+(l<<2)>>2]=j;c=w;g=w;l=w;h=w;i=x;break a}}else{c=v;g=t;h=s}while(0);i=f[p+(q<<2)>>2]|0;if((i|0)>0){h=0;c=f[B+(q<<2)>>2]|0;while(1){g=x+(c<<3)|0;if((f[g>>2]|0)<0)break;h=h+1|0;if((h|0)>=(i|0)){m=B;k=p;c=x;g=x;l=x;h=x;i=x;break a}else c=c+1|0}f[g>>2]=r;f[e+(c<<3)+4>>2]=j;m=B;k=p;c=e;g=e;l=e;h=e;i=e}else{k=p;l=w;i=x}}while(0);j=j+1|0;if((j|0)>=(y|0))break;else{v=c;t=g;w=l;s=h;x=i}}}f[b>>2]=F-o>>2;if(B){if((C|0)!=(B|0))f[E>>2]=C+(~((C+-4-B|0)>>>2)<<2);ds(D);d=f[J>>2]|0;e=d}if(e|0){c=f[G>>2]|0;if((c|0)!=(e|0))f[G>>2]=c+(~((c+-8-e|0)>>>3)<<3);ds(d)}c=f[L>>2]|0;if(c|0){d=f[H>>2]|0;if((d|0)!=(c|0))f[H>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}L=1;u=M;return L|0}function Ib(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=La,o=La,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=La;M=u;u=u+48|0;L=M+20|0;G=M;K=M+8|0;D=L+16|0;f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;f[L+12>>2]=0;n[D>>2]=$(1.0);J=a+80|0;xl(K,f[J>>2]|0);g=f[J>>2]|0;a:do if((g|0)>0){A=c+48|0;B=c+40|0;x=L+4|0;z=L+12|0;w=L+8|0;C=a+40|0;y=a+64|0;v=f[d>>2]|0;q=0;t=0;s=0;while(1){p=v+t|0;k=A;j=f[k>>2]|0;k=f[k+4>>2]|0;r=B;r=mo(p|0,((p|0)<0)<<31>>31|0,f[r>>2]|0,f[r+4>>2]|0)|0;k=Kp(r|0,I|0,j|0,k|0)|0;k=(f[f[c>>2]>>2]|0)+k|0;j=k;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;k=k+4|0;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;r=G;f[r>>2]=j;f[r+4>>2]=k;r=(j^318)+239^k;p=(q|0)==0;b:do if(!p){g=q+-1|0;e=(g&q|0)==0;if(e)i=r&g;else i=(r>>>0)%(q>>>0)|0;d=f[(f[L>>2]|0)+(i<<2)>>2]|0;do if(d|0?(F=f[d>>2]|0,F|0):0){c:do if(e){d=F;while(1){if((f[d+4>>2]&g|0)!=(i|0)){i=20;break c}if((f[d+8>>2]|0)==(j|0)?(f[d+12>>2]|0)==(k|0):0){i=19;break c}d=f[d>>2]|0;if(!d){i=20;break}}}else{d=F;while(1){if((((f[d+4>>2]|0)>>>0)%(q>>>0)|0|0)!=(i|0)){i=20;break c}if((f[d+8>>2]|0)==(j|0)?(f[d+12>>2]|0)==(k|0):0){i=19;break c}d=f[d>>2]|0;if(!d){i=20;break}}}while(0);if((i|0)==19){i=0;f[(f[K>>2]|0)+(t<<2)>>2]=f[d+16>>2];e=s;break b}else if((i|0)==20)if(p){d=0;i=35;break b}else break}while(0);i=q+-1|0;g=(i&q|0)==0;if(g)d=i&r;else d=(r>>>0)%(q>>>0)|0;e=f[(f[L>>2]|0)+(d<<2)>>2]|0;if((e|0)!=0?(E=f[e>>2]|0,(E|0)!=0):0)if(g){e=E;while(1){if((f[e+4>>2]&i|0)!=(d|0)){i=35;break b}if((f[e+8>>2]|0)==(j|0)?(f[e+12>>2]|0)==(k|0):0){i=48;break b}e=f[e>>2]|0;if(!e){i=35;break}}}else{e=E;while(1){if((((f[e+4>>2]|0)>>>0)%(q>>>0)|0|0)!=(d|0)){i=35;break b}if((f[e+8>>2]|0)==(j|0)?(f[e+12>>2]|0)==(k|0):0){i=48;break b}e=f[e>>2]|0;if(!e){i=35;break}}}else i=35}else{d=0;i=35}while(0);if((i|0)==35){i=0;l=no(20)|0;g=l+8|0;f[g>>2]=j;f[g+4>>2]=k;f[l+16>>2]=s;f[l+4>>2]=r;f[l>>2]=0;o=$(((f[z>>2]|0)+1|0)>>>0);N=$(q>>>0);m=$(n[D>>2]);do if(p|o>$(N*m)){d=(q>>>0<3|(q+-1&q|0)!=0)&1|q<<1;e=~~$(W($(o/m)))>>>0;Ji(L,d>>>0>>0?e:d);d=f[x>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&r;break}else{g=d;d=(r>>>0)%(d>>>0)|0;break}}else g=q;while(0);e=(f[L>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[l>>2]=f[w>>2];f[w>>2]=l;f[e>>2]=w;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else d=(d>>>0)%(g>>>0)|0;d=(f[L>>2]|0)+(d<<2)|0;i=46}}else{f[l>>2]=f[d>>2];i=46}if((i|0)==46)f[d>>2]=l;f[z>>2]=(f[z>>2]|0)+1;i=48}if((i|0)==48){r=C;e=f[r>>2]|0;r=mo(e|0,f[r+4>>2]|0,s|0,((s|0)<0)<<31>>31|0)|0;Fh((f[f[y>>2]>>2]|0)+r|0,G|0,e|0)|0;f[(f[K>>2]|0)+(t<<2)>>2]=s;e=s+1|0}d=t+1|0;g=f[J>>2]|0;if((d|0)>=(g|0)){p=e;break a}q=f[x>>2]|0;t=d;s=e}}else p=0;while(0);if((p|0)!=(g|0)){l=a+84|0;if(!(b[l>>0]|0)){g=f[a+68>>2]|0;d=(f[a+72>>2]|0)-g|0;if((d|0)>0){i=f[K>>2]|0;e=d>>2;d=0;do{a=g+(d<<2)|0;f[a>>2]=f[i+(f[a>>2]<<2)>>2];d=d+1|0}while((d|0)<(e|0))}}else{b[l>>0]=0;j=a+68|0;i=a+72|0;e=f[i>>2]|0;d=f[j>>2]|0;k=e-d>>2;if(g>>>0<=k>>>0){if(g>>>0>>0?(H=d+(g<<2)|0,(e|0)!=(H|0)):0)f[i>>2]=e+(~((e+-4-H|0)>>>2)<<2)}else{Xh(j,g-k|0,1592);g=f[J>>2]|0}if((g|0)>0){i=f[K>>2]|0;if(b[l>>0]|0)Ga(21905,21924,89,22019);d=f[a+68>>2]|0;e=0;do{f[d+(e<<2)>>2]=f[i+(e<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}f[J>>2]=p}g=f[K>>2]|0;if(g|0){e=K+4|0;d=f[e>>2]|0;if((d|0)!=(g|0))f[e>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g)}d=f[L+8>>2]|0;if(d|0)do{K=d;d=f[d>>2]|0;ds(K)}while((d|0)!=0);d=f[L>>2]|0;f[L>>2]=0;if(!d){u=M;return p|0}ds(d);u=M;return p|0}function Jb(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,o=La,p=La,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=La;O=u;u=u+48|0;N=O+16|0;J=O+12|0;M=O;F=N+16|0;f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;n[F>>2]=$(1.0);L=a+80|0;xl(M,f[L>>2]|0);i=f[L>>2]|0;a:do if((i|0)>0){C=c+48|0;D=c+40|0;z=N+4|0;B=N+12|0;y=N+8|0;E=a+40|0;A=a+64|0;x=f[e>>2]|0;s=0;w=0;v=0;while(1){l=x+w|0;m=C;k=f[m>>2]|0;m=f[m+4>>2]|0;t=D;t=mo(l|0,((l|0)<0)<<31>>31|0,f[t>>2]|0,f[t+4>>2]|0)|0;m=Kp(t|0,I|0,k|0,m|0)|0;m=(f[f[c>>2]>>2]|0)+m|0;m=h[m>>0]|h[m+1>>0]<<8|h[m+2>>0]<<16|h[m+3>>0]<<24;f[J>>2]=m;k=m&65535;t=m>>>16;l=t&65535;t=(m&65535^318)+239^t;r=(s|0)==0;b:do if(!r){i=s+-1|0;g=(i&s|0)==0;if(g)j=t&i;else j=(t>>>0)%(s>>>0)|0;e=f[(f[N>>2]|0)+(j<<2)>>2]|0;do if(e|0?(H=f[e>>2]|0,H|0):0){c:do if(g){e=H;while(1){if((f[e+4>>2]&i|0)!=(j|0)){q=20;break c}if((d[e+8>>1]|0)==k<<16>>16?(d[e+10>>1]|0)==l<<16>>16:0){q=19;break c}e=f[e>>2]|0;if(!e){q=20;break}}}else{e=H;while(1){if((((f[e+4>>2]|0)>>>0)%(s>>>0)|0|0)!=(j|0)){q=20;break c}if((d[e+8>>1]|0)==k<<16>>16?(d[e+10>>1]|0)==l<<16>>16:0){q=19;break c}e=f[e>>2]|0;if(!e){q=20;break}}}while(0);if((q|0)==19){q=0;f[(f[M>>2]|0)+(w<<2)>>2]=f[e+12>>2];g=v;break b}else if((q|0)==20)if(r){e=0;q=35;break b}else break}while(0);j=s+-1|0;i=(j&s|0)==0;if(i)e=j&t;else e=(t>>>0)%(s>>>0)|0;g=f[(f[N>>2]|0)+(e<<2)>>2]|0;if((g|0)!=0?(G=f[g>>2]|0,(G|0)!=0):0)if(i){g=G;while(1){if((f[g+4>>2]&j|0)!=(e|0)){q=35;break b}if((d[g+8>>1]|0)==k<<16>>16?(d[g+10>>1]|0)==l<<16>>16:0){q=48;break b}g=f[g>>2]|0;if(!g){q=35;break}}}else{g=G;while(1){if((((f[g+4>>2]|0)>>>0)%(s>>>0)|0|0)!=(e|0)){q=35;break b}if((d[g+8>>1]|0)==k<<16>>16?(d[g+10>>1]|0)==l<<16>>16:0){q=48;break b}g=f[g>>2]|0;if(!g){q=35;break}}}else q=35}else{e=0;q=35}while(0);if((q|0)==35){q=0;j=no(16)|0;l=j+8|0;d[l>>1]=m;d[l+2>>1]=m>>>16;f[j+12>>2]=v;f[j+4>>2]=t;f[j>>2]=0;p=$(((f[B>>2]|0)+1|0)>>>0);P=$(s>>>0);o=$(n[F>>2]);do if(r|p>$(P*o)){e=(s>>>0<3|(s+-1&s|0)!=0)&1|s<<1;g=~~$(W($(p/o)))>>>0;Fi(N,e>>>0>>0?g:e);e=f[z>>2]|0;g=e+-1|0;if(!(g&e)){i=e;e=g&t;break}else{i=e;e=(t>>>0)%(e>>>0)|0;break}}else i=s;while(0);g=(f[N>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){f[j>>2]=f[y>>2];f[y>>2]=j;f[g>>2]=y;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=i+-1|0;if(!(g&i))e=e&g;else e=(e>>>0)%(i>>>0)|0;e=(f[N>>2]|0)+(e<<2)|0;q=46}}else{f[j>>2]=f[e>>2];q=46}if((q|0)==46)f[e>>2]=j;f[B>>2]=(f[B>>2]|0)+1;q=48}if((q|0)==48){t=E;g=f[t>>2]|0;t=mo(g|0,f[t+4>>2]|0,v|0,((v|0)<0)<<31>>31|0)|0;Fh((f[f[A>>2]>>2]|0)+t|0,J|0,g|0)|0;f[(f[M>>2]|0)+(w<<2)>>2]=v;g=v+1|0}e=w+1|0;i=f[L>>2]|0;if((e|0)>=(i|0)){q=g;break a}s=f[z>>2]|0;w=e;v=g}}else q=0;while(0);if((q|0)!=(i|0)){m=a+84|0;if(!(b[m>>0]|0)){i=f[a+68>>2]|0;e=(f[a+72>>2]|0)-i|0;if((e|0)>0){j=f[M>>2]|0;g=e>>2;e=0;do{a=i+(e<<2)|0;f[a>>2]=f[j+(f[a>>2]<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}else{b[m>>0]=0;k=a+68|0;j=a+72|0;g=f[j>>2]|0;e=f[k>>2]|0;l=g-e>>2;if(i>>>0<=l>>>0){if(i>>>0>>0?(K=e+(i<<2)|0,(g|0)!=(K|0)):0)f[j>>2]=g+(~((g+-4-K|0)>>>2)<<2)}else{Xh(k,i-l|0,1592);i=f[L>>2]|0}if((i|0)>0){j=f[M>>2]|0;if(b[m>>0]|0)Ga(21905,21924,89,22019);e=f[a+68>>2]|0;g=0;do{f[e+(g<<2)>>2]=f[j+(g<<2)>>2];g=g+1|0}while((g|0)<(i|0))}}f[L>>2]=q}i=f[M>>2]|0;if(i|0){g=M+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);ds(i)}e=f[N+8>>2]|0;if(e|0)do{M=e;e=f[e>>2]|0;ds(M)}while((e|0)!=0);e=f[N>>2]|0;f[N>>2]=0;if(!e){u=O;return q|0}ds(e);u=O;return q|0}function Kb(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,o=La,p=La,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=La;O=u;u=u+48|0;N=O+12|0;J=O+32|0;M=O;F=N+16|0;f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;n[F>>2]=$(1.0);L=a+80|0;xl(M,f[L>>2]|0);i=f[L>>2]|0;a:do if((i|0)>0){C=c+48|0;D=c+40|0;z=N+4|0;B=N+12|0;y=N+8|0;E=a+40|0;A=a+64|0;x=f[e>>2]|0;s=0;w=0;v=0;while(1){l=x+w|0;m=C;k=f[m>>2]|0;m=f[m+4>>2]|0;t=D;t=mo(l|0,((l|0)<0)<<31>>31|0,f[t>>2]|0,f[t+4>>2]|0)|0;m=Kp(t|0,I|0,k|0,m|0)|0;m=(f[f[c>>2]>>2]|0)+m|0;m=h[m>>0]|h[m+1>>0]<<8;d[J>>1]=m;k=m&255;t=(m&65535)>>>8;l=t&255;t=((m&255^318)+239<<16>>16^t)&65535;r=(s|0)==0;b:do if(!r){i=s+-1|0;g=(i&s|0)==0;if(g)j=t&i;else j=(t>>>0)%(s>>>0)|0;e=f[(f[N>>2]|0)+(j<<2)>>2]|0;do if(e|0?(H=f[e>>2]|0,H|0):0){c:do if(g){e=H;while(1){if((f[e+4>>2]&i|0)!=(j|0)){q=20;break c}if((b[e+8>>0]|0)==k<<24>>24?(b[e+9>>0]|0)==l<<24>>24:0){q=19;break c}e=f[e>>2]|0;if(!e){q=20;break}}}else{e=H;while(1){if((((f[e+4>>2]|0)>>>0)%(s>>>0)|0|0)!=(j|0)){q=20;break c}if((b[e+8>>0]|0)==k<<24>>24?(b[e+9>>0]|0)==l<<24>>24:0){q=19;break c}e=f[e>>2]|0;if(!e){q=20;break}}}while(0);if((q|0)==19){q=0;f[(f[M>>2]|0)+(w<<2)>>2]=f[e+12>>2];g=v;break b}else if((q|0)==20)if(r){e=0;q=35;break b}else break}while(0);j=s+-1|0;i=(j&s|0)==0;if(i)e=j&t;else e=(t>>>0)%(s>>>0)|0;g=f[(f[N>>2]|0)+(e<<2)>>2]|0;if((g|0)!=0?(G=f[g>>2]|0,(G|0)!=0):0)if(i){g=G;while(1){if((f[g+4>>2]&j|0)!=(e|0)){q=35;break b}if((b[g+8>>0]|0)==k<<24>>24?(b[g+9>>0]|0)==l<<24>>24:0){q=48;break b}g=f[g>>2]|0;if(!g){q=35;break}}}else{g=G;while(1){if((((f[g+4>>2]|0)>>>0)%(s>>>0)|0|0)!=(e|0)){q=35;break b}if((b[g+8>>0]|0)==k<<24>>24?(b[g+9>>0]|0)==l<<24>>24:0){q=48;break b}g=f[g>>2]|0;if(!g){q=35;break}}}else q=35}else{e=0;q=35}while(0);if((q|0)==35){q=0;j=no(16)|0;l=j+8|0;b[l>>0]=m;b[l+1>>0]=m>>8;f[j+12>>2]=v;f[j+4>>2]=t;f[j>>2]=0;p=$(((f[B>>2]|0)+1|0)>>>0);P=$(s>>>0);o=$(n[F>>2]);do if(r|p>$(P*o)){e=(s>>>0<3|(s+-1&s|0)!=0)&1|s<<1;g=~~$(W($(p/o)))>>>0;Mi(N,e>>>0>>0?g:e);e=f[z>>2]|0;g=e+-1|0;if(!(g&e)){i=e;e=g&t;break}else{i=e;e=(t>>>0)%(e>>>0)|0;break}}else i=s;while(0);g=(f[N>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){f[j>>2]=f[y>>2];f[y>>2]=j;f[g>>2]=y;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=i+-1|0;if(!(g&i))e=e&g;else e=(e>>>0)%(i>>>0)|0;e=(f[N>>2]|0)+(e<<2)|0;q=46}}else{f[j>>2]=f[e>>2];q=46}if((q|0)==46)f[e>>2]=j;f[B>>2]=(f[B>>2]|0)+1;q=48}if((q|0)==48){t=E;g=f[t>>2]|0;t=mo(g|0,f[t+4>>2]|0,v|0,((v|0)<0)<<31>>31|0)|0;Fh((f[f[A>>2]>>2]|0)+t|0,J|0,g|0)|0;f[(f[M>>2]|0)+(w<<2)>>2]=v;g=v+1|0}e=w+1|0;i=f[L>>2]|0;if((e|0)>=(i|0)){q=g;break a}s=f[z>>2]|0;w=e;v=g}}else q=0;while(0);if((q|0)!=(i|0)){m=a+84|0;if(!(b[m>>0]|0)){i=f[a+68>>2]|0;e=(f[a+72>>2]|0)-i|0;if((e|0)>0){j=f[M>>2]|0;g=e>>2;e=0;do{a=i+(e<<2)|0;f[a>>2]=f[j+(f[a>>2]<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}else{b[m>>0]=0;k=a+68|0;j=a+72|0;g=f[j>>2]|0;e=f[k>>2]|0;l=g-e>>2;if(i>>>0<=l>>>0){if(i>>>0>>0?(K=e+(i<<2)|0,(g|0)!=(K|0)):0)f[j>>2]=g+(~((g+-4-K|0)>>>2)<<2)}else{Xh(k,i-l|0,1592);i=f[L>>2]|0}if((i|0)>0){j=f[M>>2]|0;if(b[m>>0]|0)Ga(21905,21924,89,22019);e=f[a+68>>2]|0;g=0;do{f[e+(g<<2)>>2]=f[j+(g<<2)>>2];g=g+1|0}while((g|0)<(i|0))}}f[L>>2]=q}i=f[M>>2]|0;if(i|0){g=M+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);ds(i)}e=f[N+8>>2]|0;if(e|0)do{M=e;e=f[e>>2]|0;ds(M)}while((e|0)!=0);e=f[N>>2]|0;f[N>>2]=0;if(!e){u=O;return q|0}ds(e);u=O;return q|0}function Lb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;g=k+16|0;e=k+12|0;i=k+8|0;j=k+4|0;h=k;switch(f[c+28>>2]|0){case 9:{d=f[d>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[g>>2]=f[e>>2];d=ac(a,c,g)|0;break}case 2:{f[i>>2]=d;f[g>>2]=f[i>>2];d=Ib(a,c,g)|0;break}case 3:{f[j>>2]=d;f[g>>2]=f[j>>2];d=Gb(a,c,g)|0;break}case 4:{f[h>>2]=d;f[g>>2]=f[h>>2];d=Yb(a,c,g)|0;break}default:d=0}break}case 1:{d=f[d>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[g>>2]=f[e>>2];d=bc(a,c,g)|0;break}case 2:{f[i>>2]=d;f[g>>2]=f[i>>2];d=Kb(a,c,g)|0;break}case 3:{f[j>>2]=d;f[g>>2]=f[j>>2];d=Fb(a,c,g)|0;break}case 4:{f[h>>2]=d;f[g>>2]=f[h>>2];d=Vb(a,c,g)|0;break}default:d=0}break}case 11:case 2:{d=f[d>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[g>>2]=f[e>>2];d=bc(a,c,g)|0;break}case 2:{f[i>>2]=d;f[g>>2]=f[i>>2];d=Kb(a,c,g)|0;break}case 3:{f[j>>2]=d;f[g>>2]=f[j>>2];d=Fb(a,c,g)|0;break}case 4:{f[h>>2]=d;f[g>>2]=f[h>>2];d=Vb(a,c,g)|0;break}default:d=0}break}case 4:{d=f[d>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[g>>2]=f[e>>2];d=$b(a,c,g)|0;break}case 2:{f[i>>2]=d;f[g>>2]=f[i>>2];d=Jb(a,c,g)|0;break}case 3:{f[j>>2]=d;f[g>>2]=f[j>>2];d=Db(a,c,g)|0;break}case 4:{f[h>>2]=d;f[g>>2]=f[h>>2];d=Sb(a,c,g)|0;break}default:d=0}break}case 3:{d=f[d>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[g>>2]=f[e>>2];d=$b(a,c,g)|0;break}case 2:{f[i>>2]=d;f[g>>2]=f[i>>2];d=Jb(a,c,g)|0;break}case 3:{f[j>>2]=d;f[g>>2]=f[j>>2];d=Db(a,c,g)|0;break}case 4:{f[h>>2]=d;f[g>>2]=f[h>>2];d=Sb(a,c,g)|0;break}default:d=0}break}case 6:{d=f[d>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[g>>2]=f[e>>2];d=ac(a,c,g)|0;break}case 2:{f[i>>2]=d;f[g>>2]=f[i>>2];d=Ib(a,c,g)|0;break}case 3:{f[j>>2]=d;f[g>>2]=f[j>>2];d=Gb(a,c,g)|0;break}case 4:{f[h>>2]=d;f[g>>2]=f[h>>2];d=Yb(a,c,g)|0;break}default:d=0}break}case 5:{d=f[d>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[g>>2]=f[e>>2];d=ac(a,c,g)|0;break}case 2:{f[i>>2]=d;f[g>>2]=f[i>>2];d=Ib(a,c,g)|0;break}case 3:{f[j>>2]=d;f[g>>2]=f[j>>2];d=Gb(a,c,g)|0;break}case 4:{f[h>>2]=d;f[g>>2]=f[h>>2];d=Yb(a,c,g)|0;break}default:d=0}break}default:{a=-1;u=k;return a|0}}a=(d|0)==0?-1:d;u=k;return a|0}function Mb(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0;D=u;u=u+80|0;z=D+48|0;r=D+24|0;s=D;g=a+32|0;e=f[b>>2]|0;b=e+1|0;if((e|0)>=0){b=((b|0)%3|0|0)==0?e+-2|0:b;e=(((e>>>0)%3|0|0)==0?2:-1)+e|0;if((b|0)<0)b=-1073741824;else b=f[(f[f[g>>2]>>2]|0)+(b<<2)>>2]|0;if((e|0)<0){k=b;l=-1073741824}else{k=b;l=f[(f[f[g>>2]>>2]|0)+(e<<2)>>2]|0}}else{k=-1073741824;l=-1073741824}b=a+36|0;i=f[b>>2]|0;e=f[i+4>>2]|0;j=f[i>>2]|0;if(e-j>>2>>>0>k>>>0){b=j;g=e;h=i;e=j}else{Oq(i);h=f[b>>2]|0;b=f[h>>2]|0;g=f[h+4>>2]|0;e=f[i>>2]|0}t=f[e+(k<<2)>>2]|0;if(g-b>>2>>>0<=l>>>0){Oq(h);b=f[h>>2]|0}b=f[b+(l<<2)>>2]|0;m=(t|0)<(d|0);do if(m&(b|0)<(d|0)){p=t<<1;n=f[c+(p<<2)>>2]|0;o=((n|0)<0)<<31>>31;p=f[c+((p|1)<<2)>>2]|0;q=((p|0)<0)<<31>>31;l=b<<1;k=f[c+(l<<2)>>2]|0;l=f[c+((l|1)<<2)>>2]|0;if(!((k|0)!=(n|0)|(l|0)!=(p|0))){f[a+8>>2]=n;f[a+12>>2]=p;u=D;return}Mh(z,a,d);Mh(r,a,t);Mh(s,a,b);v=s;h=r;g=f[h>>2]|0;h=f[h+4>>2]|0;v=_o(f[v>>2]|0,f[v+4>>2]|0,g|0,h|0)|0;w=I;x=s+8|0;j=r+8|0;i=f[j>>2]|0;j=f[j+4>>2]|0;x=_o(f[x>>2]|0,f[x+4>>2]|0,i|0,j|0)|0;y=I;s=s+16|0;e=r+16|0;b=f[e>>2]|0;e=f[e+4>>2]|0;r=_o(f[s>>2]|0,f[s+4>>2]|0,b|0,e|0)|0;s=I;B=mo(v|0,w|0,v|0,w|0)|0;E=I;A=mo(x|0,y|0,x|0,y|0)|0;E=Kp(A|0,I|0,B|0,E|0)|0;B=I;A=mo(r|0,s|0,r|0,s|0)|0;A=Kp(E|0,B|0,A|0,I|0)|0;B=I;if((A|0)==0&(B|0)==0)break;J=z;J=_o(f[J>>2]|0,f[J+4>>2]|0,g|0,h|0)|0;H=I;G=z+8|0;G=_o(f[G>>2]|0,f[G+4>>2]|0,i|0,j|0)|0;F=I;g=z+16|0;g=_o(f[g>>2]|0,f[g+4>>2]|0,b|0,e|0)|0;h=I;E=mo(J|0,H|0,v|0,w|0)|0;b=I;j=mo(G|0,F|0,x|0,y|0)|0;b=Kp(j|0,I|0,E|0,b|0)|0;E=I;j=mo(g|0,h|0,r|0,s|0)|0;j=Kp(b|0,E|0,j|0,I|0)|0;E=I;b=_o(k|0,((k|0)<0)<<31>>31|0,n|0,o|0)|0;k=I;t=_o(l|0,((l|0)<0)<<31>>31|0,p|0,q|0)|0;d=I;n=mo(A|0,B|0,n|0,o|0)|0;m=I;p=mo(A|0,B|0,p|0,q|0)|0;o=I;c=mo(j|0,E|0,b|0,k|0)|0;z=I;i=mo(j|0,E|0,t|0,d|0)|0;l=I;m=Kp(c|0,z|0,n|0,m|0)|0;n=I;o=Kp(i|0,l|0,p|0,o|0)|0;p=I;l=mo(j|0,E|0,v|0,w|0)|0;i=I;z=mo(j|0,E|0,x|0,y|0)|0;c=I;E=mo(j|0,E|0,r|0,s|0)|0;j=I;i=jl(l|0,i|0,A|0,B|0)|0;l=I;c=jl(z|0,c|0,A|0,B|0)|0;z=I;j=jl(E|0,j|0,A|0,B|0)|0;E=I;l=_o(J|0,H|0,i|0,l|0)|0;i=I;z=_o(G|0,F|0,c|0,z|0)|0;c=I;E=_o(g|0,h|0,j|0,E|0)|0;j=I;i=mo(l|0,i|0,l|0,i|0)|0;l=I;c=mo(z|0,c|0,z|0,c|0)|0;l=Kp(c|0,I|0,i|0,l|0)|0;i=I;j=mo(E|0,j|0,E|0,j|0)|0;j=Kp(l|0,i|0,j|0,I|0)|0;i=I;k=_o(0,0,b|0,k|0)|0;l=I;i=mo(j|0,i|0,A|0,B|0)|0;j=I;b=j&2147483647;switch(i|0){case 0:{if(!b){e=0;b=0}else{e=1;b=0;g=i;h=j;C=19}break}case 1:{if(!b){e=1;b=0;C=20}else{e=1;b=0;g=i;h=j;C=19}break}default:{e=1;b=0;g=i;h=j;C=19}}if((C|0)==19)while(1){e=Ro(e|0,b|0,1)|0;b=I;J=g;g=Wo(g|0,h|0,2)|0;if(!(h>>>0>0|(h|0)==0&J>>>0>7)){C=20;break}else{h=I;C=19}}if((C|0)==20)while(1){J=Hq(i|0,j|0,e|0,b|0)|0;e=Kp(J|0,I|0,e|0,b|0)|0;e=Wo(e|0,I|0,1)|0;b=I;J=mo(e|0,b|0,e|0,b|0)|0;H=I;if(H>>>0>j>>>0|(H|0)==(j|0)&J>>>0>i>>>0)C=20;else break}E=mo(e|0,b|0,t|0,d|0)|0;F=I;C=mo(e|0,b|0,k|0,l|0)|0;G=I;H=a+20|0;c=(f[H>>2]|0)+-1|0;J=(1<<(c&31)&f[(f[a+16>>2]|0)+(c>>>5<<2)>>2]|0)!=0;f[H>>2]=c;H=_o(0,0,E|0,F|0)|0;F=Kp(m|0,n|0,(J?E:H)|0,(J?F:I)|0)|0;H=I;E=_o(0,0,C|0,G|0)|0;G=Kp(o|0,p|0,(J?C:E)|0,(J?G:I)|0)|0;J=I;H=jl(F|0,H|0,A|0,B|0)|0;J=jl(G|0,J|0,A|0,B|0)|0;f[a+8>>2]=H;f[a+12>>2]=J;u=D;return}while(0);do if(m)b=t<<1;else{if((d|0)>0){b=(d<<1)+-2|0;break}J=a+8|0;f[J>>2]=0;f[J+4>>2]=0;u=D;return}while(0);f[a+8>>2]=f[c+(b<<2)>>2];f[a+12>>2]=f[c+(b+1<<2)>>2];u=D;return}function Nb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+48|0;w=x;t=x+36|0;j=x+32|0;k=x+28|0;l=x+24|0;m=x+20|0;n=x+16|0;o=x+12|0;s=x+8|0;v=x+4|0;if((f[a+96>>2]|0)==(f[a+92>>2]|0)){u=x;return}d=a+56|0;c=f[d>>2]|0;if((c|0)==(f[a+60>>2]|0))Bj(a+52|0,b);else{f[c>>2]=f[b>>2];f[d>>2]=c+4}q=a+88|0;f[q>>2]=0;g=f[a>>2]|0;d=f[b>>2]|0;c=d+1|0;if((d|0)>=0){c=((c|0)%3|0|0)==0?d+-2|0:c;if((c|0)<0)e=-1073741824;else e=f[(f[g>>2]|0)+(c<<2)>>2]|0;c=(((d>>>0)%3|0|0)==0?2:-1)+d|0;if((c|0)<0)i=-1073741824;else i=f[(f[g>>2]|0)+(c<<2)>>2]|0}else{i=-1073741824;e=-1073741824}p=a+24|0;c=f[p>>2]|0;g=c+(e>>>5<<2)|0;h=1<<(e&31);d=f[g>>2]|0;if(!(d&h)){f[g>>2]=d|h;f[j>>2]=e;c=f[b>>2]|0;d=c+1|0;if((c|0)>=0)c=((d|0)%3|0|0)==0?c+-2|0:d;f[k>>2]=c;f[t>>2]=f[j>>2];f[w>>2]=f[k>>2];mh(a+36|0,t,w);c=f[p>>2]|0}d=c+(i>>>5<<2)|0;e=1<<(i&31);c=f[d>>2]|0;if(!(c&e)){f[d>>2]=c|e;d=a+36|0;f[l>>2]=i;c=f[b>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);f[m>>2]=c;f[t>>2]=f[l>>2];f[w>>2]=f[m>>2];mh(d,t,w)}c=f[b>>2]|0;if((c|0)<0)e=-1073741824;else e=f[(f[f[a>>2]>>2]|0)+(c<<2)>>2]|0;d=(f[p>>2]|0)+(e>>>5<<2)|0;g=1<<(e&31);c=f[d>>2]|0;if(!(g&c)){f[d>>2]=c|g;f[n>>2]=e;f[o>>2]=f[b>>2];f[t>>2]=f[n>>2];f[w>>2]=f[o>>2];mh(a+36|0,t,w)}c=f[q>>2]|0;a:do if((c|0)<3){m=a+12|0;n=a+36|0;l=a+92|0;while(1){while(1){e=a+52+(c*12|0)+4|0;d=f[e>>2]|0;if((f[a+52+(c*12|0)>>2]|0)!=(d|0))break;c=c+1|0;if((c|0)>=3)break a}o=d+-4|0;g=f[o>>2]|0;f[e>>2]=o;f[q>>2]=c;f[b>>2]=g;if((g|0)<=-1)break;o=(g>>>0)/3|0;d=f[m>>2]|0;do if(!(f[d+(o>>>5<<2)>>2]&1<<(o&31))){c=g;b:while(1){o=(c|0)/3|0;d=d+(o>>>5<<2)|0;f[d>>2]=1<<(o&31)|f[d>>2];d=f[b>>2]|0;if((d|0)<0)g=-1073741824;else g=f[(f[f[a>>2]>>2]|0)+(d<<2)>>2]|0;e=(f[p>>2]|0)+(g>>>5<<2)|0;h=1<<(g&31);c=f[e>>2]|0;if(!(h&c)){f[e>>2]=c|h;f[s>>2]=g;f[v>>2]=f[b>>2];f[t>>2]=f[s>>2];f[w>>2]=f[v>>2];mh(n,t,w);d=f[b>>2]|0}h=f[a>>2]|0;if((d|0)<0){r=69;break}c=d+1|0;c=((c|0)%3|0|0)==0?d+-2|0:c;if((c|0)<0)k=c;else k=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;c=(((d>>>0)%3|0|0)==0?2:-1)+d|0;if((c|0)>=0)c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;j=(k|0)<0;d=j?-1:(k>>>0)/3|0;e=(c|0)<0;g=e?-1:(c>>>0)/3|0;if(j)i=1;else i=(f[(f[m>>2]|0)+(d>>>5<<2)>>2]&1<<(d&31)|0)!=0;do if(e)if(i){r=69;break b}else r=58;else{if(f[(f[m>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)|0)if(i){r=69;break b}else{r=58;break}d=f[(f[h>>2]|0)+(c<<2)>>2]|0;if(!(1<<(d&31)&f[(f[p>>2]|0)+(d>>>5<<2)>>2])){o=(f[l>>2]|0)+(d<<2)|0;g=f[o>>2]|0;f[o>>2]=g+1;g=(g|0)>0?1:2}else g=0;if(i?(g|0)<=(f[q>>2]|0):0)break;f[w>>2]=c;e=a+52+(g*12|0)+4|0;d=f[e>>2]|0;if((d|0)==(f[a+52+(g*12|0)+8>>2]|0))Bj(a+52+(g*12|0)|0,w);else{f[d>>2]=c;f[e>>2]=d+4}if((f[q>>2]|0)>(g|0))f[q>>2]=g;if(i){r=69;break b}else r=58}while(0);if((r|0)==58){r=0;if(j)c=-1073741824;else c=f[(f[f[a>>2]>>2]|0)+(k<<2)>>2]|0;if(!(1<<(c&31)&f[(f[p>>2]|0)+(c>>>5<<2)>>2])){o=(f[l>>2]|0)+(c<<2)|0;e=f[o>>2]|0;f[o>>2]=e+1;e=(e|0)>0?1:2}else e=0;if((e|0)>(f[q>>2]|0))break;else c=k}f[b>>2]=c;d=f[m>>2]|0}if((r|0)==69){r=0;c=f[q>>2]|0;break}f[w>>2]=k;d=a+52+(e*12|0)+4|0;c=f[d>>2]|0;if((c|0)==(f[a+52+(e*12|0)+8>>2]|0))Bj(a+52+(e*12|0)|0,w);else{f[c>>2]=k;f[d>>2]=c+4}c=f[q>>2]|0;if((c|0)>(e|0)){f[q>>2]=e;c=e}}while(0);if((c|0)>=3)break a}u=x;return}while(0);f[b>>2]=-1073741824;u=x;return}function Ob(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0;D=u;u=u+80|0;z=D+48|0;r=D+24|0;s=D;g=a+32|0;e=f[b>>2]|0;b=e+1|0;do if((e|0)>=0){b=((b|0)%3|0|0)==0?e+-2|0:b;if(!((e>>>0)%3|0)){e=e+2|0;break}else{e=e+-1|0;break}}else b=e;while(0);l=f[(f[g>>2]|0)+28>>2]|0;k=f[l+(b<<2)>>2]|0;l=f[l+(e<<2)>>2]|0;e=a+36|0;g=f[e>>2]|0;b=f[g+4>>2]|0;j=f[g>>2]|0;if(b-j>>2>>>0>k>>>0){h=b;i=g;e=j;b=j}else{Oq(g);b=f[e>>2]|0;h=f[b+4>>2]|0;i=b;e=f[g>>2]|0;b=f[b>>2]|0}y=f[e+(k<<2)>>2]|0;if(h-b>>2>>>0<=l>>>0){Oq(i);b=f[i>>2]|0}b=f[b+(l<<2)>>2]|0;m=(y|0)<(d|0);do if(m&(b|0)<(d|0)){p=y<<1;n=f[c+(p<<2)>>2]|0;o=((n|0)<0)<<31>>31;p=f[c+((p|1)<<2)>>2]|0;q=((p|0)<0)<<31>>31;l=b<<1;k=f[c+(l<<2)>>2]|0;l=f[c+((l|1)<<2)>>2]|0;if(!((k|0)!=(n|0)|(l|0)!=(p|0))){f[a+8>>2]=n;f[a+12>>2]=p;u=D;return}Mh(z,a,d);Mh(r,a,y);Mh(s,a,b);t=s;h=r;g=f[h>>2]|0;h=f[h+4>>2]|0;t=_o(f[t>>2]|0,f[t+4>>2]|0,g|0,h|0)|0;v=I;w=s+8|0;j=r+8|0;i=f[j>>2]|0;j=f[j+4>>2]|0;w=_o(f[w>>2]|0,f[w+4>>2]|0,i|0,j|0)|0;x=I;s=s+16|0;e=r+16|0;b=f[e>>2]|0;e=f[e+4>>2]|0;r=_o(f[s>>2]|0,f[s+4>>2]|0,b|0,e|0)|0;s=I;B=mo(t|0,v|0,t|0,v|0)|0;E=I;A=mo(w|0,x|0,w|0,x|0)|0;E=Kp(A|0,I|0,B|0,E|0)|0;B=I;A=mo(r|0,s|0,r|0,s|0)|0;A=Kp(E|0,B|0,A|0,I|0)|0;B=I;if((A|0)==0&(B|0)==0)break;J=z;J=_o(f[J>>2]|0,f[J+4>>2]|0,g|0,h|0)|0;H=I;G=z+8|0;G=_o(f[G>>2]|0,f[G+4>>2]|0,i|0,j|0)|0;F=I;g=z+16|0;g=_o(f[g>>2]|0,f[g+4>>2]|0,b|0,e|0)|0;h=I;E=mo(J|0,H|0,t|0,v|0)|0;b=I;j=mo(G|0,F|0,w|0,x|0)|0;b=Kp(j|0,I|0,E|0,b|0)|0;E=I;j=mo(g|0,h|0,r|0,s|0)|0;j=Kp(b|0,E|0,j|0,I|0)|0;E=I;b=_o(k|0,((k|0)<0)<<31>>31|0,n|0,o|0)|0;k=I;y=_o(l|0,((l|0)<0)<<31>>31|0,p|0,q|0)|0;d=I;n=mo(A|0,B|0,n|0,o|0)|0;m=I;p=mo(A|0,B|0,p|0,q|0)|0;o=I;c=mo(j|0,E|0,b|0,k|0)|0;z=I;i=mo(j|0,E|0,y|0,d|0)|0;l=I;m=Kp(c|0,z|0,n|0,m|0)|0;n=I;o=Kp(i|0,l|0,p|0,o|0)|0;p=I;l=mo(j|0,E|0,t|0,v|0)|0;i=I;z=mo(j|0,E|0,w|0,x|0)|0;c=I;E=mo(j|0,E|0,r|0,s|0)|0;j=I;i=jl(l|0,i|0,A|0,B|0)|0;l=I;c=jl(z|0,c|0,A|0,B|0)|0;z=I;j=jl(E|0,j|0,A|0,B|0)|0;E=I;l=_o(J|0,H|0,i|0,l|0)|0;i=I;z=_o(G|0,F|0,c|0,z|0)|0;c=I;E=_o(g|0,h|0,j|0,E|0)|0;j=I;i=mo(l|0,i|0,l|0,i|0)|0;l=I;c=mo(z|0,c|0,z|0,c|0)|0;l=Kp(c|0,I|0,i|0,l|0)|0;i=I;j=mo(E|0,j|0,E|0,j|0)|0;j=Kp(l|0,i|0,j|0,I|0)|0;i=I;k=_o(0,0,b|0,k|0)|0;l=I;i=mo(j|0,i|0,A|0,B|0)|0;j=I;b=j&2147483647;switch(i|0){case 0:{if(!b){e=0;b=0}else{e=1;b=0;g=i;h=j;C=18}break}case 1:{if(!b){e=1;b=0;C=19}else{e=1;b=0;g=i;h=j;C=18}break}default:{e=1;b=0;g=i;h=j;C=18}}if((C|0)==18)while(1){e=Ro(e|0,b|0,1)|0;b=I;J=g;g=Wo(g|0,h|0,2)|0;if(!(h>>>0>0|(h|0)==0&J>>>0>7)){C=19;break}else{h=I;C=18}}if((C|0)==19)while(1){J=Hq(i|0,j|0,e|0,b|0)|0;e=Kp(J|0,I|0,e|0,b|0)|0;e=Wo(e|0,I|0,1)|0;b=I;J=mo(e|0,b|0,e|0,b|0)|0;H=I;if(H>>>0>j>>>0|(H|0)==(j|0)&J>>>0>i>>>0)C=19;else break}E=mo(e|0,b|0,y|0,d|0)|0;F=I;C=mo(e|0,b|0,k|0,l|0)|0;G=I;H=a+20|0;c=(f[H>>2]|0)+-1|0;J=(1<<(c&31)&f[(f[a+16>>2]|0)+(c>>>5<<2)>>2]|0)!=0;f[H>>2]=c;H=_o(0,0,E|0,F|0)|0;F=Kp(m|0,n|0,(J?E:H)|0,(J?F:I)|0)|0;H=I;E=_o(0,0,C|0,G|0)|0;G=Kp(o|0,p|0,(J?C:E)|0,(J?G:I)|0)|0;J=I;H=jl(F|0,H|0,A|0,B|0)|0;J=jl(G|0,J|0,A|0,B|0)|0;f[a+8>>2]=H;f[a+12>>2]=J;u=D;return}while(0);do if(m)b=y<<1;else{if((d|0)>0){b=(d<<1)+-2|0;break}J=a+8|0;f[J>>2]=0;f[J+4>>2]=0;u=D;return}while(0);f[a+8>>2]=f[c+(b<<2)>>2];f[a+12>>2]=f[c+(b+1<<2)>>2];u=D;return}function Pb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=La,j=0,k=La,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=La;A=u;u=u+48|0;y=A+24|0;z=A;e=Id(a,c)|0;if(e|0){f[z>>2]=e;f[y>>2]=f[z>>2];Mg(a,y)|0}im(z,c);c=z+12|0;f[c>>2]=0;x=z+16|0;f[x>>2]=0;f[z+20>>2]=0;j=d+4|0;g=(f[j>>2]|0)-(f[d>>2]|0)|0;if(g){if((g|0)<0)Pq(c);e=no(g)|0;f[x>>2]=e;f[c>>2]=e;f[z+20>>2]=e+g;g=f[d>>2]|0;c=(f[j>>2]|0)-g|0;if((c|0)>0){Fh(e|0,g|0,c|0)|0;f[x>>2]=e+c}}else e=0;s=b[z+11>>0]|0;v=s<<24>>24<0;t=v?f[z>>2]|0:z;s=v?f[z+4>>2]|0:s&255;if(s>>>0>3){g=t;c=s;j=s;while(1){v=X(h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24,1540483477)|0;c=(X(v>>>24^v,1540483477)|0)^(X(c,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else g=g+4|0}v=s+-4|0;g=v&-4;j=t+(g+4)|0;g=v-g|0}else{j=t;c=s;g=s}switch(g|0){case 3:{c=h[j+2>>0]<<16^c;w=13;break}case 2:{w=13;break}case 1:{w=14;break}default:{}}if((w|0)==13){c=h[j+1>>0]<<8^c;w=14}if((w|0)==14)c=X(h[j>>0]^c,1540483477)|0;v=X(c>>>13^c,1540483477)|0;v=v>>>15^v;q=a+4|0;j=f[q>>2]|0;r=(j|0)==0;a:do if(!r){p=j+-1|0;d=(p&j|0)==0;if(d)c=v&p;else c=(v>>>0)%(j>>>0)|0;g=f[(f[a>>2]|0)+(c<<2)>>2]|0;if((g|0)!=0?(o=f[g>>2]|0,(o|0)!=0):0){g=(s|0)==0;if(d){if(g){g=o;while(1){if((f[g+4>>2]&p|0)!=(c|0)){w=48;break a}t=b[g+8+11>>0]|0;if(!((t<<24>>24<0?f[g+12>>2]|0:t&255)|0))break a;g=f[g>>2]|0;if(!g){w=48;break a}}}while(1){if((f[o+4>>2]&p|0)!=(c|0)){w=48;break a}g=o+8|0;l=b[g+11>>0]|0;m=l<<24>>24<0;l=l&255;do if(((m?f[o+12>>2]|0:l)|0)==(s|0)){d=f[g>>2]|0;if(m)if(!(nm(d,t,s)|0))break a;else break;if((d&255)<<24>>24==(b[t>>0]|0)){d=t;do{l=l+-1|0;g=g+1|0;if(!l)break a;d=d+1|0}while((b[g>>0]|0)==(b[d>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=48;break}}}else{if(g){g=o;while(1){if((((f[g+4>>2]|0)>>>0)%(j>>>0)|0|0)!=(c|0)){w=48;break a}t=b[g+8+11>>0]|0;if(!((t<<24>>24<0?f[g+12>>2]|0:t&255)|0))break a;g=f[g>>2]|0;if(!g){w=48;break a}}}while(1){if((((f[o+4>>2]|0)>>>0)%(j>>>0)|0|0)!=(c|0)){w=48;break a}g=o+8|0;l=b[g+11>>0]|0;m=l<<24>>24<0;l=l&255;do if(((m?f[o+12>>2]|0:l)|0)==(s|0)){d=f[g>>2]|0;if(m)if(!(nm(d,t,s)|0))break a;else break;if((d&255)<<24>>24==(b[t>>0]|0)){d=t;do{l=l+-1|0;g=g+1|0;if(!l)break a;d=d+1|0}while((b[g>>0]|0)==(b[d>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=48;break}}}}else w=48}else{c=0;w=48}while(0);if((w|0)==48){Qi(y,a,v,z);d=a+12|0;k=$(((f[d>>2]|0)+1|0)>>>0);B=$(j>>>0);i=$(n[a+16>>2]);do if(r|k>$(B*i)){e=(j>>>0<3|(j+-1&j|0)!=0)&1|j<<1;c=~~$(W($(k/i)))>>>0;Ri(a,e>>>0>>0?c:e);e=f[q>>2]|0;c=e+-1|0;if(!(c&e)){j=e;c=c&v;break}else{j=e;c=(v>>>0)%(e>>>0)|0;break}}while(0);e=f[(f[a>>2]|0)+(c<<2)>>2]|0;if(!e){g=a+8|0;f[f[y>>2]>>2]=f[g>>2];f[g>>2]=f[y>>2];f[(f[a>>2]|0)+(c<<2)>>2]=g;g=f[y>>2]|0;e=f[g>>2]|0;if(!e)e=y;else{e=f[e+4>>2]|0;c=j+-1|0;if(!(c&j))e=e&c;else e=(e>>>0)%(j>>>0)|0;f[(f[a>>2]|0)+(e<<2)>>2]=g;e=y}}else{f[f[y>>2]>>2]=f[e>>2];f[e>>2]=f[y>>2];e=y}f[d>>2]=(f[d>>2]|0)+1;f[e>>2]=0;e=f[z+12>>2]|0}if(!e){Op(z);u=A;return}if((f[x>>2]|0)!=(e|0))f[x>>2]=e;ds(e);Op(z);u=A;return}function Qb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;P=u;u=u+96|0;E=P+72|0;J=P+48|0;K=P+24|0;L=P;H=a+4|0;if(!(f[H>>2]|0))Ga(11768,11790,46,11955);G=a+8|0;if(!(f[G>>2]|0))Ga(11768,11790,46,11955);F=a+16|0;i=f[F>>2]|0;l=f[c>>2]|0;f[E>>2]=i;f[E+4>>2]=l;D=E+8|0;f[D>>2]=l;b[E+12>>0]=1;m=(l|0)<0;if(m)k=-1073741824;else k=f[(f[i>>2]|0)+(l<<2)>>2]|0;C=a+20|0;i=f[C>>2]|0;c=f[i>>2]|0;if((f[i+4>>2]|0)-c>>2>>>0<=k>>>0){Oq(i);c=f[i>>2]|0}bh(J,a,f[c+(k<<2)>>2]|0);i=f[D>>2]|0;v=a+28|0;c=(f[v>>2]|0)==0;a:do if((i|0)>=0){z=K+8|0;w=J+8|0;B=K+16|0;x=J+16|0;y=L+8|0;A=L+16|0;s=l+1|0;t=l+(m?0:((l>>>0)%3|0|0)==0?2:-1)|0;s=m?l:((s|0)%3|0|0)==0?l+-2|0:s;r=0;q=0;l=0;o=0;m=0;p=0;while(1){do if(!c){c=i+1|0;c=((c|0)%3|0|0)==0?i+-2|0:c;if(!((i>>>0)%3|0)){n=i+2|0;break}else{n=i+-1|0;break}}else{c=s;n=t}while(0);if(!(f[H>>2]|0)){c=17;break}if(!(f[G>>2]|0)){c=17;break}if((c|0)<0)k=-1073741824;else k=f[(f[f[F>>2]>>2]|0)+(c<<2)>>2]|0;i=f[C>>2]|0;c=f[i>>2]|0;if((f[i+4>>2]|0)-c>>2>>>0<=k>>>0){Oq(i);c=f[i>>2]|0}bh(K,a,f[c+(k<<2)>>2]|0);if(!(f[H>>2]|0)){c=25;break}if(!(f[G>>2]|0)){c=25;break}if((n|0)<0)k=-1073741824;else k=f[(f[f[F>>2]>>2]|0)+(n<<2)>>2]|0;i=f[C>>2]|0;c=f[i>>2]|0;if((f[i+4>>2]|0)-c>>2>>>0<=k>>>0){Oq(i);c=f[i>>2]|0}bh(L,a,f[c+(k<<2)>>2]|0);i=K;Z=J;Y=f[Z>>2]|0;Z=f[Z+4>>2]|0;i=_o(f[i>>2]|0,f[i+4>>2]|0,Y|0,Z|0)|0;c=I;Q=z;$=w;_=f[$>>2]|0;$=f[$+4>>2]|0;Q=_o(f[Q>>2]|0,f[Q+4>>2]|0,_|0,$|0)|0;R=I;U=B;S=x;T=f[S>>2]|0;S=f[S+4>>2]|0;U=_o(f[U>>2]|0,f[U+4>>2]|0,T|0,S|0)|0;V=I;n=L;Z=_o(f[n>>2]|0,f[n+4>>2]|0,Y|0,Z|0)|0;Y=I;n=y;$=_o(f[n>>2]|0,f[n+4>>2]|0,_|0,$|0)|0;_=I;n=A;S=_o(f[n>>2]|0,f[n+4>>2]|0,T|0,S|0)|0;T=I;n=mo(S|0,T|0,Q|0,R|0)|0;k=I;X=mo($|0,_|0,U|0,V|0)|0;W=I;V=mo(Z|0,Y|0,U|0,V|0)|0;U=I;T=mo(S|0,T|0,i|0,c|0)|0;S=I;c=mo($|0,_|0,i|0,c|0)|0;i=I;R=mo(Z|0,Y|0,Q|0,R|0)|0;Q=I;r=_o(r|0,q|0,X|0,W|0)|0;k=Kp(r|0,I|0,n|0,k|0)|0;n=I;l=Kp(V|0,U|0,l|0,o|0)|0;l=_o(l|0,I|0,T|0,S|0)|0;o=I;m=_o(m|0,p|0,R|0,Q|0)|0;m=Kp(m|0,I|0,c|0,i|0)|0;p=I;Sh(E);i=f[D>>2]|0;c=(f[v>>2]|0)==0;if((i|0)<0){j=n;N=k;O=o;h=l;g=p;e=m;M=c;break a}else{r=k;q=n}}if((c|0)==17)Ga(11768,11977,70,12142);else if((c|0)==25)Ga(11768,11977,70,12142)}else{j=0;N=0;O=0;h=0;g=0;e=0;M=c}while(0);$=(j|0)>-1|(j|0)==-1&N>>>0>4294967295;i=_o(0,0,N|0,j|0)|0;c=$?j:I;W=(O|0)>-1|(O|0)==-1&h>>>0>4294967295;X=_o(0,0,h|0,O|0)|0;Y=W?O:I;_=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;Z=_o(0,0,e|0,g|0)|0;_=Kp((W?h:X)|0,Y|0,(_?e:Z)|0,(_?g:I)|0)|0;c=Kp(_|0,I|0,($?N:i)|0,c|0)|0;i=I;if(M)if((c|0)>536870912){$=Wo(c|0,i|0,29)|0;$=$&7;i=jl(N|0,j|0,$|0,0)|0;j=I;h=jl(h|0,O|0,$|0,0)|0;c=I;e=jl(e|0,g|0,$|0,0)|0;g=I}else{i=N;c=O}else if((i|0)>0|(i|0)==0&c>>>0>536870912){_=Wo(c|0,i|0,29)|0;$=I;i=jl(N|0,j|0,_|0,$|0)|0;j=I;h=jl(h|0,O|0,_|0,$|0)|0;c=I;e=jl(e|0,g|0,_|0,$|0)|0;g=I}else{i=N;c=O}Z=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;_=_o(0,0,i|0,j|0)|0;$=Z?j:I;U=(c|0)>-1|(c|0)==-1&h>>>0>4294967295;V=_o(0,0,h|0,c|0)|0;W=U?c:I;Y=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;X=_o(0,0,e|0,g|0)|0;Y=Kp((U?h:V)|0,W|0,(Y?e:X)|0,(Y?g:I)|0)|0;$=Kp(Y|0,I|0,(Z?i:_)|0,$|0)|0;_=I;if((_|0)<0|(_|0)==0&$>>>0<536870913){f[d>>2]=i;f[d+4>>2]=h;f[d+8>>2]=e;u=P;return}else Ga(12163,11790,95,11955)}function Rb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;w=C+20|0;B=C+8|0;A=C+4|0;y=C;x=a+4|0;do if((h[(f[x>>2]|0)+36>>0]<<8&65535)<512){t=c+8|0;v=f[t>>2]|0;t=f[t+4>>2]|0;i=c+16|0;e=i;d=f[e>>2]|0;e=Kp(d|0,f[e+4>>2]|0,4,0)|0;g=I;if((t|0)<(g|0)|(t|0)==(g|0)&v>>>0>>0){B=-1;u=C;return B|0}else{d=(f[c>>2]|0)+d|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;f[w>>2]=d;v=i;f[v>>2]=e;f[v+4>>2]=g;break}}else if(rk(w,c)|0){d=f[w>>2]|0;break}else{B=-1;u=C;return B|0}while(0);a:do if(d|0){v=f[x>>2]|0;if(((h[v+36>>0]<<8|h[v+37>>0])&65535)<=257){q=c+8|0;r=c+16|0;t=B+4|0;s=B+8|0;o=a+40|0;p=a+44|0;v=a+36|0;n=0;while(1){j=q;i=f[j>>2]|0;j=f[j+4>>2]|0;l=r;k=f[l>>2]|0;l=f[l+4>>2]|0;e=Kp(k|0,l|0,4,0)|0;g=I;if((j|0)<(g|0)|(j|0)==(g|0)&i>>>0>>0)break;m=f[c>>2]|0;D=m+k|0;f[B>>2]=h[D>>0]|h[D+1>>0]<<8|h[D+2>>0]<<16|h[D+3>>0]<<24;D=r;f[D>>2]=e;f[D+4>>2]=g;g=Kp(k|0,l|0,8,0)|0;D=I;if((j|0)<(D|0)|(j|0)==(D|0)&i>>>0>>0)break;e=m+e|0;f[t>>2]=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;e=Kp(k|0,l|0,8,0)|0;D=I;g=r;f[g>>2]=e;f[g+4>>2]=D;if(!((j|0)>(D|0)|(j|0)==(D|0)&i>>>0>e>>>0))break;e=b[m+e>>0]|0;m=Kp(k|0,l|0,9,0)|0;D=r;f[D>>2]=m;f[D+4>>2]=I;b[s>>0]=e&3|b[s>>0]&-4;e=f[o>>2]|0;if((e|0)==(f[p>>2]|0)){hj(v,B);d=f[w>>2]|0}else{f[e>>2]=f[B>>2];f[e+4>>2]=f[B+4>>2];f[e+8>>2]=f[B+8>>2];f[o>>2]=(f[o>>2]|0)+12}n=n+1|0;if(n>>>0>=d>>>0)break a}D=-1;u=C;return D|0}k=B+4|0;e=a+40|0;g=a+44|0;l=a+36|0;i=0;j=0;do{rk(A,c)|0;f[k>>2]=(f[A>>2]|0)+j;rk(A,c)|0;j=f[k>>2]|0;f[B>>2]=j-(f[A>>2]|0);d=f[e>>2]|0;if((d|0)==(f[g>>2]|0))hj(l,B);else{f[d>>2]=f[B>>2];f[d+4>>2]=f[B+4>>2];f[d+8>>2]=f[B+8>>2];f[e>>2]=(f[e>>2]|0)+12}i=i+1|0}while(i>>>0<(f[w>>2]|0)>>>0);Nh(c,0,0)|0;k=f[w>>2]|0;if(k|0){o=c+36|0;l=a+36|0;p=c+32|0;m=c+24|0;n=c+28|0;d=0;q=0;do{if(b[o>>0]|0){d=f[p>>2]|0;g=f[m>>2]|0;j=f[n>>2]|0;e=g+(d>>>3)|0;if(e>>>0>>0){i=(h[e>>0]|0)>>>(d&7)&1;d=d+1|0;f[p>>2]=d}else i=0;e=g+(d>>>3)|0;if(e>>>0>>0){D=(h[e>>0]|0)>>>(d&7)&1;f[p>>2]=d+1;d=D}else d=0;d=d<<1|i}D=(f[l>>2]|0)+(q*12|0)+8|0;b[D>>0]=d&3|b[D>>0]&-4;q=q+1|0}while(q>>>0>>0)}gn(c)}while(0);f[B>>2]=0;d=f[x>>2]|0;d=(h[d+36>>0]<<8|h[d+37>>0])&65535;if((d&65535)<512){w=c+8|0;D=f[w>>2]|0;w=f[w+4>>2]|0;i=c+16|0;e=i;d=f[e>>2]|0;e=Kp(d|0,f[e+4>>2]|0,4,0)|0;g=I;if((w|0)<(g|0)|(w|0)==(g|0)&D>>>0>>0)d=-1;else{d=(f[c>>2]|0)+d|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;f[B>>2]=d;z=i;f[z>>2]=e;f[z+4>>2]=g;z=36}}else if(d<<16>>16==512)if(rk(B,c)|0){d=f[B>>2]|0;z=36}else d=-1;else z=50;b:do if((z|0)==36)if(!d)z=50;else{D=f[x>>2]|0;if(((h[D+36>>0]<<8|h[D+37>>0])&65535)>257){j=a+52|0;k=a+56|0;e=a+48|0;g=0;i=0;while(1){f[A>>2]=0;rk(y,c)|0;i=(f[y>>2]|0)+i|0;f[A>>2]=i;d=f[j>>2]|0;if((d|0)==(f[k>>2]|0))Bj(e,A);else{f[d>>2]=i;f[j>>2]=d+4}g=g+1|0;if(g>>>0>=(f[B>>2]|0)>>>0){z=50;break b}}}n=c+8|0;o=c+16|0;l=a+52|0;m=a+56|0;j=a+48|0;k=0;while(1){f[A>>2]=0;a=n;D=f[a>>2]|0;a=f[a+4>>2]|0;e=o;d=f[e>>2]|0;e=Kp(d|0,f[e+4>>2]|0,4,0)|0;g=I;if((a|0)<(g|0)|(a|0)==(g|0)&D>>>0>>0)break;i=(f[c>>2]|0)+d|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;f[A>>2]=i;d=o;f[d>>2]=e;f[d+4>>2]=g;d=f[l>>2]|0;if((d|0)==(f[m>>2]|0))Bj(j,A);else{f[d>>2]=i;f[l>>2]=d+4}k=k+1|0;if(k>>>0>=(f[B>>2]|0)>>>0){z=50;break b}}d=-1}while(0);if((z|0)==50)d=f[c+16>>2]|0;D=d;u=C;return D|0}function Sb(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,o=La,p=La,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=La;T=u;u=u+48|0;S=T+28|0;N=T+8|0;O=T;R=T+16|0;L=S+16|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;f[S+12>>2]=0;n[L>>2]=$(1.0);Q=a+80|0;xl(R,f[Q>>2]|0);i=f[Q>>2]|0;if((i|0)>0){B=f[e>>2]|0;G=c+48|0;H=c+40|0;E=S+4|0;F=S+12|0;D=S+8|0;J=a+40|0;C=a+64|0;K=0;z=0;while(1){w=B+K|0;y=G;x=f[y>>2]|0;y=f[y+4>>2]|0;e=H;e=mo(w|0,((w|0)<0)<<31>>31|0,f[e>>2]|0,f[e+4>>2]|0)|0;y=Kp(e|0,I|0,x|0,y|0)|0;y=(f[f[c>>2]>>2]|0)+y|0;x=y;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;y=y+4|0;y=h[y>>0]|h[y+1>>0]<<8|h[y+2>>0]<<16|h[y+3>>0]<<24;e=N;f[e>>2]=x;f[e+4>>2]=y;e=O;f[e>>2]=x;f[e+4>>2]=y;e=Wg(S,O)|0;if(!e){t=O;s=f[t>>2]|0;t=f[t+4>>2]|0;l=s&65535;y=Wo(s|0,t|0,16)|0;m=y&65535;q=t&65535;v=Wo(s|0,t|0,48)|0;w=I;r=v&65535;y=((((l^318)&65535)+239^y&65535)+239^t&65535)+239^v;i=f[E>>2]|0;x=(i|0)==0;a:do if(!x){k=i+-1|0;j=(k&i|0)==0;if(j)e=y&k;else e=(y>>>0)%(i>>>0)|0;g=f[(f[S>>2]|0)+(e<<2)>>2]|0;if((g|0)!=0?(M=f[g>>2]|0,(M|0)!=0):0)if(j){g=M;while(1){if((f[g+4>>2]&k|0)!=(e|0)){A=25;break a}if((((d[g+8>>1]|0)==l<<16>>16?(d[g+10>>1]|0)==m<<16>>16:0)?(d[g+12>>1]|0)==q<<16>>16:0)?(d[g+14>>1]|0)==r<<16>>16:0)break a;g=f[g>>2]|0;if(!g){A=25;break}}}else{g=M;while(1){if((((f[g+4>>2]|0)>>>0)%(i>>>0)|0|0)!=(e|0)){A=25;break a}if((((d[g+8>>1]|0)==l<<16>>16?(d[g+10>>1]|0)==m<<16>>16:0)?(d[g+12>>1]|0)==q<<16>>16:0)?(d[g+14>>1]|0)==r<<16>>16:0)break a;g=f[g>>2]|0;if(!g){A=25;break}}}else A=25}else{e=0;A=25}while(0);if((A|0)==25){A=0;j=no(20)|0;v=Ro(v|0,w|0,48)|0;s=s|v;v=t&65535|I;w=j+8|0;t=w;d[t>>1]=s;d[t+2>>1]=s>>>16;w=w+4|0;d[w>>1]=v;d[w+2>>1]=v>>>16;f[j+16>>2]=z;f[j+4>>2]=y;f[j>>2]=0;p=$(((f[F>>2]|0)+1|0)>>>0);U=$(i>>>0);o=$(n[L>>2]);do if(x|p>$(U*o)){e=(i>>>0<3|(i+-1&i|0)!=0)&1|i<<1;g=~~$(W($(p/o)))>>>0;Di(S,e>>>0>>0?g:e);e=f[E>>2]|0;g=e+-1|0;if(!(g&e)){i=e;e=g&y;break}else{i=e;e=(y>>>0)%(e>>>0)|0;break}}while(0);g=(f[S>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){f[j>>2]=f[D>>2];f[D>>2]=j;f[g>>2]=D;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=i+-1|0;if(!(g&i))e=e&g;else e=(e>>>0)%(i>>>0)|0;e=(f[S>>2]|0)+(e<<2)|0;A=36}}else{f[j>>2]=f[e>>2];A=36}if((A|0)==36){A=0;f[e>>2]=j}f[F>>2]=(f[F>>2]|0)+1}y=J;e=f[y>>2]|0;y=mo(e|0,f[y+4>>2]|0,z|0,((z|0)<0)<<31>>31|0)|0;Fh((f[f[C>>2]>>2]|0)+y|0,N|0,e|0)|0;f[(f[R>>2]|0)+(K<<2)>>2]=z;e=z+1|0}else{f[(f[R>>2]|0)+(K<<2)>>2]=f[e+16>>2];e=z}K=K+1|0;i=f[Q>>2]|0;if((K|0)>=(i|0)){q=e;break}else z=e}}else q=0;if((q|0)!=(i|0)){m=a+84|0;if(!(b[m>>0]|0)){i=f[a+68>>2]|0;e=(f[a+72>>2]|0)-i|0;if((e|0)>0){j=f[R>>2]|0;g=e>>2;e=0;do{a=i+(e<<2)|0;f[a>>2]=f[j+(f[a>>2]<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}else{b[m>>0]=0;k=a+68|0;j=a+72|0;g=f[j>>2]|0;e=f[k>>2]|0;l=g-e>>2;if(i>>>0<=l>>>0){if(i>>>0>>0?(P=e+(i<<2)|0,(g|0)!=(P|0)):0)f[j>>2]=g+(~((g+-4-P|0)>>>2)<<2)}else{Xh(k,i-l|0,1592);i=f[Q>>2]|0}if((i|0)>0){j=f[R>>2]|0;if(b[m>>0]|0)Ga(21905,21924,89,22019);e=f[a+68>>2]|0;g=0;do{f[e+(g<<2)>>2]=f[j+(g<<2)>>2];g=g+1|0}while((g|0)<(i|0))}}f[Q>>2]=q}i=f[R>>2]|0;if(i|0){g=R+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);ds(i)}e=f[S+8>>2]|0;if(e|0)do{R=e;e=f[e>>2]|0;ds(R)}while((e|0)!=0);e=f[S>>2]|0;f[S>>2]=0;if(!e){u=T;return q|0}ds(e);u=T;return q|0}function Tb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;P=u;u=u+96|0;E=P+72|0;J=P+48|0;K=P+24|0;L=P;H=a+4|0;if(!(f[H>>2]|0))Ga(11768,11790,46,11955);G=a+8|0;if(!(f[G>>2]|0))Ga(11768,11790,46,11955);F=a+16|0;k=f[F>>2]|0;l=f[c>>2]|0;f[E>>2]=k;f[E+4>>2]=l;C=E+8|0;f[C>>2]=l;b[E+12>>0]=1;k=f[(f[k+28>>2]|0)+(l<<2)>>2]|0;D=a+20|0;i=f[D>>2]|0;c=f[i>>2]|0;if((f[i+4>>2]|0)-c>>2>>>0<=k>>>0){Oq(i);c=f[i>>2]|0}bh(J,a,f[c+(k<<2)>>2]|0);i=f[C>>2]|0;v=a+28|0;c=(f[v>>2]|0)==0;a:do if((i|0)>=0){z=K+8|0;w=J+8|0;B=K+16|0;x=J+16|0;y=L+8|0;A=L+16|0;r=(l|0)<0;s=l+1|0;t=l+(r?0:((l>>>0)%3|0|0)==0?2:-1)|0;s=r?l:((s|0)%3|0|0)==0?l+-2|0:s;r=0;q=0;l=0;o=0;m=0;p=0;while(1){do if(!c){c=i+1|0;c=((c|0)%3|0|0)==0?i+-2|0:c;if(!((i>>>0)%3|0)){n=i+2|0;break}else{n=i+-1|0;break}}else{c=s;n=t}while(0);if(!(f[H>>2]|0)){c=15;break}if(!(f[G>>2]|0)){c=15;break}k=f[(f[(f[F>>2]|0)+28>>2]|0)+(c<<2)>>2]|0;i=f[D>>2]|0;c=f[i>>2]|0;if((f[i+4>>2]|0)-c>>2>>>0<=k>>>0){Oq(i);c=f[i>>2]|0}bh(K,a,f[c+(k<<2)>>2]|0);if(!(f[H>>2]|0)){c=21;break}if(!(f[G>>2]|0)){c=21;break}k=f[(f[(f[F>>2]|0)+28>>2]|0)+(n<<2)>>2]|0;i=f[D>>2]|0;c=f[i>>2]|0;if((f[i+4>>2]|0)-c>>2>>>0<=k>>>0){Oq(i);c=f[i>>2]|0}bh(L,a,f[c+(k<<2)>>2]|0);i=K;Z=J;Y=f[Z>>2]|0;Z=f[Z+4>>2]|0;i=_o(f[i>>2]|0,f[i+4>>2]|0,Y|0,Z|0)|0;c=I;Q=z;$=w;_=f[$>>2]|0;$=f[$+4>>2]|0;Q=_o(f[Q>>2]|0,f[Q+4>>2]|0,_|0,$|0)|0;R=I;U=B;S=x;T=f[S>>2]|0;S=f[S+4>>2]|0;U=_o(f[U>>2]|0,f[U+4>>2]|0,T|0,S|0)|0;V=I;n=L;Z=_o(f[n>>2]|0,f[n+4>>2]|0,Y|0,Z|0)|0;Y=I;n=y;$=_o(f[n>>2]|0,f[n+4>>2]|0,_|0,$|0)|0;_=I;n=A;S=_o(f[n>>2]|0,f[n+4>>2]|0,T|0,S|0)|0;T=I;n=mo(S|0,T|0,Q|0,R|0)|0;k=I;X=mo($|0,_|0,U|0,V|0)|0;W=I;V=mo(Z|0,Y|0,U|0,V|0)|0;U=I;T=mo(S|0,T|0,i|0,c|0)|0;S=I;c=mo($|0,_|0,i|0,c|0)|0;i=I;R=mo(Z|0,Y|0,Q|0,R|0)|0;Q=I;r=_o(r|0,q|0,X|0,W|0)|0;k=Kp(r|0,I|0,n|0,k|0)|0;n=I;l=Kp(V|0,U|0,l|0,o|0)|0;l=_o(l|0,I|0,T|0,S|0)|0;o=I;m=_o(m|0,p|0,R|0,Q|0)|0;m=Kp(m|0,I|0,c|0,i|0)|0;p=I;Gg(E);i=f[C>>2]|0;c=(f[v>>2]|0)==0;if((i|0)<0){j=n;N=k;O=o;h=l;g=p;e=m;M=c;break a}else{r=k;q=n}}if((c|0)==15)Ga(11768,11977,70,12142);else if((c|0)==21)Ga(11768,11977,70,12142)}else{j=0;N=0;O=0;h=0;g=0;e=0;M=c}while(0);$=(j|0)>-1|(j|0)==-1&N>>>0>4294967295;i=_o(0,0,N|0,j|0)|0;c=$?j:I;W=(O|0)>-1|(O|0)==-1&h>>>0>4294967295;X=_o(0,0,h|0,O|0)|0;Y=W?O:I;_=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;Z=_o(0,0,e|0,g|0)|0;_=Kp((W?h:X)|0,Y|0,(_?e:Z)|0,(_?g:I)|0)|0;c=Kp(_|0,I|0,($?N:i)|0,c|0)|0;i=I;if(M)if((c|0)>536870912){$=Wo(c|0,i|0,29)|0;$=$&7;i=jl(N|0,j|0,$|0,0)|0;j=I;h=jl(h|0,O|0,$|0,0)|0;c=I;e=jl(e|0,g|0,$|0,0)|0;g=I}else{i=N;c=O}else if((i|0)>0|(i|0)==0&c>>>0>536870912){_=Wo(c|0,i|0,29)|0;$=I;i=jl(N|0,j|0,_|0,$|0)|0;j=I;h=jl(h|0,O|0,_|0,$|0)|0;c=I;e=jl(e|0,g|0,_|0,$|0)|0;g=I}else{i=N;c=O}Z=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;_=_o(0,0,i|0,j|0)|0;$=Z?j:I;U=(c|0)>-1|(c|0)==-1&h>>>0>4294967295;V=_o(0,0,h|0,c|0)|0;W=U?c:I;Y=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;X=_o(0,0,e|0,g|0)|0;Y=Kp((U?h:V)|0,W|0,(Y?e:X)|0,(Y?g:I)|0)|0;$=Kp(Y|0,I|0,(Z?i:_)|0,$|0)|0;_=I;if((_|0)<0|(_|0)==0&$>>>0<536870913){f[d>>2]=i;f[d+4>>2]=h;f[d+8>>2]=e;u=P;return}else Ga(12163,11790,95,11955)}function Ub(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;A=u;u=u+176|0;s=A+136|0;w=A+32|0;v=A;t=A+104|0;x=A+100|0;y=a+4|0;q=f[y>>2]|0;d=f[q+32>>2]|0;o=d+8|0;n=f[o>>2]|0;o=f[o+4>>2]|0;p=d+16|0;l=p;k=f[l>>2]|0;l=f[l+4>>2]|0;if(!((o|0)>(l|0)|(o|0)==(l|0)&n>>>0>k>>>0)){c=0;u=A;return c|0}j=f[d>>2]|0;r=b[j+k>>0]|0;d=Kp(k|0,l|0,1,0)|0;m=I;i=p;f[i>>2]=d;f[i+4>>2]=m;if(!((o|0)>(m|0)|(o|0)==(m|0)&n>>>0>d>>>0)){c=0;u=A;return c|0}m=b[j+d>>0]|0;d=Kp(k|0,l|0,2,0)|0;e=I;i=p;f[i>>2]=d;f[i+4>>2]=e;do if(r<<24>>24>-1){i=r<<24>>24;g=f[a+224>>2]|0;if(i>>>0<(((f[a+228>>2]|0)-g|0)/116|0)>>>0){f[g+(i*116|0)>>2]=c;break}else{c=0;u=A;return c|0}}while(0);do if((((h[q+36>>0]|0)<<8|(h[q+37>>0]|0))&65535)>257)if((o|0)>(e|0)|(o|0)==(e|0)&n>>>0>d>>>0){e=b[j+d>>0]|0;o=Kp(k|0,l|0,3,0)|0;f[p>>2]=o;f[p+4>>2]=I;e=e&255;break}else{c=0;u=A;return c|0}else e=0;while(0);n=f[q+44>>2]|0;if(!(m<<24>>24)){if(r<<24>>24<0)d=a+196|0;else{d=r<<24>>24;w=f[a+224>>2]|0;b[w+(d*116|0)+72>>0]=0;d=w+(d*116|0)+76|0}switch((e&255)<<24>>24){case 0:{Sd(s,a,d);d=f[s>>2]|0;break}case 1:{Nf(s,a,d);d=f[s>>2]|0;break}default:{c=0;u=A;return c|0}}if(!d){c=0;u=A;return c|0}}else{if(e|0){c=0;u=A;return c|0}j=r<<24>>24;if(r<<24>>24<0){c=0;u=A;return c|0}d=no(88)|0;i=f[a+224>>2]|0;k=i+(j*116|0)+76|0;f[d+4>>2]=0;f[d>>2]=4628;l=d+12|0;f[l>>2]=4652;m=d+64|0;f[m>>2]=0;f[d+68>>2]=0;f[d+72>>2]=0;e=d+16|0;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[d+76>>2]=n;f[d+80>>2]=k;f[d+84>>2]=0;p=w+4|0;f[p>>2]=4652;o=w+56|0;f[o>>2]=0;q=w+60|0;f[q>>2]=0;f[w+64>>2]=0;e=w+8|0;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));g=i+(j*116|0)+4|0;f[v>>2]=4652;e=v+4|0;a=e+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[e>>2]=g;i=f[i+(j*116|0)+68>>2]|0;i=((f[i+4>>2]|0)-(f[i>>2]|0)>>2>>>0)/3|0;b[s>>0]=0;Rh(v+8|0,i,s);Pa[f[(f[v>>2]|0)+8>>2]&255](v);zg(t,v);zg(s,t);f[w>>2]=f[s+4>>2];i=w+4|0;dh(i,s)|0;f[s>>2]=4652;e=f[s+20>>2]|0;if(e|0)ds(e);e=f[s+8>>2]|0;if(e|0)ds(e);f[w+36>>2]=g;f[w+40>>2]=k;f[w+44>>2]=n;f[w+48>>2]=d;f[t>>2]=4652;e=f[t+20>>2]|0;if(e|0)ds(e);e=f[t+8>>2]|0;if(e|0)ds(e);f[d+8>>2]=f[w>>2];dh(l,i)|0;e=d+44|0;t=w+36|0;f[e>>2]=f[t>>2];f[e+4>>2]=f[t+4>>2];f[e+8>>2]=f[t+8>>2];f[e+12>>2]=f[t+12>>2];b[e+16>>0]=b[t+16>>0]|0;Eg(m,f[o>>2]|0,f[q>>2]|0);f[v>>2]=4652;e=f[v+20>>2]|0;if(e|0)ds(e);e=f[v+8>>2]|0;if(e|0)ds(e);e=f[o>>2]|0;if(e|0){g=f[q>>2]|0;if((g|0)!=(e|0))f[q>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}f[p>>2]=4652;e=f[w+24>>2]|0;if(e|0)ds(e);e=f[w+12>>2]|0;if(e|0)ds(e)}l=no(64)|0;f[x>>2]=d;mm(l,x);d=f[x>>2]|0;f[x>>2]=0;if(d|0)Pa[f[(f[d>>2]|0)+4>>2]&255](d);j=f[y>>2]|0;k=j+8|0;j=j+12|0;d=f[j>>2]|0;e=f[k>>2]|0;i=d-e>>2;do if((i|0)<=(c|0)){g=c+1|0;if(g>>>0>i>>>0){$g(k,g-i|0);break}if(g>>>0>>0?(z=e+(g<<2)|0,(d|0)!=(z|0)):0)do{y=d+-4|0;f[j>>2]=y;d=f[y>>2]|0;f[y>>2]=0;if(d|0)Pa[f[(f[d>>2]|0)+4>>2]&255](d);d=f[j>>2]|0}while((d|0)!=(z|0))}while(0);c=(f[k>>2]|0)+(c<<2)|0;d=f[c>>2]|0;f[c>>2]=l;if(!d){c=1;u=A;return c|0}Pa[f[(f[d>>2]|0)+4>>2]&255](d);c=1;u=A;return c|0}function Vb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=La,o=La,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=La;S=u;u=u+48|0;R=S+20|0;M=S+16|0;N=S+12|0;Q=S;K=R+16|0;f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;f[R+12>>2]=0;n[K>>2]=$(1.0);P=a+80|0;xl(Q,f[P>>2]|0);g=f[P>>2]|0;if((g|0)>0){A=f[d>>2]|0;F=c+48|0;G=c+40|0;D=R+4|0;E=R+12|0;C=R+8|0;H=a+40|0;B=a+64|0;J=0;y=0;while(1){v=A+J|0;d=F;x=f[d>>2]|0;d=f[d+4>>2]|0;w=G;w=mo(v|0,((v|0)<0)<<31>>31|0,f[w>>2]|0,f[w+4>>2]|0)|0;d=Kp(w|0,I|0,x|0,d|0)|0;d=(f[f[c>>2]>>2]|0)+d|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;f[M>>2]=d;f[N>>2]=d;d=Yg(R,N)|0;if(!d){t=f[N>>2]|0;k=t&255;r=t>>>8;l=r&255;s=t>>>16;p=s&255;v=t>>>24;q=v&255;t=t&255;r=r&255;s=s&255;x=(((t^318)+239^r)+239^s)+239^v;g=f[D>>2]|0;w=(g|0)==0;a:do if(!w){j=g+-1|0;i=(j&g|0)==0;if(i)d=x&j;else d=(x>>>0)%(g>>>0)|0;e=f[(f[R>>2]|0)+(d<<2)>>2]|0;if((e|0)!=0?(L=f[e>>2]|0,(L|0)!=0):0)if(i){e=L;while(1){if((f[e+4>>2]&j|0)!=(d|0)){z=25;break a}if((((b[e+8>>0]|0)==k<<24>>24?(b[e+9>>0]|0)==l<<24>>24:0)?(b[e+10>>0]|0)==p<<24>>24:0)?(b[e+11>>0]|0)==q<<24>>24:0)break a;e=f[e>>2]|0;if(!e){z=25;break}}}else{e=L;while(1){if((((f[e+4>>2]|0)>>>0)%(g>>>0)|0|0)!=(d|0)){z=25;break a}if((((b[e+8>>0]|0)==k<<24>>24?(b[e+9>>0]|0)==l<<24>>24:0)?(b[e+10>>0]|0)==p<<24>>24:0)?(b[e+11>>0]|0)==q<<24>>24:0)break a;e=f[e>>2]|0;if(!e){z=25;break}}}else z=25}else{d=0;z=25}while(0);if((z|0)==25){z=0;i=no(16)|0;q=i+8|0;v=v<<24|t|s<<16|r<<8;b[q>>0]=v;b[q+1>>0]=v>>8;b[q+2>>0]=v>>16;b[q+3>>0]=v>>24;f[i+12>>2]=y;f[i+4>>2]=x;f[i>>2]=0;o=$(((f[E>>2]|0)+1|0)>>>0);T=$(g>>>0);m=$(n[K>>2]);do if(w|o>$(T*m)){d=(g>>>0<3|(g+-1&g|0)!=0)&1|g<<1;e=~~$(W($(o/m)))>>>0;Ki(R,d>>>0>>0?e:d);d=f[D>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&x;break}else{g=d;d=(x>>>0)%(d>>>0)|0;break}}while(0);e=(f[R>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[i>>2]=f[C>>2];f[C>>2]=i;f[e>>2]=C;d=f[i>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else d=(d>>>0)%(g>>>0)|0;d=(f[R>>2]|0)+(d<<2)|0;z=36}}else{f[i>>2]=f[d>>2];z=36}if((z|0)==36){z=0;f[d>>2]=i}f[E>>2]=(f[E>>2]|0)+1}x=H;d=f[x>>2]|0;x=mo(d|0,f[x+4>>2]|0,y|0,((y|0)<0)<<31>>31|0)|0;Fh((f[f[B>>2]>>2]|0)+x|0,M|0,d|0)|0;f[(f[Q>>2]|0)+(J<<2)>>2]=y;d=y+1|0}else{f[(f[Q>>2]|0)+(J<<2)>>2]=f[d+12>>2];d=y}J=J+1|0;g=f[P>>2]|0;if((J|0)>=(g|0)){p=d;break}else y=d}}else p=0;if((p|0)!=(g|0)){l=a+84|0;if(!(b[l>>0]|0)){g=f[a+68>>2]|0;d=(f[a+72>>2]|0)-g|0;if((d|0)>0){i=f[Q>>2]|0;e=d>>2;d=0;do{a=g+(d<<2)|0;f[a>>2]=f[i+(f[a>>2]<<2)>>2];d=d+1|0}while((d|0)<(e|0))}}else{b[l>>0]=0;j=a+68|0;i=a+72|0;e=f[i>>2]|0;d=f[j>>2]|0;k=e-d>>2;if(g>>>0<=k>>>0){if(g>>>0>>0?(O=d+(g<<2)|0,(e|0)!=(O|0)):0)f[i>>2]=e+(~((e+-4-O|0)>>>2)<<2)}else{Xh(j,g-k|0,1592);g=f[P>>2]|0}if((g|0)>0){i=f[Q>>2]|0;if(b[l>>0]|0)Ga(21905,21924,89,22019);d=f[a+68>>2]|0;e=0;do{f[d+(e<<2)>>2]=f[i+(e<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}f[P>>2]=p}g=f[Q>>2]|0;if(g|0){e=Q+4|0;d=f[e>>2]|0;if((d|0)!=(g|0))f[e>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g)}d=f[R+8>>2]|0;if(d|0)do{Q=d;d=f[d>>2]|0;ds(Q)}while((d|0)!=0);d=f[R>>2]|0;f[R>>2]=0;if(!d){u=S;return p|0}ds(d);u=S;return p|0}function Wb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;D=u;u=u+736|0;C=D+720|0;s=D+16|0;B=D+72|0;r=D+64|0;v=D+56|0;w=D+48|0;x=D+40|0;y=D+32|0;z=D+24|0;A=D+8|0;t=D;e=Wa[f[(f[a>>2]|0)+20>>2]&127](a,0)|0;a=(Sa[f[(f[a>>2]|0)+28>>2]&255](a)|0)+4|0;a=f[a>>2]|0;if((e|0)<=-1)Ga(22609,22625,66,22717);d=f[a+8>>2]|0;if(((f[a+12>>2]|0)-d>>2|0)<=(e|0))Ga(22727,22625,67,22717);a=f[d+(e<<2)>>2]|0;b[a+84>>0]=1;d=f[a+68>>2]|0;g=a+72|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);m=c+8|0;l=f[m>>2]|0;m=f[m+4>>2]|0;o=c+16|0;k=o;j=f[k>>2]|0;k=f[k+4>>2]|0;if(!((m|0)>(k|0)|(m|0)==(k|0)&l>>>0>j>>>0)){C=0;u=D;return C|0}n=f[c>>2]|0;g=b[n+j>>0]|0;d=Kp(j|0,k|0,1,0)|0;e=I;E=o;f[E>>2]=d;f[E+4>>2]=e;switch(g<<24>>24){case 0:{if(((m|0)>(e|0)|(m|0)==(e|0)&l>>>0>d>>>0?(i=Kp(j|0,k|0,2,0)|0,p=o,f[p>>2]=i,f[p+4>>2]=I,p=Kp(j|0,k|0,6,0)|0,q=I,!((m|0)<(q|0)|(m|0)==(q|0)&l>>>0

>>0)):0)?(E=n+i|0,E=h[E>>0]|h[E+1>>0]<<8|h[E+2>>0]<<16|h[E+3>>0]<<24,A=o,f[A>>2]=p,f[A+4>>2]=q,jk(a,E)|0,Gp(B),f[r>>2]=a,f[r+4>>2]=0,f[C>>2]=f[r>>2],f[C+4>>2]=f[r+4>>2],pf(B,c,C)|0):0){E=1;u=D;return E|0}E=0;u=D;return E|0}case 1:{a:do if((m|0)>(e|0)|(m|0)==(e|0)&l>>>0>d>>>0){i=b[n+d>>0]|0;g=Kp(j|0,k|0,2,0)|0;E=o;f[E>>2]=g;f[E+4>>2]=I;if((i&255)>6){f[s>>2]=i&255;Lo(6462,s)|0;break}d=Kp(j|0,k|0,6,0)|0;e=I;if(!((m|0)<(e|0)|(m|0)==(e|0)&l>>>0>>0)){E=n+g|0;E=h[E>>0]|h[E+1>>0]<<8|h[E+2>>0]<<16|h[E+3>>0]<<24;s=o;f[s>>2]=d;f[s+4>>2]=e;jk(a,E)|0;switch(i<<24>>24){case 0:{Ti(B,3);f[v>>2]=a;f[v+4>>2]=0;f[C>>2]=f[v>>2];f[C+4>>2]=f[v+4>>2];E=If(B,c,C)|0;Lg(B);if(E)a=1;else break a;u=D;return a|0}case 1:{Ti(B,3);f[w>>2]=a;f[w+4>>2]=0;f[C>>2]=f[w>>2];f[C+4>>2]=f[w+4>>2];E=Hf(B,c,C)|0;Lg(B);if(E)a=1;else break a;u=D;return a|0}case 2:{Ui(B,3);f[x>>2]=a;f[x+4>>2]=0;f[C>>2]=f[x>>2];f[C+4>>2]=f[x+4>>2];E=Kf(B,c,C)|0;Og(B);if(E)a=1;else break a;u=D;return a|0}case 3:{Ui(B,3);f[y>>2]=a;f[y+4>>2]=0;f[C>>2]=f[y>>2];f[C+4>>2]=f[y+4>>2];E=Jf(B,c,C)|0;Og(B);if(E)a=1;else break a;u=D;return a|0}case 4:{Ci(B,3);f[z>>2]=a;f[z+4>>2]=0;f[C>>2]=f[z>>2];f[C+4>>2]=f[z+4>>2];E=gf(B,c,C)|0;Bg(B);if(E)a=1;else break a;u=D;return a|0}case 5:{Ci(B,3);f[A>>2]=a;f[A+4>>2]=0;f[C>>2]=f[A>>2];f[C+4>>2]=f[A+4>>2];E=ff(B,c,C)|0;Bg(B);if(E)a=1;else break a;u=D;return a|0}case 6:{Ci(B,3);f[t>>2]=a;f[t+4>>2]=0;f[C>>2]=f[t>>2];f[C+4>>2]=f[t+4>>2];E=ef(B,c,C)|0;Bg(B);if(E)a=1;else break a;u=D;return a|0}default:break a}}}while(0);E=0;u=D;return E|0}default:{E=0;u=D;return E|0}}return 0}function Xb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=La,k=0,l=La,m=La,o=La;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;b[s>>0]=b[g>>0];b[s+1>>0]=b[g+1>>0];b[s+2>>0]=b[g+2>>0];b[s+3>>0]=b[g+3>>0];j=$(n[s>>2]);g=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;i=d;f[i>>2]=~~+j>>>0;f[i+4>>2]=g;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;i=1;return i|0}case 2:{k=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;k=I;i=f[a>>2]|0;c=f[i>>2]|0;if((k|0)>0|((k|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=(f[s>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24,$(n[s>>2]));g=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d;f[k>>2]=~~+j>>>0;f[k+4>>2]=g;j=(f[s>>2]=i,$(n[s>>2]));i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d+8|0;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=d+16|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;k=1;return k|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;k=a+40|0;e=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;k=f[a>>2]|0;c=f[k>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[k+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}i=c+e|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];m=$(n[s>>2]);k=i+4|0;b[s>>0]=b[k>>0];b[s+1>>0]=b[k+1>>0];b[s+2>>0]=b[k+2>>0];b[s+3>>0]=b[k+3>>0];l=$(n[s>>2]);i=i+8|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];j=$(n[s>>2]);i=+K(+m)>=1.0?(+m>0.0?~~+Y(+J(+m/4294967296.0),4294967295.0)>>>0:~~+W((+m-+(~~+m>>>0))/4294967296.0)>>>0):0;k=d;f[k>>2]=~~+m>>>0;f[k+4>>2]=i;k=+K(+l)>=1.0?(+l>0.0?~~+Y(+J(+l/4294967296.0),4294967295.0)>>>0:~~+W((+l-+(~~+l>>>0))/4294967296.0)>>>0):0;i=d+8|0;f[i>>2]=~~+l>>>0;f[i+4>>2]=k;i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d+16|0;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=d+24|0;f[k>>2]=0;f[k+4>>2]=0;k=1;return k|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;k=a+40|0;e=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;k=f[a>>2]|0;c=f[k>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[k+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}k=c+e|0;b[s>>0]=b[k>>0];b[s+1>>0]=b[k+1>>0];b[s+2>>0]=b[k+2>>0];b[s+3>>0]=b[k+3>>0];o=$(n[s>>2]);i=k+4|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];j=$(n[s>>2]);i=k+8|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];l=$(n[s>>2]);k=k+12|0;b[s>>0]=b[k>>0];b[s+1>>0]=b[k+1>>0];b[s+2>>0]=b[k+2>>0];b[s+3>>0]=b[k+3>>0];m=$(n[s>>2]);k=+K(+o)>=1.0?(+o>0.0?~~+Y(+J(+o/4294967296.0),4294967295.0)>>>0:~~+W((+o-+(~~+o>>>0))/4294967296.0)>>>0):0;i=d;f[i>>2]=~~+o>>>0;f[i+4>>2]=k;i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d+8|0;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=+K(+l)>=1.0?(+l>0.0?~~+Y(+J(+l/4294967296.0),4294967295.0)>>>0:~~+W((+l-+(~~+l>>>0))/4294967296.0)>>>0):0;i=d+16|0;f[i>>2]=~~+l>>>0;f[i+4>>2]=k;i=+K(+m)>=1.0?(+m>0.0?~~+Y(+J(+m/4294967296.0),4294967295.0)>>>0:~~+W((+m-+(~~+m>>>0))/4294967296.0)>>>0):0;k=d+24|0;f[k>>2]=~~+m>>>0;f[k+4>>2]=i;k=1;return k|0}default:{k=0;return k|0}}return 0}function Yb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=La,o=La,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=La;Q=u;u=u+80|0;P=Q+48|0;K=Q+32|0;L=Q+16|0;O=Q;H=P+16|0;f[P>>2]=0;f[P+4>>2]=0;f[P+8>>2]=0;f[P+12>>2]=0;n[H>>2]=$(1.0);N=a+80|0;xl(O,f[N>>2]|0);g=f[N>>2]|0;if((g|0)>0){v=f[d>>2]|0;A=c+48|0;B=c+40|0;E=L+4|0;F=L+8|0;G=L+12|0;y=P+4|0;z=P+12|0;x=P+8|0;C=a+40|0;w=a+64|0;D=0;s=0;while(1){g=v+D|0;d=A;e=f[d>>2]|0;d=f[d+4>>2]|0;h=B;g=mo(f[h>>2]|0,f[h+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0;d=Kp(g|0,I|0,e|0,d|0)|0;d=(f[f[c>>2]>>2]|0)+d|0;e=K;g=d;h=e+16|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));rn(L|0,d|0,16)|0;d=ah(P,L)|0;if(!d){i=f[L>>2]|0;j=f[E>>2]|0;k=f[F>>2]|0;l=f[G>>2]|0;r=(((i^318)+239^j)+239^k)+239^l;p=f[y>>2]|0;q=(p|0)==0;a:do if(!q){h=p+-1|0;g=(h&p|0)==0;if(g)d=r&h;else d=(r>>>0)%(p>>>0)|0;e=f[(f[P>>2]|0)+(d<<2)>>2]|0;if((e|0)!=0?(J=f[e>>2]|0,(J|0)!=0):0)if(g){e=J;while(1){if((f[e+4>>2]&h|0)!=(d|0)){t=25;break a}if((((f[e+8>>2]|0)==(i|0)?(f[e+12>>2]|0)==(j|0):0)?(f[e+16>>2]|0)==(k|0):0)?(f[e+20>>2]|0)==(l|0):0)break a;e=f[e>>2]|0;if(!e){t=25;break}}}else{e=J;while(1){if((((f[e+4>>2]|0)>>>0)%(p>>>0)|0|0)!=(d|0)){t=25;break a}if((((f[e+8>>2]|0)==(i|0)?(f[e+12>>2]|0)==(j|0):0)?(f[e+16>>2]|0)==(k|0):0)?(f[e+20>>2]|0)==(l|0):0)break a;e=f[e>>2]|0;if(!e){t=25;break}}}else t=25}else{d=0;t=25}while(0);if((t|0)==25){t=0;h=no(28)|0;f[h+8>>2]=i;f[h+12>>2]=j;f[h+16>>2]=k;f[h+20>>2]=l;f[h+24>>2]=s;f[h+4>>2]=r;f[h>>2]=0;o=$(((f[z>>2]|0)+1|0)>>>0);R=$(p>>>0);m=$(n[H>>2]);do if(q|o>$(R*m)){d=(p>>>0<3|(p+-1&p|0)!=0)&1|p<<1;e=~~$(W($(o/m)))>>>0;Hi(P,d>>>0>>0?e:d);d=f[y>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&r;break}else{g=d;d=(r>>>0)%(d>>>0)|0;break}}else g=p;while(0);e=(f[P>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[h>>2]=f[x>>2];f[x>>2]=h;f[e>>2]=x;d=f[h>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else d=(d>>>0)%(g>>>0)|0;d=(f[P>>2]|0)+(d<<2)|0;t=36}}else{f[h>>2]=f[d>>2];t=36}if((t|0)==36){t=0;f[d>>2]=h}f[z>>2]=(f[z>>2]|0)+1}r=C;d=f[r>>2]|0;r=mo(d|0,f[r+4>>2]|0,s|0,((s|0)<0)<<31>>31|0)|0;Fh((f[f[w>>2]>>2]|0)+r|0,K|0,d|0)|0;f[(f[O>>2]|0)+(D<<2)>>2]=s;d=s+1|0}else{f[(f[O>>2]|0)+(D<<2)>>2]=f[d+24>>2];d=s}D=D+1|0;g=f[N>>2]|0;if((D|0)>=(g|0)){l=d;break}else s=d}}else l=0;if((l|0)!=(g|0)){k=a+84|0;if(!(b[k>>0]|0)){g=f[a+68>>2]|0;d=(f[a+72>>2]|0)-g|0;if((d|0)>0){h=f[O>>2]|0;e=d>>2;d=0;do{a=g+(d<<2)|0;f[a>>2]=f[h+(f[a>>2]<<2)>>2];d=d+1|0}while((d|0)<(e|0))}}else{b[k>>0]=0;i=a+68|0;h=a+72|0;e=f[h>>2]|0;d=f[i>>2]|0;j=e-d>>2;if(g>>>0<=j>>>0){if(g>>>0>>0?(M=d+(g<<2)|0,(e|0)!=(M|0)):0)f[h>>2]=e+(~((e+-4-M|0)>>>2)<<2)}else{Xh(i,g-j|0,1592);g=f[N>>2]|0}if((g|0)>0){h=f[O>>2]|0;if(b[k>>0]|0)Ga(21905,21924,89,22019);d=f[a+68>>2]|0;e=0;do{f[d+(e<<2)>>2]=f[h+(e<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}f[N>>2]=l}g=f[O>>2]|0;if(g|0){e=O+4|0;d=f[e>>2]|0;if((d|0)!=(g|0))f[e>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g)}d=f[P+8>>2]|0;if(d|0)do{O=d;d=f[d>>2]|0;ds(O)}while((d|0)!=0);d=f[P>>2]|0;f[P>>2]=0;if(!d){u=Q;return l|0}ds(d);u=Q;return l|0}function Zb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;C=a+8|0;f[C>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else mj(i,e-j|0);z=e>>>0>1073741823?-1:e<<2;A=as(z)|0;_j(A|0,0,z|0)|0;B=as(z)|0;_j(B|0,0,z|0)|0;if((f[C>>2]|0)>0){k=a+16|0;h=a+32|0;l=a+12|0;i=0;do{d=f[A+(i<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[h>>2]|0;f[j+(i<<2)>>2]=g}else{z=f[l>>2]|0;j=f[h>>2]|0;f[j+(i<<2)>>2]=(d|0)<(z|0)?z:d}i=i+1|0;d=f[C>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;H=18}}else{d=d-(f[i>>2]|0)|0;H=18}if((H|0)==18){H=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[C>>2]|0))}}s=f[a+48>>2]|0;w=a+56|0;h=f[w>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;y=g-d|0;z=y>>2;if((y|0)<=4){bs(B);bs(A);return 1}t=f[a+52>>2]|0;v=(e|0)>0;x=a+16|0;u=a+32|0;y=a+12|0;r=a+20|0;q=s+12|0;p=e<<2;i=g;o=1;while(1){if(i-d>>2>>>0<=o>>>0){Oq(h);d=f[h>>2]|0}n=f[d+(o<<2)>>2]|0;if(v)_j(A|0,0,p|0)|0;if((n|0)>-1){m=f[q>>2]|0;a=n;l=0;while(1){g=f[m+(a<<2)>>2]|0;if((g|0)>=0){h=f[s>>2]|0;i=f[t>>2]|0;k=f[i+(f[h+(g<<2)>>2]<<2)>>2]|0;d=g+1|0;d=((d|0)%3|0|0)==0?g+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[h+(d<<2)>>2]|0;j=f[i+(d<<2)>>2]|0;d=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((d|0)<0)d=-1073741824;else d=f[h+(d<<2)>>2]|0;d=f[i+(d<<2)>>2]|0;if((k|0)<(o|0)&(j|0)<(o|0)&(d|0)<(o|0)){i=X(k,e)|0;h=X(j,e)|0;g=X(d,e)|0;if(v){d=0;do{f[B+(d<<2)>>2]=(f[c+(d+g<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+i<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(v){d=0;do{k=A+(d<<2)|0;f[k>>2]=(f[k>>2]|0)+(f[B+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}h=l+1|0}else h=l}else h=l;d=(((a>>>0)%3|0|0)==0?2:-1)+a|0;do if((d|0)>=0){d=f[m+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}while(0);a=(d|0)==(n|0)?-1073741824:d;if((a|0)<=-1)break;else l=h}g=X(o,e)|0;if(h){if(v){d=0;do{n=A+(d<<2)|0;f[n>>2]=(f[n>>2]|0)/(h|0)|0;d=d+1|0}while((d|0)!=(e|0))}k=b+(g<<2)|0;j=c+(g<<2)|0;if((f[C>>2]|0)>0){h=0;do{d=f[A+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){i=f[u>>2]|0;f[i+(h<<2)>>2]=g}else{n=f[y>>2]|0;i=f[u>>2]|0;f[i+(h<<2)>>2]=(d|0)<(n|0)?n:d}h=h+1|0;d=f[C>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[k+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=j+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[y>>2]|0)){d=(f[r>>2]|0)+d|0;H=72}}else{d=d-(f[r>>2]|0)|0;H=72}if((H|0)==72){H=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[C>>2]|0))}}}else{G=g;H=50}}else{G=X(o,e)|0;H=50}if((H|0)==50?(H=0,D=c+((X(o+-1|0,e)|0)<<2)|0,E=b+(G<<2)|0,F=c+(G<<2)|0,(f[C>>2]|0)>0):0){h=0;do{d=f[D+(h<<2)>>2]|0;g=f[x>>2]|0;if((d|0)>(g|0)){i=f[u>>2]|0;f[i+(h<<2)>>2]=g}else{n=f[y>>2]|0;i=f[u>>2]|0;f[i+(h<<2)>>2]=(d|0)<(n|0)?n:d}h=h+1|0;d=f[C>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[E+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=F+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[x>>2]|0)){if((d|0)<(f[y>>2]|0)){d=(f[r>>2]|0)+d|0;H=60}}else{d=d-(f[r>>2]|0)|0;H=60}if((H|0)==60){H=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[C>>2]|0))}}g=o+1|0;if((g|0)>=(z|0))break;h=f[w>>2]|0;d=f[h>>2]|0;i=f[h+4>>2]|0;o=g}bs(B);bs(A);return 1}function _b(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;B=a+8|0;f[B>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else mj(i,e-j|0);y=e>>>0>1073741823?-1:e<<2;z=as(y)|0;_j(z|0,0,y|0)|0;A=as(y)|0;_j(A|0,0,y|0)|0;if((f[B>>2]|0)>0){k=a+16|0;h=a+32|0;l=a+12|0;i=0;do{d=f[z+(i<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[h>>2]|0;f[j+(i<<2)>>2]=g}else{y=f[l>>2]|0;j=f[h>>2]|0;f[j+(i<<2)>>2]=(d|0)<(y|0)?y:d}i=i+1|0;d=f[B>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;K=18}}else{d=d-(f[i>>2]|0)|0;K=18}if((K|0)==18){K=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[B>>2]|0))}}r=f[a+48>>2]|0;v=a+56|0;h=f[v>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;x=g-d|0;y=x>>2;if((x|0)<=4){bs(A);bs(z);return 1}s=f[a+52>>2]|0;u=(e|0)>0;w=a+16|0;t=a+32|0;x=a+12|0;q=a+20|0;p=r+64|0;o=r+28|0;n=e<<2;i=g;m=1;while(1){if(i-d>>2>>>0<=m>>>0){Oq(h);d=f[h>>2]|0}a=f[d+(m<<2)>>2]|0;if(u)_j(z|0,0,n|0)|0;if((a|0)>-1){l=f[r>>2]|0;k=a;j=0;do{if(((f[l+(k>>>5<<2)>>2]&1<<(k&31)|0)==0?(J=f[(f[(f[p>>2]|0)+12>>2]|0)+(k<<2)>>2]|0,(J|0)>=0):0)?(E=f[o>>2]|0,i=f[s>>2]|0,C=f[i+(f[E+(J<<2)>>2]<<2)>>2]|0,D=J+1|0,D=f[i+(f[E+((((D|0)%3|0|0)==0?J+-2|0:D)<<2)>>2]<<2)>>2]|0,E=f[i+(f[E+((((J>>>0)%3|0|0)==0?2:-1)+J<<2)>>2]<<2)>>2]|0,(C|0)<(m|0)&(D|0)<(m|0)&(E|0)<(m|0)):0){g=X(C,e)|0;h=X(D,e)|0;i=X(E,e)|0;if(u){d=0;do{f[A+(d<<2)>>2]=(f[c+(d+i<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+g<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));if(u){d=0;do{i=z+(d<<2)|0;f[i>>2]=(f[i>>2]|0)+(f[A+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}}j=j+1|0}d=(((k>>>0)%3|0|0)==0?2:-1)+k|0;do if(!(f[l+(d>>>5<<2)>>2]&1<<(d&31))){if((d|0)>=0){d=f[(f[(f[p>>2]|0)+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}}else d=-1073741824;while(0);k=(d|0)==(a|0)?-1073741824:d}while((k|0)>-1);g=X(m,e)|0;if(j){if(u){d=0;do{a=z+(d<<2)|0;f[a>>2]=(f[a>>2]|0)/(j|0)|0;d=d+1|0}while((d|0)!=(e|0))}k=b+(g<<2)|0;j=c+(g<<2)|0;if((f[B>>2]|0)>0){h=0;do{d=f[z+(h<<2)>>2]|0;g=f[w>>2]|0;if((d|0)>(g|0)){i=f[t>>2]|0;f[i+(h<<2)>>2]=g}else{a=f[x>>2]|0;i=f[t>>2]|0;f[i+(h<<2)>>2]=(d|0)<(a|0)?a:d}h=h+1|0;d=f[B>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[k+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=j+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[w>>2]|0)){if((d|0)<(f[x>>2]|0)){d=(f[q>>2]|0)+d|0;K=70}}else{d=d-(f[q>>2]|0)|0;K=70}if((K|0)==70){K=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[B>>2]|0))}}}else{I=g;K=48}}else{I=X(m,e)|0;K=48}if((K|0)==48?(K=0,F=c+((X(m+-1|0,e)|0)<<2)|0,G=b+(I<<2)|0,H=c+(I<<2)|0,(f[B>>2]|0)>0):0){h=0;do{d=f[F+(h<<2)>>2]|0;g=f[w>>2]|0;if((d|0)>(g|0)){i=f[t>>2]|0;f[i+(h<<2)>>2]=g}else{a=f[x>>2]|0;i=f[t>>2]|0;f[i+(h<<2)>>2]=(d|0)<(a|0)?a:d}h=h+1|0;d=f[B>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[G+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=H+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[w>>2]|0)){if((d|0)<(f[x>>2]|0)){d=(f[q>>2]|0)+d|0;K=58}}else{d=d-(f[q>>2]|0)|0;K=58}if((K|0)==58){K=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[B>>2]|0))}}g=m+1|0;if((g|0)>=(y|0))break;h=f[v>>2]|0;d=f[h>>2]|0;i=f[h+4>>2]|0;m=g}bs(A);bs(z);return 1}function $b(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,o=La,p=La,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=La;K=u;u=u+48|0;J=K+12|0;E=K+32|0;H=K;D=J+16|0;f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;f[J+12>>2]=0;n[D>>2]=$(1.0);G=a+80|0;xl(H,f[G>>2]|0);i=f[G>>2]|0;a:do if((i|0)>0){A=c+48|0;B=c+40|0;x=J+4|0;z=J+12|0;w=J+8|0;C=a+40|0;y=a+64|0;v=f[e>>2]|0;i=0;t=0;s=0;while(1){k=v+t|0;m=A;q=f[m>>2]|0;m=f[m+4>>2]|0;l=B;l=mo(k|0,((k|0)<0)<<31>>31|0,f[l>>2]|0,f[l+4>>2]|0)|0;m=Kp(l|0,I|0,q|0,m|0)|0;m=(f[f[c>>2]>>2]|0)+m|0;m=h[m>>0]|h[m+1>>0]<<8;d[E>>1]=m;q=(m^318)&65535;b:do if(i){l=i+-1|0;k=(l&i|0)==0;if(k)g=l&q;else g=(q>>>0)%(i>>>0)|0;j=f[J>>2]|0;e=f[j+(g<<2)>>2]|0;c:do if(e|0){if(k)do{e=f[e>>2]|0;if(!e)break c;if((f[e+4>>2]&l|0)!=(g|0))break c}while((d[e+8>>1]|0)!=m<<16>>16);else do{e=f[e>>2]|0;if(!e)break c;if((((f[e+4>>2]|0)>>>0)%(i>>>0)|0|0)!=(g|0))break c}while((d[e+8>>1]|0)!=m<<16>>16);f[(f[H>>2]|0)+(t<<2)>>2]=f[e+12>>2];g=s;break b}while(0);if(k)e=l&q;else e=(q>>>0)%(i>>>0)|0;g=f[j+(e<<2)>>2]|0;if(g)if(k)while(1){g=f[g>>2]|0;if(!g){g=0;r=28;break b}if((f[g+4>>2]&l|0)!=(e|0)){g=0;r=28;break b}if((d[g+8>>1]|0)==m<<16>>16){r=41;break}}else while(1){g=f[g>>2]|0;if(!g){g=0;r=28;break b}if((((f[g+4>>2]|0)>>>0)%(i>>>0)|0|0)!=(e|0)){g=0;r=28;break b}if((d[g+8>>1]|0)==m<<16>>16){r=41;break}}else{g=0;r=28}}else{i=0;e=0;g=1;r=28}while(0);if((r|0)==28){r=0;j=no(16)|0;d[j+8>>1]=m;f[j+12>>2]=s;f[j+4>>2]=q;f[j>>2]=0;p=$(((f[z>>2]|0)+1|0)>>>0);L=$(i>>>0);o=$(n[D>>2]);do if(g|p>$(L*o)){e=(i>>>0<3|(i+-1&i|0)!=0)&1|i<<1;g=~~$(W($(p/o)))>>>0;Gi(J,e>>>0>>0?g:e);e=f[x>>2]|0;g=e+-1|0;if(!(g&e)){i=e;e=g&q;break}else{i=e;e=(q>>>0)%(e>>>0)|0;break}}while(0);g=(f[J>>2]|0)+(e<<2)|0;e=f[g>>2]|0;if(!e){f[j>>2]=f[w>>2];f[w>>2]=j;f[g>>2]=w;e=f[j>>2]|0;if(e|0){e=f[e+4>>2]|0;g=i+-1|0;if(!(g&i))e=e&g;else e=(e>>>0)%(i>>>0)|0;e=(f[J>>2]|0)+(e<<2)|0;r=39}}else{f[j>>2]=f[e>>2];r=39}if((r|0)==39)f[e>>2]=j;f[z>>2]=(f[z>>2]|0)+1;r=41}if((r|0)==41){r=0;q=C;g=f[q>>2]|0;q=mo(g|0,f[q+4>>2]|0,s|0,((s|0)<0)<<31>>31|0)|0;Fh((f[f[y>>2]>>2]|0)+q|0,E|0,g|0)|0;f[(f[H>>2]|0)+(t<<2)>>2]=s;g=s+1|0}e=t+1|0;i=f[G>>2]|0;if((e|0)>=(i|0)){q=g;break a}i=f[x>>2]|0;t=e;s=g}}else q=0;while(0);if((q|0)!=(i|0)){m=a+84|0;if(!(b[m>>0]|0)){i=f[a+68>>2]|0;e=(f[a+72>>2]|0)-i|0;if((e|0)>0){j=f[H>>2]|0;g=e>>2;e=0;do{a=i+(e<<2)|0;f[a>>2]=f[j+(f[a>>2]<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}else{b[m>>0]=0;k=a+68|0;j=a+72|0;g=f[j>>2]|0;e=f[k>>2]|0;l=g-e>>2;if(i>>>0<=l>>>0){if(i>>>0>>0?(F=e+(i<<2)|0,(g|0)!=(F|0)):0)f[j>>2]=g+(~((g+-4-F|0)>>>2)<<2)}else{Xh(k,i-l|0,1592);i=f[G>>2]|0}if((i|0)>0){j=f[H>>2]|0;if(b[m>>0]|0)Ga(21905,21924,89,22019);e=f[a+68>>2]|0;g=0;do{f[e+(g<<2)>>2]=f[j+(g<<2)>>2];g=g+1|0}while((g|0)<(i|0))}}f[G>>2]=q}i=f[H>>2]|0;if(i|0){g=H+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);ds(i)}e=f[J+8>>2]|0;if(e|0)do{H=e;e=f[e>>2]|0;ds(H)}while((e|0)!=0);e=f[J>>2]|0;f[J>>2]=0;if(!e){u=K;return q|0}ds(e);u=K;return q|0}function ac(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=La,o=La,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=La;J=u;u=u+48|0;H=J+16|0;D=J+12|0;G=J;C=H+16|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;f[H+12>>2]=0;n[C>>2]=$(1.0);F=a+80|0;xl(G,f[F>>2]|0);g=f[F>>2]|0;a:do if((g|0)>0){z=c+48|0;A=c+40|0;w=H+4|0;y=H+12|0;v=H+8|0;B=a+40|0;x=a+64|0;t=f[d>>2]|0;g=0;s=0;r=0;while(1){j=t+s|0;l=z;p=f[l>>2]|0;l=f[l+4>>2]|0;k=A;k=mo(j|0,((j|0)<0)<<31>>31|0,f[k>>2]|0,f[k+4>>2]|0)|0;l=Kp(k|0,I|0,p|0,l|0)|0;l=(f[f[c>>2]>>2]|0)+l|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;f[D>>2]=l;p=l^318;b:do if(g){k=g+-1|0;j=(k&g|0)==0;if(j)e=k&p;else e=(p>>>0)%(g>>>0)|0;i=f[H>>2]|0;d=f[i+(e<<2)>>2]|0;c:do if(d|0){if(j)do{d=f[d>>2]|0;if(!d)break c;if((f[d+4>>2]&k|0)!=(e|0))break c}while((f[d+8>>2]|0)!=(l|0));else do{d=f[d>>2]|0;if(!d)break c;if((((f[d+4>>2]|0)>>>0)%(g>>>0)|0|0)!=(e|0))break c}while((f[d+8>>2]|0)!=(l|0));f[(f[G>>2]|0)+(s<<2)>>2]=f[d+12>>2];e=r;break b}while(0);if(j)d=k&p;else d=(p>>>0)%(g>>>0)|0;e=f[i+(d<<2)>>2]|0;if(e)if(j)while(1){e=f[e>>2]|0;if(!e){e=0;q=28;break b}if((f[e+4>>2]&k|0)!=(d|0)){e=0;q=28;break b}if((f[e+8>>2]|0)==(l|0)){q=41;break}}else while(1){e=f[e>>2]|0;if(!e){e=0;q=28;break b}if((((f[e+4>>2]|0)>>>0)%(g>>>0)|0|0)!=(d|0)){e=0;q=28;break b}if((f[e+8>>2]|0)==(l|0)){q=41;break}}else{e=0;q=28}}else{g=0;d=0;e=1;q=28}while(0);if((q|0)==28){q=0;i=no(16)|0;f[i+8>>2]=l;f[i+12>>2]=r;f[i+4>>2]=p;f[i>>2]=0;o=$(((f[y>>2]|0)+1|0)>>>0);K=$(g>>>0);m=$(n[C>>2]);do if(e|o>$(K*m)){d=(g>>>0<3|(g+-1&g|0)!=0)&1|g<<1;e=~~$(W($(o/m)))>>>0;ej(H,d>>>0>>0?e:d);d=f[w>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&p;break}else{g=d;d=(p>>>0)%(d>>>0)|0;break}}while(0);e=(f[H>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[i>>2]=f[v>>2];f[v>>2]=i;f[e>>2]=v;d=f[i>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else d=(d>>>0)%(g>>>0)|0;d=(f[H>>2]|0)+(d<<2)|0;q=39}}else{f[i>>2]=f[d>>2];q=39}if((q|0)==39)f[d>>2]=i;f[y>>2]=(f[y>>2]|0)+1;q=41}if((q|0)==41){q=0;p=B;e=f[p>>2]|0;p=mo(e|0,f[p+4>>2]|0,r|0,((r|0)<0)<<31>>31|0)|0;Fh((f[f[x>>2]>>2]|0)+p|0,D|0,e|0)|0;f[(f[G>>2]|0)+(s<<2)>>2]=r;e=r+1|0}d=s+1|0;g=f[F>>2]|0;if((d|0)>=(g|0)){p=e;break a}g=f[w>>2]|0;s=d;r=e}}else p=0;while(0);if((p|0)!=(g|0)){l=a+84|0;if(!(b[l>>0]|0)){g=f[a+68>>2]|0;d=(f[a+72>>2]|0)-g|0;if((d|0)>0){i=f[G>>2]|0;e=d>>2;d=0;do{a=g+(d<<2)|0;f[a>>2]=f[i+(f[a>>2]<<2)>>2];d=d+1|0}while((d|0)<(e|0))}}else{b[l>>0]=0;j=a+68|0;i=a+72|0;e=f[i>>2]|0;d=f[j>>2]|0;k=e-d>>2;if(g>>>0<=k>>>0){if(g>>>0>>0?(E=d+(g<<2)|0,(e|0)!=(E|0)):0)f[i>>2]=e+(~((e+-4-E|0)>>>2)<<2)}else{Xh(j,g-k|0,1592);g=f[F>>2]|0}if((g|0)>0){i=f[G>>2]|0;if(b[l>>0]|0)Ga(21905,21924,89,22019);d=f[a+68>>2]|0;e=0;do{f[d+(e<<2)>>2]=f[i+(e<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}f[F>>2]=p}g=f[G>>2]|0;if(g|0){e=G+4|0;d=f[e>>2]|0;if((d|0)!=(g|0))f[e>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g)}d=f[H+8>>2]|0;if(d|0)do{G=d;d=f[d>>2]|0;ds(G)}while((d|0)!=0);d=f[H>>2]|0;f[H>>2]=0;if(!d){u=J;return p|0}ds(d);u=J;return p|0}function bc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=La,m=La,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=La;H=u;u=u+48|0;G=H+12|0;C=H+32|0;F=H;B=G+16|0;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;f[G+12>>2]=0;n[B>>2]=$(1.0);E=a+80|0;xl(F,f[E>>2]|0);g=f[E>>2]|0;a:do if((g|0)>0){y=c+48|0;z=c+40|0;v=G+4|0;x=G+12|0;t=G+8|0;A=a+40|0;w=a+64|0;s=f[d>>2]|0;g=0;r=0;q=0;while(1){i=s+r|0;k=y;o=f[k>>2]|0;k=f[k+4>>2]|0;j=z;j=mo(i|0,((i|0)<0)<<31>>31|0,f[j>>2]|0,f[j+4>>2]|0)|0;k=Kp(j|0,I|0,o|0,k|0)|0;k=b[(f[f[c>>2]>>2]|0)+k>>0]|0;b[C>>0]=k;o=k&255^318;b:do if(g){j=g+-1|0;i=(j&g|0)==0;if(i)e=j&o;else e=(o>>>0)%(g>>>0)|0;h=f[G>>2]|0;d=f[h+(e<<2)>>2]|0;c:do if(d|0){if(i)do{d=f[d>>2]|0;if(!d)break c;if((f[d+4>>2]&j|0)!=(e|0))break c}while((b[d+8>>0]|0)!=k<<24>>24);else do{d=f[d>>2]|0;if(!d)break c;if((((f[d+4>>2]|0)>>>0)%(g>>>0)|0|0)!=(e|0))break c}while((b[d+8>>0]|0)!=k<<24>>24);f[(f[F>>2]|0)+(r<<2)>>2]=f[d+12>>2];e=q;break b}while(0);if(i)d=j&o;else d=(o>>>0)%(g>>>0)|0;e=f[h+(d<<2)>>2]|0;if(e)if(i)while(1){e=f[e>>2]|0;if(!e){e=0;p=28;break b}if((f[e+4>>2]&j|0)!=(d|0)){e=0;p=28;break b}if((b[e+8>>0]|0)==k<<24>>24){p=41;break}}else while(1){e=f[e>>2]|0;if(!e){e=0;p=28;break b}if((((f[e+4>>2]|0)>>>0)%(g>>>0)|0|0)!=(d|0)){e=0;p=28;break b}if((b[e+8>>0]|0)==k<<24>>24){p=41;break}}else{e=0;p=28}}else{g=0;d=0;e=1;p=28}while(0);if((p|0)==28){p=0;h=no(16)|0;b[h+8>>0]=k;f[h+12>>2]=q;f[h+4>>2]=o;f[h>>2]=0;m=$(((f[x>>2]|0)+1|0)>>>0);J=$(g>>>0);l=$(n[B>>2]);do if(e|m>$(J*l)){d=(g>>>0<3|(g+-1&g|0)!=0)&1|g<<1;e=~~$(W($(m/l)))>>>0;Ni(G,d>>>0>>0?e:d);d=f[v>>2]|0;e=d+-1|0;if(!(e&d)){g=d;d=e&o;break}else{g=d;d=(o>>>0)%(d>>>0)|0;break}}while(0);e=(f[G>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){f[h>>2]=f[t>>2];f[t>>2]=h;f[e>>2]=t;d=f[h>>2]|0;if(d|0){d=f[d+4>>2]|0;e=g+-1|0;if(!(e&g))d=d&e;else d=(d>>>0)%(g>>>0)|0;d=(f[G>>2]|0)+(d<<2)|0;p=39}}else{f[h>>2]=f[d>>2];p=39}if((p|0)==39)f[d>>2]=h;f[x>>2]=(f[x>>2]|0)+1;p=41}if((p|0)==41){p=0;o=A;e=f[o>>2]|0;o=mo(e|0,f[o+4>>2]|0,q|0,((q|0)<0)<<31>>31|0)|0;Fh((f[f[w>>2]>>2]|0)+o|0,C|0,e|0)|0;f[(f[F>>2]|0)+(r<<2)>>2]=q;e=q+1|0}d=r+1|0;g=f[E>>2]|0;if((d|0)>=(g|0)){o=e;break a}g=f[v>>2]|0;r=d;q=e}}else o=0;while(0);if((o|0)!=(g|0)){k=a+84|0;if(!(b[k>>0]|0)){g=f[a+68>>2]|0;d=(f[a+72>>2]|0)-g|0;if((d|0)>0){h=f[F>>2]|0;e=d>>2;d=0;do{a=g+(d<<2)|0;f[a>>2]=f[h+(f[a>>2]<<2)>>2];d=d+1|0}while((d|0)<(e|0))}}else{b[k>>0]=0;i=a+68|0;h=a+72|0;e=f[h>>2]|0;d=f[i>>2]|0;j=e-d>>2;if(g>>>0<=j>>>0){if(g>>>0>>0?(D=d+(g<<2)|0,(e|0)!=(D|0)):0)f[h>>2]=e+(~((e+-4-D|0)>>>2)<<2)}else{Xh(i,g-j|0,1592);g=f[E>>2]|0}if((g|0)>0){h=f[F>>2]|0;if(b[k>>0]|0)Ga(21905,21924,89,22019);d=f[a+68>>2]|0;e=0;do{f[d+(e<<2)>>2]=f[h+(e<<2)>>2];e=e+1|0}while((e|0)<(g|0))}}f[E>>2]=o}g=f[F>>2]|0;if(g|0){e=F+4|0;d=f[e>>2]|0;if((d|0)!=(g|0))f[e>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g)}d=f[G+8>>2]|0;if(d|0)do{F=d;d=f[d>>2]|0;ds(F)}while((d|0)!=0);d=f[G>>2]|0;f[G>>2]=0;if(!d){u=H;return o|0}ds(d);u=H;return o|0}function cc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!a)return;c=a+-8|0;d=f[6576]|0;a=f[a+-4>>2]|0;b=a&-8;k=c+b|0;do if(!(a&1)){e=f[c>>2]|0;if(!(a&3))return;g=c+(0-e)|0;h=e+b|0;if(g>>>0>>0)return;if((g|0)==(f[6577]|0)){b=k+4|0;a=f[b>>2]|0;if((a&3|0)!=3){i=g;j=g;b=h;break}f[6574]=h;f[b>>2]=a&-2;f[g+4>>2]=h|1;f[g+h>>2]=h;return}c=e>>>3;if(e>>>0<256){a=f[g+8>>2]|0;b=f[g+12>>2]|0;if((b|0)==(a|0)){f[6572]=f[6572]&~(1<>2]=b;f[b+8>>2]=a;i=g;j=g;b=h;break}}e=f[g+24>>2]|0;a=f[g+12>>2]|0;do if((a|0)==(g|0)){c=g+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){c=0;break}else d=c}else d=b;while(1){c=a+20|0;b=f[c>>2]|0;if(b|0){a=b;d=c;continue}c=a+16|0;b=f[c>>2]|0;if(!b)break;else{a=b;d=c}}f[d>>2]=0;c=a}else{c=f[g+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(e){a=f[g+28>>2]|0;b=26592+(a<<2)|0;if((g|0)==(f[b>>2]|0)){f[b>>2]=c;if(!c){f[6573]=f[6573]&~(1<>2]|0)!=(g|0)&1)<<2)>>2]=c;if(!c){i=g;j=g;b=h;break}}f[c+24>>2]=e;b=g+16|0;a=f[b>>2]|0;if(a|0){f[c+16>>2]=a;f[a+24>>2]=c}a=f[b+4>>2]|0;if(a){f[c+20>>2]=a;f[a+24>>2]=c;i=g;j=g;b=h}else{i=g;j=g;b=h}}else{i=g;j=g;b=h}}else{i=c;j=c}while(0);if(i>>>0>=k>>>0)return;a=k+4|0;d=f[a>>2]|0;if(!(d&1))return;if(!(d&2)){a=f[6577]|0;if((k|0)==(f[6578]|0)){k=(f[6575]|0)+b|0;f[6575]=k;f[6578]=j;f[j+4>>2]=k|1;if((j|0)!=(a|0))return;f[6577]=0;f[6574]=0;return}if((k|0)==(a|0)){k=(f[6574]|0)+b|0;f[6574]=k;f[6577]=i;f[j+4>>2]=k|1;f[i+k>>2]=k;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){b=f[k+8>>2]|0;a=f[k+12>>2]|0;if((a|0)==(b|0)){f[6572]=f[6572]&~(1<>2]=a;f[a+8>>2]=b;break}}else{g=f[k+24>>2]|0;a=f[k+12>>2]|0;do if((a|0)==(k|0)){c=k+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){c=0;break}else d=c}else d=b;while(1){c=a+20|0;b=f[c>>2]|0;if(b|0){a=b;d=c;continue}c=a+16|0;b=f[c>>2]|0;if(!b)break;else{a=b;d=c}}f[d>>2]=0;c=a}else{c=f[k+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(g|0){a=f[k+28>>2]|0;b=26592+(a<<2)|0;if((k|0)==(f[b>>2]|0)){f[b>>2]=c;if(!c){f[6573]=f[6573]&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=g;b=k+16|0;a=f[b>>2]|0;if(a|0){f[c+16>>2]=a;f[a+24>>2]=c}a=f[b+4>>2]|0;if(a|0){f[c+20>>2]=a;f[a+24>>2]=c}}}while(0);f[j+4>>2]=e|1;f[i+e>>2]=e;if((j|0)==(f[6577]|0)){f[6574]=e;return}}else{f[a>>2]=d&-2;f[j+4>>2]=b|1;f[i+b>>2]=b;e=b}a=e>>>3;if(e>>>0<256){c=26328+(a<<1<<2)|0;b=f[6572]|0;a=1<>2]|0}f[a>>2]=j;f[b+12>>2]=j;f[j+8>>2]=b;f[j+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)b=31;else{i=(a+1048320|0)>>>16&8;k=a<>>16&4;k=k<>>16&2;b=14-(h|i|b)+(k<>>15)|0;b=e>>>(b+7|0)&1|b<<1}else b=0;d=26592+(b<<2)|0;f[j+28>>2]=b;f[j+20>>2]=0;f[j+16>>2]=0;a=f[6573]|0;c=1<>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){a=73;break}d=c+16+(b>>>31<<2)|0;a=f[d>>2]|0;if(!a){a=72;break}else{b=b<<1;c=a}}if((a|0)==72){f[d>>2]=j;f[j+24>>2]=c;f[j+12>>2]=j;f[j+8>>2]=j;break}else if((a|0)==73){i=c+8|0;k=f[i>>2]|0;f[k+12>>2]=j;f[i>>2]=j;f[j+8>>2]=k;f[j+12>>2]=c;f[j+24>>2]=0;break}}else{f[6573]=a|c;f[d>>2]=j;f[j+24>>2]=d;f[j+12>>2]=j;f[j+8>>2]=j}while(0);k=(f[6580]|0)+-1|0;f[6580]=k;if(!k)a=26744;else return;while(1){a=f[a>>2]|0;if(!a)break;else a=a+8|0}f[6580]=-1;return}function dc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+32|0;w=z+28|0;t=z+24|0;j=z+20|0;k=z+16|0;l=z+12|0;m=z+8|0;s=z+4|0;v=z;e=f[b>>2]|0;if((e|0)<0){u=z;return}x=(e>>>0)/3|0;q=a+12|0;if(f[(f[q>>2]|0)+(x>>>5<<2)>>2]&1<<(x&31)|0){u=z;return}x=a+56|0;c=f[x>>2]|0;r=a+60|0;d=f[r>>2]|0;if((d|0)!=(c|0)){c=d+(~((d+-4-c|0)>>>2)<<2)|0;f[r>>2]=c}o=a+64|0;if((c|0)==(f[o>>2]|0))Bj(x,b);else{f[c>>2]=e;f[r>>2]=c+4}c=f[a>>2]|0;g=f[b>>2]|0;d=g+1|0;do if((g|0)>=0){c=f[c+28>>2]|0;d=f[c+((((d|0)%3|0|0)==0?g+-2|0:d)<<2)>>2]|0;if(!((g>>>0)%3|0)){e=c;c=g+2|0;break}else{e=c;c=g+-1|0;break}}else{d=f[c+28>>2]|0;e=d;d=f[d+(g<<2)>>2]|0;c=g}while(0);i=f[e+(c<<2)>>2]|0;n=a+24|0;c=f[n>>2]|0;g=c+(d>>>5<<2)|0;h=1<<(d&31);e=f[g>>2]|0;if(!(e&h)){f[g>>2]=e|h;f[j>>2]=d;c=f[b>>2]|0;d=c+1|0;if((c|0)>=0)c=((d|0)%3|0|0)==0?c+-2|0:d;f[k>>2]=c;f[t>>2]=f[j>>2];f[w>>2]=f[k>>2];mh(a+36|0,t,w);c=f[n>>2]|0}d=c+(i>>>5<<2)|0;e=1<<(i&31);c=f[d>>2]|0;if(!(c&e)){f[d>>2]=c|e;d=a+36|0;f[l>>2]=i;c=f[b>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);f[m>>2]=c;f[t>>2]=f[l>>2];f[w>>2]=f[m>>2];mh(d,t,w)}d=f[x>>2]|0;c=f[r>>2]|0;if((d|0)==(c|0)){u=z;return}k=a+36|0;do{e=f[c+-4>>2]|0;f[b>>2]=e;g=(e|0)/3|0;if((e|0)>=0?(p=f[q>>2]|0,(f[p+(g>>>5<<2)>>2]&1<<(g&31)|0)==0):0){c=e;d=p;e=f[a>>2]|0;a:while(1){i=(c|0)/3|0;d=d+(i>>>5<<2)|0;f[d>>2]=1<<(i&31)|f[d>>2];d=f[b>>2]|0;i=f[(f[e+28>>2]|0)+(d<<2)>>2]|0;c=f[(f[e+40>>2]|0)+(i<<2)>>2]|0;if((c|0)<0)j=1;else{j=f[(f[f[e+64>>2]>>2]|0)+(c<<2)>>2]|0;j=(1<<(j&31)&f[(f[e+12>>2]|0)+(j>>>5<<2)>>2]|0)!=0}g=(f[n>>2]|0)+(i>>>5<<2)|0;h=1<<(i&31);c=f[g>>2]|0;if(!(c&h)){f[g>>2]=c|h;f[s>>2]=i;f[v>>2]=f[b>>2];f[t>>2]=f[s>>2];f[w>>2]=f[v>>2];mh(k,t,w);e=f[a>>2]|0;c=f[b>>2]|0;if(j){d=c;y=40}else{d=c+1|0;if((c|0)>=0)c=((d|0)%3|0|0)==0?c+-2|0:d;do if(!(1<<(c&31)&f[(f[e>>2]|0)+(c>>>5<<2)>>2])){if((c|0)<0)break;c=f[(f[(f[e+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0}else c=-1073741824;while(0);f[b>>2]=c}}else y=40;if((y|0)==40){y=0;g=(d|0)<0;c=d+1|0;if(g)c=d;else c=((c|0)%3|0|0)==0?d+-2|0:c;if(!(1<<(c&31)&f[(f[e>>2]|0)+(c>>>5<<2)>>2])){if((c|0)>=0)c=f[(f[(f[e+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0}else c=-1073741824;f[w>>2]=c;do if(!g)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}while(0);do if(!(1<<(d&31)&f[(f[e>>2]|0)+(d>>>5<<2)>>2])){if((d|0)<0)break;d=f[(f[(f[e+64>>2]|0)+12>>2]|0)+(d<<2)>>2]|0}else d=-1073741824;while(0);m=(c|0)<0;i=m?-1:(c>>>0)/3|0;h=(d|0)<0;j=h?-1:(d>>>0)/3|0;do if(!m){g=f[q>>2]|0;if(f[g+(i>>>5<<2)>>2]&1<<(i&31)|0){y=54;break}if(h)break;if(!(f[g+(j>>>5<<2)>>2]&1<<(j&31))){y=59;break a}}else y=54;while(0);if((y|0)==54){y=0;if(h){y=56;break}if(!(f[(f[q>>2]|0)+(j>>>5<<2)>>2]&1<<(j&31)))c=d;else{y=56;break}}f[b>>2]=c}d=f[q>>2]|0}do if((y|0)==56){y=0;c=(f[r>>2]|0)+-4|0;f[r>>2]=c}else if((y|0)==59){y=0;c=f[r>>2]|0;f[c+-4>>2]=d;if((c|0)==(f[o>>2]|0)){Bj(x,w);c=f[r>>2]|0;break}else{f[c>>2]=f[w>>2];c=c+4|0;f[r>>2]=c;break}}while(0);d=f[x>>2]|0}else{c=c+-4|0;f[r>>2]=c}}while((d|0)!=(c|0));u=z;return}function ec(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+32|0;w=z+28|0;t=z+24|0;j=z+20|0;k=z+16|0;l=z+12|0;m=z+8|0;s=z+4|0;v=z;e=f[b>>2]|0;if((e|0)<0){u=z;return}x=(e>>>0)/3|0;q=a+12|0;if(f[(f[q>>2]|0)+(x>>>5<<2)>>2]&1<<(x&31)|0){u=z;return}x=a+56|0;c=f[x>>2]|0;r=a+60|0;d=f[r>>2]|0;if((d|0)!=(c|0)){c=d+(~((d+-4-c|0)>>>2)<<2)|0;f[r>>2]=c}o=a+64|0;if((c|0)==(f[o>>2]|0))Bj(x,b);else{f[c>>2]=e;f[r>>2]=c+4}g=f[a>>2]|0;e=f[b>>2]|0;c=e+1|0;if((e|0)>=0){c=((c|0)%3|0|0)==0?e+-2|0:c;if((c|0)<0)d=-1073741824;else d=f[(f[g>>2]|0)+(c<<2)>>2]|0;c=(((e>>>0)%3|0|0)==0?2:-1)+e|0;if((c|0)<0)i=-1073741824;else i=f[(f[g>>2]|0)+(c<<2)>>2]|0}else{d=-1073741824;i=-1073741824}n=a+24|0;c=f[n>>2]|0;g=c+(d>>>5<<2)|0;h=1<<(d&31);e=f[g>>2]|0;if(!(e&h)){f[g>>2]=e|h;f[j>>2]=d;c=f[b>>2]|0;d=c+1|0;if((c|0)>=0)c=((d|0)%3|0|0)==0?c+-2|0:d;f[k>>2]=c;f[t>>2]=f[j>>2];f[w>>2]=f[k>>2];mh(a+36|0,t,w);c=f[n>>2]|0}d=c+(i>>>5<<2)|0;e=1<<(i&31);c=f[d>>2]|0;if(!(c&e)){f[d>>2]=c|e;d=a+36|0;f[l>>2]=i;c=f[b>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);f[m>>2]=c;f[t>>2]=f[l>>2];f[w>>2]=f[m>>2];mh(d,t,w)}d=f[x>>2]|0;c=f[r>>2]|0;if((d|0)==(c|0)){u=z;return}k=a+36|0;g=c;while(1){c=f[g+-4>>2]|0;f[b>>2]=c;e=(c|0)/3|0;if((c|0)>=0?(p=f[q>>2]|0,(f[p+(e>>>5<<2)>>2]&1<<(e&31)|0)==0):0){d=p;a:while(1){e=(c|0)/3|0;g=d+(e>>>5<<2)|0;f[g>>2]=1<<(e&31)|f[g>>2];g=f[b>>2]|0;e=f[a>>2]|0;if((g|0)<0)j=-1073741824;else j=f[(f[e>>2]|0)+(g<<2)>>2]|0;d=f[(f[e+24>>2]|0)+(j<<2)>>2]|0;c=d+1|0;if((d|0)>=0){c=((c|0)%3|0|0)==0?d+-2|0:c;if((c|0)>=0){d=f[(f[e+12>>2]|0)+(c<<2)>>2]|0;c=d+1|0;if((d|0)<0)i=d;else i=((c|0)%3|0|0)==0?d+-2|0:c}else i=c}else i=d;d=(f[n>>2]|0)+(j>>>5<<2)|0;h=1<<(j&31);c=f[d>>2]|0;if(!(c&h)){f[d>>2]=c|h;f[s>>2]=j;f[v>>2]=f[b>>2];f[t>>2]=f[s>>2];f[w>>2]=f[v>>2];mh(k,t,w);d=f[a>>2]|0;c=f[b>>2]|0;if((i|0)<0){g=c;e=d;y=41}else{do if((c|0)<0)c=-1073741824;else{m=c+1|0;c=((m|0)%3|0|0)==0?c+-2|0:m;if((c|0)<0)break;c=f[(f[d+12>>2]|0)+(c<<2)>>2]|0}while(0);f[b>>2]=c}}else y=41;if((y|0)==41){y=0;if((g|0)<0){y=44;break}c=g+1|0;c=((c|0)%3|0|0)==0?g+-2|0:c;if((c|0)>=0)c=f[(f[e+12>>2]|0)+(c<<2)>>2]|0;f[w>>2]=c;d=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((d|0)>=0)d=f[(f[e+12>>2]|0)+(d<<2)>>2]|0;m=(c|0)<0;h=m?-1:(c>>>0)/3|0;g=(d|0)<0;i=g?-1:(d>>>0)/3|0;do if(!m){e=f[q>>2]|0;if(f[e+(h>>>5<<2)>>2]&1<<(h&31)|0){y=49;break}if(g)break;if(!(f[e+(i>>>5<<2)>>2]&1<<(i&31))){y=54;break a}}else y=49;while(0);if((y|0)==49){y=0;if(g){y=51;break}if(!(f[(f[q>>2]|0)+(i>>>5<<2)>>2]&1<<(i&31)))c=d;else{y=51;break}}f[b>>2]=c}d=f[q>>2]|0}do if((y|0)==44){f[w>>2]=-1073741824;y=51}else if((y|0)==54){y=0;c=f[r>>2]|0;f[c+-4>>2]=d;if((c|0)==(f[o>>2]|0)){Bj(x,w);c=f[r>>2]|0;break}else{f[c>>2]=f[w>>2];c=c+4|0;f[r>>2]=c;break}}while(0);if((y|0)==51){y=0;c=(f[r>>2]|0)+-4|0;f[r>>2]=c}d=f[x>>2]|0}else{c=g+-4|0;f[r>>2]=c}if((d|0)==(c|0))break;else g=c}u=z;return}function fc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=La,k=0,l=La,m=La;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;b[s>>0]=b[g>>0];b[s+1>>0]=b[g+1>>0];b[s+2>>0]=b[g+2>>0];b[s+3>>0]=b[g+3>>0];j=$(n[s>>2]);g=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;i=d;f[i>>2]=~~+j>>>0;f[i+4>>2]=g;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;i=1;return i|0}case 2:{k=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;k=I;i=f[a>>2]|0;c=f[i>>2]|0;if((k|0)>0|((k|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=(f[s>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24,$(n[s>>2]));g=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d;f[k>>2]=~~+j>>>0;f[k+4>>2]=g;j=(f[s>>2]=i,$(n[s>>2]));i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d+8|0;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=d+16|0;f[k>>2]=0;f[k+4>>2]=0;k=1;return k|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;k=a+40|0;e=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;k=f[a>>2]|0;c=f[k>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[k+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}i=c+e|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];m=$(n[s>>2]);k=i+4|0;b[s>>0]=b[k>>0];b[s+1>>0]=b[k+1>>0];b[s+2>>0]=b[k+2>>0];b[s+3>>0]=b[k+3>>0];l=$(n[s>>2]);i=i+8|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];j=$(n[s>>2]);i=+K(+m)>=1.0?(+m>0.0?~~+Y(+J(+m/4294967296.0),4294967295.0)>>>0:~~+W((+m-+(~~+m>>>0))/4294967296.0)>>>0):0;k=d;f[k>>2]=~~+m>>>0;f[k+4>>2]=i;k=+K(+l)>=1.0?(+l>0.0?~~+Y(+J(+l/4294967296.0),4294967295.0)>>>0:~~+W((+l-+(~~+l>>>0))/4294967296.0)>>>0):0;i=d+8|0;f[i>>2]=~~+l>>>0;f[i+4>>2]=k;i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d+16|0;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=1;return k|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;k=a+40|0;e=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;k=f[a>>2]|0;c=f[k>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[k+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}i=c+e|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];j=$(n[s>>2]);k=i+4|0;b[s>>0]=b[k>>0];b[s+1>>0]=b[k+1>>0];b[s+2>>0]=b[k+2>>0];b[s+3>>0]=b[k+3>>0];l=$(n[s>>2]);i=i+8|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];m=$(n[s>>2]);i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=+K(+l)>=1.0?(+l>0.0?~~+Y(+J(+l/4294967296.0),4294967295.0)>>>0:~~+W((+l-+(~~+l>>>0))/4294967296.0)>>>0):0;i=d+8|0;f[i>>2]=~~+l>>>0;f[i+4>>2]=k;i=+K(+m)>=1.0?(+m>0.0?~~+Y(+J(+m/4294967296.0),4294967295.0)>>>0:~~+W((+m-+(~~+m>>>0))/4294967296.0)>>>0):0;k=d+16|0;f[k>>2]=~~+m>>>0;f[k+4>>2]=i;k=1;return k|0}default:{k=0;return k|0}}return 0}function gc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;w=u;u=u+688|0;t=w+680|0;l=w;v=w+8|0;m=w+676|0;n=w+672|0;o=w+668|0;p=w+664|0;q=w+660|0;r=w+656|0;s=w+4|0;i=c+8|0;y=i;g=f[y>>2]|0;y=f[y+4>>2]|0;k=c+16|0;j=k;e=f[j>>2]|0;j=Kp(e|0,f[j+4>>2]|0,4,0)|0;x=I;if((y|0)<(x|0)|(y|0)==(x|0)&g>>>0>>0){y=0;u=w;return y|0}y=(f[c>>2]|0)+e|0;y=h[y>>0]|h[y+1>>0]<<8|h[y+2>>0]<<16|h[y+3>>0]<<24;b[a>>0]=y;b[a+1>>0]=y>>8;b[a+2>>0]=y>>16;b[a+3>>0]=y>>24;y=k;j=f[y>>2]|0;y=f[y+4>>2]|0;e=Kp(j|0,y|0,4,0)|0;g=k;f[g>>2]=e;f[g+4>>2]=I;g=i;x=f[g>>2]|0;g=f[g+4>>2]|0;y=Kp(j|0,y|0,8,0)|0;j=I;if((g|0)<(j|0)|(g|0)==(j|0)&x>>>0>>0){y=0;u=w;return y|0}y=a+4|0;g=(f[c>>2]|0)+e|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[y>>0]=g;b[y+1>>0]=g>>8;b[y+2>>0]=g>>16;b[y+3>>0]=g>>24;y=k;g=f[y>>2]|0;y=f[y+4>>2]|0;e=Kp(g|0,y|0,4,0)|0;j=k;f[j>>2]=e;f[j+4>>2]=I;j=a+12|0;z=i;x=f[z>>2]|0;z=f[z+4>>2]|0;y=Kp(g|0,y|0,8,0)|0;g=I;if((z|0)<(g|0)|(z|0)==(g|0)&x>>>0>>0){z=0;u=w;return z|0}g=(f[c>>2]|0)+e|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[j>>0]=g;b[j+1>>0]=g>>8;b[j+2>>0]=g>>16;b[j+3>>0]=g>>24;z=k;x=f[z>>2]|0;z=f[z+4>>2]|0;e=Kp(x|0,z|0,4,0)|0;y=k;f[y>>2]=e;f[y+4>>2]=I;a=a+16|0;y=f[i>>2]|0;i=f[i+4>>2]|0;z=Kp(x|0,z|0,8,0)|0;x=I;if((i|0)<(x|0)|(i|0)==(x|0)&y>>>0>>0){z=0;u=w;return z|0}e=(f[c>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[a>>0]=e;b[a+1>>0]=e>>8;b[a+2>>0]=e>>16;b[a+3>>0]=e>>24;y=k;y=Kp(f[y>>2]|0,f[y+4>>2]|0,4,0)|0;z=k;f[z>>2]=y;f[z+4>>2]=I;if(e>>>0>6){f[l>>2]=e;Lo(22175,l)|0;z=0;u=w;return z|0}e=d;a:do if(g|0){Pj(d,g);switch(f[a>>2]|0){case 0:{Ti(v,3);f[m>>2]=e;f[t>>2]=f[m>>2];Cf(v,c,t)|0;Lg(v);break a}case 1:{Ti(v,3);f[n>>2]=e;f[t>>2]=f[n>>2];Bf(v,c,t)|0;Lg(v);break a}case 2:{Ui(v,3);f[o>>2]=e;f[t>>2]=f[o>>2];Ef(v,c,t)|0;Og(v);break a}case 3:{Ui(v,3);f[p>>2]=e;f[t>>2]=f[p>>2];Df(v,c,t)|0;Og(v);break a}case 4:{Ci(v,3);f[q>>2]=e;f[t>>2]=f[q>>2];Ue(v,c,t)|0;Bg(v);break a}case 5:{Ci(v,3);f[r>>2]=e;f[t>>2]=f[r>>2];Te(v,c,t)|0;Bg(v);break a}case 6:{Ci(v,3);f[s>>2]=e;f[t>>2]=f[s>>2];Se(v,c,t)|0;Bg(v);break a}default:{z=0;u=w;return z|0}}}while(0);z=(((f[d+4>>2]|0)-(f[d>>2]|0)|0)/12|0|0)==(f[j>>2]|0);u=w;return z|0}function hc(a,c){a=a|0;c=c|0;var d=0,e=0,g=La,i=La,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=La;t=b[c+11>>0]|0;v=t<<24>>24<0;u=v?f[c>>2]|0:c;t=v?f[c+4>>2]|0:t&255;if(t>>>0>3){j=u;m=t;k=t;while(1){v=X(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24,1540483477)|0;m=(X(v>>>24^v,1540483477)|0)^(X(m,1540483477)|0);k=k+-4|0;if(k>>>0<=3)break;else j=j+4|0}v=t+-4|0;k=v&-4;l=u+(k+4)|0;j=m;k=v-k|0}else{l=u;j=t;k=t}switch(k|0){case 3:{o=h[l+2>>0]<<16^j;x=6;break}case 2:{o=j;x=6;break}case 1:{p=j;x=7;break}default:q=j}if((x|0)==6){p=h[l+1>>0]<<8^o;x=7}if((x|0)==7)q=X(h[l>>0]^p,1540483477)|0;v=X(q>>>13^q,1540483477)|0;v=v>>>15^v;r=a+4|0;q=f[r>>2]|0;s=(q|0)==0;a:do if(!s){o=q+-1|0;k=(o&q|0)==0;if(k)p=v&o;else p=(v>>>0)%(q>>>0)|0;j=f[(f[a>>2]|0)+(p<<2)>>2]|0;if((j|0)!=0?(e=f[j>>2]|0,(e|0)!=0):0){j=(t|0)==0;if(k){if(j){while(1){if((f[e+4>>2]&o|0)!=(p|0)){d=p;break a}u=b[e+8+11>>0]|0;if(!((u<<24>>24<0?f[e+12>>2]|0:u&255)|0))break;e=f[e>>2]|0;if(!e){d=p;break a}}a=e+20|0;return a|0}b:while(1){if((f[e+4>>2]&o|0)!=(p|0)){d=p;break a}j=e+8|0;l=b[j+11>>0]|0;m=l<<24>>24<0;l=l&255;do if(((m?f[e+12>>2]|0:l)|0)==(t|0)){k=f[j>>2]|0;if(m)if(!(nm(k,u,t)|0)){x=54;break b}else break;if((k&255)<<24>>24==(b[u>>0]|0)){k=u;do{l=l+-1|0;j=j+1|0;if(!l){x=54;break b}k=k+1|0}while((b[j>>0]|0)==(b[k>>0]|0))}}while(0);e=f[e>>2]|0;if(!e){d=p;break a}}if((x|0)==54){a=e+20|0;return a|0}}else{if(j){d=e;while(1){if((((f[d+4>>2]|0)>>>0)%(q>>>0)|0|0)!=(p|0)){d=p;break a}u=b[d+8+11>>0]|0;if(!((u<<24>>24<0?f[d+12>>2]|0:u&255)|0)){e=d;break}d=f[d>>2]|0;if(!d){d=p;break a}}a=e+20|0;return a|0}c:while(1){if((((f[e+4>>2]|0)>>>0)%(q>>>0)|0|0)!=(p|0)){d=p;break a}j=e+8|0;l=b[j+11>>0]|0;m=l<<24>>24<0;l=l&255;do if(((m?f[e+12>>2]|0:l)|0)==(t|0)){k=f[j>>2]|0;if(m)if(!(nm(k,u,t)|0)){x=54;break c}else break;if((k&255)<<24>>24==(b[u>>0]|0)){k=u;do{l=l+-1|0;j=j+1|0;if(!l){x=54;break c}k=k+1|0}while((b[j>>0]|0)==(b[k>>0]|0))}}while(0);e=f[e>>2]|0;if(!e){d=p;break a}}if((x|0)==54){a=e+20|0;return a|0}}}else d=p}else d=0;while(0);l=no(24)|0;im(l+8|0,c);f[l+20>>2]=0;f[l+4>>2]=v;f[l>>2]=0;k=a+12|0;i=$(((f[k>>2]|0)+1|0)>>>0);y=$(q>>>0);g=$(n[a+16>>2]);do if(s|i>$(y*g)){d=(q>>>0<3|(q+-1&q|0)!=0)&1|q<<1;e=~~$(W($(i/g)))>>>0;Ri(a,d>>>0>>0?e:d);d=f[r>>2]|0;e=d+-1|0;if(!(e&d)){j=d;d=e&v;break}else{j=d;d=(v>>>0)%(d>>>0)|0;break}}else j=q;while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+8|0;f[l>>2]=f[d>>2];f[d>>2]=l;f[e>>2]=d;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;e=j+-1|0;if(!(e&j))d=d&e;else d=(d>>>0)%(j>>>0)|0;w=(f[a>>2]|0)+(d<<2)|0;x=52}}else{f[l>>2]=f[d>>2];w=d;x=52}if((x|0)==52)f[w>>2]=l;f[k>>2]=(f[k>>2]|0)+1;a=l;a=a+20|0;return a|0}function ic(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;F=u;u=u+80|0;B=F+76|0;A=F;E=F+72|0;z=F+64|0;D=F+68|0;C=a+28|0;do if(((h[(f[C>>2]|0)+36>>0]|0)<<8&65535)<512){w=c+8|0;x=f[w>>2]|0;w=f[w+4>>2]|0;i=c+16|0;e=i;d=f[e>>2]|0;e=Kp(d|0,f[e+4>>2]|0,4,0)|0;g=I;if((w|0)<(g|0)|(w|0)==(g|0)&x>>>0>>0){E=0;u=F;return E|0}else{d=(f[c>>2]|0)+d|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;f[B>>2]=d;x=i;f[x>>2]=e;f[x+4>>2]=g;break}}else if(rk(B,c)|0){d=f[B>>2]|0;break}else{E=0;u=F;return E|0}while(0);if(!d){E=0;u=F;return E|0}x=a+4|0;i=a+8|0;g=f[i>>2]|0;e=f[x>>2]|0;j=g-e>>2;if(d>>>0>j>>>0){mj(x,d-j|0);if(!(f[B>>2]|0)){E=1;u=F;return E|0}}else if(d>>>0>>0?(k=e+(d<<2)|0,(g|0)!=(k|0)):0)f[i>>2]=g+(~((g+-4-k|0)>>>2)<<2);p=f[a+32>>2]|0;s=c+8|0;v=c+16|0;w=A+60|0;r=p+8|0;q=p+12|0;t=a+16|0;n=a+20|0;o=0;while(1){g=s;e=f[g>>2]|0;g=f[g+4>>2]|0;a=v;k=f[a>>2]|0;a=f[a+4>>2]|0;if(!((g|0)>(a|0)|(g|0)==(a|0)&e>>>0>k>>>0)){d=0;e=53;break}i=f[c>>2]|0;m=b[i+k>>0]|0;d=Kp(k|0,a|0,1,0)|0;l=I;j=v;f[j>>2]=d;f[j+4>>2]=l;if(!((g|0)>(l|0)|(g|0)==(l|0)&e>>>0>d>>>0)){d=0;e=53;break}l=b[i+d>>0]|0;d=Kp(k|0,a|0,2,0)|0;j=I;G=v;f[G>>2]=d;f[G+4>>2]=j;if(!((g|0)>(j|0)|(g|0)==(j|0)&e>>>0>d>>>0)){d=0;e=53;break}j=b[i+d>>0]|0;d=Kp(k|0,a|0,3,0)|0;G=I;H=v;f[H>>2]=d;f[H+4>>2]=G;if(!((g|0)>(G|0)|(g|0)==(G|0)&e>>>0>d>>>0)){d=0;e=53;break}e=b[i+d>>0]|0;H=Kp(k|0,a|0,4,0)|0;d=v;f[d>>2]=H;f[d+4>>2]=I;d=l&255;if((l+-1&255)>10){d=0;e=53;break}Jm(A);H=X(bn(d)|0,j&255)|0;qk(A,m&255,0,j,d,e<<24>>24!=0,H,((H|0)<0)<<31>>31,0,0);H=f[C>>2]|0;if((((h[H+36>>0]|0)<<8|(h[H+37>>0]|0))&65535)>258){rk(E,c)|0;d=f[E>>2]|0}else{G=s;H=f[G>>2]|0;G=f[G+4>>2]|0;e=v;d=f[e>>2]|0;e=Kp(d|0,f[e+4>>2]|0,2,0)|0;g=I;if((G|0)<(g|0)|(G|0)==(g|0)&H>>>0>>0){e=51;break}d=(f[c>>2]|0)+d|0;d=h[d>>0]|h[d+1>>0]<<8;H=v;f[H>>2]=e;f[H+4>>2]=g;d=d&65535;f[E>>2]=d}f[w>>2]=d;j=no(96)|0;wm(j,A);f[z>>2]=j;j=hi(p,z)|0;i=f[z>>2]|0;f[z>>2]=0;if(i|0){H=i+88|0;d=f[H>>2]|0;f[H>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;ds(e)}ds(d)}d=f[i+68>>2]|0;if(d|0){g=i+72|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}H=i+64|0;d=f[H>>2]|0;f[H>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;ds(e)}ds(d)}ds(i)}if((j|0)<=-1){e=41;break}d=f[r>>2]|0;if(((f[q>>2]|0)-d>>2|0)<=(j|0)){e=43;break}f[(f[d+(j<<2)>>2]|0)+60>>2]=f[E>>2];f[(f[x>>2]|0)+(o<<2)>>2]=j;e=f[n>>2]|0;d=f[t>>2]|0;i=e-d>>2;if((j|0)>=(i|0)){g=j+1|0;f[D>>2]=-1;if(g>>>0<=i>>>0){if(g>>>0>>0?(y=d+(g<<2)|0,(e|0)!=(y|0)):0)f[n>>2]=e+(~((e+-4-y|0)>>>2)<<2)}else{Xh(t,g-i|0,D);d=f[t>>2]|0}}f[d+(j<<2)>>2]=o;o=o+1|0;if(o>>>0>=(f[B>>2]|0)>>>0){d=1;e=53;break}}if((e|0)==41)Ga(22609,22625,66,22717);else if((e|0)==43)Ga(22727,22625,67,22717);else if((e|0)==51){H=0;u=F;return H|0}else if((e|0)==53){u=F;return d|0}return 0}function jc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+16|0;A=D+8|0;x=D+4|0;B=D;y=a+64|0;e=f[y>>2]|0;if(((f[e+28>>2]|0)-(f[e+24>>2]|0)|0)<=0){u=D;return}z=c+96|0;t=c+100|0;w=a+52|0;v=d+84|0;m=d+68|0;o=a+56|0;q=a+60|0;l=a+12|0;n=a+28|0;s=a+40|0;p=a+44|0;r=a+48|0;j=0;k=0;a:while(1){h=f[(f[e+24>>2]|0)+(k<<2)>>2]|0;if((h|0)<0)c=j;else{i=j+1|0;d=(h>>>0)/3|0;c=f[z>>2]|0;if((d|0)>=(((f[t>>2]|0)-c|0)/12|0|0)){C=6;break}c=f[c+(d*12|0)+(((h>>>0)%3|0)<<2)>>2]|0;if(!(b[v>>0]|0))c=f[(f[m>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;d=f[o>>2]|0;if(d>>>0<(f[q>>2]|0)>>>0){f[d>>2]=c;f[o>>2]=d+4}else Bj(w,A);f[A>>2]=h;f[x>>2]=0;b:do if(!(f[(f[l>>2]|0)+(k>>>5<<2)>>2]&1<<(k&31)))c=h;else{c=h+1|0;c=((c|0)%3|0|0)==0?h+-2|0:c;g=f[a>>2]|0;if(!(1<<(c&31)&f[g+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[y>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[x>>2]=c;if((c|0)<=-1){c=h;break}while(1){f[A>>2]=c;d=c+1|0;d=((d|0)%3|0|0)==0?c+-2|0:d;if(1<<(d&31)&f[g+(d>>>5<<2)>>2]|0){d=-1073741824;break}if((d|0)<0)break;d=f[(f[(f[y>>2]|0)+12>>2]|0)+(d<<2)>>2]|0;e=d+1|0;if((d|0)<0)break;d=((e|0)%3|0|0)==0?d+-2|0:e;f[x>>2]=d;if((d|0)>-1)c=d;else break b}f[x>>2]=d;break}}}else c=-1073741824;f[x>>2]=c;c=h}while(0);f[(f[n>>2]|0)+(c<<2)>>2]=j;c=f[p>>2]|0;if((c|0)==(f[r>>2]|0))Bj(s,A);else{f[c>>2]=f[A>>2];f[p>>2]=c+4}e=f[y>>2]|0;c=f[A>>2]|0;c:do if((c|0)>=0){d=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((d|0)>=0){d=f[(f[e+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0){d=d+(((d>>>0)%3|0|0)==0?2:-1)|0;f[x>>2]=d;if((d|0)>-1&(d|0)!=(c|0)){e=j;while(1){j=d+1|0;j=((j|0)%3|0|0)==0?d+-2|0:j;do if(f[(f[a>>2]|0)+(j>>>5<<2)>>2]&1<<(j&31)){h=i+1|0;e=(d>>>0)/3|0;c=f[z>>2]|0;if((e|0)>=(((f[t>>2]|0)-c|0)/12|0|0)){C=33;break a}c=f[c+(e*12|0)+(((d>>>0)%3|0)<<2)>>2]|0;if(!(b[v>>0]|0))c=f[(f[m>>2]|0)+(c<<2)>>2]|0;f[B>>2]=c;d=f[o>>2]|0;if(d>>>0<(f[q>>2]|0)>>>0){f[d>>2]=c;f[o>>2]=d+4}else Bj(w,B);c=f[p>>2]|0;if((c|0)==(f[r>>2]|0)){Bj(s,x);g=i;c=h;break}else{f[c>>2]=f[x>>2];f[p>>2]=c+4;g=i;c=h;break}}else{g=e;c=i}while(0);f[(f[n>>2]|0)+(f[x>>2]<<2)>>2]=g;e=f[y>>2]|0;d=f[x>>2]|0;if((d|0)<0)break;d=(((d>>>0)%3|0|0)==0?2:-1)+d|0;if((d|0)<0)break;d=f[(f[e+12>>2]|0)+(d<<2)>>2]|0;if((d|0)<0)break;d=d+(((d>>>0)%3|0|0)==0?2:-1)|0;f[x>>2]=d;if(!((d|0)>-1?(d|0)!=(f[A>>2]|0):0))break c;else{e=g;i=c}}f[x>>2]=d}else c=i}else{c=d;C=30}}else{c=d;C=30}}else C=30;while(0);if((C|0)==30){C=0;f[x>>2]=c;c=i}}k=k+1|0;if((k|0)>=((f[e+28>>2]|0)-(f[e+24>>2]|0)>>2|0)){C=3;break}else j=c}if((C|0)==3){u=D;return}else if((C|0)==6)Ga(22894,22811,64,22889);else if((C|0)==33)Ga(22894,22811,64,22889)}function kc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;x=a+8|0;f[x>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0)if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0){f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2);d=e}else d=e;else{mj(i,e-j|0);d=f[x>>2]|0}u=f[a+48>>2]|0;v=f[a+52>>2]|0;t=e>>>0>1073741823?-1:e<<2;w=as(t)|0;_j(w|0,0,t|0)|0;if((d|0)>0){k=a+16|0;h=a+32|0;l=a+12|0;i=0;do{d=f[w+(i<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[h>>2]|0;f[j+(i<<2)>>2]=g}else{t=f[l>>2]|0;j=f[h>>2]|0;f[j+(i<<2)>>2]=(d|0)<(t|0)?t:d}i=i+1|0;d=f[x>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;C=18}}else{d=d-(f[i>>2]|0)|0;C=18}if((C|0)==18){C=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[x>>2]|0))}}q=a+56|0;h=f[q>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;s=g-d|0;t=s>>2;if((s|0)<=4){bs(w);return 1}r=a+16|0;p=a+32|0;s=a+12|0;o=a+20|0;m=u+12|0;n=(e|0)>0;i=g;a=1;while(1){if(i-d>>2>>>0<=a>>>0){Oq(h);d=f[h>>2]|0}d=f[d+(a<<2)>>2]|0;l=X(a,e)|0;if((d|0)>=0?(B=f[(f[m>>2]|0)+(d<<2)>>2]|0,(B|0)>=0):0){g=f[u>>2]|0;h=f[v>>2]|0;i=f[h+(f[g+(B<<2)>>2]<<2)>>2]|0;d=B+1|0;d=((d|0)%3|0|0)==0?B+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[g+(d<<2)>>2]|0;j=f[h+(d<<2)>>2]|0;d=(((B>>>0)%3|0|0)==0?2:-1)+B|0;if((d|0)<0)d=-1073741824;else d=f[g+(d<<2)>>2]|0;d=f[h+(d<<2)>>2]|0;if((i|0)<(a|0)&(j|0)<(a|0)&(d|0)<(a|0)){i=X(i,e)|0;h=X(j,e)|0;g=X(d,e)|0;if(n){d=0;do{f[w+(d<<2)>>2]=(f[c+(d+g<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+i<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}j=b+(l<<2)|0;k=c+(l<<2)|0;if((f[x>>2]|0)>0){h=0;do{d=f[w+(h<<2)>>2]|0;g=f[r>>2]|0;if((d|0)>(g|0)){i=f[p>>2]|0;f[i+(h<<2)>>2]=g}else{g=f[s>>2]|0;i=f[p>>2]|0;f[i+(h<<2)>>2]=(d|0)<(g|0)?g:d}h=h+1|0;d=f[x>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[j+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[r>>2]|0)){if((d|0)<(f[s>>2]|0)){d=(f[o>>2]|0)+d|0;C=57}}else{d=d-(f[o>>2]|0)|0;C=57}if((C|0)==57){C=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[x>>2]|0))}}}else C=35}else C=35;if((C|0)==35?(C=0,y=c+((X(a+-1|0,e)|0)<<2)|0,z=b+(l<<2)|0,A=c+(l<<2)|0,(f[x>>2]|0)>0):0){h=0;do{d=f[y+(h<<2)>>2]|0;g=f[r>>2]|0;if((d|0)>(g|0)){i=f[p>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[s>>2]|0;i=f[p>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[x>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[z+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=A+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[r>>2]|0)){if((d|0)<(f[s>>2]|0)){d=(f[o>>2]|0)+d|0;C=45}}else{d=d-(f[o>>2]|0)|0;C=45}if((C|0)==45){C=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[x>>2]|0))}}g=a+1|0;if((g|0)>=(t|0))break;h=f[q>>2]|0;d=f[h>>2]|0;i=f[h+4>>2]|0;a=g}bs(w);return 1}function lc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;y=a+8|0;f[y>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0)if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0){f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2);d=e}else d=e;else{mj(i,e-j|0);d=f[y>>2]|0}v=f[a+48>>2]|0;w=f[a+52>>2]|0;u=e>>>0>1073741823?-1:e<<2;x=as(u)|0;_j(x|0,0,u|0)|0;if((d|0)>0){k=a+16|0;h=a+32|0;l=a+12|0;i=0;do{d=f[x+(i<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[h>>2]|0;f[j+(i<<2)>>2]=g}else{u=f[l>>2]|0;j=f[h>>2]|0;f[j+(i<<2)>>2]=(d|0)<(u|0)?u:d}i=i+1|0;d=f[y>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;G=18}}else{d=d-(f[i>>2]|0)|0;G=18}if((G|0)==18){G=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[y>>2]|0))}}r=a+56|0;h=f[r>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;t=g-d|0;u=t>>2;if((t|0)<=4){bs(x);return 1}s=a+16|0;q=a+32|0;t=a+12|0;p=a+20|0;o=v+64|0;m=v+28|0;n=(e|0)>0;i=g;a=1;while(1){if(i-d>>2>>>0<=a>>>0){Oq(h);d=f[h>>2]|0}d=f[d+(a<<2)>>2]|0;l=X(a,e)|0;if((!((d|0)<0?1:(1<<(d&31)&f[(f[v>>2]|0)+(d>>>5<<2)>>2]|0)!=0)?(F=f[(f[(f[o>>2]|0)+12>>2]|0)+(d<<2)>>2]|0,(F|0)>=0):0)?(B=f[m>>2]|0,k=f[w>>2]|0,z=f[k+(f[B+(F<<2)>>2]<<2)>>2]|0,A=F+1|0,A=f[k+(f[B+((((A|0)%3|0|0)==0?F+-2|0:A)<<2)>>2]<<2)>>2]|0,B=f[k+(f[B+((((F>>>0)%3|0|0)==0?2:-1)+F<<2)>>2]<<2)>>2]|0,(z|0)<(a|0)&(A|0)<(a|0)&(B|0)<(a|0)):0){g=X(z,e)|0;h=X(A,e)|0;i=X(B,e)|0;if(n){d=0;do{f[x+(d<<2)>>2]=(f[c+(d+i<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+g<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}j=b+(l<<2)|0;k=c+(l<<2)|0;if((f[y>>2]|0)>0){h=0;do{d=f[x+(h<<2)>>2]|0;g=f[s>>2]|0;if((d|0)>(g|0)){i=f[q>>2]|0;f[i+(h<<2)>>2]=g}else{g=f[t>>2]|0;i=f[q>>2]|0;f[i+(h<<2)>>2]=(d|0)<(g|0)?g:d}h=h+1|0;d=f[y>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[j+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[s>>2]|0)){if((d|0)<(f[t>>2]|0)){d=(f[p>>2]|0)+d|0;G=53}}else{d=d-(f[p>>2]|0)|0;G=53}if((G|0)==53){G=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[y>>2]|0))}}}else G=31;if((G|0)==31?(G=0,C=c+((X(a+-1|0,e)|0)<<2)|0,D=b+(l<<2)|0,E=c+(l<<2)|0,(f[y>>2]|0)>0):0){h=0;do{d=f[C+(h<<2)>>2]|0;g=f[s>>2]|0;if((d|0)>(g|0)){i=f[q>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[t>>2]|0;i=f[q>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[y>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[D+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=E+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[s>>2]|0)){if((d|0)<(f[t>>2]|0)){d=(f[p>>2]|0)+d|0;G=41}}else{d=d-(f[p>>2]|0)|0;G=41}if((G|0)==41){G=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[y>>2]|0))}}g=a+1|0;if((g|0)>=(u|0))break;h=f[r>>2]|0;d=f[h>>2]|0;i=f[h+4>>2]|0;a=g}bs(x);return 1}function mc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=La,k=0,l=La;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;b[s>>0]=b[g>>0];b[s+1>>0]=b[g+1>>0];b[s+2>>0]=b[g+2>>0];b[s+3>>0]=b[g+3>>0];j=$(n[s>>2]);g=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;i=d;f[i>>2]=~~+j>>>0;f[i+4>>2]=g;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{k=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;k=I;i=f[a>>2]|0;c=f[i>>2]|0;if((k|0)>0|((k|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}i=c+e|0;g=i;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=(f[s>>2]=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24,$(n[s>>2]));g=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d;f[k>>2]=~~+j>>>0;f[k+4>>2]=g;j=(f[s>>2]=i,$(n[s>>2]));i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d+8|0;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=1;return k|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;k=a+40|0;e=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;k=f[a>>2]|0;c=f[k>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[k+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}k=c+e|0;b[s>>0]=b[k>>0];b[s+1>>0]=b[k+1>>0];b[s+2>>0]=b[k+2>>0];b[s+3>>0]=b[k+3>>0];l=$(n[s>>2]);k=k+4|0;b[s>>0]=b[k>>0];b[s+1>>0]=b[k+1>>0];b[s+2>>0]=b[k+2>>0];b[s+3>>0]=b[k+3>>0];j=$(n[s>>2]);k=+K(+l)>=1.0?(+l>0.0?~~+Y(+J(+l/4294967296.0),4294967295.0)>>>0:~~+W((+l-+(~~+l>>>0))/4294967296.0)>>>0):0;i=d;f[i>>2]=~~+l>>>0;f[i+4>>2]=k;i=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;k=d+8|0;f[k>>2]=~~+j>>>0;f[k+4>>2]=i;k=1;return k|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;k=a+40|0;e=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;k=f[a>>2]|0;c=f[k>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[k+4>>2]|0)-c|0)>>>0:0)){k=0;return k|0}k=c+e|0;b[s>>0]=b[k>>0];b[s+1>>0]=b[k+1>>0];b[s+2>>0]=b[k+2>>0];b[s+3>>0]=b[k+3>>0];j=$(n[s>>2]);k=k+4|0;b[s>>0]=b[k>>0];b[s+1>>0]=b[k+1>>0];b[s+2>>0]=b[k+2>>0];b[s+3>>0]=b[k+3>>0];l=$(n[s>>2]);k=+K(+j)>=1.0?(+j>0.0?~~+Y(+J(+j/4294967296.0),4294967295.0)>>>0:~~+W((+j-+(~~+j>>>0))/4294967296.0)>>>0):0;i=d;f[i>>2]=~~+j>>>0;f[i+4>>2]=k;i=+K(+l)>=1.0?(+l>0.0?~~+Y(+J(+l/4294967296.0),4294967295.0)>>>0:~~+W((+l-+(~~+l>>>0))/4294967296.0)>>>0):0;k=d+8|0;f[k>>2]=~~+l>>>0;f[k+4>>2]=i;k=1;return k|0}default:{k=0;return k|0}}return 0}function nc(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{b=no(60)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2360;e=b;f[a>>2]=e;return}case 2:{b=no(60)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2416;e=b;f[a>>2]=e;return}case 4:{b=no(112)|0;f[b>>2]=1884;f[b+4>>2]=d;h=b+8|0;f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[h+12>>2]=f[e+12>>2];f[h+16>>2]=f[e+16>>2];f[h+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);h=b+44|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[b>>2]=2472;h=b+60|0;c=h+52|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(c|0));e=b;f[a>>2]=e;return}case 3:{b=no(92)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2528;e=b+60|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[b+88>>2]=h&65535;e=b;f[a>>2]=e;return}case 5:{b=no(104)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2584;f[b+60>>2]=0;f[b+64>>2]=0;f[b+76>>2]=0;f[b+80>>2]=0;f[b+84>>2]=0;e=b+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];e=b;f[a>>2]=e;return}case 6:{b=no(124)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2640;f[b+64>>2]=0;f[b+68>>2]=0;e=b+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b+60>>2]=2696;f[b+88>>2]=1;e=b+92|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Ar(b+108|0);e=b;f[a>>2]=e;return}default:{e=0;f[a>>2]=e;return}}}function oc(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{b=no(60)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=1996;e=b;f[a>>2]=e;return}case 2:{b=no(60)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2052;e=b;f[a>>2]=e;return}case 4:{b=no(112)|0;f[b>>2]=1884;f[b+4>>2]=d;h=b+8|0;f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[h+12>>2]=f[e+12>>2];f[h+16>>2]=f[e+16>>2];f[h+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);h=b+44|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[b>>2]=2108;h=b+60|0;c=h+52|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(c|0));e=b;f[a>>2]=e;return}case 3:{b=no(92)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2164;e=b+60|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[b+88>>2]=h&65535;e=b;f[a>>2]=e;return}case 5:{b=no(104)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2220;f[b+60>>2]=0;f[b+64>>2]=0;f[b+76>>2]=0;f[b+80>>2]=0;f[b+84>>2]=0;e=b+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];e=b;f[a>>2]=e;return}case 6:{b=no(124)|0;f[b>>2]=1884;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2276;f[b+64>>2]=0;f[b+68>>2]=0;e=b+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b+60>>2]=2332;f[b+88>>2]=1;e=b+92|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Ar(b+108|0);e=b;f[a>>2]=e;return}default:{e=0;f[a>>2]=e;return}}}function pc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=La,g=0,h=0,i=La,j=0,k=La,l=La,m=La,o=0,p=0,q=La,r=La,t=0,v=0,w=La,x=La,y=La,z=La,A=0,B=0,C=0,D=0,E=La;D=u;u=u+48|0;C=D+24|0;A=D+12|0;B=D;j=a+32|0;g=f[b>>2]|0;b=g+1|0;if((g|0)>=0){h=((b|0)%3|0|0)==0?g+-2|0:b;b=g+(((g>>>0)%3|0|0)==0?2:-1)|0;if((h|0)<0)g=-1073741824;else g=f[(f[f[j>>2]>>2]|0)+(h<<2)>>2]|0;if((b|0)<0){v=-1073741824;t=g}else{v=f[(f[f[j>>2]>>2]|0)+(b<<2)>>2]|0;t=g}}else{v=-1073741824;t=-1073741824}b=a+36|0;o=f[b>>2]|0;h=f[o+4>>2]|0;p=f[o>>2]|0;if(h-p>>2>>>0>t>>>0){g=p;j=o;b=p}else{Oq(o);j=f[b>>2]|0;g=f[j>>2]|0;h=f[j+4>>2]|0;b=f[o>>2]|0}b=f[b+(t<<2)>>2]|0;if(h-g>>2>>>0<=v>>>0){Oq(j);g=f[j>>2]|0}h=f[g+(v<<2)>>2]|0;g=(b|0)<(d|0);if(g&(h|0)<(d|0)){v=f[a+56>>2]|0;t=X(v,b)|0;y=$(f[c+(t<<2)>>2]|0);z=$(f[c+(t+1<<2)>>2]|0);v=X(v,h)|0;x=$(f[c+(v<<2)>>2]|0);w=$(f[c+(v+1<<2)>>2]|0);if(!(x!=y|w!=z)){a=f[a+52>>2]|0;f[a>>2]=~~x;f[a+4>>2]=~~w;u=D;return}Qh(C,a,d);Qh(A,a,b);Qh(B,a,h);r=$(n[B>>2]);m=$(n[A>>2]);r=$(r-m);q=$(n[B+4>>2]);i=$(n[A+4>>2]);q=$(q-i);l=$(n[B+8>>2]);e=$(n[A+8>>2]);l=$(l-e);m=$($(n[C>>2])-m);i=$($(n[C+4>>2])-i);e=$($(n[C+8>>2])-e);k=$($($($(r*r)+$(0.0))+$(q*q))+$(l*l));if(k>$(0.0)?1:(f[a+72>>2]|0)<258){E=$($($($($(r*m)+$(0.0))+$(q*i))+$(l*e))/k);r=$(m-$(r*E));q=$(i-$(q*E));e=$(e-$(l*E));i=E;e=$(L($($($(e*e)+$($(q*q)+$($(r*r)+$(0.0))))/k)))}else{i=$(0.0);e=$(0.0)}x=$(x-y);E=$(w-z);y=$(y+$(x*i));x=$(x*e);z=$(z+$(E*i));E=$(E*e);c=a+64|0;B=(f[c>>2]|0)+-1|0;C=(1<<(B&31)&f[(f[a+60>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[c>>2]=B;i=$(-x);i=$(z+(C?i:x));e=$(-E);e=$(y+(C?E:e));if(((n[s>>2]=e,f[s>>2]|0)&2147483647)>>>0>2139095040)b=-2147483648;else b=~~+J(+(+e+.5));g=f[a+52>>2]|0;f[g>>2]=b;if(((n[s>>2]=i,f[s>>2]|0)&2147483647)>>>0>2139095040)b=-2147483648;else b=~~+J(+(+i+.5));f[g+4>>2]=b;u=D;return}do if(!g){if((d|0)>0){b=d+-1|0;break}h=a+56|0;if((f[h>>2]|0)<=0){u=D;return}b=f[a+52>>2]|0;g=0;do{f[b+(g<<2)>>2]=0;g=g+1|0}while((g|0)<(f[h>>2]|0));u=D;return}while(0);j=a+56|0;C=f[j>>2]|0;h=X(C,b)|0;if((C|0)<=0){u=D;return}b=f[a+52>>2]|0;g=0;do{f[b+(g<<2)>>2]=f[c+(g+h<<2)>>2];g=g+1|0}while((g|0)<(f[j>>2]|0));u=D;return}function qc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=La,g=0,h=0,i=La,j=0,k=La,l=La,m=La,o=0,p=0,q=La,r=La,t=0,v=0,w=La,x=La,y=La,z=La,A=0,B=0,C=0,D=0,E=La;D=u;u=u+48|0;C=D+24|0;A=D+12|0;B=D;j=a+48|0;g=f[b>>2]|0;b=g+1|0;if((g|0)>=0){h=((b|0)%3|0|0)==0?g+-2|0:b;b=g+(((g>>>0)%3|0|0)==0?2:-1)|0;if((h|0)<0)g=-1073741824;else g=f[(f[f[j>>2]>>2]|0)+(h<<2)>>2]|0;if((b|0)<0){v=-1073741824;t=g}else{v=f[(f[f[j>>2]>>2]|0)+(b<<2)>>2]|0;t=g}}else{v=-1073741824;t=-1073741824}b=a+52|0;o=f[b>>2]|0;h=f[o+4>>2]|0;p=f[o>>2]|0;if(h-p>>2>>>0>t>>>0){g=p;j=o;b=p}else{Oq(o);j=f[b>>2]|0;g=f[j>>2]|0;h=f[j+4>>2]|0;b=f[o>>2]|0}b=f[b+(t<<2)>>2]|0;if(h-g>>2>>>0<=v>>>0){Oq(j);g=f[j>>2]|0}h=f[g+(v<<2)>>2]|0;g=(b|0)<(d|0);if(g&(h|0)<(d|0)){v=f[a+72>>2]|0;t=X(v,b)|0;y=$(f[c+(t<<2)>>2]|0);z=$(f[c+(t+1<<2)>>2]|0);v=X(v,h)|0;x=$(f[c+(v<<2)>>2]|0);w=$(f[c+(v+1<<2)>>2]|0);if(!(x!=y|w!=z)){a=f[a+68>>2]|0;f[a>>2]=~~x;f[a+4>>2]=~~w;u=D;return}Uh(C,a,d);Uh(A,a,b);Uh(B,a,h);r=$(n[B>>2]);m=$(n[A>>2]);r=$(r-m);q=$(n[B+4>>2]);i=$(n[A+4>>2]);q=$(q-i);l=$(n[B+8>>2]);e=$(n[A+8>>2]);l=$(l-e);m=$($(n[C>>2])-m);i=$($(n[C+4>>2])-i);e=$($(n[C+8>>2])-e);k=$($($($(r*r)+$(0.0))+$(q*q))+$(l*l));if(k>$(0.0)?1:(f[a+88>>2]|0)<258){E=$($($($($(r*m)+$(0.0))+$(q*i))+$(l*e))/k);r=$(m-$(r*E));q=$(i-$(q*E));e=$(e-$(l*E));i=E;e=$(L($($($(e*e)+$($(q*q)+$($(r*r)+$(0.0))))/k)))}else{i=$(0.0);e=$(0.0)}x=$(x-y);E=$(w-z);y=$(y+$(x*i));x=$(x*e);z=$(z+$(E*i));E=$(E*e);c=a+80|0;B=(f[c>>2]|0)+-1|0;C=(1<<(B&31)&f[(f[a+76>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[c>>2]=B;i=$(-x);i=$(z+(C?i:x));e=$(-E);e=$(y+(C?E:e));if(((n[s>>2]=e,f[s>>2]|0)&2147483647)>>>0>2139095040)b=-2147483648;else b=~~+J(+(+e+.5));g=f[a+68>>2]|0;f[g>>2]=b;if(((n[s>>2]=i,f[s>>2]|0)&2147483647)>>>0>2139095040)b=-2147483648;else b=~~+J(+(+i+.5));f[g+4>>2]=b;u=D;return}do if(!g){if((d|0)>0){b=d+-1|0;break}h=a+72|0;if((f[h>>2]|0)<=0){u=D;return}b=f[a+68>>2]|0;g=0;do{f[b+(g<<2)>>2]=0;g=g+1|0}while((g|0)<(f[h>>2]|0));u=D;return}while(0);j=a+72|0;C=f[j>>2]|0;h=X(C,b)|0;if((C|0)<=0){u=D;return}b=f[a+68>>2]|0;g=0;do{f[b+(g<<2)>>2]=f[c+(g+h<<2)>>2];g=g+1|0}while((g|0)<(f[j>>2]|0));u=D;return}function rc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+16|0;k=l;i=c+8|0;o=i;m=f[o>>2]|0;o=f[o+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,5,0)|0;n=I;if((o|0)<(n|0)|(o|0)==(n|0)&m>>>0>>0){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Jk(k,21308,29);f[a>>2]=-2;im(a+4|0,k);Op(k);u=l;return}e=(f[c>>2]|0)+e|0;b[d>>0]=b[e>>0]|0;b[d+1>>0]=b[e+1>>0]|0;b[d+2>>0]=b[e+2>>0]|0;b[d+3>>0]=b[e+3>>0]|0;b[d+4>>0]=b[e+4>>0]|0;e=j;e=Kp(f[e>>2]|0,f[e+4>>2]|0,5,0)|0;g=I;o=j;f[o>>2]=e;f[o+4>>2]=g;if(nm(d,21338,5)|0){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Jk(k,21344,17);f[a>>2]=-1;im(a+4|0,k);Op(k);u=l;return}o=i;n=f[o+4>>2]|0;if(!((n|0)>(g|0)|((n|0)==(g|0)?(f[o>>2]|0)>>>0>e>>>0:0))){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Jk(k,21308,29);f[a>>2]=-2;im(a+4|0,k);Op(k);u=l;return}b[d+5>>0]=b[(f[c>>2]|0)+e>>0]|0;e=j;e=Kp(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=j;f[o>>2]=e;f[o+4>>2]=n;o=i;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Jk(k,21308,29);f[a>>2]=-2;im(a+4|0,k);Op(k);u=l;return}b[d+6>>0]=b[(f[c>>2]|0)+e>>0]|0;e=j;e=Kp(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=j;f[o>>2]=e;f[o+4>>2]=n;o=i;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Jk(k,21308,29);f[a>>2]=-2;im(a+4|0,k);Op(k);u=l;return}b[d+7>>0]=b[(f[c>>2]|0)+e>>0]|0;e=j;e=Kp(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=j;f[o>>2]=e;f[o+4>>2]=n;o=i;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Jk(k,21308,29);f[a>>2]=-2;im(a+4|0,k);Op(k);u=l;return}b[d+8>>0]=b[(f[c>>2]|0)+e>>0]|0;o=j;m=f[o>>2]|0;o=f[o+4>>2]|0;e=Kp(m|0,o|0,1,0)|0;n=j;f[n>>2]=e;f[n+4>>2]=I;n=f[i>>2]|0;i=f[i+4>>2]|0;o=Kp(m|0,o|0,3,0)|0;m=I;if((i|0)<(m|0)|(i|0)==(m|0)&n>>>0>>0){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Jk(k,21308,29);f[a>>2]=-2;im(a+4|0,k);Op(k);u=l;return}else{n=d+10|0;o=(f[c>>2]|0)+e|0;o=h[o>>0]|h[o+1>>0]<<8;b[n>>0]=o;b[n+1>>0]=o>>8;n=j;n=Kp(f[n>>2]|0,f[n+4>>2]|0,2,0)|0;o=j;f[o>>2]=n;f[o+4>>2]=I;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=l;return}}function sc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=La,g=0,h=0,i=La,j=0,k=La,l=La,m=La,o=0,p=0,q=La,r=La,t=0,v=0,w=La,x=La,y=La,z=La,A=0,B=0,C=0,D=0,E=La;D=u;u=u+48|0;C=D+24|0;A=D+12|0;B=D;h=a+32|0;g=f[b>>2]|0;b=g+1|0;do if((g|0)>=0){b=((b|0)%3|0|0)==0?g+-2|0:b;if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}else b=g;while(0);v=f[(f[h>>2]|0)+28>>2]|0;t=f[v+(b<<2)>>2]|0;v=f[v+(g<<2)>>2]|0;g=a+36|0;h=f[g>>2]|0;b=f[h+4>>2]|0;p=f[h>>2]|0;if(b-p>>2>>>0>t>>>0){j=b;o=h;b=p;g=p}else{Oq(h);g=f[g>>2]|0;j=f[g+4>>2]|0;o=g;b=f[h>>2]|0;g=f[g>>2]|0}b=f[b+(t<<2)>>2]|0;if(j-g>>2>>>0<=v>>>0){Oq(o);g=f[o>>2]|0}h=f[g+(v<<2)>>2]|0;g=(b|0)<(d|0);if(g&(h|0)<(d|0)){v=f[a+56>>2]|0;t=X(v,b)|0;y=$(f[c+(t<<2)>>2]|0);z=$(f[c+(t+1<<2)>>2]|0);v=X(v,h)|0;x=$(f[c+(v<<2)>>2]|0);w=$(f[c+(v+1<<2)>>2]|0);if(!(x!=y|w!=z)){a=f[a+52>>2]|0;f[a>>2]=~~x;f[a+4>>2]=~~w;u=D;return}Qh(C,a,d);Qh(A,a,b);Qh(B,a,h);r=$(n[B>>2]);m=$(n[A>>2]);r=$(r-m);q=$(n[B+4>>2]);i=$(n[A+4>>2]);q=$(q-i);l=$(n[B+8>>2]);e=$(n[A+8>>2]);l=$(l-e);m=$($(n[C>>2])-m);i=$($(n[C+4>>2])-i);e=$($(n[C+8>>2])-e);k=$($($($(r*r)+$(0.0))+$(q*q))+$(l*l));if(k>$(0.0)?1:(f[a+72>>2]|0)<258){E=$($($($($(r*m)+$(0.0))+$(q*i))+$(l*e))/k);r=$(m-$(r*E));q=$(i-$(q*E));e=$(e-$(l*E));i=E;e=$(L($($($(e*e)+$($(q*q)+$($(r*r)+$(0.0))))/k)))}else{i=$(0.0);e=$(0.0)}x=$(x-y);E=$(w-z);y=$(y+$(x*i));x=$(x*e);z=$(z+$(E*i));E=$(E*e);c=a+64|0;B=(f[c>>2]|0)+-1|0;C=(1<<(B&31)&f[(f[a+60>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[c>>2]=B;i=$(-x);i=$(z+(C?i:x));e=$(-E);e=$(y+(C?E:e));if(((n[s>>2]=e,f[s>>2]|0)&2147483647)>>>0>2139095040)b=-2147483648;else b=~~+J(+(+e+.5));g=f[a+52>>2]|0;f[g>>2]=b;if(((n[s>>2]=i,f[s>>2]|0)&2147483647)>>>0>2139095040)b=-2147483648;else b=~~+J(+(+i+.5));f[g+4>>2]=b;u=D;return}do if(!g){if((d|0)>0){b=d+-1|0;break}h=a+56|0;if((f[h>>2]|0)<=0){u=D;return}b=f[a+52>>2]|0;g=0;do{f[b+(g<<2)>>2]=0;g=g+1|0}while((g|0)<(f[h>>2]|0));u=D;return}while(0);j=a+56|0;C=f[j>>2]|0;h=X(C,b)|0;if((C|0)<=0){u=D;return}b=f[a+52>>2]|0;g=0;do{f[b+(g<<2)>>2]=f[c+(g+h<<2)>>2];g=g+1|0}while((g|0)<(f[j>>2]|0));u=D;return}function tc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=La,g=0,h=0,i=La,j=0,k=La,l=La,m=La,o=0,p=0,q=La,r=La,t=0,v=0,w=La,x=La,y=La,z=La,A=0,B=0,C=0,D=0,E=La;D=u;u=u+48|0;C=D+24|0;A=D+12|0;B=D;h=a+48|0;g=f[b>>2]|0;b=g+1|0;do if((g|0)>=0){b=((b|0)%3|0|0)==0?g+-2|0:b;if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}else b=g;while(0);v=f[(f[h>>2]|0)+28>>2]|0;t=f[v+(b<<2)>>2]|0;v=f[v+(g<<2)>>2]|0;g=a+52|0;h=f[g>>2]|0;b=f[h+4>>2]|0;p=f[h>>2]|0;if(b-p>>2>>>0>t>>>0){j=b;o=h;b=p;g=p}else{Oq(h);g=f[g>>2]|0;j=f[g+4>>2]|0;o=g;b=f[h>>2]|0;g=f[g>>2]|0}b=f[b+(t<<2)>>2]|0;if(j-g>>2>>>0<=v>>>0){Oq(o);g=f[o>>2]|0}h=f[g+(v<<2)>>2]|0;g=(b|0)<(d|0);if(g&(h|0)<(d|0)){v=f[a+72>>2]|0;t=X(v,b)|0;y=$(f[c+(t<<2)>>2]|0);z=$(f[c+(t+1<<2)>>2]|0);v=X(v,h)|0;x=$(f[c+(v<<2)>>2]|0);w=$(f[c+(v+1<<2)>>2]|0);if(!(x!=y|w!=z)){a=f[a+68>>2]|0;f[a>>2]=~~x;f[a+4>>2]=~~w;u=D;return}Uh(C,a,d);Uh(A,a,b);Uh(B,a,h);r=$(n[B>>2]);m=$(n[A>>2]);r=$(r-m);q=$(n[B+4>>2]);i=$(n[A+4>>2]);q=$(q-i);l=$(n[B+8>>2]);e=$(n[A+8>>2]);l=$(l-e);m=$($(n[C>>2])-m);i=$($(n[C+4>>2])-i);e=$($(n[C+8>>2])-e);k=$($($($(r*r)+$(0.0))+$(q*q))+$(l*l));if(k>$(0.0)?1:(f[a+88>>2]|0)<258){E=$($($($($(r*m)+$(0.0))+$(q*i))+$(l*e))/k);r=$(m-$(r*E));q=$(i-$(q*E));e=$(e-$(l*E));i=E;e=$(L($($($(e*e)+$($(q*q)+$($(r*r)+$(0.0))))/k)))}else{i=$(0.0);e=$(0.0)}x=$(x-y);E=$(w-z);y=$(y+$(x*i));x=$(x*e);z=$(z+$(E*i));E=$(E*e);c=a+80|0;B=(f[c>>2]|0)+-1|0;C=(1<<(B&31)&f[(f[a+76>>2]|0)+(B>>>5<<2)>>2]|0)==0;f[c>>2]=B;i=$(-x);i=$(z+(C?i:x));e=$(-E);e=$(y+(C?E:e));if(((n[s>>2]=e,f[s>>2]|0)&2147483647)>>>0>2139095040)b=-2147483648;else b=~~+J(+(+e+.5));g=f[a+68>>2]|0;f[g>>2]=b;if(((n[s>>2]=i,f[s>>2]|0)&2147483647)>>>0>2139095040)b=-2147483648;else b=~~+J(+(+i+.5));f[g+4>>2]=b;u=D;return}do if(!g){if((d|0)>0){b=d+-1|0;break}h=a+72|0;if((f[h>>2]|0)<=0){u=D;return}b=f[a+68>>2]|0;g=0;do{f[b+(g<<2)>>2]=0;g=g+1|0}while((g|0)<(f[h>>2]|0));u=D;return}while(0);j=a+72|0;C=f[j>>2]|0;h=X(C,b)|0;if((C|0)<=0){u=D;return}b=f[a+68>>2]|0;g=0;do{f[b+(g<<2)>>2]=f[c+(g+h<<2)>>2];g=g+1|0}while((g|0)<(f[j>>2]|0));u=D;return}function uc(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+32|0;k=o+4|0;j=o;c=a+16|0;b=f[c>>2]|0;if(b>>>0>340){f[c>>2]=b+-341;l=a+4|0;k=f[l>>2]|0;m=f[k>>2]|0;k=k+4|0;f[l>>2]=k;n=a+8|0;b=f[n>>2]|0;j=a+12|0;i=f[j>>2]|0;d=i;g=b;do if((b|0)==(i|0)){c=f[a>>2]|0;e=c;if(k>>>0>c>>>0){b=k;e=((b-e>>2)+1|0)/-2|0;d=k+(e<<2)|0;b=g-b|0;c=b>>2;if(!c)b=k;else{rn(d|0,k|0,b|0)|0;b=f[l>>2]|0}a=d+(c<<2)|0;f[n>>2]=a;f[l>>2]=b+(e<<2);b=a;break}d=d-e>>1;d=(d|0)==0?1:d;if(d>>>0>1073741823){o=Ia(4)|0;Hr(o);sa(o|0,1488,137)}g=no(d<<2)|0;h=g;e=g+(d>>>2<<2)|0;i=e;g=g+(d<<2)|0;if((k|0)==(b|0))b=i;else{d=e;c=k;e=i;do{f[d>>2]=f[c>>2];d=e+4|0;e=d;c=c+4|0}while((c|0)!=(b|0));c=f[a>>2]|0;b=e}f[a>>2]=h;f[l>>2]=i;f[n>>2]=b;f[j>>2]=g;if(c){ds(c);b=f[n>>2]|0}}while(0);f[b>>2]=m;f[n>>2]=(f[n>>2]|0)+4;u=o;return}n=a+8|0;b=f[n>>2]|0;m=a+4|0;e=b-(f[m>>2]|0)|0;l=a+12|0;c=f[l>>2]|0;d=c-(f[a>>2]|0)|0;if(e>>>0>=d>>>0){b=d>>1;b=(b|0)==0?1:b;f[k+12>>2]=0;f[k+16>>2]=a+12;if(b>>>0>1073741823){o=Ia(4)|0;Hr(o);sa(o|0,1488,137)}d=no(b<<2)|0;f[k>>2]=d;h=d+(e>>2<<2)|0;i=k+8|0;f[i>>2]=h;g=k+4|0;f[g>>2]=h;h=k+12|0;f[h>>2]=d+(b<<2);e=no(4092)|0;f[j>>2]=e;zh(k,j);e=f[n>>2]|0;while(1){b=f[m>>2]|0;if((e|0)==(b|0))break;j=e+-4|0;uh(k,j);e=j}c=b;d=f[a>>2]|0;f[a>>2]=f[k>>2];f[k>>2]=d;f[m>>2]=f[g>>2];f[g>>2]=c;b=f[n>>2]|0;f[n>>2]=f[i>>2];f[i>>2]=b;a=f[l>>2]|0;f[l>>2]=f[h>>2];f[h>>2]=a;if((b|0)!=(e|0))f[i>>2]=b+(~((b+-4-c|0)>>>2)<<2);if(d|0)ds(d);u=o;return}if((c|0)!=(b|0)){n=no(4092)|0;f[k>>2]=n;zh(a,k);u=o;return}j=no(4092)|0;f[k>>2]=j;uh(a,k);j=f[m>>2]|0;k=f[j>>2]|0;j=j+4|0;f[m>>2]=j;b=f[n>>2]|0;i=f[l>>2]|0;c=i;g=b;do if((b|0)==(i|0)){e=f[a>>2]|0;d=e;if(j>>>0>e>>>0){b=j;e=((b-d>>2)+1|0)/-2|0;d=j+(e<<2)|0;b=g-b|0;c=b>>2;if(!c)b=j;else{rn(d|0,j|0,b|0)|0;b=f[m>>2]|0}a=d+(c<<2)|0;f[n>>2]=a;f[m>>2]=b+(e<<2);b=a;break}c=c-d>>1;c=(c|0)==0?1:c;if(c>>>0>1073741823){o=Ia(4)|0;Hr(o);sa(o|0,1488,137)}g=no(c<<2)|0;h=g;d=g+(c>>>2<<2)|0;i=d;g=g+(c<<2)|0;if((j|0)==(b|0)){c=e;b=i}else{c=j;e=i;do{f[d>>2]=f[c>>2];d=e+4|0;e=d;c=c+4|0}while((c|0)!=(b|0));c=f[a>>2]|0;b=e}f[a>>2]=h;f[m>>2]=i;f[n>>2]=b;f[l>>2]=g;if(c){ds(c);b=f[n>>2]|0}}while(0);f[b>>2]=k;f[n>>2]=(f[n>>2]|0)+4;u=o;return}function vc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=La,l=La,m=La,o=La;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];i=~~$(n[s>>2]);f[d>>2]=i;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;i=j;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=~~(f[s>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24,$(n[s>>2]));f[d>>2]=i;j=~~(f[s>>2]=j,$(n[s>>2]));f[d+4>>2]=j;j=d+8|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];m=$(n[s>>2]);i=j+4|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];l=$(n[s>>2]);j=j+8|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];k=$(n[s>>2]);f[d>>2]=~~m;f[d+4>>2]=~~l;f[d+8>>2]=~~k;f[d+12>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];o=$(n[s>>2]);i=j+4|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];k=$(n[s>>2]);i=j+8|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];l=$(n[s>>2]);j=j+12|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];m=$(n[s>>2]);f[d>>2]=~~o;f[d+4>>2]=~~k;f[d+8>>2]=~~l;f[d+12>>2]=~~m;j=1;return j|0}default:{j=0;return j|0}}return 0}function wc(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=La,j=0,k=0,l=0;switch(b[a+24>>0]|0){case 1:{l=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,4,0)|0;l=I;j=f[a>>2]|0;g=f[j>>2]|0;if((l|0)>0|((l|0)==0?k>>>0>((f[j+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;e=$((h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24)>>>0);i=$(e*$(2.32830644e-10));n[d>>2]=(b[a+32>>0]|0)==0?e:i;l=d+4|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;l=1;return l|0}case 2:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,8,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}c=g+c|0;l=c;c=c+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;e=$((h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24)>>>0);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c>>>0)}else{e=$(e*$(2.32830644e-10));n[d>>2]=e;e=$($(c>>>0)*$(2.32830644e-10))}n[d+4>>2]=e;l=d+8|0;f[l>>2]=0;f[l+4>>2]=0;l=1;return l|0}case 3:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,12,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=l+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=l+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;e=$((h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24)>>>0);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c>>>0);e=$(g>>>0)}else{i=$(e*$(2.32830644e-10));n[d>>2]=i;i=$($(c>>>0)*$(2.32830644e-10));e=$($(g>>>0)*$(2.32830644e-10))}n[d+4>>2]=i;n[d+8>>2]=e;n[d+12>>2]=$(0.0);l=1;return l|0}case 4:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,16,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=l+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=l+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;j=l+12|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;e=$((h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24)>>>0);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c>>>0);n[d+4>>2]=i;i=$(g>>>0);n[d+8>>2]=i;i=$(j>>>0);n[d+12>>2]=i;l=1;return l|0}else{i=$(e*$(2.32830644e-10));n[d>>2]=i;i=$($(c>>>0)*$(2.32830644e-10));n[d+4>>2]=i;i=$($(g>>>0)*$(2.32830644e-10));n[d+8>>2]=i;i=$($(j>>>0)*$(2.32830644e-10));n[d+12>>2]=i;l=1;return l|0}}default:{l=0;return l|0}}return 0}function xc(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=La,j=0,k=0,l=0;switch(b[a+24>>0]|0){case 1:{l=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,4,0)|0;l=I;j=f[a>>2]|0;g=f[j>>2]|0;if((l|0)>0|((l|0)==0?k>>>0>((f[j+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;e=$(h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24|0);i=$(e*$(4.65661287e-10));n[d>>2]=(b[a+32>>0]|0)==0?e:i;l=d+4|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;l=1;return l|0}case 2:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,8,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}c=g+c|0;l=c;c=c+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;e=$(h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c|0)}else{e=$(e*$(4.65661287e-10));n[d>>2]=e;e=$($(c|0)*$(4.65661287e-10))}n[d+4>>2]=e;l=d+8|0;f[l>>2]=0;f[l+4>>2]=0;l=1;return l|0}case 3:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,12,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=l+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=l+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;e=$(h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c|0);e=$(g|0)}else{i=$(e*$(4.65661287e-10));n[d>>2]=i;i=$($(c|0)*$(4.65661287e-10));e=$($(g|0)*$(4.65661287e-10))}n[d+4>>2]=i;n[d+8>>2]=e;n[d+12>>2]=$(0.0);l=1;return l|0}case 4:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,16,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=l+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=l+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;j=l+12|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;e=$(h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c|0);n[d+4>>2]=i;i=$(g|0);n[d+8>>2]=i;i=$(j|0);n[d+12>>2]=i;l=1;return l|0}else{i=$(e*$(4.65661287e-10));n[d>>2]=i;i=$($(c|0)*$(4.65661287e-10));n[d+4>>2]=i;i=$($(g|0)*$(4.65661287e-10));n[d+8>>2]=i;i=$($(j|0)*$(4.65661287e-10));n[d+12>>2]=i;l=1;return l|0}}default:{l=0;return l|0}}return 0}function yc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+16|0;r=v+8|0;q=v+4|0;o=v;p=a+64|0;c=f[p>>2]|0;if(((f[c+28>>2]|0)-(f[c+24>>2]|0)|0)<=0){u=v;return}s=a+52|0;k=a+56|0;m=a+60|0;i=a+12|0;j=a+28|0;t=a+40|0;l=a+44|0;n=a+48|0;b=0;h=0;do{d=f[(f[c+24>>2]|0)+(h<<2)>>2]|0;if((d|0)>=0){e=b+1|0;f[r>>2]=b;c=f[k>>2]|0;if((c|0)==(f[m>>2]|0))Bj(s,r);else{f[c>>2]=b;f[k>>2]=c+4}f[q>>2]=d;f[o>>2]=0;a:do if(!(f[(f[i>>2]|0)+(h>>>5<<2)>>2]&1<<(h&31)))c=d;else{c=d+1|0;c=((c|0)%3|0|0)==0?d+-2|0:c;g=f[a>>2]|0;if(!(1<<(c&31)&f[g+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[p>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;b=c+1|0;if((c|0)>=0){c=((b|0)%3|0|0)==0?c+-2|0:b;f[o>>2]=c;if((c|0)<=-1){c=d;break}while(1){f[q>>2]=c;b=c+1|0;b=((b|0)%3|0|0)==0?c+-2|0:b;if(1<<(b&31)&f[g+(b>>>5<<2)>>2]|0){b=-1073741824;break}if((b|0)<0)break;b=f[(f[(f[p>>2]|0)+12>>2]|0)+(b<<2)>>2]|0;d=b+1|0;if((b|0)<0)break;b=((d|0)%3|0|0)==0?b+-2|0:d;f[o>>2]=b;if((b|0)>-1)c=b;else break a}f[o>>2]=b;break}}}else c=-1073741824;f[o>>2]=c;c=d}while(0);f[(f[j>>2]|0)+(c<<2)>>2]=f[r>>2];c=f[l>>2]|0;if((c|0)==(f[n>>2]|0))Bj(t,q);else{f[c>>2]=f[q>>2];f[l>>2]=c+4}c=f[p>>2]|0;b=f[q>>2]|0;b:do if((b|0)>=0){d=(((b>>>0)%3|0|0)==0?2:-1)+b|0;if((d|0)>=0){d=f[(f[c+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0){d=d+(((d>>>0)%3|0|0)==0?2:-1)|0;f[o>>2]=d;if((d|0)>-1&(d|0)!=(b|0)){b=d;while(1){g=b+1|0;g=((g|0)%3|0|0)==0?b+-2|0:g;do if(f[(f[a>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)){b=e+1|0;f[r>>2]=e;c=f[k>>2]|0;if((c|0)==(f[m>>2]|0))Bj(s,r);else{f[c>>2]=e;f[k>>2]=c+4}c=f[l>>2]|0;if((c|0)==(f[n>>2]|0)){Bj(t,o);e=b;break}else{f[c>>2]=f[o>>2];f[l>>2]=c+4;e=b;break}}while(0);f[(f[j>>2]|0)+(f[o>>2]<<2)>>2]=f[r>>2];c=f[p>>2]|0;b=f[o>>2]|0;if((b|0)<0)break;b=(((b>>>0)%3|0|0)==0?2:-1)+b|0;if((b|0)<0)break;b=f[(f[c+12>>2]|0)+(b<<2)>>2]|0;if((b|0)<0)break;b=b+(((b>>>0)%3|0|0)==0?2:-1)|0;f[o>>2]=b;if(!((b|0)>-1?(b|0)!=(f[q>>2]|0):0)){b=e;break b}}f[o>>2]=b;b=e}else b=e}else{b=d;w=26}}else{b=d;w=26}}else w=26;while(0);if((w|0)==26){w=0;f[o>>2]=b;b=e}}h=h+1|0}while((h|0)<((f[c+28>>2]|0)-(f[c+24>>2]|0)>>2|0));u=v;return}function zc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;w=C+28|0;x=C+16|0;y=C+8|0;v=C;z=a+8|0;d=f[a+12>>2]|0;if((d|0)<=1)Ga(10399,10410,60,10526);if((d|0)>=31)Ga(10546,10410,61,10526);f[a+76>>2]=d;t=1<>2]=t+-1;t=t+-2|0;s=a+84|0;f[s>>2]=t;r=a+88|0;f[r>>2]=(t|0)/2|0;t=a+44|0;f[a+52>>2]=g;if(!(Sa[f[(f[a>>2]|0)+16>>2]&255](a)|0))Ga(11768,12583,99,12741);if((e|0)!=2)Ga(12763,12583,102,12741);p=a+40|0;d=f[p>>2]|0;o=(f[d+4>>2]|0)-(f[d>>2]|0)|0;q=o>>2;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;if((o|0)<=0){u=C;return 1}n=x+4|0;o=x+8|0;m=a+92|0;l=y+4|0;g=d;k=0;while(1){d=f[g>>2]|0;if((f[g+4>>2]|0)-d>>2>>>0<=k>>>0){Oq(g);d=f[g>>2]|0}f[v>>2]=f[d+(k<<2)>>2];f[w>>2]=f[v>>2];Tb(t,w,x);d=f[x>>2]|0;a=(d|0)>-1?d:0-d|0;g=f[n>>2]|0;e=(g|0)>-1?g:0-g|0;a=Kp(e|0,((e|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;e=f[o>>2]|0;h=(e|0)>-1;e=h?e:0-e|0;e=Kp(a|0,I|0,e|0,((e|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((e|0)==0&(a|0)==0){g=x;d=i}else{D=((i|0)<0)<<31>>31;j=mo(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=jl(j|0,I|0,e|0,a|0)|0;f[x>>2]=j;d=mo(i|0,D|0,g|0,((g|0)<0)<<31>>31|0)|0;d=jl(d|0,I|0,e|0,a|0)|0;f[n>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;g=o;d=h?d:0-d|0}f[g>>2]=d;j=f[x>>2]|0;h=f[n>>2]|0;D=f[o>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){d=18;break}D=Cl(m)|0;d=f[x>>2]|0;if(D){d=0-d|0;g=0-(f[n>>2]|0)|0;i=0-(f[o>>2]|0)|0;f[x>>2]=d;f[n>>2]=g;f[o>>2]=i}else{g=f[n>>2]|0;i=f[o>>2]|0}a=(d|0)>-1;h=(g|0)>-1?g:0-g|0;e=(i|0)>-1?i:0-i|0;j=h+(a?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){d=23;break}if(!a){if((g|0)<0)d=e;else d=(f[s>>2]|0)-e|0;if((i|0)<0){g=d;d=h}else{g=d;d=(f[s>>2]|0)-h|0}}else{g=j+g|0;d=j+i|0}e=(g|0)==0;a=(d|0)==0;h=f[s>>2]|0;do if((d|g|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(g|0),!(e&A|a&B)):0){if(e&(j|0)<(d|0)){g=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(g|0)&A){g=(j<<1)-g|0;break}else{g=(j|0)<(g|0)&a?(j<<1)-g|0:g;break}}else{g=h;d=h}while(0);f[y>>2]=g;f[l>>2]=d;d=k<<1;$i(z,y,b+(d<<2)|0,c+(d<<2)|0);d=k+1|0;if((d|0)>=(q|0)){d=11;break}g=f[p>>2]|0;k=d}if((d|0)==11){u=C;return 1}else if((d|0)==18)Ga(12787,12583,116,12741);else if((d|0)==23)Ga(12854,10410,99,12942);return 0}function Ac(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=0,j=0,k=0,l=La;switch(b[a+24>>0]|0){case 1:{k=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;k=I;i=f[a>>2]|0;g=f[i>>2]|0;if((k|0)>0|((k|0)==0?j>>>0>((f[i+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;l=$((h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24)>>>0);e=$(l*$(2.32830644e-10));n[d>>2]=(b[a+32>>0]|0)==0?l:e;k=d+4|0;f[k>>2]=0;f[k+4>>2]=0;k=1;return k|0}case 2:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,8,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}c=g+c|0;k=c;c=c+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;e=$((h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24)>>>0);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c>>>0)}else{e=$(e*$(2.32830644e-10));n[d>>2]=e;e=$($(c>>>0)*$(2.32830644e-10))}n[d+4>>2]=e;n[d+8>>2]=$(0.0);k=1;return k|0}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,12,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;c=k+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=k+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;e=$((h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24)>>>0);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c>>>0);n[d+4>>2]=l;l=$(g>>>0);n[d+8>>2]=l;k=1;return k|0}else{l=$(e*$(2.32830644e-10));n[d>>2]=l;l=$($(c>>>0)*$(2.32830644e-10));n[d+4>>2]=l;l=$($(g>>>0)*$(2.32830644e-10));n[d+8>>2]=l;k=1;return k|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,16,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;c=k+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=k+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;e=$((h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24)>>>0);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c>>>0);n[d+4>>2]=l;l=$(g>>>0);n[d+8>>2]=l;k=1;return k|0}else{l=$(e*$(2.32830644e-10));n[d>>2]=l;l=$($(c>>>0)*$(2.32830644e-10));n[d+4>>2]=l;l=$($(g>>>0)*$(2.32830644e-10));n[d+8>>2]=l;k=1;return k|0}}default:{k=0;return k|0}}return 0}function Bc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;w=C+28|0;x=C+16|0;y=C+8|0;v=C;z=a+8|0;d=f[a+12>>2]|0;if((d|0)<=1)Ga(10399,10410,60,10526);if((d|0)>=31)Ga(10546,10410,61,10526);f[a+76>>2]=d;t=1<>2]=t+-1;t=t+-2|0;s=a+84|0;f[s>>2]=t;r=a+88|0;f[r>>2]=(t|0)/2|0;t=a+44|0;f[a+52>>2]=g;if(!(Sa[f[(f[a>>2]|0)+16>>2]&255](a)|0))Ga(11768,12583,99,12741);if((e|0)!=2)Ga(12763,12583,102,12741);p=a+40|0;d=f[p>>2]|0;o=(f[d+4>>2]|0)-(f[d>>2]|0)|0;q=o>>2;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;if((o|0)<=0){u=C;return 1}n=x+4|0;o=x+8|0;m=a+92|0;l=y+4|0;g=d;k=0;while(1){d=f[g>>2]|0;if((f[g+4>>2]|0)-d>>2>>>0<=k>>>0){Oq(g);d=f[g>>2]|0}f[v>>2]=f[d+(k<<2)>>2];f[w>>2]=f[v>>2];Qb(t,w,x);d=f[x>>2]|0;a=(d|0)>-1?d:0-d|0;g=f[n>>2]|0;e=(g|0)>-1?g:0-g|0;a=Kp(e|0,((e|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;e=f[o>>2]|0;h=(e|0)>-1;e=h?e:0-e|0;e=Kp(a|0,I|0,e|0,((e|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((e|0)==0&(a|0)==0){g=x;d=i}else{D=((i|0)<0)<<31>>31;j=mo(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=jl(j|0,I|0,e|0,a|0)|0;f[x>>2]=j;d=mo(i|0,D|0,g|0,((g|0)<0)<<31>>31|0)|0;d=jl(d|0,I|0,e|0,a|0)|0;f[n>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;g=o;d=h?d:0-d|0}f[g>>2]=d;j=f[x>>2]|0;h=f[n>>2]|0;D=f[o>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){d=18;break}D=Cl(m)|0;d=f[x>>2]|0;if(D){d=0-d|0;g=0-(f[n>>2]|0)|0;i=0-(f[o>>2]|0)|0;f[x>>2]=d;f[n>>2]=g;f[o>>2]=i}else{g=f[n>>2]|0;i=f[o>>2]|0}a=(d|0)>-1;h=(g|0)>-1?g:0-g|0;e=(i|0)>-1?i:0-i|0;j=h+(a?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){d=23;break}if(!a){if((g|0)<0)d=e;else d=(f[s>>2]|0)-e|0;if((i|0)<0){g=d;d=h}else{g=d;d=(f[s>>2]|0)-h|0}}else{g=j+g|0;d=j+i|0}e=(g|0)==0;a=(d|0)==0;h=f[s>>2]|0;do if((d|g|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(g|0),!(e&A|a&B)):0){if(e&(j|0)<(d|0)){g=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(g|0)&A){g=(j<<1)-g|0;break}else{g=(j|0)<(g|0)&a?(j<<1)-g|0:g;break}}else{g=h;d=h}while(0);f[y>>2]=g;f[l>>2]=d;d=k<<1;$i(z,y,b+(d<<2)|0,c+(d<<2)|0);d=k+1|0;if((d|0)>=(q|0)){d=11;break}g=f[p>>2]|0;k=d}if((d|0)==11){u=C;return 1}else if((d|0)==18)Ga(12787,12583,116,12741);else if((d|0)==23)Ga(12854,10410,99,12942);return 0}function Cc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;w=C+28|0;x=C+16|0;y=C+8|0;v=C;z=a+8|0;d=f[a+12>>2]|0;if((d|0)<=1)Ga(10399,10410,60,10526);if((d|0)>=31)Ga(10546,10410,61,10526);f[a+76>>2]=d;t=1<>2]=t+-1;t=t+-2|0;s=a+84|0;f[s>>2]=t;r=a+88|0;f[r>>2]=(t|0)/2|0;t=a+44|0;f[a+52>>2]=g;if(!(Sa[f[(f[a>>2]|0)+16>>2]&255](a)|0))Ga(11768,12583,99,12741);if((e|0)!=2)Ga(12763,12583,102,12741);p=a+40|0;d=f[p>>2]|0;o=(f[d+4>>2]|0)-(f[d>>2]|0)|0;q=o>>2;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;if((o|0)<=0){u=C;return 1}n=x+4|0;o=x+8|0;m=a+92|0;l=y+4|0;g=d;k=0;while(1){d=f[g>>2]|0;if((f[g+4>>2]|0)-d>>2>>>0<=k>>>0){Oq(g);d=f[g>>2]|0}f[v>>2]=f[d+(k<<2)>>2];f[w>>2]=f[v>>2];Tb(t,w,x);d=f[x>>2]|0;a=(d|0)>-1?d:0-d|0;g=f[n>>2]|0;e=(g|0)>-1?g:0-g|0;a=Kp(e|0,((e|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;e=f[o>>2]|0;h=(e|0)>-1;e=h?e:0-e|0;e=Kp(a|0,I|0,e|0,((e|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((e|0)==0&(a|0)==0){g=x;d=i}else{D=((i|0)<0)<<31>>31;j=mo(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=jl(j|0,I|0,e|0,a|0)|0;f[x>>2]=j;d=mo(i|0,D|0,g|0,((g|0)<0)<<31>>31|0)|0;d=jl(d|0,I|0,e|0,a|0)|0;f[n>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;g=o;d=h?d:0-d|0}f[g>>2]=d;j=f[x>>2]|0;h=f[n>>2]|0;D=f[o>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){d=18;break}D=Cl(m)|0;d=f[x>>2]|0;if(D){d=0-d|0;g=0-(f[n>>2]|0)|0;i=0-(f[o>>2]|0)|0;f[x>>2]=d;f[n>>2]=g;f[o>>2]=i}else{g=f[n>>2]|0;i=f[o>>2]|0}a=(d|0)>-1;h=(g|0)>-1?g:0-g|0;e=(i|0)>-1?i:0-i|0;j=h+(a?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){d=23;break}if(!a){if((g|0)<0)d=e;else d=(f[s>>2]|0)-e|0;if((i|0)<0){g=d;d=h}else{g=d;d=(f[s>>2]|0)-h|0}}else{g=j+g|0;d=j+i|0}e=(g|0)==0;a=(d|0)==0;h=f[s>>2]|0;do if((d|g|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(g|0),!(e&A|a&B)):0){if(e&(j|0)<(d|0)){g=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(g|0)&A){g=(j<<1)-g|0;break}else{g=(j|0)<(g|0)&a?(j<<1)-g|0:g;break}}else{g=h;d=h}while(0);f[y>>2]=g;f[l>>2]=d;d=k<<1;dj(z,y,b+(d<<2)|0,c+(d<<2)|0);d=k+1|0;if((d|0)>=(q|0)){d=11;break}g=f[p>>2]|0;k=d}if((d|0)==11){u=C;return 1}else if((d|0)==18)Ga(12787,12583,116,12741);else if((d|0)==23)Ga(12854,10410,99,12942);return 0}function Dc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;w=C+28|0;x=C+16|0;y=C+8|0;v=C;z=a+8|0;d=f[a+12>>2]|0;if((d|0)<=1)Ga(10399,10410,60,10526);if((d|0)>=31)Ga(10546,10410,61,10526);f[a+76>>2]=d;t=1<>2]=t+-1;t=t+-2|0;s=a+84|0;f[s>>2]=t;r=a+88|0;f[r>>2]=(t|0)/2|0;t=a+44|0;f[a+52>>2]=g;if(!(Sa[f[(f[a>>2]|0)+16>>2]&255](a)|0))Ga(11768,12583,99,12741);if((e|0)!=2)Ga(12763,12583,102,12741);p=a+40|0;d=f[p>>2]|0;o=(f[d+4>>2]|0)-(f[d>>2]|0)|0;q=o>>2;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;if((o|0)<=0){u=C;return 1}n=x+4|0;o=x+8|0;m=a+92|0;l=y+4|0;g=d;k=0;while(1){d=f[g>>2]|0;if((f[g+4>>2]|0)-d>>2>>>0<=k>>>0){Oq(g);d=f[g>>2]|0}f[v>>2]=f[d+(k<<2)>>2];f[w>>2]=f[v>>2];Qb(t,w,x);d=f[x>>2]|0;a=(d|0)>-1?d:0-d|0;g=f[n>>2]|0;e=(g|0)>-1?g:0-g|0;a=Kp(e|0,((e|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;e=f[o>>2]|0;h=(e|0)>-1;e=h?e:0-e|0;e=Kp(a|0,I|0,e|0,((e|0)<0)<<31>>31|0)|0;a=I;i=f[r>>2]|0;if((e|0)==0&(a|0)==0){g=x;d=i}else{D=((i|0)<0)<<31>>31;j=mo(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=jl(j|0,I|0,e|0,a|0)|0;f[x>>2]=j;d=mo(i|0,D|0,g|0,((g|0)<0)<<31>>31|0)|0;d=jl(d|0,I|0,e|0,a|0)|0;f[n>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;g=o;d=h?d:0-d|0}f[g>>2]=d;j=f[x>>2]|0;h=f[n>>2]|0;D=f[o>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){d=18;break}D=Cl(m)|0;d=f[x>>2]|0;if(D){d=0-d|0;g=0-(f[n>>2]|0)|0;i=0-(f[o>>2]|0)|0;f[x>>2]=d;f[n>>2]=g;f[o>>2]=i}else{g=f[n>>2]|0;i=f[o>>2]|0}a=(d|0)>-1;h=(g|0)>-1?g:0-g|0;e=(i|0)>-1?i:0-i|0;j=h+(a?d:0-d|0)+e|0;if((j|0)!=(f[r>>2]|0)){d=23;break}if(!a){if((g|0)<0)d=e;else d=(f[s>>2]|0)-e|0;if((i|0)<0){g=d;d=h}else{g=d;d=(f[s>>2]|0)-h|0}}else{g=j+g|0;d=j+i|0}e=(g|0)==0;a=(d|0)==0;h=f[s>>2]|0;do if((d|g|0)!=0?(A=(h|0)==(d|0),B=(h|0)==(g|0),!(e&A|a&B)):0){if(e&(j|0)<(d|0)){g=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&B){d=(j<<1)-d|0;break}if((j|0)>(g|0)&A){g=(j<<1)-g|0;break}else{g=(j|0)<(g|0)&a?(j<<1)-g|0:g;break}}else{g=h;d=h}while(0);f[y>>2]=g;f[l>>2]=d;d=k<<1;dj(z,y,b+(d<<2)|0,c+(d<<2)|0);d=k+1|0;if((d|0)>=(q|0)){d=11;break}g=f[p>>2]|0;k=d}if((d|0)==11){u=C;return 1}else if((d|0)==18)Ga(12787,12583,116,12741);else if((d|0)==23)Ga(12854,10410,99,12942);return 0}function Ec(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=0,j=0,k=0,l=La;switch(b[a+24>>0]|0){case 1:{k=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;k=I;i=f[a>>2]|0;g=f[i>>2]|0;if((k|0)>0|((k|0)==0?j>>>0>((f[i+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;l=$(h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24|0);e=$(l*$(4.65661287e-10));n[d>>2]=(b[a+32>>0]|0)==0?l:e;k=d+4|0;f[k>>2]=0;f[k+4>>2]=0;k=1;return k|0}case 2:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,8,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}c=g+c|0;k=c;c=c+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;e=$(h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c|0)}else{e=$(e*$(4.65661287e-10));n[d>>2]=e;e=$($(c|0)*$(4.65661287e-10))}n[d+4>>2]=e;n[d+8>>2]=$(0.0);k=1;return k|0}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,12,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;c=k+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=k+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;e=$(h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c|0);n[d+4>>2]=l;l=$(g|0);n[d+8>>2]=l;k=1;return k|0}else{l=$(e*$(4.65661287e-10));n[d>>2]=l;l=$($(c|0)*$(4.65661287e-10));n[d+4>>2]=l;l=$($(g|0)*$(4.65661287e-10));n[d+8>>2]=l;k=1;return k|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,16,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;c=k+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=k+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;e=$(h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24|0);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c|0);n[d+4>>2]=l;l=$(g|0);n[d+8>>2]=l;k=1;return k|0}else{l=$(e*$(4.65661287e-10));n[d>>2]=l;l=$($(c|0)*$(4.65661287e-10));n[d+4>>2]=l;l=$($(g|0)*$(4.65661287e-10));n[d+8>>2]=l;k=1;return k|0}}default:{k=0;return k|0}}return 0}function Fc(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=La,j=0,k=0,l=0;switch(b[a+24>>0]|0){case 1:{l=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,2,0)|0;l=I;j=f[a>>2]|0;g=f[j>>2]|0;if((l|0)>0|((l|0)==0?k>>>0>((f[j+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;e=$((h[l>>0]|h[l+1>>0]<<8)<<16>>16);i=$(e/$(32767.0));n[d>>2]=(b[a+32>>0]|0)==0?e:i;l=d+4|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;l=1;return l|0}case 2:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,4,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;c=l>>>16&65535;e=$((l&65535)<<16>>16);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c<<16>>16)}else{e=$(e/$(32767.0));n[d>>2]=e;e=$($(c<<16>>16)/$(32767.0))}n[d+4>>2]=e;l=d+8|0;f[l>>2]=0;f[l+4>>2]=0;l=1;return l|0}case 3:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,6,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=l+2|0;c=h[c>>0]|h[c+1>>0]<<8;g=l+4|0;g=h[g>>0]|h[g+1>>0]<<8;e=$((h[l>>0]|h[l+1>>0]<<8)<<16>>16);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c<<16>>16);e=$(g<<16>>16)}else{i=$(e/$(32767.0));n[d>>2]=i;i=$($(c<<16>>16)/$(32767.0));e=$($(g<<16>>16)/$(32767.0))}n[d+4>>2]=i;n[d+8>>2]=e;n[d+12>>2]=$(0.0);l=1;return l|0}case 4:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,8,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}j=g+c|0;k=j;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;l=(b[a+32>>0]|0)==0;c=(Wo(k|0,j|0,16)|0)&65535;g=j&65535;a=(Wo(k|0,j|0,48)|0)&65535;e=$((k&65535)<<16>>16);if(l){n[d>>2]=e;i=$(c<<16>>16);n[d+4>>2]=i;i=$(g<<16>>16);n[d+8>>2]=i;i=$(a<<16>>16);n[d+12>>2]=i;l=1;return l|0}else{i=$(e/$(32767.0));n[d>>2]=i;i=$($(c<<16>>16)/$(32767.0));n[d+4>>2]=i;i=$($(g<<16>>16)/$(32767.0));n[d+8>>2]=i;i=$($(a<<16>>16)/$(32767.0));n[d+12>>2]=i;l=1;return l|0}}default:{l=0;return l|0}}return 0}function Gc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=La,l=La,m=La;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];i=~~$(n[s>>2]);f[d>>2]=i;i=d+4|0;f[i>>2]=0;f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;i=j;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=~~(f[s>>2]=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24,$(n[s>>2]));f[d>>2]=i;j=~~(f[s>>2]=j,$(n[s>>2]));f[d+4>>2]=j;f[d+8>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];m=$(n[s>>2]);i=j+4|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];l=$(n[s>>2]);j=j+8|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];k=$(n[s>>2]);f[d>>2]=~~m;f[d+4>>2]=~~l;f[d+8>>2]=~~k;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];k=$(n[s>>2]);i=j+4|0;b[s>>0]=b[i>>0];b[s+1>>0]=b[i+1>>0];b[s+2>>0]=b[i+2>>0];b[s+3>>0]=b[i+3>>0];l=$(n[s>>2]);j=j+8|0;b[s>>0]=b[j>>0];b[s+1>>0]=b[j+1>>0];b[s+2>>0]=b[j+2>>0];b[s+3>>0]=b[j+3>>0];m=$(n[s>>2]);f[d>>2]=~~k;f[d+4>>2]=~~l;f[d+8>>2]=~~m;j=1;return j|0}default:{j=0;return j|0}}return 0}function Hc(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=La,j=0,k=0,l=0;switch(b[a+24>>0]|0){case 1:{l=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;j=a+40|0;c=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,2,0)|0;l=I;j=f[a>>2]|0;g=f[j>>2]|0;if((l|0)>0|((l|0)==0?k>>>0>((f[j+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;e=$((h[l>>0]|h[l+1>>0]<<8)&65535);i=$(e/$(65535.0));n[d>>2]=(b[a+32>>0]|0)==0?e:i;l=d+4|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;l=1;return l|0}case 2:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,4,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;c=l>>>16&65535;e=$(l&65535);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c&65535)}else{e=$(e/$(65535.0));n[d>>2]=e;e=$($(c&65535)/$(65535.0))}n[d+4>>2]=e;l=d+8|0;f[l>>2]=0;f[l+4>>2]=0;l=1;return l|0}case 3:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,6,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}l=g+c|0;c=l+2|0;c=h[c>>0]|h[c+1>>0]<<8;g=l+4|0;g=h[g>>0]|h[g+1>>0]<<8;e=$((h[l>>0]|h[l+1>>0]<<8)&65535);if(!(b[a+32>>0]|0)){n[d>>2]=e;i=$(c&65535);e=$(g&65535)}else{i=$(e/$(65535.0));n[d>>2]=i;i=$($(c&65535)/$(65535.0));e=$($(g&65535)/$(65535.0))}n[d+4>>2]=i;n[d+8>>2]=e;n[d+12>>2]=$(0.0);l=1;return l|0}case 4:{j=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=Kp(mo(f[l>>2]|0,f[l+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0;k=Kp(c|0,I|0,8,0)|0;j=I;l=f[a>>2]|0;g=f[l>>2]|0;if((j|0)>0|((j|0)==0?k>>>0>((f[l+4>>2]|0)-g|0)>>>0:0)){l=0;return l|0}j=g+c|0;k=j;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;j=j+4|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;l=(b[a+32>>0]|0)==0;c=(Wo(k|0,j|0,16)|0)&65535;g=j&65535;a=(Wo(k|0,j|0,48)|0)&65535;e=$(k&65535);if(l){n[d>>2]=e;i=$(c&65535);n[d+4>>2]=i;i=$(g&65535);n[d+8>>2]=i;i=$(a&65535);n[d+12>>2]=i;l=1;return l|0}else{i=$(e/$(65535.0));n[d>>2]=i;i=$($(c&65535)/$(65535.0));n[d+4>>2]=i;i=$($(g&65535)/$(65535.0));n[d+8>>2]=i;i=$($(a&65535)/$(65535.0));n[d+12>>2]=i;l=1;return l|0}}default:{l=0;return l|0}}return 0}function Ic(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}g=c+e|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=d;f[i>>2]=g;f[i+4>>2]=((g|0)<0)<<31>>31;i=d+8|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[i+16>>2]=0;f[i+20>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,8,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=i;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=i+4|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;a=Do(0,j|0,32)|0;g=d;f[g>>2]=a;f[g+4>>2]=I;i=Do(j|0,i|0,32)|0;j=d+8|0;f[j>>2]=i;f[j+4>>2]=I;j=d+16|0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;f[j+12>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,12,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;a=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;g=i+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=i+8|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=a;f[j+4>>2]=((a|0)<0)<<31>>31;j=d+8|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;j=d+16|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=d+24|0;f[j>>2]=0;f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,16,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;e=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;a=i+4|0;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;g=i+8|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=i+12|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;j=d;f[j>>2]=e;f[j+4>>2]=((e|0)<0)<<31>>31;j=d+8|0;f[j>>2]=a;f[j+4>>2]=((a|0)<0)<<31>>31;j=d+16|0;f[j>>2]=g;f[j+4>>2]=((g|0)<0)<<31>>31;j=d+24|0;f[j>>2]=i;f[j+4>>2]=((i|0)<0)<<31>>31;j=1;return j|0}default:{j=0;return j|0}}return 0}function Jc(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{b=no(44)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3244;e=b;f[a>>2]=e;return}case 2:{b=no(44)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3300;e=b;f[a>>2]=e;return}case 4:{b=no(96)|0;f[b+4>>2]=d;h=b+12|0;c=e+4|0;f[h>>2]=f[c>>2];f[h+4>>2]=f[c+4>>2];f[h+8>>2]=f[c+8>>2];f[h+12>>2]=f[c+12>>2];f[b+8>>2]=2804;h=b+28|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[b>>2]=3356;h=b+44|0;c=h+52|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(c|0));e=b;f[a>>2]=e;return}case 3:{b=no(76)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3412;e=b+44|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[b+72>>2]=h&65535;e=b;f[a>>2]=e;return}case 5:{b=no(88)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3468;f[b+44>>2]=0;f[b+48>>2]=0;f[b+60>>2]=0;f[b+64>>2]=0;f[b+68>>2]=0;e=b+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];e=b;f[a>>2]=e;return}case 6:{b=no(108)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3524;f[b+48>>2]=0;f[b+52>>2]=0;e=b+56|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b+44>>2]=3580;f[b+72>>2]=1;e=b+76|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Ar(b+92|0);e=b;f[a>>2]=e;return}default:{e=0;f[a>>2]=e;return}}}function Kc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if((b|0)<0)return;m=a+12|0;l=f[m>>2]|0;c=f[a+8>>2]|0;j=l;if(l-c>>2>>>0<=b>>>0)return;d=c+(b<<2)|0;l=f[(f[d>>2]|0)+56>>2]|0;c=d+4|0;if((c|0)!=(j|0)){do{h=f[c>>2]|0;f[c>>2]=0;i=f[d>>2]|0;f[d>>2]=h;if(i|0){h=i+88|0;e=f[h>>2]|0;f[h>>2]=0;if(e|0){g=f[e+8>>2]|0;if(g|0){h=e+12|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;ds(g)}ds(e)}e=f[i+68>>2]|0;if(e|0){h=i+72|0;g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}h=i+64|0;e=f[h>>2]|0;f[h>>2]=0;if(e|0){g=f[e>>2]|0;if(g|0){h=e+4|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;ds(g)}ds(e)}ds(i)}c=c+4|0;d=d+4|0}while((c|0)!=(j|0));c=f[m>>2]|0;if((c|0)!=(d|0)){h=d;k=24}}else{c=j;h=d;k=24}if((k|0)==24)do{k=c+-4|0;f[m>>2]=k;g=f[k>>2]|0;f[k>>2]=0;if(g|0){k=g+88|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;ds(d)}ds(c)}c=f[g+68>>2]|0;if(c|0){e=g+72|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}k=g+64|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;ds(d)}ds(c)}ds(g)}c=f[m>>2]|0}while((c|0)!=(h|0));a:do if((l|0)<5){c=f[a+20+(l*12|0)>>2]|0;i=a+20+(l*12|0)+4|0;d=f[i>>2]|0;e=d;b:do if((c|0)!=(d|0))while(1){if((f[c>>2]|0)==(b|0))break b;c=c+4|0;if((c|0)==(d|0))break a}while(0);if((c|0)!=(d|0)){g=c+4|0;e=e-g|0;h=e>>2;if(h){rn(c|0,g|0,e|0)|0;d=f[i>>2]|0}c=c+(h<<2)|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-4-c|0)>>>2)<<2)}}while(0);c=f[a+24>>2]|0;d=f[a+20>>2]|0;h=d;if((c|0)!=(d|0)){g=c-d>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0)}c=f[a+36>>2]|0;d=f[a+32>>2]|0;h=d;if((c|0)!=(d|0)){g=c-d>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0)}c=f[a+48>>2]|0;d=f[a+44>>2]|0;h=d;if((c|0)!=(d|0)){g=c-d>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0)}c=f[a+60>>2]|0;d=f[a+56>>2]|0;h=d;if((c|0)!=(d|0)){g=c-d>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0)}d=f[a+72>>2]|0;c=f[a+68>>2]|0;h=c;if((d|0)==(c|0))return;g=d-c>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0);return}function Lc(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{b=no(44)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2880;e=b;f[a>>2]=e;return}case 2:{b=no(44)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=2936;e=b;f[a>>2]=e;return}case 4:{b=no(96)|0;f[b+4>>2]=d;h=b+12|0;c=e+4|0;f[h>>2]=f[c>>2];f[h+4>>2]=f[c+4>>2];f[h+8>>2]=f[c+8>>2];f[h+12>>2]=f[c+12>>2];f[b+8>>2]=2804;h=b+28|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[b>>2]=2992;h=b+44|0;c=h+52|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(c|0));e=b;f[a>>2]=e;return}case 3:{b=no(76)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3048;e=b+44|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[b+72>>2]=h&65535;e=b;f[a>>2]=e;return}case 5:{b=no(88)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3104;f[b+44>>2]=0;f[b+48>>2]=0;f[b+60>>2]=0;f[b+64>>2]=0;f[b+68>>2]=0;e=b+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];e=b;f[a>>2]=e;return}case 6:{b=no(108)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2804;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3160;f[b+48>>2]=0;f[b+52>>2]=0;e=b+56|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b+44>>2]=3216;f[b+72>>2]=1;e=b+76|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Ar(b+92|0);e=b;f[a>>2]=e;return}default:{e=0;f[a>>2]=e;return}}}function Mc(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{b=no(44)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=4028;e=b;f[a>>2]=e;return}case 2:{b=no(44)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=4084;e=b;f[a>>2]=e;return}case 4:{b=no(96)|0;f[b+4>>2]=d;h=b+12|0;c=e+4|0;f[h>>2]=f[c>>2];f[h+4>>2]=f[c+4>>2];f[h+8>>2]=f[c+8>>2];f[h+12>>2]=f[c+12>>2];f[b+8>>2]=2784;h=b+28|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[b>>2]=4140;h=b+44|0;c=h+52|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(c|0));e=b;f[a>>2]=e;return}case 3:{b=no(76)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=4196;e=b+44|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[b+72>>2]=h&65535;e=b;f[a>>2]=e;return}case 5:{b=no(88)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=4252;f[b+44>>2]=0;f[b+48>>2]=0;f[b+60>>2]=0;f[b+64>>2]=0;f[b+68>>2]=0;e=b+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];e=b;f[a>>2]=e;return}case 6:{b=no(108)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=4308;f[b+48>>2]=0;f[b+52>>2]=0;e=b+56|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b+44>>2]=4364;f[b+72>>2]=1;e=b+76|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Ar(b+92|0);e=b;f[a>>2]=e;return}default:{e=0;f[a>>2]=e;return}}}function Nc(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{b=no(44)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3664;e=b;f[a>>2]=e;return}case 2:{b=no(44)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3720;e=b;f[a>>2]=e;return}case 4:{b=no(96)|0;f[b+4>>2]=d;h=b+12|0;c=e+4|0;f[h>>2]=f[c>>2];f[h+4>>2]=f[c+4>>2];f[h+8>>2]=f[c+8>>2];f[h+12>>2]=f[c+12>>2];f[b+8>>2]=2784;h=b+28|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[b>>2]=3776;h=b+44|0;c=h+52|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(c|0));e=b;f[a>>2]=e;return}case 3:{b=no(76)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3832;e=b+44|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;f[e+20>>2]=0;f[e+24>>2]=0;f[b+72>>2]=h&65535;e=b;f[a>>2]=e;return}case 5:{b=no(88)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3888;f[b+44>>2]=0;f[b+48>>2]=0;f[b+60>>2]=0;f[b+64>>2]=0;f[b+68>>2]=0;e=b+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];e=b;f[a>>2]=e;return}case 6:{b=no(108)|0;f[b+4>>2]=d;d=b+12|0;e=e+4|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[b+8>>2]=2784;e=b+28|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=3944;f[b+48>>2]=0;f[b+52>>2]=0;e=b+56|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b+44>>2]=4e3;f[b+72>>2]=1;e=b+76|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;Ar(b+92|0);e=b;f[a>>2]=e;return}default:{e=0;f[a>>2]=e;return}}}function Oc(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=0,j=0,k=0,l=La;switch(b[a+24>>0]|0){case 1:{k=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,2,0)|0;k=I;i=f[a>>2]|0;g=f[i>>2]|0;if((k|0)>0|((k|0)==0?j>>>0>((f[i+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;l=$((h[k>>0]|h[k+1>>0]<<8)<<16>>16);e=$(l/$(32767.0));n[d>>2]=(b[a+32>>0]|0)==0?l:e;k=d+4|0;f[k>>2]=0;f[k+4>>2]=0;k=1;return k|0}case 2:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;c=k>>>16&65535;e=$((k&65535)<<16>>16);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c<<16>>16)}else{e=$(e/$(32767.0));n[d>>2]=e;e=$($(c<<16>>16)/$(32767.0))}n[d+4>>2]=e;n[d+8>>2]=$(0.0);k=1;return k|0}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,6,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;c=k+2|0;c=h[c>>0]|h[c+1>>0]<<8;g=k+4|0;g=h[g>>0]|h[g+1>>0]<<8;e=$((h[k>>0]|h[k+1>>0]<<8)<<16>>16);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c<<16>>16);n[d+4>>2]=l;l=$(g<<16>>16);n[d+8>>2]=l;k=1;return k|0}else{l=$(e/$(32767.0));n[d>>2]=l;l=$($(c<<16>>16)/$(32767.0));n[d+4>>2]=l;l=$($(g<<16>>16)/$(32767.0));n[d+8>>2]=l;k=1;return k|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,8,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}g=g+c|0;j=g;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;g=g+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;k=(b[a+32>>0]|0)==0;c=(Wo(j|0,g|0,16)|0)&65535;g=g&65535;e=$((j&65535)<<16>>16);if(k){n[d>>2]=e;l=$(c<<16>>16);n[d+4>>2]=l;l=$(g<<16>>16);n[d+8>>2]=l;k=1;return k|0}else{l=$(e/$(32767.0));n[d>>2]=l;l=$($(c<<16>>16)/$(32767.0));n[d+4>>2]=l;l=$($(g<<16>>16)/$(32767.0));n[d+8>>2]=l;k=1;return k|0}}default:{k=0;return k|0}}return 0}function Pc(a,c,d){a=a|0;c=c|0;d=d|0;var e=La,g=0,i=0,j=0,k=0,l=La;switch(b[a+24>>0]|0){case 1:{k=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;i=a+40|0;c=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,2,0)|0;k=I;i=f[a>>2]|0;g=f[i>>2]|0;if((k|0)>0|((k|0)==0?j>>>0>((f[i+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;l=$((h[k>>0]|h[k+1>>0]<<8)&65535);e=$(l/$(65535.0));n[d>>2]=(b[a+32>>0]|0)==0?l:e;k=d+4|0;f[k>>2]=0;f[k+4>>2]=0;k=1;return k|0}case 2:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,4,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;k=h[k>>0]|h[k+1>>0]<<8|h[k+2>>0]<<16|h[k+3>>0]<<24;c=k>>>16&65535;e=$(k&65535);if(!(b[a+32>>0]|0)){n[d>>2]=e;e=$(c&65535)}else{e=$(e/$(65535.0));n[d>>2]=e;e=$($(c&65535)/$(65535.0))}n[d+4>>2]=e;n[d+8>>2]=$(0.0);k=1;return k|0}case 3:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,6,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}k=g+c|0;c=k+2|0;c=h[c>>0]|h[c+1>>0]<<8;g=k+4|0;g=h[g>>0]|h[g+1>>0]<<8;e=$((h[k>>0]|h[k+1>>0]<<8)&65535);if(!(b[a+32>>0]|0)){n[d>>2]=e;l=$(c&65535);n[d+4>>2]=l;l=$(g&65535);n[d+8>>2]=l;k=1;return k|0}else{l=$(e/$(65535.0));n[d>>2]=l;l=$($(c&65535)/$(65535.0));n[d+4>>2]=l;l=$($(g&65535)/$(65535.0));n[d+8>>2]=l;k=1;return k|0}}case 4:{i=f[c>>2]|0;c=a+48|0;j=f[c>>2]|0;c=f[c+4>>2]|0;k=a+40|0;c=Kp(mo(f[k>>2]|0,f[k+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,j|0,c|0)|0;j=Kp(c|0,I|0,8,0)|0;i=I;k=f[a>>2]|0;g=f[k>>2]|0;if((i|0)>0|((i|0)==0?j>>>0>((f[k+4>>2]|0)-g|0)>>>0:0)){k=0;return k|0}g=g+c|0;j=g;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;g=g+4|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;k=(b[a+32>>0]|0)==0;c=(Wo(j|0,g|0,16)|0)&65535;g=g&65535;e=$(j&65535);if(k){n[d>>2]=e;l=$(c&65535);n[d+4>>2]=l;l=$(g&65535);n[d+8>>2]=l;k=1;return k|0}else{l=$(e/$(65535.0));n[d>>2]=l;l=$($(c&65535)/$(65535.0));n[d+4>>2]=l;l=$($(g&65535)/$(65535.0));n[d+8>>2]=l;k=1;return k|0}}default:{k=0;return k|0}}return 0} -function nf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{i=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=a+40|0;e=Kp(mo(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;i=I;a=f[a>>2]|0;c=f[a>>2]|0;if((i|0)>0|((i|0)==0?g>>>0>((f[a+4>>2]|0)-c|0)>>>0:0)){i=0;return i|0}i=c+e|0;f[d>>2]=(h[i>>0]|h[i+1>>0]<<8)&65535;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,4,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)&65535;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,6,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=(h[j>>0]|h[j+1>>0]<<8)&65535;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,8,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)&65535;j=1;return j|0}default:{j=0;return j|0}}return 0}function of(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+16|0;n=f[l>>2]|0;i=(f[c>>2]|0)-n|0;j=c+4|0;g=(f[j>>2]|0)-n|0;e=c;f[e>>2]=i;f[e+4>>2]=g;e=f[l>>2]|0;if((e|0)<(i|0))Ga(11111,10410,250,11134);if((e|0)<(g|0))Ga(11146,10410,251,11134);h=0-e|0;if((i|0)<(h|0))Ga(11169,10410,252,11134);if((g|0)<(h|0))Ga(11193,10410,253,11134);m=(((g|0)>-1?g:0-g|0)+((i|0)>-1?i:0-i|0)|0)<=(e|0);if(!m){Pi(b+4|0,c,j);i=f[c>>2]|0}if(!i){e=f[j>>2]|0;g=e;e=(e|0)==0}else{e=f[j>>2]|0;g=e;e=(i|0)<0&(e|0)<1}if(!i)k=(g|0)==0?0:(g|0)>0?3:1;else k=(i|0)>0?(g>>31)+2|0:(g|0)<1?0:3;if(e){e=i;i=1}else{switch(k|0){case 1:{e=g;g=0-i|0;break}case 2:{e=0-i|0;g=0-g|0;break}case 3:{e=0-g|0;g=i;break}default:e=i}i=c;f[i>>2]=e;f[i+4>>2]=g;i=0}e=(f[d>>2]|0)+e|0;f[a>>2]=e;g=(f[d+4>>2]|0)+g|0;j=a+4|0;f[j>>2]=g;h=f[l>>2]|0;if((h|0)>=(e|0)){if((e|0)<(0-h|0))e=(f[b+8>>2]|0)+e|0}else e=e-(f[b+8>>2]|0)|0;f[a>>2]=e;if((h|0)>=(g|0)){if((g|0)<(0-h|0))g=(f[b+8>>2]|0)+g|0}else g=g-(f[b+8>>2]|0)|0;f[j>>2]=g;if(!i){switch((4-k|0)%4|0|0){case 1:{h=g;e=0-e|0;break}case 2:{h=0-e|0;e=0-g|0;break}case 3:{h=0-g|0;break}default:{h=e;e=g}}g=a;f[g>>2]=h;f[g+4>>2]=e;g=e;e=h}if(m){m=e;b=g;m=m+n|0;n=b+n|0;b=a;a=b;f[a>>2]=m;b=b+4|0;f[b>>2]=n;return}Pi(b+4|0,a,j);m=f[a>>2]|0;b=f[j>>2]|0;m=m+n|0;n=b+n|0;b=a;a=b;f[a>>2]=m;b=b+4|0;f[b>>2]=n;return}function pf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;w=u;u=u+48|0;s=w+40|0;t=w+24|0;p=w+20|0;q=w+16|0;n=w;r=w+8|0;f[t>>2]=0;v=t+4|0;f[v>>2]=0;f[t+8>>2]=0;l=c+8|0;k=f[l>>2]|0;l=f[l+4>>2]|0;o=c+16|0;e=o;m=f[e>>2]|0;e=f[e+4>>2]|0;g=Kp(m|0,e|0,4,0)|0;i=I;a:do if((l|0)<(i|0)|(l|0)==(i|0)&k>>>0>>0)i=0;else{j=f[c>>2]|0;x=j+m|0;x=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;y=o;f[y>>2]=g;f[y+4>>2]=i;b:do switch(x|0){case 3:{if(!((l|0)>(i|0)|(l|0)==(i|0)&k>>>0>g>>>0)){i=0;break a}y=b[j+g>>0]|0;m=Kp(m|0,e|0,5,0)|0;x=o;f[x>>2]=m;f[x+4>>2]=I;f[a+8>>2]=y<<24>>24;if(y<<24>>24==1)if(gc(a,c,t)|0)break b;else{i=0;break a}else{Im(6683,23,1,f[1293]|0)|0;i=0;break a}}case 2:{if(!(gc(a,c,t)|0)){i=0;break a}break}default:{Im(6707,24,1,f[1293]|0)|0;i=0;break a}}while(0);f[p>>2]=f[t>>2];f[q>>2]=f[v>>2];x=d;y=f[x+4>>2]|0;i=n;f[i>>2]=f[x>>2];f[i+4>>2]=y;f[s>>2]=f[n>>2];f[s+4>>2]=f[n+4>>2];Qf(r,p,q,a,s);i=1}while(0);e=f[t>>2]|0;if(!e){u=w;return i|0}g=f[v>>2]|0;if((g|0)!=(e|0))f[v>>2]=g+(~(((g+-12-e|0)>>>0)/12|0)*12|0);ds(e);u=w;return i|0}function qf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}i=d;f[i>>2]=h[c+e>>0];f[i+4>>2]=0;i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=d;f[j>>2]=(h[i>>0]|h[i+1>>0]<<8)&255;f[j+4>>2]=0;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=d;f[j>>2]=h[c+e>>0];f[j+4>>2]=0;j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}i=c+e|0;j=d;f[j>>2]=(h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24)&255;f[j+4>>2]=0;j=1;return j|0}default:{j=0;return j|0}}return 0}function rf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var 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;p=f[a+32>>2]|0;q=f[a+36>>2]|0;s=e>>>0>1073741823?-1:e<<2;r=as(s)|0;_j(r|0,0,s|0)|0;s=a+8|0;$i(s,r,b,c);n=a+40|0;g=f[n>>2]|0;a=f[g+4>>2]|0;d=f[g>>2]|0;m=a-d|0;o=m>>2;if((m|0)<=4){bs(r);return 1}l=p+12|0;m=(e|0)>0;h=a;a=1;while(1){if(h-d>>2>>>0<=a>>>0){Oq(g);d=f[g>>2]|0}d=f[d+(a<<2)>>2]|0;k=X(a,e)|0;if((d|0)>=0?(t=f[(f[l>>2]|0)+(d<<2)>>2]|0,(t|0)>=0):0){g=f[p>>2]|0;h=f[q>>2]|0;i=f[h+(f[g+(t<<2)>>2]<<2)>>2]|0;d=t+1|0;d=((d|0)%3|0|0)==0?t+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[g+(d<<2)>>2]|0;j=f[h+(d<<2)>>2]|0;d=(((t>>>0)%3|0|0)==0?2:-1)+t|0;if((d|0)<0)d=-1073741824;else d=f[g+(d<<2)>>2]|0;d=f[h+(d<<2)>>2]|0;if((i|0)<(a|0)&(j|0)<(a|0)&(d|0)<(a|0)){i=X(i,e)|0;h=X(j,e)|0;g=X(d,e)|0;if(m){d=0;do{f[r+(d<<2)>>2]=(f[c+(d+g<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+i<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}$i(s,r,b+(k<<2)|0,c+(k<<2)|0)}else u=16}else u=16;if((u|0)==16){u=0;$i(s,c+((X(a+-1|0,e)|0)<<2)|0,b+(k<<2)|0,c+(k<<2)|0)}a=a+1|0;if((a|0)>=(o|0))break;h=f[n>>2]|0;g=h;d=f[h>>2]|0;h=f[h+4>>2]|0}bs(r);return 1}function sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;o=p+8|0;j=p;n=a+4|0;g=f[n>>2]|0;if(g>>>0>=b>>>0){f[n>>2]=b;u=p;return}m=a+8|0;e=f[m>>2]|0;l=e<<5;d=b-g|0;if(l>>>0>>0|g>>>0>(l-d|0)>>>0){f[o>>2]=0;l=o+4|0;f[l>>2]=0;k=o+8|0;f[k>>2]=0;if((b|0)<0){Pq(a);e=f[m>>2]|0}h=e<<6;b=b+31&-32;jj(o,e<<5>>>0<1073741823?(h>>>0>>0?b:h):2147483647);b=f[n>>2]|0;f[l>>2]=b+d;e=f[a>>2]|0;h=e;g=f[o>>2]|0;b=(h+(b>>>5<<2)-e<<3)+(b&31)|0;if((b|0)>0){i=b>>>5;rn(g|0,e|0,i<<2|0)|0;e=b-(i<<5)|0;b=g+(i<<2)|0;g=b;if((e|0)>0){q=-1>>>(32-e|0);f[b>>2]=f[b>>2]&~q|f[h+(i<<2)>>2]&q}else e=0}else e=0;f[j>>2]=g;f[j+4>>2]=e;b=j;e=f[b>>2]|0;b=f[b+4>>2]|0;g=f[a>>2]|0;f[a>>2]=f[o>>2];f[o>>2]=g;q=f[n>>2]|0;f[n>>2]=f[l>>2];f[l>>2]=q;q=f[m>>2]|0;f[m>>2]=f[k>>2];f[k>>2]=q;if(g|0)ds(g)}else{e=(f[a>>2]|0)+(g>>>5<<2)|0;f[n>>2]=b;b=g&31}if(!d){u=p;return}h=(b|0)==0;g=e;if(c){if(!h){e=32-b|0;q=e>>>0>d>>>0?d:e;f[g>>2]=f[g>>2]|-1>>>(e-q|0)&-1<>>5;_j(e|0,-1,q<<2|0)|0;e=d-(q<<5)|0;d=g+(q<<2)|0;if(!e){u=p;return}f[d>>2]=f[d>>2]|-1>>>(32-e|0);u=p;return}else{if(!h){e=32-b|0;q=e>>>0>d>>>0?d:e;f[g>>2]=f[g>>2]&~(-1>>>(e-q|0)&-1<>>5;_j(e|0,0,q<<2|0)|0;e=d-(q<<5)|0;d=g+(q<<2)|0;if(!e){u=p;return}f[d>>2]=f[d>>2]&~(-1>>>(32-e|0));u=p;return}}function tf(a,b){a=a|0;b=b|0;var c=0,d=La,e=La,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=La;l=f[b>>2]|0;j=a+4|0;i=f[j>>2]|0;k=(i|0)==0;a:do if(!k){g=i+-1|0;c=(g&i|0)==0;if(c)h=g&l;else h=(l>>>0)%(i>>>0)|0;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(b)if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}if((f[b+4>>2]&g|0)!=(h|0)){b=h;break a}}while((f[b+8>>2]|0)!=(l|0));a=b+12|0;return a|0}else{do{b=f[b>>2]|0;if(!b){b=h;break a}if((((f[b+4>>2]|0)>>>0)%(i>>>0)|0|0)!=(h|0)){b=h;break a}}while((f[b+8>>2]|0)!=(l|0));a=b+12|0;return a|0}else b=h}else b=0;while(0);m=no(16)|0;f[m+8>>2]=l;f[m+12>>2]=0;f[m+4>>2]=l;f[m>>2]=0;h=a+12|0;e=$(((f[h>>2]|0)+1|0)>>>0);p=$(i>>>0);d=$(n[a+16>>2]);do if(k|e>$(p*d)){b=(i>>>0<3|(i+-1&i|0)!=0)&1|i<<1;c=~~$(W($(e/d)))>>>0;ej(a,b>>>0>>0?c:b);b=f[j>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&l;break}else{g=b;b=(l>>>0)%(b>>>0)|0;break}}else g=i;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[m>>2]=f[b>>2];f[b>>2]=m;f[c>>2]=b;b=f[m>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(!(c&g))b=b&c;else b=(b>>>0)%(g>>>0)|0;b=(f[a>>2]|0)+(b<<2)|0;o=24}}else{f[m>>2]=f[b>>2];o=24}if((o|0)==24)f[b>>2]=m;f[h>>2]=(f[h>>2]|0)+1;a=m;a=a+12|0;return a|0}function uf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+32|0;k=o+16|0;j=o;i=c+8|0;m=i;l=f[m+4>>2]|0;n=c+16|0;d=n;e=f[d>>2]|0;d=f[d+4>>2]|0;if(!((l|0)>(d|0)|((l|0)==(d|0)?(f[m>>2]|0)>>>0>e>>>0:0))){a=0;u=o;return a|0}m=b[(f[c>>2]|0)+e>>0]|0;g=Kp(e|0,d|0,1,0)|0;l=n;f[l>>2]=g;f[l+4>>2]=I;if(m<<24>>24){a=0;u=o;return a|0}g=0;do{rk(k,c)|0;d=f[k>>2]|0;if(d|0){e=a+60+(g*12|0)|0;sf(e,d,0);Ar(j);xg(j,c)|0;if(f[k>>2]|0){d=0;do{q=Cl(j)|0;m=(f[e>>2]|0)+(d>>>5<<2)|0;l=1<<(d&31);p=f[m>>2]|0;f[m>>2]=q?p|l:p&~l;d=d+1|0}while(d>>>0<(f[k>>2]|0)>>>0)}is(j)}g=g+1|0}while((g|0)<4);l=i;k=f[l>>2]|0;l=f[l+4>>2]|0;e=n;d=f[e>>2]|0;e=f[e+4>>2]|0;m=Kp(d|0,e|0,4,0)|0;g=I;if((l|0)<(g|0)|(l|0)==(g|0)&k>>>0>>0){q=0;u=o;return q|0}i=f[c>>2]|0;j=i+d|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;q=n;f[q>>2]=m;f[q+4>>2]=g;d=Kp(d|0,e|0,8,0)|0;e=I;if((l|0)<(e|0)|(l|0)==(e|0)&k>>>0>>0){q=0;u=o;return q|0}q=i+m|0;q=h[q>>0]|h[q+1>>0]<<8|h[q+2>>0]<<16|h[q+3>>0]<<24;p=n;f[p>>2]=d;f[p+4>>2]=e;f[a+12>>2]=j;f[a+16>>2]=q;q=q+(1-j)|0;f[a+20>>2]=q;d=(q|0)/2|0;e=a+24|0;f[e>>2]=d;f[a+28>>2]=0-d;if(q&1|0){q=1;u=o;return q|0}f[e>>2]=d+-1;q=1;u=o;return q|0}function vf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var 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;p=f[a+32>>2]|0;q=f[a+36>>2]|0;s=e>>>0>1073741823?-1:e<<2;r=as(s)|0;_j(r|0,0,s|0)|0;s=a+8|0;dj(s,r,b,c);n=a+40|0;g=f[n>>2]|0;a=f[g+4>>2]|0;d=f[g>>2]|0;m=a-d|0;o=m>>2;if((m|0)<=4){bs(r);return 1}l=p+12|0;m=(e|0)>0;h=a;a=1;while(1){if(h-d>>2>>>0<=a>>>0){Oq(g);d=f[g>>2]|0}d=f[d+(a<<2)>>2]|0;k=X(a,e)|0;if((d|0)>=0?(t=f[(f[l>>2]|0)+(d<<2)>>2]|0,(t|0)>=0):0){g=f[p>>2]|0;h=f[q>>2]|0;i=f[h+(f[g+(t<<2)>>2]<<2)>>2]|0;d=t+1|0;d=((d|0)%3|0|0)==0?t+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[g+(d<<2)>>2]|0;j=f[h+(d<<2)>>2]|0;d=(((t>>>0)%3|0|0)==0?2:-1)+t|0;if((d|0)<0)d=-1073741824;else d=f[g+(d<<2)>>2]|0;d=f[h+(d<<2)>>2]|0;if((i|0)<(a|0)&(j|0)<(a|0)&(d|0)<(a|0)){i=X(i,e)|0;h=X(j,e)|0;g=X(d,e)|0;if(m){d=0;do{f[r+(d<<2)>>2]=(f[c+(d+g<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+i<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}dj(s,r,b+(k<<2)|0,c+(k<<2)|0)}else u=16}else u=16;if((u|0)==16){u=0;dj(s,c+((X(a+-1|0,e)|0)<<2)|0,b+(k<<2)|0,c+(k<<2)|0)}a=a+1|0;if((a|0)>=(o|0))break;h=f[n>>2]|0;g=h;d=f[h>>2]|0;h=f[h+4>>2]|0}bs(r);return 1}function wf(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;m=p;k=Sa[f[(f[a>>2]|0)+24>>2]&255](a)|0;if((k|0)<=0){a=1;o=1;o=a|o;u=p;return o|0}j=a+36|0;l=a+48|0;b=0;while(1){i=(Sa[f[(f[a>>2]|0)+28>>2]&255](a)|0)+40|0;if(f[i>>2]|0){h=f[(f[(f[j>>2]|0)+(b<<2)>>2]|0)+8>>2]|0;g=(Sa[f[(f[a>>2]|0)+28>>2]&255](a)|0)+40|0;g=f[g>>2]|0;h=f[h+56>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;Jk(m,20134,24);i=g+16|0;d=f[i>>2]|0;if(d){c=i;e=d;a:while(1){d=e;while(1){if((f[d+16>>2]|0)>=(h|0))break;d=f[d+4>>2]|0;if(!d)break a}e=f[d>>2]|0;if(!e){c=d;break}else c=d}if(((c|0)!=(i|0)?(n=c+20|0,(h|0)>=(f[c+16>>2]|0)):0)?(Oi(n,m)|0)!=0:0)c=Pk(n,m,0)|0;else o=13}else o=13;if((o|0)==13){o=0;c=Pk(g,m,0)|0}Op(m);if(c){o=15;break}}i=f[(f[j>>2]|0)+(b<<2)>>2]|0;if(!(Wa[f[(f[i>>2]|0)+24>>2]&127](i,l)|0)){b=0;c=0;o=18;break}b=b+1|0;if((b|0)>=(k|0)){b=1;c=1;o=18;break}}if((o|0)==15){a=f[(f[j>>2]|0)+(b<<2)>>2]|0;o=f[a+8>>2]|0;Rf(o,Th(a)|0);a=0;o=1;o=a|o;u=p;return o|0}else if((o|0)==18){o=b|c;u=p;return o|0}return 0}function xf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var 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;p=f[a+32>>2]|0;q=f[a+36>>2]|0;s=e>>>0>1073741823?-1:e<<2;r=as(s)|0;_j(r|0,0,s|0)|0;s=a+8|0;$i(s,r,b,c);n=a+40|0;g=f[n>>2]|0;a=f[g+4>>2]|0;d=f[g>>2]|0;m=a-d|0;o=m>>2;if((m|0)<=4){bs(r);return 1}m=p+64|0;k=p+28|0;l=(e|0)>0;h=a;a=1;while(1){if(h-d>>2>>>0<=a>>>0){Oq(g);d=f[g>>2]|0}d=f[d+(a<<2)>>2]|0;j=X(a,e)|0;if((!((d|0)<0?1:(1<<(d&31)&f[(f[p>>2]|0)+(d>>>5<<2)>>2]|0)!=0)?(w=f[(f[(f[m>>2]|0)+12>>2]|0)+(d<<2)>>2]|0,(w|0)>=0):0)?(v=f[k>>2]|0,i=f[q>>2]|0,t=f[i+(f[v+(w<<2)>>2]<<2)>>2]|0,u=w+1|0,u=f[i+(f[v+((((u|0)%3|0|0)==0?w+-2|0:u)<<2)>>2]<<2)>>2]|0,v=f[i+(f[v+((((w>>>0)%3|0|0)==0?2:-1)+w<<2)>>2]<<2)>>2]|0,(t|0)<(a|0)&(u|0)<(a|0)&(v|0)<(a|0)):0){g=X(t,e)|0;h=X(u,e)|0;i=X(v,e)|0;if(l){d=0;do{f[r+(d<<2)>>2]=(f[c+(d+i<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+g<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}$i(s,r,b+(j<<2)|0,c+(j<<2)|0)}else $i(s,c+((X(a+-1|0,e)|0)<<2)|0,b+(j<<2)|0,c+(j<<2)|0);a=a+1|0;if((a|0)>=(o|0))break;h=f[n>>2]|0;g=h;d=f[h>>2]|0;h=f[h+4>>2]|0}bs(r);return 1}function yf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}f[d>>2]=b[c+e>>0];i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=((h[j>>0]|h[j+1>>0]<<8)&65535)<<24>>24;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}f[d>>2]=b[c+e>>0];j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)<<24>>24;j=1;return j|0}default:{j=0;return j|0}}return 0}function zf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0;switch(b[a+24>>0]|0){case 1:{c=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=I;a=f[a>>2]|0;c=f[a>>2]|0;if(!((g|0)<0|((g|0)==0?e>>>0<((f[a+4>>2]|0)-c|0)>>>0:0))){i=0;return i|0}f[d>>2]=h[c+e>>0];i=1;return i|0}case 2:{j=f[c>>2]|0;e=a+48|0;g=f[e>>2]|0;e=f[e+4>>2]|0;i=a+40|0;e=Kp(mo(f[i>>2]|0,f[i+4>>2]|0,j|0,((j|0)<0)<<31>>31|0)|0,I|0,g|0,e|0)|0;g=Kp(e|0,I|0,2,0)|0;j=I;i=f[a>>2]|0;c=f[i>>2]|0;if((j|0)>0|((j|0)==0?g>>>0>((f[i+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=(h[j>>0]|h[j+1>>0]<<8)&255;j=1;return j|0}case 3:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,3,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}f[d>>2]=h[c+e>>0];j=1;return j|0}case 4:{g=f[c>>2]|0;e=a+48|0;i=f[e>>2]|0;e=f[e+4>>2]|0;j=a+40|0;e=Kp(mo(f[j>>2]|0,f[j+4>>2]|0,g|0,((g|0)<0)<<31>>31|0)|0,I|0,i|0,e|0)|0;i=Kp(e|0,I|0,4,0)|0;g=I;j=f[a>>2]|0;c=f[j>>2]|0;if((g|0)>0|((g|0)==0?i>>>0>((f[j+4>>2]|0)-c|0)>>>0:0)){j=0;return j|0}j=c+e|0;f[d>>2]=(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24)&255;j=1;return j|0}default:{j=0;return j|0}}return 0}function Af(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=(c|0)==(a|0);b[c+12>>0]=i&1;if(i)return;while(1){h=f[c+8>>2]|0;g=h+12|0;if(b[g>>0]|0){e=23;break}i=h+8|0;d=f[i>>2]|0;e=f[d>>2]|0;if((e|0)==(h|0)){e=f[d+4>>2]|0;if(!e){e=7;break}e=e+12|0;if(!(b[e>>0]|0))c=e;else{e=7;break}}else{if(!e){e=16;break}e=e+12|0;if(!(b[e>>0]|0))c=e;else{e=16;break}}b[g>>0]=1;i=(d|0)==(a|0);b[d+12>>0]=i&1;b[c>>0]=1;if(i){e=23;break}else c=d}if((e|0)==7){if((f[h>>2]|0)==(c|0))c=h;else{a=h+4|0;c=f[a>>2]|0;e=f[c>>2]|0;f[a>>2]=e;if(e){f[e+8>>2]=h;d=f[i>>2]|0}a=c+8|0;f[a>>2]=d;d=f[i>>2]|0;f[((f[d>>2]|0)==(h|0)?d:d+4|0)>>2]=c;f[c>>2]=h;f[i>>2]=c;d=f[a>>2]|0}b[c+12>>0]=1;b[d+12>>0]=0;c=f[d>>2]|0;g=c+4|0;e=f[g>>2]|0;f[d>>2]=e;if(e|0)f[e+8>>2]=d;i=d+8|0;f[c+8>>2]=f[i>>2];h=f[i>>2]|0;f[((f[h>>2]|0)==(d|0)?h:h+4|0)>>2]=c;f[g>>2]=d;f[i>>2]=c;return}else if((e|0)==16){if((f[h>>2]|0)==(c|0)){c=f[h>>2]|0;g=c+4|0;e=f[g>>2]|0;f[h>>2]=e;if(e){f[e+8>>2]=h;d=f[i>>2]|0}e=c+8|0;f[e>>2]=d;a=f[i>>2]|0;f[((f[a>>2]|0)==(h|0)?a:a+4|0)>>2]=c;f[g>>2]=h;f[i>>2]=c;e=f[e>>2]|0}else{c=h;e=d}b[c+12>>0]=1;b[e+12>>0]=0;i=e+4|0;c=f[i>>2]|0;d=f[c>>2]|0;f[i>>2]=d;if(d|0)f[d+8>>2]=e;i=e+8|0;f[c+8>>2]=f[i>>2];h=f[i>>2]|0;f[((f[h>>2]|0)==(e|0)?h:h+4|0)>>2]=c;f[c>>2]=e;f[i>>2]=c;return}else if((e|0)==23)return}function Bf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;n=o+4|0;m=o;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;p=Kp(g|0,j|0,4,0)|0;q=I;if((k|0)<(q|0)|(k|0)==(q|0)&e>>>0

>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;q=Kp(g|0,j|0,4,0)|0;p=I;if((i|0)<(p|0)|(i|0)==(p|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;p=l;p=Kp(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=l;f[q>>2]=p;f[q+4>>2]=I}if(!e){q=1;u=o;return q|0}if(!(Ig(a+12|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+32|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+52|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+72|0,c)|0)){q=0;u=o;return q|0}q=f[k>>2]|0;f[m>>2]=f[d>>2];f[n>>2]=f[m>>2];hb(a,q,n);q=1;u=o;return q|0}function Cf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;n=o+4|0;m=o;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;p=Kp(g|0,j|0,4,0)|0;q=I;if((k|0)<(q|0)|(k|0)==(q|0)&e>>>0

>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;q=Kp(g|0,j|0,4,0)|0;p=I;if((i|0)<(p|0)|(i|0)==(p|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;p=l;p=Kp(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=l;f[q>>2]=p;f[q+4>>2]=I}if(!e){q=1;u=o;return q|0}if(!(Ig(a+12|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+32|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+52|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+72|0,c)|0)){q=0;u=o;return q|0}q=f[k>>2]|0;f[m>>2]=f[d>>2];f[n>>2]=f[m>>2];fb(a,q,n);q=1;u=o;return q|0}function Df(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;n=o+4|0;m=o;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;p=Kp(g|0,j|0,4,0)|0;q=I;if((k|0)<(q|0)|(k|0)==(q|0)&e>>>0

>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;q=Kp(g|0,j|0,4,0)|0;p=I;if((i|0)<(p|0)|(i|0)==(p|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;p=l;p=Kp(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=l;f[q>>2]=p;f[q+4>>2]=I}if(!e){q=1;u=o;return q|0}if(!(xg(a+12|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+28|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+48|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+68|0,c)|0)){q=0;u=o;return q|0}q=f[k>>2]|0;f[m>>2]=f[d>>2];f[n>>2]=f[m>>2];ub(a,q,n);q=1;u=o;return q|0}function Ef(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;n=o+4|0;m=o;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;p=Kp(g|0,j|0,4,0)|0;q=I;if((k|0)<(q|0)|(k|0)==(q|0)&e>>>0

>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;q=Kp(g|0,j|0,4,0)|0;p=I;if((i|0)<(p|0)|(i|0)==(p|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;p=l;p=Kp(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=l;f[q>>2]=p;f[q+4>>2]=I}if(!e){q=1;u=o;return q|0}if(!(xg(a+12|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+28|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+48|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+68|0,c)|0)){q=0;u=o;return q|0}q=f[k>>2]|0;f[m>>2]=f[d>>2];f[n>>2]=f[m>>2];tb(a,q,n);q=1;u=o;return q|0}function Ff(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var 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;p=f[a+32>>2]|0;q=f[a+36>>2]|0;s=e>>>0>1073741823?-1:e<<2;r=as(s)|0;_j(r|0,0,s|0)|0;s=a+8|0;dj(s,r,b,c);n=a+40|0;g=f[n>>2]|0;a=f[g+4>>2]|0;d=f[g>>2]|0;m=a-d|0;o=m>>2;if((m|0)<=4){bs(r);return 1}m=p+64|0;k=p+28|0;l=(e|0)>0;h=a;a=1;while(1){if(h-d>>2>>>0<=a>>>0){Oq(g);d=f[g>>2]|0}d=f[d+(a<<2)>>2]|0;j=X(a,e)|0;if((!((d|0)<0?1:(1<<(d&31)&f[(f[p>>2]|0)+(d>>>5<<2)>>2]|0)!=0)?(w=f[(f[(f[m>>2]|0)+12>>2]|0)+(d<<2)>>2]|0,(w|0)>=0):0)?(v=f[k>>2]|0,i=f[q>>2]|0,t=f[i+(f[v+(w<<2)>>2]<<2)>>2]|0,u=w+1|0,u=f[i+(f[v+((((u|0)%3|0|0)==0?w+-2|0:u)<<2)>>2]<<2)>>2]|0,v=f[i+(f[v+((((w>>>0)%3|0|0)==0?2:-1)+w<<2)>>2]<<2)>>2]|0,(t|0)<(a|0)&(u|0)<(a|0)&(v|0)<(a|0)):0){g=X(t,e)|0;h=X(u,e)|0;i=X(v,e)|0;if(l){d=0;do{f[r+(d<<2)>>2]=(f[c+(d+i<<2)>>2]|0)+(f[c+(d+h<<2)>>2]|0)-(f[c+(d+g<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0))}dj(s,r,b+(j<<2)|0,c+(j<<2)|0)}else dj(s,c+((X(a+-1|0,e)|0)<<2)|0,b+(j<<2)|0,c+(j<<2)|0);a=a+1|0;if((a|0)>=(o|0))break;h=f[n>>2]|0;g=h;d=f[h>>2]|0;h=f[h+4>>2]|0}bs(r);return 1}function Gf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+16|0;p=q;i=b+8|0;g=i;j=f[g>>2]|0;g=f[g+4>>2]|0;o=b+16|0;d=o;c=f[d>>2]|0;d=Kp(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((g|0)<(e|0)|(g|0)==(e|0)&j>>>0>>0){p=0;u=q;return p|0}g=(f[b>>2]|0)+c|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;j=o;f[j>>2]=d;f[j+4>>2]=e;if((g|0)<0){p=0;u=q;return p|0}sf(a+76|0,g,0);Ar(p);if(xg(p,b)|0){if((g|0)>0){c=a+76|0;d=0;e=1;do{e=e^((Cl(p)|0)^1);j=(f[c>>2]|0)+(d>>>5<<2)|0;r=1<<(d&31);s=f[j>>2]|0;f[j>>2]=e?s|r:s&~r;d=d+1|0}while((d|0)<(g|0))}d=i;c=f[d>>2]|0;d=f[d+4>>2]|0;g=o;e=f[g>>2]|0;g=f[g+4>>2]|0;i=Kp(e|0,g|0,4,0)|0;j=I;if(!((d|0)<(j|0)|(d|0)==(j|0)&c>>>0>>0)?(k=f[b>>2]|0,l=k+e|0,l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24,m=o,f[m>>2]=i,f[m+4>>2]=j,m=Kp(e|0,g|0,8,0)|0,n=I,!((d|0)<(n|0)|(d|0)==(n|0)&c>>>0>>0)):0){s=k+i|0;s=h[s>>0]|h[s+1>>0]<<8|h[s+2>>0]<<16|h[s+3>>0]<<24;c=o;f[c>>2]=m;f[c+4>>2]=n;f[a+12>>2]=l;f[a+16>>2]=s;s=s+(1-l)|0;f[a+20>>2]=s;c=(s|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(s&1)){f[d>>2]=c+-1;c=1}else c=1}else c=0}else c=0;is(p);s=c;u=q;return s|0}function Hf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;n=o+8|0;m=o;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;p=Kp(g|0,j|0,4,0)|0;q=I;if((k|0)<(q|0)|(k|0)==(q|0)&e>>>0

>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;q=Kp(g|0,j|0,4,0)|0;p=I;if((i|0)<(p|0)|(i|0)==(p|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;p=l;p=Kp(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=l;f[q>>2]=p;f[q+4>>2]=I}if(!e){q=1;u=o;return q|0}if(!(Ig(a+12|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+32|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+52|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+72|0,c)|0)){q=0;u=o;return q|0}q=f[k>>2]|0;c=d;d=f[c+4>>2]|0;p=m;f[p>>2]=f[c>>2];f[p+4>>2]=d;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];gb(a,q,n);q=1;u=o;return q|0}function If(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;n=o+8|0;m=o;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;p=Kp(g|0,j|0,4,0)|0;q=I;if((k|0)<(q|0)|(k|0)==(q|0)&e>>>0

>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;q=Kp(g|0,j|0,4,0)|0;p=I;if((i|0)<(p|0)|(i|0)==(p|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;p=l;p=Kp(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=l;f[q>>2]=p;f[q+4>>2]=I}if(!e){q=1;u=o;return q|0}if(!(Ig(a+12|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+32|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+52|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+72|0,c)|0)){q=0;u=o;return q|0}q=f[k>>2]|0;c=d;d=f[c+4>>2]|0;p=m;f[p>>2]=f[c>>2];f[p+4>>2]=d;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];eb(a,q,n);q=1;u=o;return q|0}function Jf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;n=o+8|0;m=o;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;p=Kp(g|0,j|0,4,0)|0;q=I;if((k|0)<(q|0)|(k|0)==(q|0)&e>>>0

>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;q=Kp(g|0,j|0,4,0)|0;p=I;if((i|0)<(p|0)|(i|0)==(p|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;p=l;p=Kp(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=l;f[q>>2]=p;f[q+4>>2]=I}if(!e){q=1;u=o;return q|0}if(!(xg(a+12|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+28|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+48|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+68|0,c)|0)){q=0;u=o;return q|0}q=f[k>>2]|0;c=d;d=f[c+4>>2]|0;p=m;f[p>>2]=f[c>>2];f[p+4>>2]=d;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];sb(a,q,n);q=1;u=o;return q|0}function Kf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=u;u=u+16|0;n=o+8|0;m=o;i=c+8|0;k=i;e=f[k>>2]|0;k=f[k+4>>2]|0;l=c+16|0;j=l;g=f[j>>2]|0;j=f[j+4>>2]|0;p=Kp(g|0,j|0,4,0)|0;q=I;if((k|0)<(q|0)|(k|0)==(q|0)&e>>>0

>>0)i=k;else{g=(f[c>>2]|0)+g|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;b[a>>0]=g;b[a+1>>0]=g>>8;b[a+2>>0]=g>>16;b[a+3>>0]=g>>24;g=l;g=Kp(f[g>>2]|0,f[g+4>>2]|0,4,0)|0;j=I;e=l;f[e>>2]=g;f[e+4>>2]=j;e=i;i=f[e+4>>2]|0;e=f[e>>2]|0}k=a+4|0;q=Kp(g|0,j|0,4,0)|0;p=I;if((i|0)<(p|0)|(i|0)==(p|0)&e>>>0>>0)e=f[k>>2]|0;else{e=(f[c>>2]|0)+g|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[k>>0]=e;b[k+1>>0]=e>>8;b[k+2>>0]=e>>16;b[k+3>>0]=e>>24;p=l;p=Kp(f[p>>2]|0,f[p+4>>2]|0,4,0)|0;q=l;f[q>>2]=p;f[q+4>>2]=I}if(!e){q=1;u=o;return q|0}if(!(xg(a+12|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+28|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+48|0,c)|0)){q=0;u=o;return q|0}if(!(Ig(a+68|0,c)|0)){q=0;u=o;return q|0}q=f[k>>2]|0;c=d;d=f[c+4>>2]|0;p=m;f[p>>2]=f[c>>2];f[p+4>>2]=d;f[n>>2]=f[m>>2];f[n+4>>2]=f[m+4>>2];rb(a,q,n);q=1;u=o;return q|0}function Lf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=u;u=u+16|0;p=q;i=b+8|0;g=i;j=f[g>>2]|0;g=f[g+4>>2]|0;o=b+16|0;d=o;c=f[d>>2]|0;d=Kp(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((g|0)<(e|0)|(g|0)==(e|0)&j>>>0>>0){p=0;u=q;return p|0}g=(f[b>>2]|0)+c|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;j=o;f[j>>2]=d;f[j+4>>2]=e;if((g|0)<0){p=0;u=q;return p|0}e=a+76|0;sf(e,g,0);Ar(p);if(xg(p,b)|0){if((g|0)>0){c=0;d=1;do{d=d^((Cl(p)|0)^1);j=(f[e>>2]|0)+(c>>>5<<2)|0;r=1<<(c&31);s=f[j>>2]|0;f[j>>2]=d?s|r:s&~r;c=c+1|0}while((c|0)<(g|0))}d=i;c=f[d>>2]|0;d=f[d+4>>2]|0;g=o;e=f[g>>2]|0;g=f[g+4>>2]|0;i=Kp(e|0,g|0,4,0)|0;j=I;if(!((d|0)<(j|0)|(d|0)==(j|0)&c>>>0>>0)?(k=f[b>>2]|0,l=k+e|0,l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24,m=o,f[m>>2]=i,f[m+4>>2]=j,m=Kp(e|0,g|0,8,0)|0,n=I,!((d|0)<(n|0)|(d|0)==(n|0)&c>>>0>>0)):0){s=k+i|0;s=h[s>>0]|h[s+1>>0]<<8|h[s+2>>0]<<16|h[s+3>>0]<<24;c=o;f[c>>2]=m;f[c+4>>2]=n;f[a+12>>2]=l;f[a+16>>2]=s;s=s+(1-l)|0;f[a+20>>2]=s;c=(s|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(s&1)){f[d>>2]=c+-1;c=1}else c=1}else c=0}else c=0;is(p);s=c;u=q;return s|0}function Mf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+16|0;k=m;if(!(ic(a,c)|0)){a=0;u=m;return a|0}j=Sa[f[(f[a>>2]|0)+24>>2]&255](a)|0;l=a+36|0;h=a+40|0;d=f[h>>2]|0;e=f[l>>2]|0;g=d-e>>2;if(j>>>0<=g>>>0){if(j>>>0>>0?(i=e+(j<<2)|0,(d|0)!=(i|0)):0)do{g=d+-4|0;f[h>>2]=g;d=f[g>>2]|0;f[g>>2]=0;if(d|0)Pa[f[(f[d>>2]|0)+4>>2]&255](d);d=f[h>>2]|0}while((d|0)!=(i|0))}else $g(l,j-g|0);g=c+8|0;if((j|0)<=0){a=1;u=m;return a|0}i=c+16|0;h=0;while(1){n=g;o=f[n+4>>2]|0;e=i;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((o|0)>(e|0)|((o|0)==(e|0)?(f[n>>2]|0)>>>0>d>>>0:0))){d=0;e=19;break}o=b[(f[c>>2]|0)+d>>0]|0;d=Kp(d|0,e|0,1,0)|0;n=i;f[n>>2]=d;f[n+4>>2]=I;Ta[f[(f[a>>2]|0)+48>>2]&15](k,a,o);o=(f[l>>2]|0)+(h<<2)|0;n=f[k>>2]|0;f[k>>2]=0;d=f[o>>2]|0;f[o>>2]=n;if(d|0)Pa[f[(f[d>>2]|0)+4>>2]&255](d);d=f[k>>2]|0;f[k>>2]=0;if(d|0)Pa[f[(f[d>>2]|0)+4>>2]&255](d);d=f[(f[l>>2]|0)+(h<<2)>>2]|0;if(!d){d=0;e=19;break}e=f[(f[d>>2]|0)+8>>2]|0;n=Sa[f[(f[a>>2]|0)+28>>2]&255](a)|0;o=Wa[f[(f[a>>2]|0)+20>>2]&127](a,h)|0;h=h+1|0;if(!(Na[e&31](d,n,o)|0)){d=0;e=19;break}if((h|0)>=(j|0)){d=1;e=19;break}}if((e|0)==19){u=m;return d|0}return 0}function Nf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+144|0;i=n+136|0;m=n+32|0;l=n;e=f[(f[c+4>>2]|0)+44>>2]|0;h=no(124)|0;f[h+4>>2]=0;f[h>>2]=4676;f[h+12>>2]=4700;f[h+100>>2]=0;f[h+104>>2]=0;f[h+108>>2]=0;j=h+16|0;k=j+80|0;do{f[j>>2]=0;j=j+4|0}while((j|0)<(k|0));f[h+112>>2]=e;f[h+116>>2]=d;f[h+120>>2]=0;g=h;f[m+4>>2]=4700;f[m+92>>2]=0;f[m+96>>2]=0;f[m+100>>2]=0;j=m+8|0;k=j+80|0;do{f[j>>2]=0;j=j+4|0}while((j|0)<(k|0));k=f[c+8>>2]|0;f[l>>2]=4700;j=l+4|0;c=j+4|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;c=k;f[j>>2]=c;c=((f[c+4>>2]|0)-(f[k>>2]|0)>>2>>>0)/3|0;b[i>>0]=0;Rh(l+8|0,c,i);Pa[f[(f[l>>2]|0)+8>>2]&255](l);f[m>>2]=f[j>>2];dh(m+4|0,l)|0;f[m+36>>2]=k;f[m+40>>2]=d;f[m+44>>2]=e;f[m+48>>2]=h;hh(h,m);f[a>>2]=g;f[l>>2]=4700;e=f[l+20>>2]|0;if(e|0)ds(e);e=f[l+8>>2]|0;if(!e){zj(m);u=n;return}ds(e);zj(m);u=n;return}function Of(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;q=v+4|0;r=v;d=f[b>>2]|0;f[q>>2]=d;n=a+8|0;c=(d|0)<0;b=d+1|0;do if(!c){f[q+4>>2]=((b|0)%3|0|0)==0?d+-2|0:b;if(!((d>>>0)%3|0)){b=d+2|0;break}else{b=d+-1|0;break}}else{f[q+4>>2]=d;b=d}while(0);f[q+8>>2]=b;m=c?-1073741824:(d>>>0)/3|0;l=a+224|0;k=a+228|0;j=a+320|0;b=0;while(1){if((d|0)>=0?(s=f[(f[(f[n>>2]|0)+12>>2]|0)+(d<<2)>>2]|0,(s|0)>=0):0){if(((s>>>0)/3|0|0)>=(m|0)?(f[k>>2]|0)!=(f[l>>2]|0):0){g=0;do{if(Cl((f[j>>2]|0)+(g<<4)|0)|0){c=f[l>>2]|0;f[r>>2]=d;e=c+(g*116|0)+108|0;a=f[e>>2]|0;if(a>>>0<(f[c+(g*116|0)+112>>2]|0)>>>0){f[a>>2]=d;f[e>>2]=a+4}else Bj(c+(g*116|0)+104|0,r)}g=g+1|0}while(g>>>0<(((f[k>>2]|0)-(f[l>>2]|0)|0)/116|0)>>>0)}}else t=10;if((t|0)==10?(t=0,o=f[k>>2]|0,p=f[l>>2]|0,(o|0)!=(p|0)):0){c=o;a=p;i=0;do{g=a;f[r>>2]=d;h=g+(i*116|0)+108|0;e=f[h>>2]|0;if(e>>>0<(f[g+(i*116|0)+112>>2]|0)>>>0){f[e>>2]=d;f[h>>2]=e+4}else{Bj(g+(i*116|0)+104|0,r);a=f[l>>2]|0;c=f[k>>2]|0}i=i+1|0}while(i>>>0<((c-a|0)/116|0)>>>0)}b=b+1|0;if((b|0)==3)break;d=f[q+(b<<2)>>2]|0}u=v;return 1}function Pf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;q=v+4|0;r=v;d=f[b>>2]|0;f[q>>2]=d;n=a+8|0;c=(d|0)<0;b=d+1|0;do if(!c){f[q+4>>2]=((b|0)%3|0|0)==0?d+-2|0:b;if(!((d>>>0)%3|0)){b=d+2|0;break}else{b=d+-1|0;break}}else{f[q+4>>2]=d;b=d}while(0);f[q+8>>2]=b;m=c?-1073741824:(d>>>0)/3|0;l=a+224|0;k=a+228|0;j=a+320|0;b=0;while(1){if((d|0)>=0?(s=f[(f[(f[n>>2]|0)+12>>2]|0)+(d<<2)>>2]|0,(s|0)>=0):0){if(((s>>>0)/3|0|0)>=(m|0)?(f[k>>2]|0)!=(f[l>>2]|0):0){g=0;do{if(Cl((f[j>>2]|0)+(g<<4)|0)|0){c=f[l>>2]|0;f[r>>2]=d;e=c+(g*116|0)+108|0;a=f[e>>2]|0;if(a>>>0<(f[c+(g*116|0)+112>>2]|0)>>>0){f[a>>2]=d;f[e>>2]=a+4}else Bj(c+(g*116|0)+104|0,r)}g=g+1|0}while(g>>>0<(((f[k>>2]|0)-(f[l>>2]|0)|0)/116|0)>>>0)}}else t=10;if((t|0)==10?(t=0,o=f[k>>2]|0,p=f[l>>2]|0,(o|0)!=(p|0)):0){c=o;a=p;i=0;do{e=a;f[r>>2]=d;h=e+(i*116|0)+108|0;g=f[h>>2]|0;if(g>>>0<(f[e+(i*116|0)+112>>2]|0)>>>0){f[g>>2]=d;f[h>>2]=g+4}else{Bj(e+(i*116|0)+104|0,r);a=f[l>>2]|0;c=f[k>>2]|0}i=i+1|0}while(i>>>0<((c-a|0)/116|0)>>>0)}b=b+1|0;if((b|0)==3)break;d=f[q+(b<<2)>>2]|0}u=v;return 1}function Qf(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=La,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=La,y=La,z=La,A=La,B=0,C=0;w=u;u=u+32|0;t=w+16|0;v=w;h=$(n[e+4>>2]);if(!(h>=$(0.0)))Ga(6732,6752,66,6873);s=(1<>2])+-1|0;zq(t);Ho(t,h,s);e=f[c>>2]|0;if((e|0)==(f[d>>2]|0)){t=g;t=f[t>>2]|0;g=g+4|0;g=f[g>>2]|0;v=a;d=v;f[d>>2]=t;v=v+4|0;f[v>>2]=g;u=w;return}p=t+4|0;q=v+4|0;r=v+8|0;j=g+4|0;l=f[g>>2]|0;o=l+84|0;k=l+68|0;m=l+40|0;l=l+64|0;i=f[j>>2]|0;do{B=(f[e>>2]|0)-s|0;c=(B|0)<0;y=$((c?0-B|0:B)|0);h=$(n[p>>2]);y=$(h*y);x=$(-y);A=$(n[t>>2]);y=$(A*(c?x:y));c=(f[e+4>>2]|0)-s|0;B=(c|0)<0;x=$(h*$((B?0-c|0:c)|0));z=$(-x);x=$(A*(B?z:x));B=(f[e+8>>2]|0)-s|0;c=(B|0)<0;h=$(h*$((c?0-B|0:B)|0));z=$(-h);h=$(A*(c?z:h));n[v>>2]=y;n[q>>2]=x;n[r>>2]=h;c=i;i=i+1|0;f[j>>2]=i;if(!(b[o>>0]|0))c=f[(f[k>>2]|0)+(c<<2)>>2]|0;C=m;B=f[C>>2]|0;c=mo(c|0,((c|0)<0)<<31>>31|0,B|0,f[C+4>>2]|0)|0;Fh((f[f[l>>2]>>2]|0)+c|0,v|0,B|0)|0;e=e+12|0}while((e|0)!=(f[d>>2]|0));B=g;g=B;g=f[g>>2]|0;B=B+4|0;B=f[B>>2]|0;C=a;v=C;f[v>>2]=g;C=C+4|0;f[C>>2]=B;u=w;return}function Rf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!(f[a+64>>2]|0)){d=no(32)|0;zo(d);h=a+64|0;g=f[h>>2]|0;f[h>>2]=d;if(g){d=f[g>>2]|0;if(d|0){e=g+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;ds(d)}ds(g);d=f[h>>2]|0}ul(a,d,0,0,0,0);d=a}else d=a;if(!(Uj(d,c)|0))return;b[a+84>>0]=b[c+84>>0]|0;f[a+80>>2]=f[c+80>>2];if((a|0)!=(c|0))Eg(a+68|0,f[c+68>>2]|0,f[c+72>>2]|0);i=f[c+88>>2]|0;if(!i){a=a+88|0;d=f[a>>2]|0;f[a>>2]=0;if(!d)return;e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;ds(e)}ds(d);return}l=no(40)|0;f[l>>2]=f[i>>2];e=l+8|0;g=i+8|0;f[e>>2]=0;j=l+12|0;f[j>>2]=0;d=l+16|0;f[d>>2]=0;c=i+12|0;h=(f[c>>2]|0)-(f[g>>2]|0)|0;if(h|0){if((h|0)<0)Pq(e);k=no(h)|0;f[j>>2]=k;f[e>>2]=k;f[d>>2]=k+h;e=f[g>>2]|0;d=(f[c>>2]|0)-e|0;if((d|0)>0){Fh(k|0,e|0,d|0)|0;f[j>>2]=k+d}}g=l+24|0;k=i+24|0;f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[g+12>>2]=f[k+12>>2];a=a+88|0;g=f[a>>2]|0;f[a>>2]=l;if(!g)return;d=f[g+8>>2]|0;if(d|0){e=g+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;ds(d)}ds(g);return}function Sf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;f[a>>2]=b;break a}case 10:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=0;break a}case 12:{d=(f[c>>2]|0)+(8-1)&~(8-1);b=d;e=f[b>>2]|0;b=f[b+4>>2]|0;f[c>>2]=d+8;d=a;f[d>>2]=e;f[d+4>>2]=b;break a}case 13:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&65535;f[e+4>>2]=0;break a}case 15:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&255)<<24>>24;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&255;f[e+4>>2]=0;break a}case 17:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}case 18:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}default:break a}while(0);while(0);return}function Tf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;m=n;l=n+16|0;h=f[b+4>>2]|0;if((d|0)<=-1)Ga(22609,22625,58,22717);i=f[h+8>>2]|0;if(((f[h+12>>2]|0)-i>>2|0)<=(d|0))Ga(22727,22625,59,22717);i=f[i+(d<<2)>>2]|0;do if((c+-1|0)>>>0<6&(Sa[f[(f[b>>2]|0)+8>>2]&255](b)|0)==1){j=Sa[f[(f[b>>2]|0)+36>>2]&255](b)|0;k=Wa[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((j|0)==0|(k|0)==0){f[a>>2]=0;u=n;return}h=Wa[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;if(!h){f[m>>2]=f[b+44>>2];f[m+4>>2]=j;f[m+12>>2]=k;f[m+8>>2]=k+12;Lc(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}else{f[m>>2]=f[b+44>>2];f[m+4>>2]=h;f[m+12>>2]=k;f[m+8>>2]=k+12;Jc(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}}while(0);f[a>>2]=0;u=n;return}function Uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;p=s+4|0;q=s;c=f[b>>2]|0;f[p>>2]=c;m=a+8|0;b=c+1|0;do if((c|0)>=0){f[p+4>>2]=((b|0)%3|0|0)==0?c+-2|0:b;if(!((c>>>0)%3|0)){b=c+2|0;break}else{b=c+-1|0;break}}else{f[p+4>>2]=c;b=c}while(0);f[p+8>>2]=b;l=a+224|0;k=a+228|0;j=a+320|0;b=0;while(1){if((c|0)>=0?(f[(f[(f[m>>2]|0)+12>>2]|0)+(c<<2)>>2]|0)>=0:0){if((f[k>>2]|0)!=(f[l>>2]|0)){g=0;do{if(Cl((f[j>>2]|0)+(g<<4)|0)|0){a=f[l>>2]|0;f[q>>2]=c;e=a+(g*116|0)+108|0;d=f[e>>2]|0;if(d>>>0<(f[a+(g*116|0)+112>>2]|0)>>>0){f[d>>2]=c;f[e>>2]=d+4}else Bj(a+(g*116|0)+104|0,q)}g=g+1|0}while(g>>>0<(((f[k>>2]|0)-(f[l>>2]|0)|0)/116|0)>>>0)}}else r=11;if((r|0)==11?(r=0,n=f[k>>2]|0,o=f[l>>2]|0,(n|0)!=(o|0)):0){a=o;d=n;i=0;do{e=a;f[q>>2]=c;h=e+(i*116|0)+108|0;g=f[h>>2]|0;if(g>>>0<(f[e+(i*116|0)+112>>2]|0)>>>0){f[g>>2]=c;f[h>>2]=g+4}else{Bj(e+(i*116|0)+104|0,q);a=f[l>>2]|0;d=f[k>>2]|0}i=i+1|0}while(i>>>0<((d-a|0)/116|0)>>>0)}b=b+1|0;if((b|0)==3)break;c=f[p+(b<<2)>>2]|0}u=s;return 1}function Vf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;m=n;l=n+16|0;h=f[b+4>>2]|0;if((d|0)<=-1)Ga(22609,22625,58,22717);i=f[h+8>>2]|0;if(((f[h+12>>2]|0)-i>>2|0)<=(d|0))Ga(22727,22625,59,22717);i=f[i+(d<<2)>>2]|0;do if((c+-1|0)>>>0<6&(Sa[f[(f[b>>2]|0)+8>>2]&255](b)|0)==1){j=Sa[f[(f[b>>2]|0)+36>>2]&255](b)|0;k=Wa[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((j|0)==0|(k|0)==0){f[a>>2]=0;u=n;return}h=Wa[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;if(!h){f[m>>2]=f[b+44>>2];f[m+4>>2]=j;f[m+12>>2]=k;f[m+8>>2]=k+12;Nc(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}else{f[m>>2]=f[b+44>>2];f[m+4>>2]=h;f[m+12>>2]=k;f[m+8>>2]=k+12;Mc(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}}while(0);f[a>>2]=0;u=n;return}function Wf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;m=o+12|0;l=o;d=b*3|0;f[m>>2]=0;n=m+4|0;f[n>>2]=0;f[m+8>>2]=0;do if(b)if(d>>>0>1073741823){Pq(m);o=Ia(4)|0;Hr(o);sa(o|0,1488,137)}else{j=b*12|0;c=no(j)|0;f[m>>2]=c;k=c+(d<<2)|0;f[m+8>>2]=k;_j(c|0,0,j|0)|0;f[n>>2]=k;break}else c=0;while(0);if(Sj(d,1,f[a+32>>2]|0,c)|0)if((b|0)>0){h=a+44|0;i=l+4|0;j=l+8|0;e=0;g=0;k=0;while(1){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;d=f[m>>2]|0;p=f[d+(k<<2)>>2]|0;c=p>>>1;c=((p&1|0)==0?c:0-c|0)+g|0;f[l>>2]=c;p=f[d+(k+1<<2)>>2]|0;a=p>>>1;c=((p&1|0)==0?a:0-a|0)+c|0;f[i>>2]=c;d=f[d+(k+2<<2)>>2]|0;a=d>>>1;g=((d&1|0)==0?a:0-a|0)+c|0;f[j>>2]=g;c=f[h>>2]|0;a=c+100|0;d=f[a>>2]|0;if((d|0)==(f[c+104>>2]|0))hj(c+96|0,l);else{f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[a>>2]=(f[a>>2]|0)+12}e=e+1|0;if((e|0)>=(b|0)){a=1;break}else k=k+3|0}}else a=1;else a=0;c=f[m>>2]|0;if(!c){u=o;return a|0}d=f[n>>2]|0;if((d|0)!=(c|0))f[n>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c);u=o;return a|0}function Xf(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;m=n;l=n+16|0;h=f[b+4>>2]|0;if((d|0)<=-1)Ga(22609,22625,58,22717);i=f[h+8>>2]|0;if(((f[h+12>>2]|0)-i>>2|0)<=(d|0))Ga(22727,22625,59,22717);i=f[i+(d<<2)>>2]|0;do if((c+-1|0)>>>0<6&(Sa[f[(f[b>>2]|0)+8>>2]&255](b)|0)==1){j=Sa[f[(f[b>>2]|0)+36>>2]&255](b)|0;k=Wa[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((j|0)==0|(k|0)==0){f[a>>2]=0;u=n;return}h=Wa[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;if(!h){f[m>>2]=f[b+44>>2];f[m+4>>2]=j;f[m+12>>2]=k;f[m+8>>2]=k+12;oc(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}else{f[m>>2]=f[b+44>>2];f[m+4>>2]=h;f[m+12>>2]=k;f[m+8>>2]=k+12;nc(a,l,c,i,e,m,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}}while(0);f[a>>2]=0;u=n;return}function Yf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=Xb(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=Nd(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=kd(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=id(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=Qc(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=Rc(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=Ic(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function Zf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=fc(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=Vd(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=Jd(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=Gd(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=dd(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=hd(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=Vc(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function _f(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=mc(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=ye(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=Wd(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=Ud(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=Md(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=Pd(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=Ad(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function $f(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=fd(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=qf(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=Qe(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=Oe(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=fe(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=Le(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=we(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function ag(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=vc(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=ze(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=xe(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=Rd(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=Qd(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=Ge(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=Ge(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function bg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=Gc(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=Me(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=Ke(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=_d(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=Yd(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=Pe(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=Pe(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function cg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=bd(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=mf(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=cf(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=ue(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=Ie(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=Ed(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=Ed(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function dg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=Xd(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=zf(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=yf(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=nf(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=lf(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=Ve(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=Ve(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function eg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=Ee(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=Xc(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=Tc(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=Hc(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=Fc(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=wc(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=xc(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function fg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=Ne(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=gd(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=ad(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=Pc(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=Oc(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=Ac(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=Ec(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=Dd(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=Cd(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=zd(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=cd(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=$c(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=Uc(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=Wc(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function hg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;i=m+28|0;d=m+24|0;j=m+20|0;k=m+16|0;l=m+12|0;e=m+8|0;g=m+4|0;h=m;if(!c){a=0;u=m;return a|0}switch(f[a+28>>2]|0){case 9:{f[d>>2]=f[b>>2];f[i>>2]=f[d>>2];a=Ve(a,i,c)|0;u=m;return a|0}case 2:{f[j>>2]=f[b>>2];f[i>>2]=f[j>>2];a=He(a,i,c)|0;u=m;return a|0}case 1:{f[k>>2]=f[b>>2];f[i>>2]=f[k>>2];a=De(a,i,c)|0;u=m;return a|0}case 4:{f[l>>2]=f[b>>2];f[i>>2]=f[l>>2];a=re(a,i,c)|0;u=m;return a|0}case 3:{f[e>>2]=f[b>>2];f[i>>2]=f[e>>2];a=he(a,i,c)|0;u=m;return a|0}case 6:{f[g>>2]=f[b>>2];f[i>>2]=f[g>>2];a=$d(a,i,c)|0;u=m;return a|0}case 5:{f[h>>2]=f[b>>2];f[i>>2]=f[h>>2];a=ae(a,i,c)|0;u=m;return a|0}default:{a=0;u=m;return a|0}}return 0}function ig(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h+12|0;c=h;g=no(52)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;n[g+16>>2]=$(1.0);d=g+20|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;n[g+36>>2]=$(1.0);f[g+40>>2]=0;f[g+44>>2]=0;f[g+48>>2]=0;d=g;Dr(e);if(!(Bh(e,f[b+32>>2]|0,g)|0)){f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;Jk(c,21362,26);f[a>>2]=-1;im(a+4|0,c);Op(c);d=g+40|0;c=f[d>>2]|0;if(c|0){e=g+44|0;b=f[e>>2]|0;if((b|0)!=(c|0)){do{a=b+-4|0;f[e>>2]=a;b=f[a>>2]|0;f[a>>2]=0;if(b|0){Jj(b);ds(b)}b=f[e>>2]|0}while((b|0)!=(c|0));c=f[d>>2]|0}ds(c)}Jj(g);ds(g);u=h;return}e=(f[b+4>>2]|0)+4|0;g=f[e>>2]|0;f[e>>2]=d;if(g|0){d=g+40|0;c=f[d>>2]|0;if(c|0){e=g+44|0;b=f[e>>2]|0;if((b|0)!=(c|0)){do{i=b+-4|0;f[e>>2]=i;b=f[i>>2]|0;f[i>>2]=0;if(b|0){Jj(b);ds(b)}b=f[e>>2]|0}while((b|0)!=(c|0));c=f[d>>2]|0}ds(c)}Jj(g);ds(g)}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=h;return}function jg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=f[a+8>>2]|0;k=a+76|0;d=f[k>>2]|0;m=f[d+80>>2]|0;r=c+84|0;b[r>>0]=0;j=c+68|0;h=c+72|0;g=f[h>>2]|0;e=f[j>>2]|0;l=g-e>>2;if(m>>>0<=l>>>0){if(m>>>0>>0?(i=e+(m<<2)|0,(g|0)!=(i|0)):0)f[h>>2]=g+(~((g+-4-i|0)>>>2)<<2)}else{Xh(j,m-l|0,4664);m=f[k>>2]|0;d=m;m=f[m+80>>2]|0}p=(f[d+100>>2]|0)-(f[d+96>>2]|0)|0;q=(p|0)/12|0;if((p|0)<=0){r=1;return r|0}p=n+28|0;o=a+80|0;n=c+68|0;a=d+96|0;k=d+100|0;l=0;while(1){d=f[a>>2]|0;if((l|0)>=(((f[k>>2]|0)-d|0)/12|0|0)){e=9;break}i=l*3|0;g=f[p>>2]|0;h=f[(f[o>>2]|0)+12>>2]|0;e=f[h+(f[g+(i<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=14;break}if(b[r>>0]|0){e=12;break}j=f[n>>2]|0;f[j+(f[d+(l*12|0)>>2]<<2)>>2]=e;e=f[h+(f[g+(i+1<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=14;break}f[j+(f[d+(l*12|0)+4>>2]<<2)>>2]=e;e=f[h+(f[g+(i+2<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=14;break}f[j+(f[d+(l*12|0)+8>>2]<<2)>>2]=e;l=l+1|0;if((l|0)>=(q|0)){d=1;e=14;break}}if((e|0)==9)Ga(22894,22811,64,22889);else if((e|0)==12)Ga(21905,21924,89,22019);else if((e|0)==14)return d|0;return 0}function kg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;k=l;h=a+8|0;g=f[h>>2]|0;j=a+4|0;d=f[j>>2]|0;if(((g-d|0)/116|0)>>>0>=c>>>0){do{f[d>>2]=-1;pn(d+4|0);b[d+72>>0]=1;d=d+76|0;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));d=(f[j>>2]|0)+116|0;f[j>>2]=d;c=c+-1|0}while((c|0)!=0);u=l;return}e=f[a>>2]|0;i=((d-e|0)/116|0)+c|0;if(i>>>0>37025580){Pq(a);e=f[a>>2]|0;g=f[h>>2]|0;d=f[j>>2]|0}j=(g-e|0)/116|0;g=j<<1;g=j>>>0<18512790?(g>>>0>>0?i:g):37025580;d=(d-e|0)/116|0;f[k+12>>2]=0;f[k+16>>2]=a+8;do if(g)if(g>>>0>37025580){l=Ia(4)|0;Hr(l);sa(l|0,1488,137)}else{e=no(g*116|0)|0;break}else e=0;while(0);f[k>>2]=e;d=e+(d*116|0)|0;h=k+8|0;f[h>>2]=d;f[k+4>>2]=d;f[k+12>>2]=e+(g*116|0);do{f[d>>2]=-1;pn(d+4|0);b[d+72>>0]=1;d=d+76|0;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));d=(f[h>>2]|0)+116|0;f[h>>2]=d;c=c+-1|0}while((c|0)!=0);ud(a,k);uj(k);u=l;return}function lg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=f[a+8>>2]|0;k=a+76|0;d=f[k>>2]|0;m=f[d+80>>2]|0;q=c+84|0;b[q>>0]=0;j=c+68|0;h=c+72|0;g=f[h>>2]|0;e=f[j>>2]|0;l=g-e>>2;if(m>>>0<=l>>>0){if(m>>>0>>0?(i=e+(m<<2)|0,(g|0)!=(i|0)):0)f[h>>2]=g+(~((g+-4-i|0)>>>2)<<2)}else{Xh(j,m-l|0,4664);m=f[k>>2]|0;d=m;m=f[m+80>>2]|0}n=(f[d+100>>2]|0)-(f[d+96>>2]|0)|0;o=(n|0)/12|0;if((n|0)<=0){q=1;return q|0}n=a+80|0;l=c+68|0;a=d+96|0;j=d+100|0;k=0;while(1){d=f[a>>2]|0;if((k|0)>=(((f[j>>2]|0)-d|0)/12|0|0)){e=9;break}h=k*3|0;g=f[(f[n>>2]|0)+12>>2]|0;e=f[g+(f[(f[p>>2]|0)+(h<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}if(b[q>>0]|0){e=12;break}i=f[l>>2]|0;f[i+(f[d+(k*12|0)>>2]<<2)>>2]=e;e=f[g+(f[(f[p>>2]|0)+(h+1<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}f[i+(f[d+(k*12|0)+4>>2]<<2)>>2]=e;e=f[g+(f[(f[p>>2]|0)+(h+2<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}f[i+(f[d+(k*12|0)+8>>2]<<2)>>2]=e;k=k+1|0;if((k|0)>=(o|0)){d=1;e=13;break}}if((e|0)==9)Ga(22894,22811,64,22889);else if((e|0)==12)Ga(21905,21924,89,22019);else if((e|0)==13)return d|0;return 0}function mg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(ke(m,b)|0){e=(a|0)>0;if(e?(f[m+12>>2]|0)==0:0){g=0;break}d=Xe(m,b)|0;if(d&e){j=m+44|0;l=m+48|0;i=m+40|0;b=m+16|0;g=m+28|0;d=f[l>>2]|0;k=0;while(1){a:do if(d>>>0<4194304){e=f[j>>2]|0;do{if((e|0)<=0)break a;o=f[i>>2]|0;e=e+-1|0;f[j>>2]=e;d=h[o+e>>0]|0|d<<8;f[l>>2]=d}while(d>>>0<4194304)}while(0);p=d&1048575;o=f[(f[b>>2]|0)+(p<<2)>>2]|0;e=f[g>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>20)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[l>>2]=d;f[c+(k<<2)>>2]=o;k=k+1|0;if((k|0)==(a|0)){g=1;break}}}else g=d}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){b=m+32|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-8-d|0)>>>3)<<3);ds(d)}d=f[m+16>>2]|0;if(d|0){b=m+20|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}e=m+4|0;d=f[e>>2]|0;if((d|0)!=(b|0))f[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);ds(b);u=n;return g|0}function ng(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(le(m,b)|0){e=(a|0)>0;if(e?(f[m+12>>2]|0)==0:0){g=0;break}d=Ye(m,b)|0;if(d&e){j=m+44|0;l=m+48|0;i=m+40|0;b=m+16|0;g=m+28|0;d=f[l>>2]|0;k=0;while(1){a:do if(d>>>0<2097152){e=f[j>>2]|0;do{if((e|0)<=0)break a;o=f[i>>2]|0;e=e+-1|0;f[j>>2]=e;d=h[o+e>>0]|0|d<<8;f[l>>2]=d}while(d>>>0<2097152)}while(0);p=d&524287;o=f[(f[b>>2]|0)+(p<<2)>>2]|0;e=f[g>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>19)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[l>>2]=d;f[c+(k<<2)>>2]=o;k=k+1|0;if((k|0)==(a|0)){g=1;break}}}else g=d}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){b=m+32|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-8-d|0)>>>3)<<3);ds(d)}d=f[m+16>>2]|0;if(d|0){b=m+20|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}e=m+4|0;d=f[e>>2]|0;if((d|0)!=(b|0))f[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);ds(b);u=n;return g|0}function og(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(me(m,b)|0){e=(a|0)>0;if(e?(f[m+12>>2]|0)==0:0){g=0;break}d=Ze(m,b)|0;if(d&e){j=m+44|0;l=m+48|0;i=m+40|0;b=m+16|0;g=m+28|0;d=f[l>>2]|0;k=0;while(1){a:do if(d>>>0<1048576){e=f[j>>2]|0;do{if((e|0)<=0)break a;o=f[i>>2]|0;e=e+-1|0;f[j>>2]=e;d=h[o+e>>0]|0|d<<8;f[l>>2]=d}while(d>>>0<1048576)}while(0);p=d&262143;o=f[(f[b>>2]|0)+(p<<2)>>2]|0;e=f[g>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>18)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[l>>2]=d;f[c+(k<<2)>>2]=o;k=k+1|0;if((k|0)==(a|0)){g=1;break}}}else g=d}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){b=m+32|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-8-d|0)>>>3)<<3);ds(d)}d=f[m+16>>2]|0;if(d|0){b=m+20|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}e=m+4|0;d=f[e>>2]|0;if((d|0)!=(b|0))f[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);ds(b);u=n;return g|0}function pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(ne(m,b)|0){e=(a|0)>0;if(e?(f[m+12>>2]|0)==0:0){g=0;break}d=_e(m,b)|0;if(d&e){j=m+44|0;l=m+48|0;i=m+40|0;b=m+16|0;g=m+28|0;d=f[l>>2]|0;k=0;while(1){a:do if(d>>>0<262144){e=f[j>>2]|0;do{if((e|0)<=0)break a;o=f[i>>2]|0;e=e+-1|0;f[j>>2]=e;d=h[o+e>>0]|0|d<<8;f[l>>2]=d}while(d>>>0<262144)}while(0);p=d&65535;o=f[(f[b>>2]|0)+(p<<2)>>2]|0;e=f[g>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>16)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[l>>2]=d;f[c+(k<<2)>>2]=o;k=k+1|0;if((k|0)==(a|0)){g=1;break}}}else g=d}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){b=m+32|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-8-d|0)>>>3)<<3);ds(d)}d=f[m+16>>2]|0;if(d|0){b=m+20|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}e=m+4|0;d=f[e>>2]|0;if((d|0)!=(b|0))f[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);ds(b);u=n;return g|0}function qg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(oe(m,b)|0){e=(a|0)>0;if(e?(f[m+12>>2]|0)==0:0){g=0;break}d=$e(m,b)|0;if(d&e){j=m+44|0;l=m+48|0;i=m+40|0;b=m+16|0;g=m+28|0;d=f[l>>2]|0;k=0;while(1){a:do if(d>>>0<131072){e=f[j>>2]|0;do{if((e|0)<=0)break a;o=f[i>>2]|0;e=e+-1|0;f[j>>2]=e;d=h[o+e>>0]|0|d<<8;f[l>>2]=d}while(d>>>0<131072)}while(0);p=d&32767;o=f[(f[b>>2]|0)+(p<<2)>>2]|0;e=f[g>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>15)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[l>>2]=d;f[c+(k<<2)>>2]=o;k=k+1|0;if((k|0)==(a|0)){g=1;break}}}else g=d}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){b=m+32|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-8-d|0)>>>3)<<3);ds(d)}d=f[m+16>>2]|0;if(d|0){b=m+20|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}e=m+4|0;d=f[e>>2]|0;if((d|0)!=(b|0))f[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);ds(b);u=n;return g|0}function rg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=f[a+8>>2]|0;k=a+112|0;d=f[k>>2]|0;m=f[d+80>>2]|0;q=c+84|0;b[q>>0]=0;j=c+68|0;h=c+72|0;g=f[h>>2]|0;e=f[j>>2]|0;l=g-e>>2;if(m>>>0<=l>>>0){if(m>>>0>>0?(i=e+(m<<2)|0,(g|0)!=(i|0)):0)f[h>>2]=g+(~((g+-4-i|0)>>>2)<<2)}else{Xh(j,m-l|0,4664);m=f[k>>2]|0;d=m;m=f[m+80>>2]|0}n=(f[d+100>>2]|0)-(f[d+96>>2]|0)|0;o=(n|0)/12|0;if((n|0)<=0){q=1;return q|0}n=a+116|0;l=c+68|0;a=d+96|0;j=d+100|0;k=0;while(1){d=f[a>>2]|0;if((k|0)>=(((f[j>>2]|0)-d|0)/12|0|0)){e=9;break}h=k*3|0;g=f[(f[n>>2]|0)+12>>2]|0;e=f[g+(f[(f[p>>2]|0)+(h<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}if(b[q>>0]|0){e=12;break}i=f[l>>2]|0;f[i+(f[d+(k*12|0)>>2]<<2)>>2]=e;e=f[g+(f[(f[p>>2]|0)+(h+1<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}f[i+(f[d+(k*12|0)+4>>2]<<2)>>2]=e;e=f[g+(f[(f[p>>2]|0)+(h+2<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}f[i+(f[d+(k*12|0)+8>>2]<<2)>>2]=e;k=k+1|0;if((k|0)>=(o|0)){d=1;e=13;break}}if((e|0)==9)Ga(22894,22811,64,22889);else if((e|0)==12)Ga(21905,21924,89,22019);else if((e|0)==13)return d|0;return 0}function sg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(pe(m,b)|0){e=(a|0)>0;if(e?(f[m+12>>2]|0)==0:0){g=0;break}d=af(m,b)|0;if(d&e){j=m+44|0;l=m+48|0;i=m+40|0;b=m+16|0;g=m+28|0;d=f[l>>2]|0;k=0;while(1){a:do if(d>>>0<32768){e=f[j>>2]|0;do{if((e|0)<=0)break a;o=f[i>>2]|0;e=e+-1|0;f[j>>2]=e;d=h[o+e>>0]|0|d<<8;f[l>>2]=d}while(d>>>0<32768)}while(0);p=d&8191;o=f[(f[b>>2]|0)+(p<<2)>>2]|0;e=f[g>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>13)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[l>>2]=d;f[c+(k<<2)>>2]=o;k=k+1|0;if((k|0)==(a|0)){g=1;break}}}else g=d}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){b=m+32|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-8-d|0)>>>3)<<3);ds(d)}d=f[m+16>>2]|0;if(d|0){b=m+20|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}e=m+4|0;d=f[e>>2]|0;if((d|0)!=(b|0))f[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);ds(b);u=n;return g|0}function tg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(qe(m,b)|0){e=(a|0)>0;if(e?(f[m+12>>2]|0)==0:0){g=0;break}d=bf(m,b)|0;if(d&e){j=m+44|0;l=m+48|0;i=m+40|0;b=m+16|0;g=m+28|0;d=f[l>>2]|0;k=0;while(1){a:do if(d>>>0<16384){e=f[j>>2]|0;do{if((e|0)<=0)break a;o=f[i>>2]|0;e=e+-1|0;f[j>>2]=e;d=h[o+e>>0]|0|d<<8;f[l>>2]=d}while(d>>>0<16384)}while(0);p=d&4095;o=f[(f[b>>2]|0)+(p<<2)>>2]|0;e=f[g>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>12)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[l>>2]=d;f[c+(k<<2)>>2]=o;k=k+1|0;if((k|0)==(a|0)){g=1;break}}}else g=d}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){b=m+32|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-8-d|0)>>>3)<<3);ds(d)}d=f[m+16>>2]|0;if(d|0){b=m+20|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}e=m+4|0;d=f[e>>2]|0;if((d|0)!=(b|0))f[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);ds(b);u=n;return g|0}function ug(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=b;h=c-m>>2;i=a+8|0;d=f[i>>2]|0;j=f[a>>2]|0;k=j;if(h>>>0<=d-j>>2>>>0){l=a+4|0;a=(f[l>>2]|0)-j>>2;h=h>>>0>a>>>0;a=b+(a<<2)|0;g=h?a:c;i=g;e=i-m|0;d=e>>2;if(d|0)rn(j|0,b|0,e|0)|0;d=k+(d<<2)|0;if(!h){b=f[l>>2]|0;if((b|0)==(d|0))return;f[l>>2]=b+(~((b+-4-d|0)>>>2)<<2);return}if((g|0)==(c|0))return;g=f[l>>2]|0;e=((c+-4-i|0)>>>2)+1|0;d=g;b=a;while(1){f[d>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else d=d+4|0}f[l>>2]=g+(e<<2);return}g=j;if(j){e=a+4|0;d=f[e>>2]|0;if((d|0)!=(k|0))f[e>>2]=d+(~((d+-4-j|0)>>>2)<<2);ds(g);f[i>>2]=0;f[e>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823){Pq(a);e=f[a>>2]|0;d=f[i>>2]|0}else e=0;l=d-e|0;d=l>>1;d=l>>2>>>0<536870911?(d>>>0>>0?h:d):1073741823;if(d>>>0>1073741823){Pq(a);c=Ia(4)|0;Hr(c);sa(c|0,1488,137)}h=no(d<<2)|0;g=a+4|0;f[g>>2]=h;f[a>>2]=h;f[i>>2]=h+(d<<2);if((b|0)==(c|0))return;d=((c+-4-m|0)>>>2)+1|0;e=h;while(1){f[e>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else e=e+4|0}f[g>>2]=h+(d<<2);return}function vg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=b;h=c-m>>2;i=a+8|0;d=f[i>>2]|0;j=f[a>>2]|0;k=j;if(h>>>0<=d-j>>2>>>0){l=a+4|0;a=(f[l>>2]|0)-j>>2;h=h>>>0>a>>>0;a=b+(a<<2)|0;g=h?a:c;i=g;e=i-m|0;d=e>>2;if(d|0)rn(j|0,b|0,e|0)|0;d=k+(d<<2)|0;if(!h){b=f[l>>2]|0;if((b|0)==(d|0))return;f[l>>2]=b+(~((b+-4-d|0)>>>2)<<2);return}if((g|0)==(c|0))return;g=f[l>>2]|0;d=c+-4-i|0;e=g;b=a;while(1){f[e>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else e=e+4|0}f[l>>2]=g+((d>>>2)+1<<2);return}g=j;if(j){e=a+4|0;d=f[e>>2]|0;if((d|0)!=(k|0))f[e>>2]=d+(~((d+-4-j|0)>>>2)<<2);ds(g);f[i>>2]=0;f[e>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823){Pq(a);e=f[a>>2]|0;d=f[i>>2]|0}else e=0;l=d-e|0;d=l>>1;d=l>>2>>>0<536870911?(d>>>0>>0?h:d):1073741823;if(d>>>0>1073741823){Pq(a);c=Ia(4)|0;Hr(c);sa(c|0,1488,137)}h=no(d<<2)|0;g=a+4|0;f[g>>2]=h;f[a>>2]=h;f[i>>2]=h+(d<<2);if((b|0)==(c|0))return;d=c+-4-m|0;e=h;while(1){f[e>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else e=e+4|0}f[g>>2]=h+((d>>>2)+1<<2);return}function wg(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;d=b[(f[a+8>>2]|0)+24>>0]|0;i=as(d>>>0>1073741823?-1:d<<2)|0;j=a+28|0;c=f[j>>2]|0;f[j>>2]=i;if(c|0)bs(c);i=a+4|0;g=f[(f[i>>2]|0)+32>>2]|0;d=d<<2;n=g+8|0;l=f[n>>2]|0;n=f[n+4>>2]|0;e=g+16|0;k=e;c=f[k>>2]|0;k=Kp(c|0,f[k+4>>2]|0,d|0,0)|0;m=I;if((n|0)<(m|0)|(n|0)==(m|0)&l>>>0>>0){n=0;return n|0}Fh(f[j>>2]|0,(f[g>>2]|0)+c|0,d|0)|0;c=e;c=Kp(f[c>>2]|0,f[c+4>>2]|0,d|0,0)|0;f[e>>2]=c;f[e+4>>2]=I;e=(f[i>>2]|0)+32|0;c=f[e>>2]|0;k=c+8|0;m=f[k>>2]|0;k=f[k+4>>2]|0;g=c+16|0;n=g;d=f[n>>2]|0;n=Kp(d|0,f[n+4>>2]|0,4,0)|0;l=I;if((k|0)<(l|0)|(k|0)==(l|0)&m>>>0>>0){n=0;return n|0}n=a+32|0;c=(f[c>>2]|0)+d|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;b[n>>0]=c;b[n+1>>0]=c>>8;b[n+2>>0]=c>>16;b[n+3>>0]=c>>24;n=g;n=Kp(f[n>>2]|0,f[n+4>>2]|0,4,0)|0;c=g;f[c>>2]=n;f[c+4>>2]=I;c=f[e>>2]|0;n=c+8|0;m=f[n+4>>2]|0;g=c+16|0;e=g;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((m|0)>(e|0)|((m|0)==(e|0)?(f[n>>2]|0)>>>0>d>>>0:0))){n=0;return n|0}c=b[(f[c>>2]|0)+d>>0]|0;m=Kp(d|0,e|0,1,0)|0;n=g;f[n>>2]=m;f[n+4>>2]=I;if((c&255)>31){n=0;return n|0}f[a+24>>2]=c&255;n=1;return n|0}function xg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;e=c+8|0;k=e;i=f[k+4>>2]|0;l=c+16|0;j=l;d=f[j>>2]|0;j=f[j+4>>2]|0;if(!((i|0)>(j|0)|((i|0)==(j|0)?(f[k>>2]|0)>>>0>d>>>0:0))){a=0;return a|0}b[a+12>>0]=b[(f[c>>2]|0)+d>>0]|0;j=l;k=f[j>>2]|0;j=f[j+4>>2]|0;g=Kp(k|0,j|0,1,0)|0;i=l;f[i>>2]=g;f[i+4>>2]=I;i=e;e=f[i>>2]|0;i=f[i+4>>2]|0;j=Kp(k|0,j|0,5,0)|0;k=I;if((i|0)<(k|0)|(i|0)==(k|0)&e>>>0>>0){a=0;return a|0}d=f[c>>2]|0;c=d+g|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=l;f[g>>2]=j;f[g+4>>2]=k;i=_o(e|0,i|0,j|0,k|0)|0;g=I;if(0>(g|0)|0==(g|0)&c>>>0>i>>>0){a=0;return a|0}d=d+j|0;if((c|0)<1){a=0;return a|0}f[a>>2]=d;g=c+-1|0;e=d+g|0;a:do switch((h[e>>0]|0)>>>6&3){case 0:{f[a+4>>2]=g;d=b[e>>0]&63;break}case 1:if((c|0)<2){a=0;return a|0}else{f[a+4>>2]=c+-2;d=d+c+-2|0;d=(h[d+1>>0]|0)<<8&16128|(h[d>>0]|0);break a}case 2:if((c|0)<3){a=0;return a|0}else{f[a+4>>2]=c+-3;d=d+c+-3|0;d=(h[d+1>>0]|0)<<8|(h[d>>0]|0)|(h[d+2>>0]|0)<<16&4128768;break a}default:{a=0;return a|0}}while(0);i=d+4096|0;f[a+8>>2]=i;if(i>>>0>1048575){a=0;return a|0}k=Kp(j|0,k|0,c|0,0)|0;a=l;f[a>>2]=k;f[a+4>>2]=I;a=1;return a|0}function yg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+8|0;d=f[m>>2]|0;l=a+4|0;g=f[l>>2]|0;e=g;if(((d-g|0)/12|0)>>>0>=b>>>0){_j(g|0,0,b*12|0)|0;f[l>>2]=e+(b*12|0);return}c=f[a>>2]|0;h=((g-c|0)/12|0)+b|0;if(h>>>0>357913941){Pq(a);g=f[l>>2]|0;c=f[a>>2]|0;e=g;d=f[m>>2]|0}k=c;d=(d-c|0)/12|0;i=d<<1;i=d>>>0<178956970?(i>>>0>>0?h:i):357913941;d=(g-c|0)/12|0;do if(i)if(i>>>0>357913941){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}else{h=no(i*12|0)|0;break}else h=0;while(0);g=h+(d*12|0)|0;d=g;j=h+(i*12|0)|0;_j(g|0,0,b*12|0)|0;h=g+(b*12|0)|0;if((e|0)==(k|0))i=c;else{c=d;do{b=g+-12|0;i=e;e=e+-12|0;f[b>>2]=0;d=g+-8|0;f[d>>2]=0;f[g+-4>>2]=0;f[b>>2]=f[e>>2];b=i+-8|0;f[d>>2]=f[b>>2];i=i+-4|0;f[g+-4>>2]=f[i>>2];f[i>>2]=0;f[b>>2]=0;f[e>>2]=0;g=c+-12|0;c=g}while((e|0)!=(k|0));d=c;i=f[a>>2]|0;e=f[l>>2]|0}f[a>>2]=d;f[l>>2]=h;f[m>>2]=j;h=i;if((e|0)!=(h|0))do{c=e;e=e+-12|0;g=f[e>>2]|0;if(g|0){d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(g|0))f[d>>2]=c+(~((c+-4-g|0)>>>2)<<2);ds(g)}}while((e|0)!=(h|0));if(!i)return;ds(i);return}function zg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;m=n+24|0;k=n+16|0;j=n+8|0;l=n;f[a>>2]=4652;f[a+4>>2]=f[b+4>>2];h=a+8|0;i=b+8|0;f[h>>2]=0;e=a+12|0;f[e>>2]=0;d=a+16|0;f[d>>2]=0;g=b+12|0;c=f[g>>2]|0;if(c|0){if((c|0)<0)Pq(h);c=((c+-1|0)>>>5)+1|0;o=no(c<<2)|0;f[h>>2]=o;f[e>>2]=0;f[d>>2]=c;e=f[i>>2]|0;f[j>>2]=e;f[j+4>>2]=0;i=f[g>>2]|0;f[l>>2]=e+(i>>>5<<2);f[l+4>>2]=i&31;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];Sg(h,k,m)}h=a+20|0;f[h>>2]=0;g=a+24|0;f[g>>2]=0;d=a+28|0;f[d>>2]=0;e=b+24|0;c=f[e>>2]|0;if(!c){u=n;return}if((c|0)<0)Pq(h);o=((c+-1|0)>>>5)+1|0;a=no(o<<2)|0;f[h>>2]=a;f[g>>2]=0;f[d>>2]=o;b=f[b+20>>2]|0;f[j>>2]=b;f[j+4>>2]=0;o=f[e>>2]|0;f[l>>2]=b+(o>>>5<<2);f[l+4>>2]=o&31;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];Sg(h,k,m);u=n;return}function Ag(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=a+8|0;d=f[i>>2]|0;h=f[a>>2]|0;j=h;do if(d-h>>2>>>0>=b>>>0){a=a+4|0;i=f[a>>2]|0;h=i-h>>2;g=h>>>0>>0;d=g?h:b;if(d|0){e=j;while(1){f[e>>2]=f[c>>2];d=d+-1|0;if(!d)break;else e=e+4|0}}if(!g){d=j+(b<<2)|0;if((i|0)==(d|0))return;else{e=a;d=i+(~((i+-4-d|0)>>>2)<<2)|0;break}}else{g=b-h|0;d=i;e=g;while(1){f[d>>2]=f[c>>2];e=e+-1|0;if(!e)break;else d=d+4|0}e=a;d=i+(g<<2)|0;break}}else{g=h;if(h){e=a+4|0;d=f[e>>2]|0;if((d|0)!=(j|0))f[e>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(g);f[i>>2]=0;f[e>>2]=0;f[a>>2]=0;d=0}if(b>>>0>1073741823){Pq(a);e=f[a>>2]|0;d=f[i>>2]|0}else e=0;j=d-e|0;d=j>>1;d=j>>2>>>0<536870911?(d>>>0>>0?b:d):1073741823;if(d>>>0>1073741823){Pq(a);c=Ia(4)|0;Hr(c);sa(c|0,1488,137)}h=no(d<<2)|0;g=a+4|0;f[g>>2]=h;f[a>>2]=h;f[i>>2]=h+(d<<2);d=h;e=b;while(1){f[d>>2]=f[c>>2];e=e+-1|0;if(!e)break;else d=d+4|0}e=g;d=h+(b<<2)|0}while(0);f[e>>2]=d;return}function Bg(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=a+636|0;b=f[g>>2]|0;if(b|0){h=a+640|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}ds(b)}g=a+624|0;b=f[g>>2]|0;if(b|0){h=a+628|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}ds(b)}b=f[a+612>>2]|0;if(b|0){d=a+616|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+600>>2]|0;if(!b){h=a+580|0;fm(h);h=a+560|0;fm(h);h=a+540|0;fm(h);h=a+524|0;is(h);a=a+12|0;Zj(a);return}d=a+604|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);h=a+580|0;fm(h);h=a+560|0;fm(h);h=a+540|0;fm(h);h=a+524|0;is(h);a=a+12|0;Zj(a);return}function Cg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+16|0;n=p;o=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;k=d+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=d+16|0;e=l;g=f[e>>2]|0;e=f[e+4>>2]|0;if((k|0)>(e|0)|(k|0)==(e|0)&j>>>0>g>>>0){i=b[(f[d>>2]|0)+g>>0]|0;g=Kp(g|0,e|0,1,0)|0;e=I;q=l;f[q>>2]=g;f[q+4>>2]=e;if(i<<24>>24!=-2)m=3}else{i=0;m=3}if((m|0)==3){if((k|0)>(e|0)|(k|0)==(e|0)&j>>>0>g>>>0){q=b[(f[d>>2]|0)+g>>0]|0;m=Kp(g|0,e|0,1,0)|0;e=l;f[e>>2]=m;f[e+4>>2]=I;e=q}else e=0;Xa[f[(f[a>>2]|0)+40>>2]&7](n,a,i<<24>>24,e<<24>>24);q=a+20|0;m=f[n>>2]|0;f[n>>2]=0;e=f[q>>2]|0;f[q>>2]=m;if(e){Pa[f[(f[e>>2]|0)+4>>2]&255](e);e=f[n>>2]|0;f[n>>2]=0;if(e|0)Pa[f[(f[e>>2]|0)+4>>2]&255](e)}else f[n>>2]=0}e=f[a+20>>2]|0;if(e|0?!(Wa[f[(f[a>>2]|0)+28>>2]&127](a,e)|0):0){q=0;u=p;return q|0}if(!(Na[f[(f[a>>2]|0)+36>>2]&31](a,c,d)|0)){q=0;u=p;return q|0}q=f[a+4>>2]|0;if((q|0?((h[q+36>>0]|0)<<8&65535)<512:0)?!(Wa[f[(f[a>>2]|0)+48>>2]&127](a,o)|0):0){q=0;u=p;return q|0}q=1;u=p;return q|0}function Dg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;m=n+24|0;k=n+16|0;j=n+8|0;l=n;f[a>>2]=4700;f[a+4>>2]=f[b+4>>2];h=a+8|0;i=b+8|0;f[h>>2]=0;e=a+12|0;f[e>>2]=0;d=a+16|0;f[d>>2]=0;g=b+12|0;c=f[g>>2]|0;if(c|0){if((c|0)<0)Pq(h);c=((c+-1|0)>>>5)+1|0;o=no(c<<2)|0;f[h>>2]=o;f[e>>2]=0;f[d>>2]=c;e=f[i>>2]|0;f[j>>2]=e;f[j+4>>2]=0;i=f[g>>2]|0;f[l>>2]=e+(i>>>5<<2);f[l+4>>2]=i&31;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];Sg(h,k,m)}h=a+20|0;f[h>>2]=0;g=a+24|0;f[g>>2]=0;d=a+28|0;f[d>>2]=0;e=b+24|0;c=f[e>>2]|0;if(!c){u=n;return}if((c|0)<0)Pq(h);o=((c+-1|0)>>>5)+1|0;a=no(o<<2)|0;f[h>>2]=a;f[g>>2]=0;f[d>>2]=o;b=f[b+20>>2]|0;f[j>>2]=b;f[j+4>>2]=0;o=f[e>>2]|0;f[l>>2]=b+(o>>>5<<2);f[l+4>>2]=o&31;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];Sg(h,k,m);u=n;return}function Eg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=c;e=b;j=k-e|0;h=j>>2;i=a+8|0;d=f[i>>2]|0;g=f[a>>2]|0;l=g;if(h>>>0>d-g>>2>>>0){e=g;if(g){c=a+4|0;d=f[c>>2]|0;if((d|0)!=(l|0))f[c>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(e);f[i>>2]=0;f[c>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823){Pq(a);c=f[a>>2]|0;d=f[i>>2]|0}else c=0;l=d-c|0;d=l>>1;d=l>>2>>>0<536870911?(d>>>0>>0?h:d):1073741823;if(d>>>0>1073741823){Pq(a);b=Ia(4)|0;Hr(b);sa(b|0,1488,137)}e=no(d<<2)|0;c=a+4|0;f[c>>2]=e;f[a>>2]=e;f[i>>2]=e+(d<<2);if((j|0)<=0)return;Fh(e|0,b|0,j|0)|0;f[c>>2]=e+(j>>>2<<2);return}a=a+4|0;d=f[a>>2]|0;i=d-g>>2;j=h>>>0>i>>>0;i=j?b+(i<<2)|0:c;g=d;h=d;if((i|0)==(b|0))d=l;else{e=i+-4-e|0;d=b;c=l;while(1){f[c>>2]=f[d>>2];d=d+4|0;if((d|0)==(i|0))break;else c=c+4|0}d=l+((e>>>2)+1<<2)|0}if(j){d=k-i|0;if((d|0)<=0)return;Fh(h|0,i|0,d|0)|0;f[a>>2]=(f[a>>2]|0)+(d>>>2<<2);return}else{if((g|0)==(d|0))return;f[a>>2]=g+(~((g+-4-d|0)>>>2)<<2);return}}function Fg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;m=n;l=a+8|0;d=f[l>>2]|0;k=a+4|0;e=f[k>>2]|0;if(d-e>>2>>>0>=b>>>0){_j(e|0,0,b<<2|0)|0;f[k>>2]=e+(b<<2);u=n;return}c=f[a>>2]|0;g=(e-c>>2)+b|0;if(g>>>0>1073741823){Pq(a);c=f[a>>2]|0;d=f[l>>2]|0;e=f[k>>2]|0}i=d-c|0;j=i>>1;g=i>>2>>>0<536870911?(j>>>0>>0?g:j):1073741823;c=e-c>>2;f[m+12>>2]=0;f[m+16>>2]=a+8;do if(g)if(g>>>0>1073741823){n=Ia(4)|0;Hr(n);sa(n|0,1488,137)}else{d=no(g<<2)|0;break}else d=0;while(0);f[m>>2]=d;c=d+(c<<2)|0;i=m+8|0;h=m+4|0;f[h>>2]=c;j=m+12|0;f[j>>2]=d+(g<<2);_j(c|0,0,b<<2|0)|0;f[i>>2]=c+(b<<2);d=f[a>>2]|0;c=f[k>>2]|0;if((c|0)==(d|0)){g=h;e=f[h>>2]|0}else{e=f[h>>2]|0;do{c=c+-4|0;b=f[c>>2]|0;f[c>>2]=0;f[e+-4>>2]=b;e=(f[h>>2]|0)+-4|0;f[h>>2]=e}while((c|0)!=(d|0));g=h;d=f[a>>2]|0;c=f[k>>2]|0}f[a>>2]=e;f[g>>2]=d;f[k>>2]=f[i>>2];f[i>>2]=c;a=f[l>>2]|0;f[l>>2]=f[j>>2];f[j>>2]=a;f[m>>2]=f[g>>2];Wi(m);u=n;return}function Gg(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[(f[h>>2]|0)+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;return}e=c+1|0;if(!d)c=((e|0)%3|0|0)==0?c+-2|0:e;e=f[h>>2]|0;if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2]))if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=7}else g=7;else{c=-1073741824;g=7}if((g|0)==7)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;b[i>>0]=0;return}function Hg(a,b,c,d){a=a|0;b=$(b);c=$(c);d=d|0;var e=La,f=La,g=0.0,h=La,i=La,j=0.0,k=0.0,l=0.0,m=0.0;if(!(b>=$(0.0)))Ga(10558,10410,191,10572);if(!(c>=$(0.0)))Ga(10601,10410,192,10572);if(!(b<=$(1.0)))Ga(10615,10410,193,10572);if(!(c<=$(1.0)))Ga(10629,10410,194,10572);f=$(b+c);e=$(b-c);if(!(e<=$(.5))|(!(e>=$(-.5))|(!(f>=$(.5))|!(f<=$(1.5))))){do if(!(f<=$(.5))){if(f>=$(1.5)){e=$($(1.5)-c);c=$($(1.5)-b);break}if(!(e<=$(-.5))){e=$(c+$(.5));c=$(b+$(-.5));break}else{e=$(c+$(-.5));c=$(b+$(.5));break}}else{e=$($(.5)-c);c=$($(.5)-b)}while(0);b=e;i=$(e-c);f=$(c+e);g=-1.0}else{i=e;g=1.0}h=$(+b*2.0+-1.0);b=$(+c*2.0+-1.0);l=+f*2.0;j=l+-1.0;l=3.0-l;m=+i*2.0;k=m+1.0;m=1.0-m;k=m>2]=$(0.0);h=$(0.0);i=$(0.0);a=d+4|0;n[a>>2]=h;d=d+8|0;n[d>>2]=i;return}else{i=$($(1.0)/$(L($(e))));f=$(c*i);n[d>>2]=f;h=$(h*i);i=$(b*i);a=d+4|0;n[a>>2]=h;d=d+8|0;n[d>>2]=i;return}}function Ig(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=f[a>>2]|0;p=a+4|0;c=f[p>>2]|0;l=m;d=c+(~((c+-4-l|0)>>>2)<<2)|0;if((c|0)==(m|0))d=m;else{f[p>>2]=d;c=d}s=a+16|0;f[s>>2]=0;t=a+12|0;f[t>>2]=d;k=b+8|0;d=k;n=f[d>>2]|0;d=f[d+4>>2]|0;r=b+16|0;g=r;i=f[g>>2]|0;g=Kp(i|0,f[g+4>>2]|0,4,0)|0;e=I;if((d|0)<(e|0)|(d|0)==(e|0)&n>>>0>>0){a=0;return a|0}o=(f[b>>2]|0)+i|0;o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24;j=r;f[j>>2]=g;f[j+4>>2]=e;if(!((o|0)!=0&(o&3|0)==0)){a=0;return a|0}j=_o(n|0,d|0,g|0,e|0)|0;i=I;if(0>(i|0)|0==(i|0)&o>>>0>j>>>0){a=0;return a|0}j=o>>>2;i=c-l>>2;if(j>>>0<=i>>>0)if(j>>>0>>0?(q=m+(j<<2)|0,(c|0)!=(q|0)):0){f[p>>2]=c+(~((c+-4-q|0)>>>2)<<2);c=n}else c=n;else{mj(a,j-i|0);c=k;e=r;g=f[e>>2]|0;e=f[e+4>>2]|0;d=f[c+4>>2]|0;c=f[c>>2]|0}q=Kp(g|0,e|0,o|0,0)|0;p=I;if((d|0)<(p|0)|(d|0)==(p|0)&c>>>0>>0){a=0;return a|0}Fh(f[a>>2]|0,(f[b>>2]|0)+g|0,o|0)|0;q=r;q=Kp(f[q>>2]|0,f[q+4>>2]|0,o|0,0)|0;b=r;f[b>>2]=q;f[b+4>>2]=I;f[t>>2]=f[a>>2];f[s>>2]=0;a=1;return a|0}function Jg(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+80|0;l=m;j=m+60|0;k=m+40|0;g=l;h=d;i=g+40|0;do{f[g>>2]=f[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));rc(a,l,j);if(f[a>>2]|0){l=l+24|0;is(l);u=m;return}h=a+4|0;Op(h);if(b[j+7>>0]|0){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Jk(k,20106,27);f[a>>2]=-1;im(h,k);Op(k);l=l+24|0;is(l);u=m;return}$h(k,b[j+8>>0]|0);g=f[k>>2]|0;if(!g){j=k+16|0;g=f[j>>2]|0;f[j>>2]=0;Od(a,g,c,d,e);if(!(f[a>>2]|0)){Op(h);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0}if(g|0)Pa[f[(f[g>>2]|0)+4>>2]&255](g)}else{f[a>>2]=g;im(h,k+4|0)}c=k+16|0;g=f[c>>2]|0;f[c>>2]=0;if(g|0)Pa[f[(f[g>>2]|0)+4>>2]&255](g);Op(k+4|0);l=l+24|0;is(l);u=m;return}function Kg(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+80|0;l=m;j=m+60|0;k=m+40|0;g=l;h=d;i=g+40|0;do{f[g>>2]=f[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));rc(a,l,j);if(f[a>>2]|0){l=l+24|0;is(l);u=m;return}h=a+4|0;Op(h);if((b[j+7>>0]|0)!=1){f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;Jk(k,20085,20);f[a>>2]=-1;im(h,k);Op(k);l=l+24|0;is(l);u=m;return}ij(k,b[j+8>>0]|0);g=f[k>>2]|0;if(!g){j=k+16|0;g=f[j>>2]|0;f[j>>2]=0;ln(a,g,c,d,e);if(!(f[a>>2]|0)){Op(h);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0}if(g|0)Pa[f[(f[g>>2]|0)+4>>2]&255](g)}else{f[a>>2]=g;im(h,k+4|0)}c=k+16|0;g=f[c>>2]|0;f[c>>2]=0;if(g|0)Pa[f[(f[g>>2]|0)+4>>2]&255](g);Op(k+4|0);l=l+24|0;is(l);u=m;return}function Lg(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=a+128|0;b=f[g>>2]|0;if(b|0){h=a+132|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}ds(b)}g=a+116|0;b=f[g>>2]|0;if(b|0){h=a+120|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}ds(b)}b=f[a+104>>2]|0;if(b|0){d=a+108|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+92>>2]|0;if(!b){h=a+72|0;fm(h);h=a+52|0;fm(h);h=a+32|0;fm(h);a=a+12|0;fm(a);return}d=a+96|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);h=a+72|0;fm(h);h=a+52|0;fm(h);h=a+32|0;fm(h);a=a+12|0;fm(a);return}function Mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=f[b>>2]|0;l=f[k>>2]|0;e=f[a+4>>2]|0;b=f[k+4>>2]|0;h=e+-1|0;i=(h&e|0)==0;if(i)g=h&b;else g=(b>>>0)%(e>>>0)|0;c=(f[a>>2]|0)+(g<<2)|0;j=f[c>>2]|0;while(1){b=f[j>>2]|0;if((b|0)==(k|0))break;else j=b}if((j|0)!=(a+8|0)){b=f[j+4>>2]|0;if(i)b=b&h;else b=(b>>>0)%(e>>>0)|0;if((b|0)==(g|0)){c=l;d=18}else d=11}else d=11;do if((d|0)==11){if(l|0){b=f[l+4>>2]|0;if(i)b=b&h;else b=(b>>>0)%(e>>>0)|0;if((b|0)==(g|0)){c=l;b=l;d=19;break}}f[c>>2]=0;c=f[k>>2]|0;d=18}while(0);if((d|0)==18){b=c;if(c)d=19}if((d|0)==19){c=f[c+4>>2]|0;if(i)c=c&h;else c=(c>>>0)%(e>>>0)|0;if((c|0)!=(g|0)){f[(f[a>>2]|0)+(c<<2)>>2]=j;b=f[k>>2]|0}}f[j>>2]=b;f[k>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!k)return l|0;b=f[k+20>>2]|0;if(b|0){c=k+24|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;ds(b)}Op(k+8|0);ds(k);return l|0}function Ng(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;j=m+4|0;k=m;l=a+8|0;g=a+100|0;h=f[l>>2]|0;h=(f[h+28>>2]|0)-(f[h+24>>2]|0)>>2;f[j>>2]=0;d=a+104|0;c=f[d>>2]|0;b=f[g>>2]|0;i=c-b>>2;if(h>>>0<=i>>>0){if(h>>>0>>0?(e=b+(h<<2)|0,(c|0)!=(e|0)):0)f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2)}else Xh(g,h-i|0,j);d=a+120|0;b=f[d>>2]|0;if(!b){a=f[l>>2]|0;a=(f[a+4>>2]|0)-(f[a>>2]|0)>>2;b=(a>>>0)/3|0;if(a>>>0<=2){u=m;return 1}c=0;do{f[k>>2]=c*3;f[j>>2]=f[k>>2];Nb(l,j);c=c+1|0}while((c|0)<(b|0));u=m;return 1}else{c=f[b>>2]|0;if((f[b+4>>2]|0)==(c|0)){u=m;return 1}b=0;do{f[k>>2]=f[c+(b<<2)>>2];f[j>>2]=f[k>>2];Nb(l,j);b=b+1|0;a=f[d>>2]|0;c=f[a>>2]|0}while(b>>>0<(f[a+4>>2]|0)-c>>2>>>0);u=m;return 1}return 0}function Og(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=a+124|0;b=f[g>>2]|0;if(b|0){h=a+128|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}ds(b)}g=a+112|0;b=f[g>>2]|0;if(b|0){h=a+116|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}ds(b)}b=f[a+100>>2]|0;if(b|0){d=a+104|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+88>>2]|0;if(!b){h=a+68|0;fm(h);h=a+48|0;fm(h);h=a+28|0;fm(h);a=a+12|0;is(a);return}d=a+92|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);h=a+68|0;fm(h);h=a+48|0;fm(h);h=a+28|0;fm(h);a=a+12|0;is(a);return}function Pg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+112|0;h=k+96|0;j=k+16|0;i=k+4|0;g=k;c=j+76|0;d=j;e=d+76|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f[c>>2]=-1073741824;f[i>>2]=0;e=i+4|0;f[e>>2]=0;f[i+8>>2]=0;f[g>>2]=i;f[h>>2]=f[g>>2];if(Zd(j,a,h)|0){g=f[i>>2]|0;vg(b,g,g+((f[e>>2]|0)-g>>2<<2)|0);g=f[j+68>>2]|0}else g=0;c=f[i>>2]|0;if(c|0){d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}c=f[j+56>>2]|0;if(c|0)ds(c);c=f[j+32>>2]|0;if(c|0){e=j+36|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}c=f[j+20>>2]|0;if(c|0){e=j+24|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}c=f[j+8>>2]|0;if(c|0){e=j+12|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}j=j+4|0;c=f[j>>2]|0;f[j>>2]=0;if(!c){u=k;return g|0}mk(c);ds(c);u=k;return g|0}function Qg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;f[c>>2]=1;e=a+4|0;l=c+8|0;k=c+12|0;c=f[l>>2]|0;d=(f[k>>2]|0)-c|0;if(d>>>0<4294967292){Al(l,d+4|0,0);c=f[l>>2]|0}j=c+d|0;i=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[j>>0]=i;b[j+1>>0]=i>>8;b[j+2>>0]=i>>16;b[j+3>>0]=i>>24;j=a+8|0;i=a+12|0;c=f[j>>2]|0;if((f[i>>2]|0)!=(c|0)){g=0;do{d=c+(g<<2)|0;c=f[l>>2]|0;e=(f[k>>2]|0)-c|0;if(e>>>0<4294967292){Al(l,e+4|0,0);c=f[l>>2]|0}c=c+e|0;e=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[c>>0]=e;b[c+1>>0]=e>>8;b[c+2>>0]=e>>16;b[c+3>>0]=e>>24;g=g+1|0;c=f[j>>2]|0}while(g>>>0<(f[i>>2]|0)-c>>2>>>0)}e=a+20|0;d=f[l>>2]|0;c=(f[k>>2]|0)-d|0;if(c>>>0<4294967292){Al(l,c+4|0,0);l=f[l>>2]|0;l=l+c|0;k=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}else{l=d;l=l+c|0;k=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}}function Rg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=c;i=b;j=k-i|0;g=j>>2;h=a+8|0;d=f[h>>2]|0;l=f[a>>2]|0;m=l;if(g>>>0<=d-l>>2>>>0){j=a+4|0;e=(f[j>>2]|0)-l>>2;h=g>>>0>e>>>0;g=h?b+(e<<2)|0:c;e=g;c=e-i|0;d=c>>2;if(d|0)rn(l|0,b|0,c|0)|0;c=m+(d<<2)|0;if(h){d=k-e|0;if((d|0)<=0)return;Fh(f[j>>2]|0,g|0,d|0)|0;f[j>>2]=(f[j>>2]|0)+(d>>>2<<2);return}else{d=f[j>>2]|0;if((d|0)==(c|0))return;f[j>>2]=d+(~((d+-4-c|0)>>>2)<<2);return}}e=l;if(l){c=a+4|0;d=f[c>>2]|0;if((d|0)!=(m|0))f[c>>2]=d+(~((d+-4-l|0)>>>2)<<2);ds(e);f[h>>2]=0;f[c>>2]=0;f[a>>2]=0;d=0}if(g>>>0>1073741823){Pq(a);c=f[a>>2]|0;d=f[h>>2]|0}else c=0;m=d-c|0;d=m>>1;d=m>>2>>>0<536870911?(d>>>0>>0?g:d):1073741823;if(d>>>0>1073741823){Pq(a);b=Ia(4)|0;Hr(b);sa(b|0,1488,137)}e=no(d<<2)|0;c=a+4|0;f[c>>2]=e;f[a>>2]=e;f[h>>2]=e+(d<<2);if((j|0)<=0)return;Fh(e|0,b|0,j|0)|0;f[c>>2]=e+(j>>>2<<2);return}function Sg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+48|0;n=p+40|0;m=p+32|0;j=p+8|0;k=p;l=p+24|0;o=p+16|0;g=a+4|0;q=f[g>>2]|0;d=f[b>>2]|0;b=f[b+4>>2]|0;e=c;h=f[e>>2]|0;e=f[e+4>>2]|0;i=h-d<<3;f[g>>2]=q-b+e+i;g=(f[a>>2]|0)+(q>>>5<<2)|0;a=q&31;c=g;if((b|0)!=(a|0)){q=j;f[q>>2]=d;f[q+4>>2]=b;q=k;f[q>>2]=h;f[q+4>>2]=e;f[l>>2]=c;f[l+4>>2]=a;f[m>>2]=f[j>>2];f[m+4>>2]=f[j+4>>2];f[n>>2]=f[k>>2];f[n+4>>2]=f[k+4>>2];Re(o,m,n,l);u=p;return}e=e-b+i|0;a=d;if((e|0)>0){if(!b){h=a;c=e;b=0}else{h=32-b|0;c=(e|0)<(h|0)?e:h;h=-1>>>(h-c|0)&-1<>2]=f[g>>2]&~h|f[a>>2]&h;b=c+b|0;h=a+4|0;g=g+(b>>>5<<2)|0;d=h;c=e-c|0;b=b&31}e=c>>>5;rn(g|0,d|0,e<<2|0)|0;d=c-(e<<5)|0;a=g+(e<<2)|0;c=a;if((d|0)>0){b=-1>>>(32-d|0);f[a>>2]=f[a>>2]&~b|f[h+(e<<2)>>2]&b;b=d}}f[o>>2]=c;f[o+4>>2]=b;u=p;return}function Tg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;s=v;e=f[a+40>>2]|0;j=f[a+44>>2]|0;if((e|0)==(j|0)){t=0;u=v;return t|0}k=s+11|0;m=s+4|0;l=d+11|0;n=d+4|0;a=e;a:while(1){f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;do if($j(f[a>>2]|0,c,s)|0?(p=b[k>>0]|0,q=p<<24>>24<0,p=p&255,o=q?f[m>>2]|0:p,i=b[l>>0]|0,r=i<<24>>24<0,(o|0)==((r?f[n>>2]|0:i&255)|0)):0){g=f[s>>2]|0;i=q?g:s;e=r?f[d>>2]|0:d;h=(o|0)==0;if(q){if(h)break a;if(!(nm(i,e,o)|0))break a;else break}if(h)break a;if((g&255)<<24>>24==(b[e>>0]|0)){g=p;h=s;do{g=g+-1|0;h=h+1|0;if(!g)break a;e=e+1|0}while((b[h>>0]|0)==(b[e>>0]|0))}}while(0);Op(s);a=a+4|0;if((a|0)==(j|0)){a=0;t=14;break}}if((t|0)==14){u=v;return a|0}t=f[a>>2]|0;Op(s);u=v;return t|0}function Ug(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=f[d>>2]|0;m=f[d+4>>2]|0;a:do if((e|0)==(m|0)){n=a+8|0;o=a+12|0;q=0}else{k=f[c>>2]|0;l=a+8|0;j=a+12|0;d=0;b:while(1){h=f[e>>2]|0;i=f[k+(h<<2)>>2]|0;if((i|0)>=(d|0)){d=f[l>>2]|0;c=(f[j>>2]|0)-d|0;if((c|0)>0){g=c>>2;a=0;do{c=f[d+(a<<2)>>2]|0;if(b[c+84>>0]|0)break b;c=f[c+68>>2]|0;f[c+(i<<2)>>2]=f[c+(h<<2)>>2];a=a+1|0}while((a|0)<(g|0))}d=i+1|0}e=e+4|0;if((e|0)==(m|0)){n=l;o=j;q=d;break a}}Ga(21905,21924,89,22019)}while(0);c=f[o>>2]|0;d=f[n>>2]|0;if((c-d|0)>0)j=0;else return;do{g=f[d+(j<<2)>>2]|0;b[g+84>>0]=0;h=g+68|0;g=g+72|0;e=f[g>>2]|0;a=f[h>>2]|0;i=e-a>>2;if(q>>>0<=i>>>0){if(q>>>0>>0?(p=a+(q<<2)|0,(e|0)!=(p|0)):0)f[g>>2]=e+(~((e+-4-p|0)>>>2)<<2)}else{Xh(h,q-i|0,5152);d=f[n>>2]|0;c=f[o>>2]|0}j=j+1|0}while((j|0)<(c-d>>2|0));return}function Vg(a,c){a=a|0;c=c|0;var d=0,e=La,g=La,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=La,x=La,y=0,z=0;v=u;u=u+16|0;p=v;m=f[a+24>>2]|0;r=a+8|0;d=b[(f[r>>2]|0)+24>>0]|0;o=d<<24>>24;t=o<<2;s=as(o>>>0>1073741823?-1:o<<2)|0;zq(p);Ho(p,$(n[a+32>>2]),(1<>2]|0;m=(f[f[m>>2]>>2]|0)+(f[m+48>>2]|0)|0;if(!c){bs(s);u=v;return 1}q=p+4|0;l=a+28|0;if(d<<24>>24>0){h=0;i=0;j=0}else{a=0;d=0;while(1){Fh((f[f[(f[r>>2]|0)+64>>2]>>2]|0)+d|0,s|0,t|0)|0;a=a+1|0;if((a|0)==(c|0))break;else d=d+t|0}bs(s);u=v;return 1}while(1){a=f[l>>2]|0;e=$(n[q>>2]);g=$(n[p>>2]);d=0;k=j;while(1){z=f[m+(k<<2)>>2]|0;y=(z|0)<0;w=$(e*$((y?0-z|0:z)|0));x=$(-w);w=$(g*(y?x:w));w=$($(n[a+(d<<2)>>2])+w);n[s+(d<<2)>>2]=w;d=d+1|0;if((d|0)==(o|0))break;else k=k+1|0}Fh((f[f[(f[r>>2]|0)+64>>2]>>2]|0)+i|0,s|0,t|0)|0;h=h+1|0;if((h|0)==(c|0))break;else{i=i+t|0;j=o+j|0}}bs(s);u=v;return 1}function Wg(a,b){a=a|0;b=b|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=d[b>>1]|0;k=d[b+2>>1]|0;l=d[b+4>>1]|0;i=d[b+6>>1]|0;b=((((j^318)&65535)+239^k&65535)+239^l&65535)+239^i&65535;e=f[a+4>>2]|0;if(!e){l=0;return l|0}h=e+-1|0;c=(h&e|0)==0;if(c)g=b&h;else g=(b>>>0)%(e>>>0)|0;b=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!b){l=0;return l|0}b=f[b>>2]|0;if(!b){l=0;return l|0}if(c){while(1){if((f[b+4>>2]&h|0)!=(g|0)){b=0;a=20;break}if((((d[b+8>>1]|0)==j<<16>>16?(d[b+10>>1]|0)==k<<16>>16:0)?(d[b+12>>1]|0)==l<<16>>16:0)?(d[b+14>>1]|0)==i<<16>>16:0){a=20;break}b=f[b>>2]|0;if(!b){b=0;a=20;break}}if((a|0)==20)return b|0}else{while(1){if((((f[b+4>>2]|0)>>>0)%(e>>>0)|0|0)!=(g|0)){b=0;a=20;break}if((((d[b+8>>1]|0)==j<<16>>16?(d[b+10>>1]|0)==k<<16>>16:0)?(d[b+12>>1]|0)==l<<16>>16:0)?(d[b+14>>1]|0)==i<<16>>16:0){a=20;break}b=f[b>>2]|0;if(!b){b=0;a=20;break}}if((a|0)==20)return b|0}return 0}function Xg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=b+16|0;l=f[k>>2]|0;g=(f[c>>2]|0)-l|0;i=c+4|0;e=(f[i>>2]|0)-l|0;j=c;f[j>>2]=g;f[j+4>>2]=e;j=f[k>>2]|0;if((j|0)<(g|0))Ga(11111,10410,250,11134);if((j|0)<(e|0))Ga(11146,10410,251,11134);h=0-j|0;if((g|0)<(h|0))Ga(11169,10410,252,11134);if((e|0)<(h|0))Ga(11193,10410,253,11134);if((((e|0)>-1?e:0-e|0)+((g|0)>-1?g:0-g|0)|0)>(j|0)){Pi(b+4|0,c,i);g=f[c>>2]|0;e=f[i>>2]|0;h=f[k>>2]|0;i=0}else{h=j;i=1}c=(f[d>>2]|0)+g|0;f[a>>2]=c;e=(f[d+4>>2]|0)+e|0;g=a+4|0;f[g>>2]=e;if((h|0)>=(c|0)){if((c|0)<(0-h|0))c=(f[b+8>>2]|0)+c|0}else c=c-(f[b+8>>2]|0)|0;f[a>>2]=c;if((h|0)>=(e|0)){if((e|0)<(0-h|0))e=(f[b+8>>2]|0)+e|0}else e=e-(f[b+8>>2]|0)|0;f[g>>2]=e;if(i){d=c;b=e;d=d+l|0;l=b+l|0;b=a;a=b;f[a>>2]=d;b=b+4|0;f[b>>2]=l;return}Pi(b+4|0,a,g);d=f[a>>2]|0;b=f[g>>2]|0;d=d+l|0;l=b+l|0;b=a;a=b;f[a>>2]=d;b=b+4|0;f[b>>2]=l;return}function Yg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=b[c>>0]|0;k=b[c+1>>0]|0;l=b[c+2>>0]|0;i=b[c+3>>0]|0;c=(((j&255^318)+239^k&255)+239^l&255)+239^i&255;e=f[a+4>>2]|0;if(!e){l=0;return l|0}h=e+-1|0;d=(h&e|0)==0;if(d)g=c&h;else g=(c>>>0)%(e>>>0)|0;c=f[(f[a>>2]|0)+(g<<2)>>2]|0;if(!c){l=0;return l|0}c=f[c>>2]|0;if(!c){l=0;return l|0}if(d){while(1){if((f[c+4>>2]&h|0)!=(g|0)){c=0;a=20;break}if((((b[c+8>>0]|0)==j<<24>>24?(b[c+9>>0]|0)==k<<24>>24:0)?(b[c+10>>0]|0)==l<<24>>24:0)?(b[c+11>>0]|0)==i<<24>>24:0){a=20;break}c=f[c>>2]|0;if(!c){c=0;a=20;break}}if((a|0)==20)return c|0}else{while(1){if((((f[c+4>>2]|0)>>>0)%(e>>>0)|0|0)!=(g|0)){c=0;a=20;break}if((((b[c+8>>0]|0)==j<<24>>24?(b[c+9>>0]|0)==k<<24>>24:0)?(b[c+10>>0]|0)==l<<24>>24:0)?(b[c+11>>0]|0)==i<<24>>24:0){a=20;break}c=f[c>>2]|0;if(!c){c=0;a=20;break}}if((a|0)==20)return c|0}return 0}function Zg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;f[h>>2]=b;if((b|0)<=-1)Ga(22036,22048,102,22141);i=a+8|0;if(((f[a+12>>2]|0)-(f[i>>2]|0)>>2|0)<=(b|0))si(i,b+1|0);d=f[(f[c>>2]|0)+56>>2]|0;do if((d|0)<5){g=a+20+(d*12|0)+4|0;e=f[g>>2]|0;if((e|0)==(f[a+20+(d*12|0)+8>>2]|0)){Bj(a+20+(d*12|0)|0,h);break}else{f[e>>2]=b;f[g>>2]=e+4;break}}while(0);g=f[c>>2]|0;a=f[h>>2]|0;f[g+60>>2]=a;a=(f[i>>2]|0)+(a<<2)|0;f[c>>2]=0;b=f[a>>2]|0;f[a>>2]=g;if(!b){u=j;return}a=b+88|0;d=f[a>>2]|0;f[a>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;ds(e)}ds(d)}d=f[b+68>>2]|0;if(d|0){g=b+72|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}a=b+64|0;d=f[a>>2]|0;f[a>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;ds(e)}ds(d)}ds(b);u=j;return}function _g(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=c;h=d-j|0;i=a+8|0;e=f[i>>2]|0;g=f[a>>2]|0;k=g;if(h>>>0>(e-g|0)>>>0){if(g){e=a+4|0;if((f[e>>2]|0)!=(k|0))f[e>>2]=k;ds(k);f[i>>2]=0;f[e>>2]=0;f[a>>2]=0;e=0}if((h|0)<0){Pq(a);e=f[i>>2]|0;g=f[a>>2]|0}else g=0;k=e-g|0;g=k<<1;g=k>>>0<1073741823?(g>>>0>>0?h:g):2147483647;if((g|0)<0)Pq(a);e=no(g)|0;h=a+4|0;f[h>>2]=e;f[a>>2]=e;f[i>>2]=e+g;if((c|0)==(d|0))return;do{b[e>>0]=b[c>>0]|0;c=c+1|0;e=(f[h>>2]|0)+1|0;f[h>>2]=e}while((c|0)!=(d|0));return}else{a=a+4|0;i=(f[a>>2]|0)-g|0;h=h>>>0>i>>>0;i=c+i|0;g=h?i:d;e=g-j|0;if(e|0)rn(k|0,c|0,e|0)|0;c=k+e|0;if(!h){if((f[a>>2]|0)==(c|0))return;f[a>>2]=c;return}if((g|0)==(d|0))return;e=f[a>>2]|0;c=i;do{b[e>>0]=b[c>>0]|0;c=c+1|0;e=(f[a>>2]|0)+1|0;f[a>>2]=e}while((c|0)!=(d|0));return}}function $g(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+8|0;e=f[n>>2]|0;m=a+4|0;d=f[m>>2]|0;if(e-d>>2>>>0>=b>>>0){_j(d|0,0,b<<2|0)|0;f[m>>2]=d+(b<<2);return}c=f[a>>2]|0;h=(d-c>>2)+b|0;if(h>>>0>1073741823){Pq(a);g=f[a>>2]|0;d=f[m>>2]|0;e=f[n>>2]|0}else g=c;c=d;l=g;k=e-g|0;j=k>>1;h=k>>2>>>0<536870911?(j>>>0>>0?h:j):1073741823;j=d-g>>2;do if(h)if(h>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}else{i=no(h<<2)|0;break}else i=0;while(0);e=i+(j<<2)|0;_j(e|0,0,b<<2|0)|0;d=e;k=i+(h<<2)|0;h=i+(j+b<<2)|0;if((c|0)!=(l|0)){do{c=c+-4|0;b=f[c>>2]|0;f[c>>2]=0;f[e+-4>>2]=b;e=d+-4|0;d=e}while((c|0)!=(l|0));g=f[a>>2]|0;c=f[m>>2]|0}f[a>>2]=d;f[m>>2]=h;f[n>>2]=k;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)Pa[f[(f[d>>2]|0)+4>>2]&255](d)}while((c|0)!=(e|0));if(!g)return;ds(g);return}function ah(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=f[b>>2]|0;j=f[b+4>>2]|0;k=f[b+8>>2]|0;h=f[b+12>>2]|0;b=(((i^318)+239^j)+239^k)+239^h;d=f[a+4>>2]|0;if(!d){k=0;return k|0}g=d+-1|0;c=(g&d|0)==0;if(c)e=b&g;else e=(b>>>0)%(d>>>0)|0;b=f[(f[a>>2]|0)+(e<<2)>>2]|0;if(!b){k=0;return k|0}b=f[b>>2]|0;if(!b){k=0;return k|0}if(c){while(1){if((f[b+4>>2]&g|0)!=(e|0)){b=0;a=20;break}if((((f[b+8>>2]|0)==(i|0)?(f[b+12>>2]|0)==(j|0):0)?(f[b+16>>2]|0)==(k|0):0)?(f[b+20>>2]|0)==(h|0):0){a=20;break}b=f[b>>2]|0;if(!b){b=0;a=20;break}}if((a|0)==20)return b|0}else{while(1){if((((f[b+4>>2]|0)>>>0)%(d>>>0)|0|0)!=(e|0)){b=0;a=20;break}if((((f[b+8>>2]|0)==(i|0)?(f[b+12>>2]|0)==(j|0):0)?(f[b+16>>2]|0)==(k|0):0)?(f[b+20>>2]|0)==(h|0):0){a=20;break}b=f[b>>2]|0;if(!b){b=0;a=20;break}}if((a|0)==20)return b|0}return 0}function bh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;k=l+16|0;g=l+12|0;h=l+8|0;i=l+4|0;j=l;e=f[c+4>>2]|0;if(!e)Ga(11768,11977,62,12198);c=f[c+8>>2]|0;if(!c)Ga(11768,11977,62,12198);c=f[c+(d<<2)>>2]|0;if(!(b[e+84>>0]|0))c=f[(f[e+68>>2]|0)+(c<<2)>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;switch(b[e+24>>0]|0){case 1:{f[g>>2]=c;f[k>>2]=f[g>>2];$f(e,k,a)|0;u=l;return}case 2:{f[h>>2]=c;f[k>>2]=f[h>>2];_f(e,k,a)|0;u=l;return}case 3:{f[i>>2]=c;f[k>>2]=f[i>>2];Zf(e,k,a)|0;u=l;return}case 4:{f[j>>2]=c;f[k>>2]=f[j>>2];Yf(e,k,a)|0;u=l;return}default:{u=l;return}}}function ch(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=f[a+32>>2]|0;h=c+8|0;j=f[h+4>>2]|0;g=c+16|0;d=g;e=f[d>>2]|0;d=f[d+4>>2]|0;if(!((j|0)>(d|0)|((j|0)==(d|0)?(f[h>>2]|0)>>>0>e>>>0:0))){j=0;return j|0}h=b[(f[c>>2]|0)+e>>0]|0;c=Kp(e|0,d|0,1,0)|0;e=g;f[e>>2]=c;f[e+4>>2]=I;e=a+48|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Pa[f[(f[c>>2]|0)+4>>2]&255](c);switch(h<<24>>24){case 0:{c=no(336)|0;wk(c);d=f[e>>2]|0;f[e>>2]=c;if(d){Pa[f[(f[d>>2]|0)+4>>2]&255](d);i=11}break}case 1:{c=no(376)|0;Hk(c);d=f[e>>2]|0;f[e>>2]=c;if(d){Pa[f[(f[d>>2]|0)+4>>2]&255](d);i=11}break}case 2:{c=no(392)|0;tj(c);d=f[e>>2]|0;f[e>>2]=c;if(d){Pa[f[(f[d>>2]|0)+4>>2]&255](d);i=11}break}default:i=11}if((i|0)==11){c=f[e>>2]|0;if(!c){j=0;return j|0}}j=Wa[f[(f[c>>2]|0)+8>>2]&127](c,a)|0;return j|0}function dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;f[a+4>>2]=f[b+4>>2];g=a+8|0;i=b+8|0;if((a|0)==(b|0))return a|0;h=b+12|0;c=f[h>>2]|0;if(!c)c=0;else{e=a+16|0;if(c>>>0>f[e>>2]<<5>>>0){d=f[g>>2]|0;if(d){ds(d);f[g>>2]=0;f[e>>2]=0;f[a+12>>2]=0;c=f[h>>2]|0}if((c|0)<0)Pq(g);d=((c+-1|0)>>>5)+1|0;c=no(d<<2)|0;f[g>>2]=c;f[a+12>>2]=0;f[e>>2]=d;d=f[h>>2]|0}else{d=c;c=f[g>>2]|0}rn(c|0,f[i>>2]|0,((d+-1|0)>>>5<<2)+4|0)|0;c=f[h>>2]|0}f[a+12>>2]=c;h=a+20|0;i=b+20|0;g=b+24|0;c=f[g>>2]|0;if(!c)c=0;else{e=a+28|0;if(c>>>0>f[e>>2]<<5>>>0){d=f[h>>2]|0;if(d){ds(d);f[h>>2]=0;f[e>>2]=0;f[a+24>>2]=0;c=f[g>>2]|0}if((c|0)<0)Pq(h);d=((c+-1|0)>>>5)+1|0;c=no(d<<2)|0;f[h>>2]=c;f[a+24>>2]=0;f[e>>2]=d;d=f[g>>2]|0}else{d=c;c=f[h>>2]|0}rn(c|0,f[i>>2]|0,((d+-1|0)>>>5<<2)+4|0)|0;c=f[g>>2]|0}f[a+24>>2]=c;return a|0}function eh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=u;u=u+32|0;i=j+16|0;h=j;k=c+8|0;l=f[k+4>>2]|0;g=c+16|0;d=g;e=f[d>>2]|0;d=f[d+4>>2]|0;if(!((l|0)>(d|0)|((l|0)==(d|0)?(f[k>>2]|0)>>>0>e>>>0:0))){l=0;u=j;return l|0}l=b[(f[c>>2]|0)+e>>0]|0;e=Kp(e|0,d|0,1,0)|0;k=g;f[k>>2]=e;f[k+4>>2]=I;if(l<<24>>24){l=0;u=j;return l|0}g=0;do{rk(i,c)|0;d=f[i>>2]|0;if(d|0){e=a+44+(g*12|0)|0;sf(e,d,0);Ar(h);xg(h,c)|0;if(f[i>>2]|0){d=0;do{n=Cl(h)|0;l=(f[e>>2]|0)+(d>>>5<<2)|0;k=1<<(d&31);m=f[l>>2]|0;f[l>>2]=n?m|k:m&~k;d=d+1|0}while(d>>>0<(f[i>>2]|0)>>>0)}is(h)}g=g+1|0}while((g|0)<4);n=aj(a+8|0,c)|0;u=j;return n|0}function fh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;d=f[k>>2]|0;if(((g-d|0)/12|0)>>>0>=b>>>0){do{f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=(f[k>>2]|0)+12|0;f[k>>2]=d;b=b+-1|0}while((b|0)!=0);return}e=f[a>>2]|0;h=((d-e|0)/12|0)+b|0;if(h>>>0>357913941){Pq(a);e=f[a>>2]|0;g=f[j>>2]|0;d=f[k>>2]|0}i=(g-e|0)/12|0;g=i<<1;g=i>>>0<178956970?(g>>>0>>0?h:g):357913941;d=(d-e|0)/12|0;do if(g)if(g>>>0>357913941){k=Ia(4)|0;Hr(k);sa(k|0,1488,137)}else{e=no(g*12|0)|0;break}else e=0;while(0);i=e+(d*12|0)|0;h=e+(g*12|0)|0;d=i;g=i;do{f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=g+12|0;g=d;b=b+-1|0}while((b|0)!=0);d=f[a>>2]|0;e=(f[k>>2]|0)-d|0;b=i+(((e|0)/-12|0)*12|0)|0;if((e|0)>0)Fh(b|0,d|0,e|0)|0;f[a>>2]=b;f[k>>2]=g;f[j>>2]=h;if(!d)return;ds(d);return}function gh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=a+20|0;if(Id(a,b)|0){e=0;return e|0}d=hc(a,b)|0;b=f[c>>2]|0;f[c>>2]=0;e=f[d>>2]|0;f[d>>2]=b;if(!e){e=1;return e|0}a=f[e+28>>2]|0;if(a|0)do{d=a;a=f[a>>2]|0;gj(d+8|0);ds(d)}while((a|0)!=0);d=e+20|0;a=f[d>>2]|0;f[d>>2]=0;if(a|0)ds(a);a=f[e+8>>2]|0;if(a|0)do{d=a;a=f[a>>2]|0;b=f[d+20>>2]|0;if(b|0){c=d+24|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;ds(b)}Op(d+8|0);ds(d)}while((a|0)!=0);a=f[e>>2]|0;f[e>>2]=0;if(a|0)ds(a);ds(e);e=1;return e|0}function hh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+8|0;f[c>>2]=f[b>>2];dh(a+12|0,b+4|0)|0;d=a+44|0;e=b+36|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];if((c|0)==(b|0)){f[a+96>>2]=f[b+88>>2];return}else{Eg(a+60|0,f[b+52>>2]|0,f[b+56>>2]|0);Eg(a+72|0,f[b+64>>2]|0,f[b+68>>2]|0);Eg(a+84|0,f[b+76>>2]|0,f[b+80>>2]|0);f[a+96>>2]=f[b+88>>2];Rg(a+100|0,f[b+92>>2]|0,f[b+96>>2]|0);return}}function ih(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=c+8|0;l=f[m>>2]|0;m=f[m+4>>2]|0;p=c+16|0;n=p;o=f[n>>2]|0;n=f[n+4>>2]|0;e=Kp(o|0,n|0,4,0)|0;d=I;if((m|0)<(d|0)|(m|0)==(d|0)&l>>>0>>0){a=0;return a|0}k=f[c>>2]|0;g=k+o|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;i=p;f[i>>2]=e;f[i+4>>2]=d;i=Kp(o|0,n|0,8,0)|0;j=I;if((m|0)<(j|0)|(m|0)==(j|0)&l>>>0>>0){a=0;return a|0}d=k+e|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;e=p;f[e>>2]=i;f[e+4>>2]=j;f[a+12>>2]=g;f[a+16>>2]=d;g=d+(1-g)|0;f[a+20>>2]=g;d=(g|0)/2|0;e=a+24|0;f[e>>2]=d;f[a+28>>2]=0-d;if(!(g&1))f[e>>2]=d+-1;if(!((m|0)>(j|0)|(m|0)==(j|0)&l>>>0>i>>>0)){a=0;return a|0}d=b[k+i>>0]|0;o=Kp(o|0,n|0,9,0)|0;f[p>>2]=o;f[p+4>>2]=I;if((d&255)>=2){a=0;return a|0}f[a+88>>2]=d&255;a=xg(a+108|0,c)|0;return a|0}function jh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;j=u;u=u+32|0;i=j+16|0;h=j;k=c+8|0;l=f[k+4>>2]|0;g=c+16|0;d=g;e=f[d>>2]|0;d=f[d+4>>2]|0;if(!((l|0)>(d|0)|((l|0)==(d|0)?(f[k>>2]|0)>>>0>e>>>0:0))){l=0;u=j;return l|0}l=b[(f[c>>2]|0)+e>>0]|0;e=Kp(e|0,d|0,1,0)|0;k=g;f[k>>2]=e;f[k+4>>2]=I;if(l<<24>>24){l=0;u=j;return l|0}g=0;do{rk(i,c)|0;d=f[i>>2]|0;if(d|0){e=a+44+(g*12|0)|0;sf(e,d,0);Ar(h);xg(h,c)|0;if(f[i>>2]|0){d=0;do{n=Cl(h)|0;l=(f[e>>2]|0)+(d>>>5<<2)|0;k=1<<(d&31);m=f[l>>2]|0;f[l>>2]=n?m|k:m&~k;d=d+1|0}while(d>>>0<(f[i>>2]|0)>>>0)}is(h)}g=g+1|0}while((g|0)<4);n=cj(a+8|0,c)|0;u=j;return n|0}function kh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+80|0;g=j;i=j+64|0;Jm(g);e=f[(f[a+8>>2]|0)+56>>2]|0;h=X(bn(5)|0,d)|0;qk(g,e,0,d&255,5,0,h,((h|0)<0)<<31>>31,0,0);h=no(96)|0;wm(h,g);b[h+84>>0]=1;d=f[h+68>>2]|0;g=h+72|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);jk(h,c)|0;f[i>>2]=h;Nj(a,i);h=f[i>>2]|0;f[i>>2]=0;if(!h){u=j;return}i=h+88|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;ds(e)}ds(d)}d=f[h+68>>2]|0;if(d|0){g=h+72|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}i=h+64|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;ds(e)}ds(d)}ds(h);u=j;return}function lh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=5124;b=f[a+68>>2]|0;if(b|0){d=a+72|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}c=f[a+56>>2]|0;if(c|0){d=a+60|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c)}b=f[a+44>>2]|0;if(b|0){d=a+48|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+32>>2]|0;if(b|0){d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}Zi(a+8|0);a=a+4|0;e=f[a>>2]|0;f[a>>2]=0;if(!e)return;d=e+40|0;b=f[d>>2]|0;if(b|0){a=e+44|0;c=f[a>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[a>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0){Jj(c);ds(c)}c=f[a>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}ds(b)}Jj(e);ds(e);return}function mh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;d=f[a+8>>2]|0;e=f[c>>2]|0;h=(e|0)/3|0;if((e|0)<=-3)Ga(22786,22811,63,22889);g=f[d+96>>2]|0;if((h|0)>=(((f[d+100>>2]|0)-g|0)/12|0|0))Ga(22894,22811,64,22889);h=f[g+(h*12|0)+(((e|0)%3|0)<<2)>>2]|0;d=f[a+12>>2]|0;f[i>>2]=h;d=f[d+4>>2]|0;g=d+4|0;e=f[g>>2]|0;if((e|0)==(f[d+8>>2]|0))Bj(d,i);else{f[e>>2]=h;f[g>>2]=e+4}h=a+4|0;e=f[h>>2]|0;g=e+4|0;d=f[g>>2]|0;if((d|0)==(f[e+8>>2]|0)){Bj(e,c);i=f[h>>2]|0;c=i+24|0;a=f[c>>2]|0;b=f[b>>2]|0;i=i+12|0;i=f[i>>2]|0;b=i+(b<<2)|0;f[b>>2]=a;b=f[c>>2]|0;b=b+1|0;f[c>>2]=b;u=j;return}else{f[d>>2]=f[c>>2];f[g>>2]=d+4;i=e;c=i+24|0;a=f[c>>2]|0;b=f[b>>2]|0;i=i+12|0;i=f[i>>2]|0;b=i+(b<<2)|0;f[b>>2]=a;b=f[c>>2]|0;b=b+1|0;f[c>>2]=b;u=j;return}}function nh(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;o=p+4|0;n=p;f[a+56>>2]=e;f[a+48>>2]=g;l=as(e>>>0>1073741823?-1:e<<2)|0;m=a+52|0;d=f[m>>2]|0;f[m>>2]=l;if(d|0)bs(d);j=a+40|0;g=f[j>>2]|0;h=f[g+4>>2]|0;d=f[g>>2]|0;l=h-d|0;k=l>>2;if((l|0)<=0){u=p;return 1}l=a+8|0;i=h;h=0;while(1){if(i-d>>2>>>0<=h>>>0){Oq(g);d=f[g>>2]|0}f[n>>2]=f[d+(h<<2)>>2];f[o>>2]=f[n>>2];sc(a,o,c,h);i=X(h,e)|0;$i(l,f[m>>2]|0,b+(i<<2)|0,c+(i<<2)|0);h=h+1|0;if((h|0)>=(k|0))break;i=f[j>>2]|0;g=i;d=f[i>>2]|0;i=f[i+4>>2]|0}u=p;return 1}function oh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;m=n;d=lm(c,0)|0;if(!d){f[a>>2]=0;u=n;return}l=c+96|0;e=c+100|0;uk(m,((f[e>>2]|0)-(f[l>>2]|0)|0)/12|0);c=f[l>>2]|0;e=(f[e>>2]|0)-c|0;if((e|0)>0){l=d+68|0;k=f[m>>2]|0;j=(b[d+84>>0]|0)==0;i=(e|0)/12|0;h=0;do{d=c+(h*12|0)|0;if(j){o=f[l>>2]|0;e=o+(f[c+(h*12|0)+8>>2]<<2)|0;g=o+(f[c+(h*12|0)+4>>2]<<2)|0;d=o+(f[d>>2]<<2)|0}else{e=c+(h*12|0)+8|0;g=c+(h*12|0)+4|0}g=f[g>>2]|0;o=f[e>>2]|0;f[k+(h*12|0)>>2]=f[d>>2];f[k+(h*12|0)+4>>2]=g;f[k+(h*12|0)+8>>2]=o;h=h+1|0}while((h|0)<(i|0))}gl(a,m);e=f[m>>2]|0;if(e|0){d=m+4|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~(((c+-12-e|0)>>>0)/12|0)*12|0);ds(e)}u=n;return}function ph(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+24|0;j=n+16|0;k=n+8|0;m=n;l=a+4|0;o=f[l>>2]|0;e=f[b>>2]|0;b=f[b+4>>2]|0;h=f[c>>2]|0;d=f[c+4>>2]|0;g=h-e<<3;f[l>>2]=o-b+d+g;l=(f[a>>2]|0)+(o>>>5<<2)|0;a=o&31;c=l;if((b|0)!=(a|0)){f[i>>2]=e;f[i+4>>2]=b;f[j>>2]=h;f[j+4>>2]=d;f[k>>2]=c;f[k+4>>2]=a;hf(m,i,j,k);u=n;return}d=d-b+g|0;a=e;if((d|0)>0){if(!b){h=a;c=d;a=l;b=0}else{h=32-b|0;c=(d|0)<(h|0)?d:h;h=-1>>>(h-c|0)&-1<>2]=f[l>>2]&~h|f[a>>2]&h;b=c+b|0;h=a+4|0;e=h;c=d-c|0;a=l+(b>>>5<<2)|0;b=b&31}g=c>>>5;rn(a|0,e|0,g<<2|0)|0;d=c-(g<<5)|0;a=a+(g<<2)|0;c=a;if((d|0)>0){b=-1>>>(32-d|0);f[a>>2]=f[a>>2]&~b|f[h+(g<<2)>>2]&b;b=d}}f[m>>2]=c;f[m+4>>2]=b;u=n;return}function qh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=a+4|0;d=f[l>>2]|0;c=f[a>>2]|0;e=(d-c>>2)+1|0;if(e>>>0>1073741823){Pq(a);c=f[a>>2]|0;d=f[l>>2]|0}k=a+8|0;j=(f[k>>2]|0)-c|0;g=j>>1;g=j>>2>>>0<536870911?(g>>>0>>0?e:g):1073741823;c=d-c>>2;do if(g)if(g>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}else{e=no(g<<2)|0;break}else e=0;while(0);h=e+(c<<2)|0;d=h;j=e+(g<<2)|0;i=f[b>>2]|0;f[b>>2]=0;f[h>>2]=i;i=h+4|0;b=f[a>>2]|0;c=f[l>>2]|0;if((c|0)==(b|0)){g=b;c=b}else{e=h;do{c=c+-4|0;h=f[c>>2]|0;f[c>>2]=0;f[e+-4>>2]=h;e=d+-4|0;d=e}while((c|0)!=(b|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=d;f[l>>2]=i;f[k>>2]=j;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){Jj(d);ds(d)}}while((c|0)!=(e|0));if(!g)return;ds(g);return}function rh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;g=f[c>>2]|0;f[c>>2]=0;f[i>>2]=g;Zg(a,b,i);g=f[i>>2]|0;f[i>>2]=0;if(g|0){i=g+88|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;ds(d)}ds(c)}c=f[g+68>>2]|0;if(c|0){e=g+72|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}i=g+64|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;ds(d)}ds(c)}ds(g)}i=a+84|0;h=a+88|0;c=f[h>>2]|0;g=f[i>>2]|0;a=c-g>>2;if((a|0)>(b|0)){u=j;return}e=b+1|0;d=c;if(e>>>0>a>>>0){bi(i,e-a|0);u=j;return}if(e>>>0>=a>>>0){u=j;return}c=g+(e<<2)|0;if((d|0)==(c|0)){u=j;return}f[h>>2]=d+(~((d+-4-c|0)>>>2)<<2);u=j;return}function sh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a=a+4|0;e=f[a>>2]|0;if(!e){f[c>>2]=a;n=a;return n|0}l=b[d+11>>0]|0;k=l<<24>>24<0;l=k?f[d+4>>2]|0:l&255;k=k?f[d>>2]|0:d;while(1){g=e+16|0;d=b[g+11>>0]|0;i=d<<24>>24<0;d=i?f[e+20>>2]|0:d&255;h=d>>>0>>0;a=h?d:l;if((a|0)!=0?(n=nm(k,i?f[g>>2]|0:g,a)|0,(n|0)!=0):0)if((n|0)<0)j=7;else j=9;else if(l>>>0>>0)j=7;else j=9;if((j|0)==7){a=f[e>>2]|0;if(!a){j=8;break}}else if((j|0)==9){j=0;a=l>>>0>>0?l:d;if((a|0)!=0?(m=nm(i?f[g>>2]|0:g,k,a)|0,(m|0)!=0):0){if((m|0)>=0){j=16;break}}else j=11;if((j|0)==11?(0,!h):0){j=16;break}d=e+4|0;a=f[d>>2]|0;if(!a){j=15;break}}e=a}if((j|0)==8){f[c>>2]=e;n=e;return n|0}else if((j|0)==15){f[c>>2]=e;n=d;return n|0}else if((j|0)==16){f[c>>2]=e;n=c;return n|0}return 0}function th(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=f[c>>2]|0;h=f[a>>2]|0;j=h+(e>>>5<<2)|0;f[j>>2]=f[j>>2]|1<<(e&31);j=f[a+64>>2]|0;g=(e|0)<0;c=e+1|0;if(!g?(d=((c|0)%3|0|0)==0?e+-2|0:c,(d|0)>=0):0)c=f[(f[j>>2]|0)+(d<<2)>>2]|0;else c=-1073741824;i=a+12|0;d=(f[i>>2]|0)+(c>>>5<<2)|0;f[d>>2]=f[d>>2]|1<<(c&31);if(g){j=(f[i>>2]|0)+402653184|0;f[j>>2]=f[j>>2]|1;return}c=(((e>>>0)%3|0|0)==0?2:-1)+e|0;if((c|0)<0)c=-1073741824;else c=f[(f[j>>2]|0)+(c<<2)>>2]|0;d=(f[i>>2]|0)+(c>>>5<<2)|0;f[d>>2]=f[d>>2]|1<<(c&31);if(g)return;d=f[(f[j+12>>2]|0)+(e<<2)>>2]|0;if((d|0)<=-1)return;b[a+24>>0]=0;c=h+(d>>>5<<2)|0;f[c>>2]=f[c>>2]|1<<(d&31);c=d+1|0;c=((c|0)%3|0|0)==0?d+-2|0:c;if((c|0)<0)c=-1073741824;else c=f[(f[j>>2]|0)+(c<<2)>>2]|0;a=(f[i>>2]|0)+(c>>>5<<2)|0;f[a>>2]=f[a>>2]|1<<(c&31);c=(((d>>>0)%3|0|0)==0?2:-1)+d|0;if((c|0)<0)c=-1073741824;else c=f[(f[j>>2]|0)+(c<<2)>>2]|0;j=(f[i>>2]|0)+(c>>>5<<2)|0;f[j>>2]=f[j>>2]|1<<(c&31);return}function uh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+4|0;c=f[n>>2]|0;m=f[a>>2]|0;g=m;do if((c|0)==(m|0)){m=a+8|0;d=f[m>>2]|0;l=a+12|0;k=f[l>>2]|0;e=k;if(d>>>0>>0){a=d;i=((e-a>>2)+1|0)/2|0;g=d+(i<<2)|0;e=a-c|0;a=e>>2;h=g+(0-a<<2)|0;if(!a)c=g;else{rn(h|0,c|0,e|0)|0;d=f[m>>2]|0;c=h}f[n>>2]=c;f[m>>2]=d+(i<<2);break}e=e-g>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823){b=Ia(4)|0;Hr(b);sa(b|0,1488,137)}h=no(e<<2)|0;i=h;k=h+((e+3|0)>>>2<<2)|0;j=k;h=h+(e<<2)|0;if((c|0)==(d|0))d=j;else{e=k;g=j;do{f[e>>2]=f[c>>2];e=g+4|0;g=e;c=c+4|0}while((c|0)!=(d|0));c=f[a>>2]|0;d=g}f[a>>2]=i;f[n>>2]=j;f[m>>2]=d;f[l>>2]=h;if(!c)c=k;else{ds(c);c=f[n>>2]|0}}while(0);f[c+-4>>2]=f[b>>2];f[n>>2]=(f[n>>2]|0)+-4;return}function vh(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;o=p+4|0;n=p;f[a+56>>2]=e;f[a+48>>2]=g;l=as(e>>>0>1073741823?-1:e<<2)|0;m=a+52|0;d=f[m>>2]|0;f[m>>2]=l;if(d|0)bs(d);j=a+40|0;g=f[j>>2]|0;h=f[g+4>>2]|0;d=f[g>>2]|0;l=h-d|0;k=l>>2;if((l|0)<=0){u=p;return 1}l=a+8|0;i=h;h=0;while(1){if(i-d>>2>>>0<=h>>>0){Oq(g);d=f[g>>2]|0}f[n>>2]=f[d+(h<<2)>>2];f[o>>2]=f[n>>2];pc(a,o,c,h);i=X(h,e)|0;$i(l,f[m>>2]|0,b+(i<<2)|0,c+(i<<2)|0);h=h+1|0;if((h|0)>=(k|0))break;i=f[j>>2]|0;g=i;d=f[i>>2]|0;i=f[i+4>>2]|0}u=p;return 1}function wh(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;o=p+4|0;n=p;f[a+56>>2]=e;f[a+48>>2]=g;l=as(e>>>0>1073741823?-1:e<<2)|0;m=a+52|0;d=f[m>>2]|0;f[m>>2]=l;if(d|0)bs(d);j=a+40|0;g=f[j>>2]|0;h=f[g+4>>2]|0;d=f[g>>2]|0;l=h-d|0;k=l>>2;if((l|0)<=0){u=p;return 1}l=a+8|0;i=h;h=0;while(1){if(i-d>>2>>>0<=h>>>0){Oq(g);d=f[g>>2]|0}f[n>>2]=f[d+(h<<2)>>2];f[o>>2]=f[n>>2];sc(a,o,c,h);i=X(h,e)|0;dj(l,f[m>>2]|0,b+(i<<2)|0,c+(i<<2)|0);h=h+1|0;if((h|0)>=(k|0))break;i=f[j>>2]|0;g=i;d=f[i>>2]|0;i=f[i+4>>2]|0}u=p;return 1}function xh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+48|0;j=m+32|0;e=m+28|0;g=m+24|0;h=m+20|0;i=m+16|0;l=m;k=b[a+24>>0]|0;f[l>>2]=f[1289];f[l+4>>2]=f[1290];f[l+8>>2]=f[1291];f[l+12>>2]=f[1292];k=k<<24>>24;switch(k|0){case 1:{f[e>>2]=c;f[j>>2]=f[e>>2];e=hg(a,j,l)|0;break}case 2:{f[g>>2]=c;f[j>>2]=f[g>>2];e=gg(a,j,l)|0;break}case 3:{f[h>>2]=c;f[j>>2]=f[h>>2];e=fg(a,j,l)|0;break}case 4:{f[i>>2]=c;f[j>>2]=f[i>>2];e=eg(a,j,l)|0;break}default:{l=0;u=m;return l|0}}if(!e){l=0;u=m;return l|0}ug(d,l,l+(k<<2)|0);l=1;u=m;return l|0}function yh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=u;u=u+16|0;g=i+4|0;h=i;b=f[b>>2]|0;if((b|0)<0){a=-1073741824;u=i;return a|0}d=a+4|0;c=f[d>>2]|0;e=f[(f[c+12>>2]|0)+(b<<2)>>2]|0;if((e|0)<0){a=-1073741824;u=i;return a|0}k=b+1|0;f[h>>2]=((k|0)%3|0|0)==0?b+-2|0:k;k=f[a>>2]|0;f[g>>2]=f[h>>2];k=pl(g,c,k)|0;f[h>>2]=(((e>>>0)%3|0|0)==0?2:-1)+e;j=f[d>>2]|0;c=f[a>>2]|0;f[g>>2]=f[h>>2];if((k|0)!=(pl(g,j,c)|0)){k=-1073741824;u=i;return k|0}f[h>>2]=b+(((b>>>0)%3|0|0)==0?2:-1);j=f[d>>2]|0;c=f[a>>2]|0;f[g>>2]=f[h>>2];c=pl(g,j,c)|0;j=e+1|0;f[h>>2]=((j|0)%3|0|0)==0?e+-2|0:j;j=f[d>>2]|0;k=f[a>>2]|0;f[g>>2]=f[h>>2];k=(c|0)!=(pl(g,j,k)|0);k=k?-1073741824:e;u=i;return k|0}function zh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+8|0;c=f[n>>2]|0;l=a+12|0;m=f[l>>2]|0;e=m;h=c;do if((c|0)==(m|0)){m=a+4|0;k=f[m>>2]|0;d=f[a>>2]|0;g=d;if(k>>>0>d>>>0){c=k;g=((c-g>>2)+1|0)/-2|0;e=k+(g<<2)|0;c=h-c|0;d=c>>2;if(!d)c=k;else{rn(e|0,k|0,c|0)|0;c=f[m>>2]|0}a=e+(d<<2)|0;f[n>>2]=a;f[m>>2]=c+(g<<2);c=a;break}e=e-g>>1;e=(e|0)==0?1:e;if(e>>>0>1073741823){b=Ia(4)|0;Hr(b);sa(b|0,1488,137)}h=no(e<<2)|0;i=h;g=h+(e>>>2<<2)|0;j=g;h=h+(e<<2)|0;if((k|0)==(c|0))c=j;else{e=g;d=k;g=j;do{f[e>>2]=f[d>>2];e=g+4|0;g=e;d=d+4|0}while((d|0)!=(c|0));d=f[a>>2]|0;c=g}f[a>>2]=i;f[m>>2]=j;f[n>>2]=c;f[l>>2]=h;if(d){ds(d);c=f[n>>2]|0}}while(0);f[c>>2]=f[b>>2];f[n>>2]=(f[n>>2]|0)+4;return}function Ah(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;o=p+4|0;n=p;f[a+56>>2]=e;f[a+48>>2]=g;l=as(e>>>0>1073741823?-1:e<<2)|0;m=a+52|0;d=f[m>>2]|0;f[m>>2]=l;if(d|0)bs(d);j=a+40|0;g=f[j>>2]|0;h=f[g+4>>2]|0;d=f[g>>2]|0;l=h-d|0;k=l>>2;if((l|0)<=0){u=p;return 1}l=a+8|0;i=h;h=0;while(1){if(i-d>>2>>>0<=h>>>0){Oq(g);d=f[g>>2]|0}f[n>>2]=f[d+(h<<2)>>2];f[o>>2]=f[n>>2];pc(a,o,c,h);i=X(h,e)|0;dj(l,f[m>>2]|0,b+(i<<2)|0,c+(i<<2)|0);h=h+1|0;if((h|0)>=(k|0))break;i=f[j>>2]|0;g=i;d=f[i>>2]|0;i=f[i+4>>2]|0}u=p;return 1}function Bh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;h=j+8|0;g=j+4|0;e=j;if(!c){i=0;u=j;return i|0}f[a>>2]=b;f[h>>2]=0;rk(h,b)|0;a:do if(!(f[h>>2]|0))i=8;else{d=0;while(1){rk(g,f[a>>2]|0)|0;b=no(44)|0;k=f[g>>2]|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[b+16>>2]=$(1.0);l=b+20|0;f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[l+12>>2]=0;n[b+36>>2]=$(1.0);f[b+40>>2]=k;if(!(ie(a,b)|0))break;f[e>>2]=b;Vk(c,e)|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0){Jj(b);ds(b)}d=d+1|0;if(d>>>0>=(f[h>>2]|0)>>>0){i=8;break a}}Jj(b);ds(b);b=0}while(0);if((i|0)==8)b=ie(a,c)|0;l=b;u=j;return l|0}function Ch(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;j=k;l=b+8|0;i=f[l>>2]|0;l=f[l+4>>2]|0;g=b+16|0;d=g;c=f[d>>2]|0;d=Kp(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((l|0)<(e|0)|(l|0)==(e|0)&i>>>0>>0){l=0;u=k;return l|0}i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;l=g;f[l>>2]=d;f[l+4>>2]=e;if((i|0)<0){l=0;u=k;return l|0}sf(a+60|0,i,0);Ar(j);if(xg(j,b)|0){if((i|0)>0){c=a+60|0;d=0;e=1;do{e=e^((Cl(j)|0)^1);l=(f[c>>2]|0)+(d>>>5<<2)|0;g=1<<(d&31);m=f[l>>2]|0;f[l>>2]=e?m|g:m&~g;d=d+1|0}while((d|0)<(i|0))}c=aj(a+8|0,b)|0}else c=0;is(j);m=c;u=k;return m|0}function Dh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;d=f[l>>2]|0;do if(d|0){m=b[c+11>>0]|0;k=m<<24>>24<0;m=k?f[c+4>>2]|0:m&255;k=k?f[c>>2]|0:c;a=l;a:while(1){c=d;while(1){e=c+16|0;g=b[e+11>>0]|0;h=g<<24>>24<0;g=h?f[c+20>>2]|0:g&255;d=m>>>0>>0?m:g;if((d|0)!=0?(i=nm(h?f[e>>2]|0:e,k,d)|0,(i|0)!=0):0){if((i|0)>=0)break}else j=6;if((j|0)==6?(j=0,g>>>0>=m>>>0):0)break;c=f[c+4>>2]|0;if(!c)break a}d=f[c>>2]|0;if(!d){a=c;break}else a=c}if((a|0)!=(l|0)){d=a+16|0;e=b[d+11>>0]|0;g=e<<24>>24<0;e=g?f[a+20>>2]|0:e&255;c=e>>>0>>0?e:m;if(c|0?(n=nm(k,g?f[d>>2]|0:d,c)|0,n|0):0){if((n|0)<0)break;return a|0}if(m>>>0>=e>>>0){n=a;return n|0}}}while(0);n=l;return n|0}function Eh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;j=k;l=b+8|0;i=f[l>>2]|0;l=f[l+4>>2]|0;g=b+16|0;d=g;c=f[d>>2]|0;d=Kp(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((l|0)<(e|0)|(l|0)==(e|0)&i>>>0>>0){l=0;u=k;return l|0}i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;l=g;f[l>>2]=d;f[l+4>>2]=e;if((i|0)<0){l=0;u=k;return l|0}e=a+60|0;sf(e,i,0);Ar(j);if(xg(j,b)|0){if((i|0)>0){c=0;d=1;do{d=d^((Cl(j)|0)^1);l=(f[e>>2]|0)+(c>>>5<<2)|0;g=1<<(c&31);m=f[l>>2]|0;f[l>>2]=d?m|g:m&~g;c=c+1|0}while((c|0)<(i|0))}c=aj(a+8|0,b)|0}else c=0;is(j);m=c;u=k;return m|0}function Fh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return Ba(a|0,c|0,d|0)|0;h=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return h|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}d=g&-4|0;e=d-64|0;while((a|0)<=(e|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(d|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{d=g-4|0;while((a|0)<(d|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return h|0}function Gh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+4|0;e=h;g=a+8|0;c=a+84|0;a=f[c>>2]|0;if(!a){c=f[(f[g>>2]|0)+64>>2]|0;c=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;a=(c>>>0)/3|0;if(c>>>0<=2){u=h;return 1}b=0;do{f[e>>2]=b*3;f[d>>2]=f[e>>2];dc(g,d);b=b+1|0}while((b|0)<(a|0));u=h;return 1}else{b=f[a>>2]|0;if((f[a+4>>2]|0)==(b|0)){u=h;return 1}a=0;do{f[e>>2]=f[b+(a<<2)>>2];f[d>>2]=f[e>>2];dc(g,d);a=a+1|0;i=f[c>>2]|0;b=f[i>>2]|0}while(a>>>0<(f[i+4>>2]|0)-b>>2>>>0);u=h;return 1}return 0}function Hh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;j=k;l=b+8|0;i=f[l>>2]|0;l=f[l+4>>2]|0;g=b+16|0;d=g;c=f[d>>2]|0;d=Kp(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((l|0)<(e|0)|(l|0)==(e|0)&i>>>0>>0){l=0;u=k;return l|0}i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;l=g;f[l>>2]=d;f[l+4>>2]=e;if((i|0)<0){l=0;u=k;return l|0}sf(a+60|0,i,0);Ar(j);if(xg(j,b)|0){if((i|0)>0){c=a+60|0;d=0;e=1;do{e=e^((Cl(j)|0)^1);l=(f[c>>2]|0)+(d>>>5<<2)|0;g=1<<(d&31);m=f[l>>2]|0;f[l>>2]=e?m|g:m&~g;d=d+1|0}while((d|0)<(i|0))}c=cj(a+8|0,b)|0}else c=0;is(j);m=c;u=k;return m|0}function Ih(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{g=f[d+4>>2]|0;if((c|0)<=-1)Ga(22609,22625,58,22717);i=f[g+8>>2]|0;if(((f[g+12>>2]|0)-i>>2|0)<=(c|0))Ga(22727,22625,59,22717);g=f[i+(c<<2)>>2]|0;do if((Sa[f[(f[d>>2]|0)+8>>2]&255](d)|0)==1){Xf(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);b=no(44)|0;f[b>>2]=1884;f[b+4>>2]=g;g=b+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[g+16>>2]=f[e+16>>2];f[g+20>>2]=f[e+20>>2];zk(b+32|0,e+24|0);f[b>>2]=1940;g=b}f[a>>2]=g;return}function Jh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+60|0;c=f[i>>2]|0;if(!c){a=0;return a|0}f[c+4>>2]=a+48;if(!(Sa[f[(f[c>>2]|0)+12>>2]&255](c)|0)){a=0;return a|0}g=Sa[f[(f[a>>2]|0)+24>>2]&255](a)|0;a:do if((g|0)>0){h=0;while(1){c=(Sa[f[(f[a>>2]|0)+28>>2]&255](a)|0)+4|0;c=f[c>>2]|0;e=Wa[f[(f[a>>2]|0)+20>>2]&127](a,h)|0;if((e|0)<=-1){d=7;break}d=f[c+8>>2]|0;if(((f[c+12>>2]|0)-d>>2|0)<=(e|0)){d=9;break}c=f[i>>2]|0;h=h+1|0;if(!(Wa[f[(f[c>>2]|0)+8>>2]&127](c,f[d+(e<<2)>>2]|0)|0)){c=0;d=14;break}if((h|0)>=(g|0))break a}if((d|0)==7)Ga(22609,22625,66,22717);else if((d|0)==9)Ga(22727,22625,67,22717);else if((d|0)==14)return c|0}while(0);if(!(Wa[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){a=0;return a|0}if(!(Wa[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){a=0;return a|0}a=Sa[f[(f[a>>2]|0)+44>>2]&255](a)|0;return a|0}function Kh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;i=m+16|0;e=m;d=m+32|0;j=a+28|0;g=f[j>>2]|0;f[d>>2]=g;k=a+20|0;g=(f[k>>2]|0)-g|0;f[d+4>>2]=g;f[d+8>>2]=b;f[d+12>>2]=c;g=g+c|0;h=a+60|0;f[e>>2]=f[h>>2];f[e+4>>2]=d;f[e+8>>2]=2;b=Vp(za(146,e|0)|0)|0;a:do if((g|0)!=(b|0)){e=2;while(1){if((b|0)<0)break;g=g-b|0;o=f[d+4>>2]|0;n=b>>>0>o>>>0;d=n?d+8|0:d;e=(n<<31>>31)+e|0;o=b-(n?o:0)|0;f[d>>2]=(f[d>>2]|0)+o;n=d+4|0;f[n>>2]=(f[n>>2]|0)-o;f[i>>2]=f[h>>2];f[i+4>>2]=d;f[i+8>>2]=e;b=Vp(za(146,i|0)|0)|0;if((g|0)==(b|0)){l=3;break a}}f[a+16>>2]=0;f[j>>2]=0;f[k>>2]=0;f[a>>2]=f[a>>2]|32;if((e|0)==2)c=0;else c=c-(f[d+4>>2]|0)|0}else l=3;while(0);if((l|0)==3){o=f[a+44>>2]|0;f[a+16>>2]=o+(f[a+48>>2]|0);f[j>>2]=o;f[k>>2]=o}u=m;return c|0}function Lh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;k=u;u=u+16|0;j=k;l=b+8|0;i=f[l>>2]|0;l=f[l+4>>2]|0;g=b+16|0;d=g;c=f[d>>2]|0;d=Kp(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((l|0)<(e|0)|(l|0)==(e|0)&i>>>0>>0){l=0;u=k;return l|0}i=(f[b>>2]|0)+c|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;l=g;f[l>>2]=d;f[l+4>>2]=e;if((i|0)<0){l=0;u=k;return l|0}e=a+60|0;sf(e,i,0);Ar(j);if(xg(j,b)|0){if((i|0)>0){c=0;d=1;do{d=d^((Cl(j)|0)^1);l=(f[e>>2]|0)+(c>>>5<<2)|0;g=1<<(c&31);m=f[l>>2]|0;f[l>>2]=d?m|g:m&~g;c=c+1|0}while((c|0)<(i|0))}c=cj(a+8|0,b)|0}else c=0;is(j);m=c;u=k;return m|0}function Mh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;j=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;i=k;d=f[(f[c+4>>2]|0)+(d<<2)>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;c=f[c>>2]|0;if(!(b[c+84>>0]|0))d=f[(f[c+68>>2]|0)+(d<<2)>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[j>>2]=f[e>>2];$f(c,j,a)|0;u=k;return}case 2:{f[g>>2]=d;f[j>>2]=f[g>>2];_f(c,j,a)|0;u=k;return}case 3:{f[h>>2]=d;f[j>>2]=f[h>>2];Zf(c,j,a)|0;u=k;return}case 4:{f[i>>2]=d;f[j>>2]=f[i>>2];Yf(c,j,a)|0;u=k;return}default:{u=k;return}}}function Nh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0;do if(c){i=a+8|0;l=i;j=f[l>>2]|0;l=f[l+4>>2]|0;e=a+16|0;g=e;c=f[g>>2]|0;g=Kp(c|0,f[g+4>>2]|0,8,0)|0;k=I;if((l|0)<(k|0)|(l|0)==(k|0)&j>>>0>>0){l=0;return l|0}else{c=(f[a>>2]|0)+c|0;l=c;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;c=c+4|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;g=d;d=g;b[d>>0]=l;b[d+1>>0]=l>>8;b[d+2>>0]=l>>16;b[d+3>>0]=l>>24;g=g+4|0;b[g>>0]=c;b[g+1>>0]=c>>8;b[g+2>>0]=c>>16;b[g+3>>0]=c>>24;g=e;g=Kp(f[g>>2]|0,f[g+4>>2]|0,8,0)|0;d=I;f[e>>2]=g;f[e+4>>2]=d;e=g;g=a;c=i;break}}else{d=a+16|0;e=f[d>>2]|0;d=f[d+4>>2]|0;g=a;c=a+8|0}while(0);b[a+36>>0]=1;k=(f[g>>2]|0)+e|0;l=c;l=_o(f[l>>2]|0,f[l+4>>2]|0,e|0,d|0)|0;f[a+32>>2]=0;f[a+24>>2]=k;f[a+28>>2]=k+l;l=1;return l|0}function Oh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;j=no(64)|0;i=no(12)|0;g=f[(f[a+4>>2]|0)+80>>2]|0;f[i+4>>2]=0;f[i>>2]=4920;f[i+8>>2]=g;f[k>>2]=i;mm(j,k);i=a+8|0;g=a+12|0;a=f[g>>2]|0;c=f[i>>2]|0;e=a-c>>2;do if((e|0)<=(b|0)){d=b+1|0;if(d>>>0>e>>>0){$g(i,d-e|0);break}if(d>>>0>>0?(h=c+(d<<2)|0,(a|0)!=(h|0)):0)do{e=a+-4|0;f[g>>2]=e;a=f[e>>2]|0;f[e>>2]=0;if(a|0)Pa[f[(f[a>>2]|0)+4>>2]&255](a);a=f[g>>2]|0}while((a|0)!=(h|0))}while(0);i=(f[i>>2]|0)+(b<<2)|0;a=f[i>>2]|0;f[i>>2]=j;if(a|0)Pa[f[(f[a>>2]|0)+4>>2]&255](a);a=f[k>>2]|0;f[k>>2]=0;if(!a){u=l;return 1}Pa[f[(f[a>>2]|0)+4>>2]&255](a);u=l;return 1}function Ph(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+4|0;e=h;g=a+8|0;c=a+84|0;a=f[c>>2]|0;if(!a){c=f[g>>2]|0;c=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;a=(c>>>0)/3|0;if(c>>>0<=2){u=h;return 1}b=0;do{f[e>>2]=b*3;f[d>>2]=f[e>>2];ec(g,d);b=b+1|0}while((b|0)<(a|0));u=h;return 1}else{b=f[a>>2]|0;if((f[a+4>>2]|0)==(b|0)){u=h;return 1}a=0;do{f[e>>2]=f[b+(a<<2)>>2];f[d>>2]=f[e>>2];ec(g,d);a=a+1|0;i=f[c>>2]|0;b=f[i>>2]|0}while(a>>>0<(f[i+4>>2]|0)-b>>2>>>0);u=h;return 1}return 0}function Qh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;j=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;i=k;d=f[(f[c+48>>2]|0)+(d<<2)>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=f[c+44>>2]|0;if(!(b[c+84>>0]|0))d=f[(f[c+68>>2]|0)+(d<<2)>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[j>>2]=f[e>>2];hg(c,j,a)|0;u=k;return}case 2:{f[g>>2]=d;f[j>>2]=f[g>>2];gg(c,j,a)|0;u=k;return}case 3:{f[h>>2]=d;f[j>>2]=f[h>>2];fg(c,j,a)|0;u=k;return}case 4:{f[i>>2]=d;f[j>>2]=f[i>>2];eg(c,j,a)|0;u=k;return}default:{u=k;return}}}function Rh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;k=l;i=a+4|0;f[i>>2]=0;if(!c){u=l;return}h=a+8|0;e=f[h>>2]|0;if(e<<5>>>0>>0){f[k>>2]=0;j=k+4|0;f[j>>2]=0;g=k+8|0;f[g>>2]=0;if((c|0)<0){Pq(a);e=f[h>>2]|0}m=e<<6;n=c+31&-32;jj(k,e<<5>>>0<1073741823?(m>>>0>>0?n:m):2147483647);e=f[a>>2]|0;f[a>>2]=f[k>>2];f[k>>2]=e;k=f[i>>2]|0;f[i>>2]=c;f[j>>2]=k;k=f[h>>2]|0;f[h>>2]=f[g>>2];f[g>>2]=k;if(e|0)ds(e)}else f[i>>2]=c;a=f[a>>2]|0;g=a;h=c>>>5;e=h<<2;if(!(b[d>>0]|0)){_j(a|0,0,e|0)|0;e=c-(h<<5)|0;a=g+(h<<2)|0;if(!e){u=l;return}f[a>>2]=f[a>>2]&~(-1>>>(32-e|0));u=l;return}else{_j(a|0,-1,e|0)|0;e=c-(h<<5)|0;a=g+(h<<2)|0;if(!e){u=l;return}f[a>>2]=f[a>>2]|-1>>>(32-e|0);u=l;return}}function Sh(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;return}e=c+1|0;if(!d){c=((e|0)%3|0|0)==0?c+-2|0:e;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=5}else g=5}else g=5;if((g|0)==5)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;b[i>>0]=0;return}function Th(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;c=f[k>>2]|0;l=a+16|0;if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}d=f[l>>2]|0;if(!d){l=f[l>>2]|0;return l|0}a=d+84|0;if(!(b[a>>0]|0)){l=f[l>>2]|0;return l|0}i=(f[c+72>>2]|0)-(f[c+68>>2]|0)>>2;b[a>>0]=0;h=d+68|0;e=d+72|0;d=f[e>>2]|0;a=f[h>>2]|0;g=d-a>>2;if(i>>>0<=g>>>0){if(i>>>0>>0?(j=a+(i<<2)|0,(d|0)!=(j|0)):0)f[e>>2]=d+(~((d+-4-j|0)>>>2)<<2)}else{Xh(h,i-g|0,1752);c=f[k>>2]|0}if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}k=f[c+68>>2]|0;g=k;k=(f[c+72>>2]|0)-k|0;d=k>>2;if((k|0)<=0){l=f[l>>2]|0;return l|0}c=f[l>>2]|0;e=(b[c+84>>0]|0)==0;c=c+68|0;a=0;while(1){if(!e){c=14;break}f[(f[c>>2]|0)+(a<<2)>>2]=f[g+(a<<2)>>2];a=a+1|0;if((a|0)>=(d|0)){c=15;break}}if((c|0)==14)Ga(21905,21924,89,22019);else if((c|0)==15){l=f[l>>2]|0;return l|0}return 0}function Uh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;j=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;i=k;d=f[(f[c+64>>2]|0)+(d<<2)>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=f[c+60>>2]|0;if(!(b[c+84>>0]|0))d=f[(f[c+68>>2]|0)+(d<<2)>>2]|0;switch(b[c+24>>0]|0){case 1:{f[e>>2]=d;f[j>>2]=f[e>>2];hg(c,j,a)|0;u=k;return}case 2:{f[g>>2]=d;f[j>>2]=f[g>>2];gg(c,j,a)|0;u=k;return}case 3:{f[h>>2]=d;f[j>>2]=f[h>>2];fg(c,j,a)|0;u=k;return}case 4:{f[i>>2]=d;f[j>>2]=f[i>>2];eg(c,j,a)|0;u=k;return}default:{u=k;return}}}function Vh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(Aq(a,f[c+8>>2]|0,g)|0)){h=a+8|0;if(!(Aq(a,f[c>>2]|0,g)|0)){j=f[h>>2]|0;Oa[f[(f[j>>2]|0)+24>>2]&3](j,c,d,e,g);break}a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(i=c+20|0,(f[i>>2]|0)!=(d|0)):0){f[a>>2]=e;e=c+44|0;if((f[e>>2]|0)==4)break;a=c+52|0;b[a>>0]=0;k=c+53|0;b[k>>0]=0;h=f[h>>2]|0;Va[f[(f[h>>2]|0)+20>>2]&3](h,c,d,d,1,g);if(b[k>>0]|0)if(!(b[a>>0]|0)){a=3;j=11}else a=3;else{a=4;j=11}if((j|0)==11){f[i>>2]=d;k=c+40|0;f[k>>2]=(f[k>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1}f[e>>2]=a;break}if((e|0)==1)f[a>>2]=1}else Nn(0,c,d,e);while(0);return}function Wh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{g=f[d+4>>2]|0;if((c|0)<=-1)Ga(22609,22625,58,22717);i=f[g+8>>2]|0;if(((f[g+12>>2]|0)-i>>2|0)<=(c|0))Ga(22727,22625,59,22717);g=f[i+(c<<2)>>2]|0;do if((Sa[f[(f[d>>2]|0)+8>>2]&255](d)|0)==1){Tf(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);b=no(28)|0;f[b+4>>2]=g;g=b+12|0;e=e+4|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[b+8>>2]=2804;f[b>>2]=2824;g=b}f[a>>2]=g;return}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;e=f[k>>2]|0;l=a+4|0;h=f[l>>2]|0;g=h;if(e-h>>2>>>0>=b>>>0){d=g;e=b;while(1){f[d>>2]=f[c>>2];e=e+-1|0;if(!e)break;else d=d+4|0}f[l>>2]=g+(b<<2);return}d=f[a>>2]|0;g=(h-d>>2)+b|0;if(g>>>0>1073741823){Pq(a);d=f[a>>2]|0;e=f[k>>2]|0;j=f[l>>2]|0}else j=h;i=e-d|0;e=i>>1;g=i>>2>>>0<536870911?(e>>>0>>0?g:e):1073741823;e=j-d>>2;do if(g)if(g>>>0>1073741823){b=Ia(4)|0;Hr(b);sa(b|0,1488,137)}else{h=no(g<<2)|0;break}else h=0;while(0);i=h+(e<<2)|0;h=h+(g<<2)|0;e=i;g=b;while(1){f[e>>2]=f[c>>2];g=g+-1|0;if(!g)break;else e=e+4|0}g=j-d|0;e=i+(0-(g>>2)<<2)|0;if((g|0)>0)Fh(e|0,d|0,g|0)|0;f[a>>2]=e;f[l>>2]=i+(b<<2);f[k>>2]=h;if(!d)return;ds(d);return}function Yh(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;n=p+4|0;m=p;o=a+44|0;f[a+48>>2]=g;j=a+40|0;h=f[j>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;l=g-d|0;k=l>>2;if((l|0)<=0){u=p;return 1}l=a+8|0;i=a+52|0;a=g;g=0;while(1){if(a-d>>2>>>0<=g>>>0){Oq(h);d=f[h>>2]|0}f[m>>2]=f[d+(g<<2)>>2];f[n>>2]=f[m>>2];Ob(o,n,c,g);a=X(g,e)|0;$i(l,i,b+(a<<2)|0,c+(a<<2)|0);g=g+1|0;if((g|0)>=(k|0))break;h=f[j>>2]|0;d=f[h>>2]|0;a=f[h+4>>2]|0}u=p;return 1}function Zh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+8|0;e=f[i>>2]|0;j=a+4|0;c=f[j>>2]|0;if(e-c>>3>>>0>=b>>>0){do{a=c;f[a>>2]=0;f[a+4>>2]=0;c=(f[j>>2]|0)+8|0;f[j>>2]=c;b=b+-1|0}while((b|0)!=0);return}d=f[a>>2]|0;g=(c-d>>3)+b|0;if(g>>>0>536870911){Pq(a);d=f[a>>2]|0;e=f[i>>2]|0;c=f[j>>2]|0}h=e-d|0;e=h>>2;e=h>>3>>>0<268435455?(e>>>0>>0?g:e):536870911;c=c-d>>3;do if(e)if(e>>>0>536870911){j=Ia(4)|0;Hr(j);sa(j|0,1488,137)}else{d=no(e<<3)|0;break}else d=0;while(0);h=d+(c<<3)|0;g=d+(e<<3)|0;c=h;e=h;do{d=c;f[d>>2]=0;f[d+4>>2]=0;c=e+8|0;e=c;b=b+-1|0}while((b|0)!=0);c=f[a>>2]|0;d=(f[j>>2]|0)-c|0;b=h+(0-(d>>3)<<3)|0;if((d|0)>0)Fh(b|0,c|0,d|0)|0;f[a>>2]=b;f[j>>2]=e;f[i>>2]=g;if(!c)return;ds(c);return}function _h(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h+8|0;g=h+4|0;i=h;f[i>>2]=f[b>>2];f[e>>2]=f[i>>2];b=xd(a,e,g,c)|0;c=f[b>>2]|0;if(c|0){i=c;u=h;return i|0}e=no(40)|0;im(e+16|0,d);im(e+28|0,d+12|0);c=f[g>>2]|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=c;f[b>>2]=e;c=f[f[a>>2]>>2]|0;if(!c)c=e;else{f[a>>2]=c;c=f[b>>2]|0}Af(f[a+4>>2]|0,c);i=a+8|0;f[i>>2]=(f[i>>2]|0)+1;i=e;u=h;return i|0}function $h(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+32|0;c=e+16|0;d=e;switch(b<<24>>24){case 0:{b=no(44)|0;c=b;d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));qn(b);f[b>>2]=5032;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=b;u=e;return}case 1:{b=no(44)|0;c=b;d=c+44|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));qn(b);f[b>>2]=4988;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=b;u=e;return}default:{f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;Jk(d,20056,28);f[c>>2]=-1;b=c+4|0;im(b,d);f[a>>2]=f[c>>2];im(a+4|0,b);f[a+16>>2]=0;Op(b);Op(d);u=e;return}}}function ai(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{g=f[d+4>>2]|0;if((c|0)<=-1)Ga(22609,22625,58,22717);i=f[g+8>>2]|0;if(((f[g+12>>2]|0)-i>>2|0)<=(c|0))Ga(22727,22625,59,22717);g=f[i+(c<<2)>>2]|0;do if((Sa[f[(f[d>>2]|0)+8>>2]&255](d)|0)==1){Vf(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);b=no(28)|0;f[b+4>>2]=g;g=b+12|0;e=e+4|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[b+8>>2]=2784;f[b>>2]=3608;g=b}f[a>>2]=g;return}function bi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;d=f[j>>2]|0;k=a+4|0;g=f[k>>2]|0;e=g;if(d-g>>2>>>0>=b>>>0){c=e;d=b;while(1){f[c>>2]=1;d=d+-1|0;if(!d)break;else c=c+4|0}f[k>>2]=e+(b<<2);return}c=f[a>>2]|0;e=(g-c>>2)+b|0;if(e>>>0>1073741823){Pq(a);c=f[a>>2]|0;d=f[j>>2]|0;i=f[k>>2]|0}else i=g;h=d-c|0;d=h>>1;e=h>>2>>>0<536870911?(d>>>0>>0?e:d):1073741823;d=i-c>>2;do if(e)if(e>>>0>1073741823){b=Ia(4)|0;Hr(b);sa(b|0,1488,137)}else{g=no(e<<2)|0;break}else g=0;while(0);h=g+(d<<2)|0;g=g+(e<<2)|0;d=h;e=b;while(1){f[d>>2]=1;e=e+-1|0;if(!e)break;else d=d+4|0}e=i-c|0;d=h+(0-(e>>2)<<2)|0;if((e|0)>0)Fh(d|0,c|0,e|0)|0;f[a>>2]=d;f[k>>2]=h+(b<<2);f[j>>2]=g;if(!c)return;ds(c);return}function ci(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;n=p+4|0;m=p;o=a+44|0;f[a+48>>2]=g;j=a+40|0;h=f[j>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;l=g-d|0;k=l>>2;if((l|0)<=0){u=p;return 1}l=a+8|0;i=a+52|0;a=g;g=0;while(1){if(a-d>>2>>>0<=g>>>0){Oq(h);d=f[h>>2]|0}f[m>>2]=f[d+(g<<2)>>2];f[n>>2]=f[m>>2];Mb(o,n,c,g);a=X(g,e)|0;$i(l,i,b+(a<<2)|0,c+(a<<2)|0);g=g+1|0;if((g|0)>=(k|0))break;h=f[j>>2]|0;d=f[h>>2]|0;a=f[h+4>>2]|0}u=p;return 1}function di(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;n=p+4|0;m=p;o=a+44|0;f[a+48>>2]=g;j=a+40|0;h=f[j>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;l=g-d|0;k=l>>2;if((l|0)<=0){u=p;return 1}l=a+8|0;i=a+52|0;a=g;g=0;while(1){if(a-d>>2>>>0<=g>>>0){Oq(h);d=f[h>>2]|0}f[m>>2]=f[d+(g<<2)>>2];f[n>>2]=f[m>>2];Ob(o,n,c,g);a=X(g,e)|0;dj(l,i,b+(a<<2)|0,c+(a<<2)|0);g=g+1|0;if((g|0)>=(k|0))break;h=f[j>>2]|0;d=f[h>>2]|0;a=f[h+4>>2]|0}u=p;return 1}function ei(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+4|0;c=f[m>>2]|0;d=f[a>>2]|0;g=((c-d|0)/12|0)+1|0;if(g>>>0>357913941){Pq(a);c=f[m>>2]|0;d=f[a>>2]|0}k=d;e=c;l=a+8|0;j=((f[l>>2]|0)-d|0)/12|0;i=j<<1;g=j>>>0<178956970?(i>>>0>>0?g:i):357913941;i=(c-d|0)/12|0;do if(g)if(g>>>0>357913941){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}else{h=no(g*12|0)|0;break}else h=0;while(0);c=h+(i*12|0)|0;j=h+(g*12|0)|0;f[c>>2]=f[b>>2];f[h+(i*12|0)+4>>2]=f[b+4>>2];f[h+(i*12|0)+8>>2]=f[b+8>>2];g=c+12|0;if((e|0)!=(k|0))do{b=e;e=e+-12|0;f[c+-12>>2]=f[e>>2];f[c+-8>>2]=f[b+-8>>2];f[c+-4>>2]=f[b+-4>>2];c=c+-12|0}while((e|0)!=(k|0));f[a>>2]=c;f[m>>2]=g;f[l>>2]=j;if(!d)return;ds(d);return}function fi(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a+140>>2]|0;if(b|0){d=a+144|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}g=a+128|0;b=f[g>>2]|0;if(b|0){h=a+132|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}ds(b)}b=f[a+100>>2]|0;if(b|0){d=a+104|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}h=a+80|0;c=f[h>>2]|0;f[h>>2]=0;if(!c){h=a+64|0;is(h);a=a+24|0;is(a);return}d=c+-4|0;b=f[d>>2]|0;if(b|0){b=c+(b<<4)|0;do{b=b+-16|0;is(b)}while((b|0)!=(c|0))}bs(d);h=a+64|0;is(h);a=a+24|0;is(a);return}function gi(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+16|0;n=p+4|0;m=p;o=a+44|0;f[a+48>>2]=g;j=a+40|0;h=f[j>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;l=g-d|0;k=l>>2;if((l|0)<=0){u=p;return 1}l=a+8|0;i=a+52|0;a=g;g=0;while(1){if(a-d>>2>>>0<=g>>>0){Oq(h);d=f[h>>2]|0}f[m>>2]=f[d+(g<<2)>>2];f[n>>2]=f[m>>2];Mb(o,n,c,g);a=X(g,e)|0;dj(l,i,b+(a<<2)|0,c+(a<<2)|0);g=g+1|0;if((g|0)>=(k|0))break;h=f[j>>2]|0;d=f[h>>2]|0;a=f[h+4>>2]|0}u=p;return 1}function hi(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h;i=f[(f[a>>2]|0)+8>>2]|0;g=a+8|0;e=a+12|0;d=(f[e>>2]|0)-(f[g>>2]|0)>>2;j=f[b>>2]|0;f[b>>2]=0;f[c>>2]=j;Ta[i&15](a,d,c);d=f[c>>2]|0;f[c>>2]=0;if(!d){i=f[e>>2]|0;j=f[g>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}j=d+88|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0){a=f[b+8>>2]|0;if(a|0){c=b+12|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;ds(a)}ds(b)}b=f[d+68>>2]|0;if(b|0){c=d+72|0;a=f[c>>2]|0;if((a|0)!=(b|0))f[c>>2]=a+(~((a+-4-b|0)>>>2)<<2);ds(b)}j=d+64|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0){a=f[b>>2]|0;if(a|0){c=b+4|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;ds(a)}ds(b)}ds(d);i=f[e>>2]|0;j=f[g>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}function ii(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0;if((Sa[f[(f[b>>2]|0)+20>>2]&255](b)|0)<=0){b=1;return b|0}g=a+4|0;i=0;while(1){e=f[(f[g>>2]|0)+4>>2]|0;e=mn(e,Wa[f[(f[b>>2]|0)+24>>2]&127](b,i)|0)|0;if((e|0)==-1){a=0;c=12;break}a=f[g>>2]|0;d=f[(f[b>>2]|0)+28>>2]|0;if(((h[a+36>>0]|0)<<8&65535)<512){a=f[a+4>>2]|0;if((e|0)<=-1){c=6;break}c=f[a+8>>2]|0;if(((f[a+12>>2]|0)-c>>2|0)<=(e|0)){c=8;break}if(!(Wa[d&127](b,f[c+(e<<2)>>2]|0)|0)){a=0;c=12;break}}else{e=dm(a,e)|0;if(!(Wa[d&127](b,e)|0)){a=0;c=12;break}}i=i+1|0;if((i|0)>=(Sa[f[(f[b>>2]|0)+20>>2]&255](b)|0)){a=1;c=12;break}}if((c|0)==6)Ga(22609,22625,66,22717);else if((c|0)==8)Ga(22727,22625,67,22717);else if((c|0)==12)return a|0;return 0}function ji(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+224|0;m=r+120|0;q=r+80|0;p=r;o=r+136|0;e=q;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[m>>2]=f[d>>2];if((yb(0,c,m,p,q)|0)<0)d=-1;else{if((f[a+76>>2]|0)>-1)n=js(a)|0;else n=0;d=f[a>>2]|0;l=d&32;if((b[a+74>>0]|0)<1)f[a>>2]=d&-33;h=a+48|0;if(!(f[h>>2]|0)){g=a+44|0;d=f[g>>2]|0;f[g>>2]=o;i=a+28|0;f[i>>2]=o;k=a+20|0;f[k>>2]=o;f[h>>2]=80;j=a+16|0;f[j>>2]=o+80;e=yb(a,c,m,p,q)|0;if(d){Na[f[a+36>>2]&31](a,0,0)|0;e=(f[k>>2]|0)==0?-1:e;f[g>>2]=d;f[h>>2]=0;f[j>>2]=0;f[i>>2]=0;f[k>>2]=0}}else e=yb(a,c,m,p,q)|0;d=f[a>>2]|0;f[a>>2]=d|l;if(n|0)is(a);d=(d&32|0)==0?e:-1}u=r;return d|0}function ki(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;l=m;if(!(te(a,b)|0)){a=0;u=m;return a|0}i=b+8|0;j=f[i>>2]|0;i=f[i+4>>2]|0;g=b+16|0;d=g;c=f[d>>2]|0;d=Kp(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((i|0)<(e|0)|(i|0)==(e|0)&j>>>0>>0){a=0;u=m;return a|0}c=(f[b>>2]|0)+c|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;j=g;f[j>>2]=d;f[j+4>>2]=e;if((c|0)<0){a=0;u=m;return a|0}j=a+96|0;g=(f[j>>2]|0)+c|0;f[j>>2]=g;j=a+100|0;f[l>>2]=0;e=a+104|0;d=f[e>>2]|0;c=f[j>>2]|0;i=d-c>>2;if(g>>>0<=i>>>0){if(g>>>0>>0?(k=c+(g<<2)|0,(d|0)!=(k|0)):0)f[e>>2]=d+(~((d+-4-k|0)>>>2)<<2)}else Xh(j,g-i|0,l);a=xg(a+112|0,b)|0;u=m;return a|0}function li(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=1048576){if((i|0)!=1048576?(h=d+4194304|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else mj(a,1048576-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Zh(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>1048576){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==1048576;return k|0}function mi(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+64|0;o=p;m=f[a>>2]|0;n=a+(f[m+-8>>2]|0)|0;m=f[m+-4>>2]|0;f[o>>2]=e;f[o+4>>2]=a;f[o+8>>2]=c;f[o+12>>2]=g;g=o+16|0;a=o+20|0;h=o+24|0;j=o+28|0;i=o+32|0;c=o+40|0;k=g;l=k+36|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));d[g+36>>1]=0;b[g+38>>0]=0;a:do if(Aq(m,e,0)|0){f[o+48>>2]=1;Va[f[(f[m>>2]|0)+20>>2]&3](m,o,n,n,1,0);g=(f[h>>2]|0)==1?n:0}else{Oa[f[(f[m>>2]|0)+24>>2]&3](m,o,n,1,0);switch(f[o+36>>2]|0){case 0:{g=(f[c>>2]|0)==1&(f[j>>2]|0)==1&(f[i>>2]|0)==1?f[a>>2]|0:0;break a}case 1:break;default:{g=0;break a}}if((f[h>>2]|0)!=1?!((f[c>>2]|0)==0&(f[j>>2]|0)==1&(f[i>>2]|0)==1):0){g=0;break}g=f[g>>2]|0}while(0);u=p;return g|0}function ni(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o;m=b+4|0;c=f[m>>2]|0;d=f[b>>2]|0;k=((c-d|0)/12|0)*3|0;i=a+4|0;h=f[i>>2]|0;e=f[a>>2]|0;l=h-e>>2;g=d;if(k>>>0<=l>>>0){if(k>>>0>>0?(j=e+(k<<2)|0,(h|0)!=(j|0)):0)f[i>>2]=h+(~((h+-4-j|0)>>>2)<<2)}else{mj(a,k-l|0);g=f[b>>2]|0;d=g;c=f[m>>2]|0}if((c-d|0)>0){e=f[a>>2]|0;d=(c-g|0)/12|0;c=0;do{m=c*3|0;f[e+(m<<2)>>2]=f[g+(c*12|0)>>2];f[e+(m+1<<2)>>2]=f[g+(c*12|0)+4>>2];f[e+(m+2<<2)>>2]=f[g+(c*12|0)+8>>2];c=c+1|0}while((c|0)<(d|0))}f[n>>2]=-1;if(!(Hb(a,n)|0)){a=0;u=o;return a|0}wb(a,f[n>>2]|0)|0;a=1;u=o;return a|0}function oi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=524288){if((i|0)!=524288?(h=d+2097152|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else mj(a,524288-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Zh(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>524288){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==524288;return k|0}function pi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=262144){if((i|0)!=262144?(h=d+1048576|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else mj(a,262144-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Zh(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>262144){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==262144;return k|0}function qi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=65536){if((i|0)!=65536?(h=d+262144|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else mj(a,65536-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Zh(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>65536){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==65536;return k|0}function ri(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=32768){if((i|0)!=32768?(h=d+131072|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else mj(a,32768-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Zh(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>32768){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==32768;return k|0}function si(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;d=f[a>>2]|0;e=c-d>>2;if(e>>>0>>0){Fg(a,b-e|0);return}if(e>>>0<=b>>>0)return;a=d+(b<<2)|0;if((c|0)==(a|0))return;do{b=c+-4|0;f[g>>2]=b;e=f[b>>2]|0;f[b>>2]=0;if(e|0){b=e+88|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){b=c+12|0;if((f[b>>2]|0)!=(d|0))f[b>>2]=d;ds(d)}ds(c)}c=f[e+68>>2]|0;if(c|0){b=e+72|0;d=f[b>>2]|0;if((d|0)!=(c|0))f[b>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}b=e+64|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){b=c+4|0;if((f[b>>2]|0)!=(d|0))f[b>>2]=d;ds(d)}ds(c)}ds(e)}c=f[g>>2]|0}while((c|0)!=(a|0));return}function ti(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=8192){if((i|0)!=8192?(h=d+32768|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else mj(a,8192-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Zh(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>8192){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==8192;return k|0}function ui(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=4096){if((i|0)!=4096?(h=d+16384|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else mj(a,4096-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else Zh(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>4096){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==4096;return k|0}function vi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h+4|0;e=h;switch(d|0){case 2:{i=f[b+12>>2]|0;d=f[b+4>>2]|0;b=g+4|0;f[b>>2]=-1;f[b+4>>2]=-1;f[b+8>>2]=-1;f[b+12>>2]=-1;f[g>>2]=2784;ai(e,c,i,d,g);f[a>>2]=f[e>>2];u=h;return}case 3:{d=f[b+12>>2]|0;i=f[b+4>>2]|0;b=g+4|0;f[b>>2]=-1;f[b+4>>2]=-1;f[b+8>>2]=-1;f[b+12>>2]=-1;f[g>>2]=2804;Wh(e,c,d,i,g);f[a>>2]=f[e>>2];u=h;return}default:{f[a>>2]=0;u=h;return}}}function wi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=f[c+88>>2]|0;if(!d){a=0;return a|0}if((f[d>>2]|0)!=1){a=0;return a|0}m=d+8|0;j=f[m>>2]|0;f[a+4>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;o=a+8|0;k=c+24|0;c=b[k>>0]|0;i=c<<24>>24;g=a+12|0;e=f[g>>2]|0;d=f[o>>2]|0;l=e-d>>2;if(i>>>0<=l>>>0){if(i>>>0>>0?(n=d+(i<<2)|0,(e|0)!=(n|0)):0)f[g>>2]=e+(~((e+-4-n|0)>>>2)<<2)}else{mj(o,i-l|0);c=b[k>>0]|0;j=f[m>>2]|0}d=j+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;if(c<<24>>24>0){i=f[o>>2]|0;e=c<<24>>24;c=4;g=0;do{f[i+(g<<2)>>2]=d;c=c+4|0;g=g+1|0;d=j+c|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24}while((g|0)<(e|0))}f[a+20>>2]=d;a=1;return a|0}function xi(a,c,d){a=a|0;c=c|0;d=d|0;a=Id(a,c)|0;if(!a){d=0;return d|0}c=f[a+20>>2]|0;if(((f[a+24>>2]|0)-c|0)!=8){d=0;return d|0}a=c;b[s>>0]=b[a>>0];b[s+1>>0]=b[a+1>>0];b[s+2>>0]=b[a+2>>0];b[s+3>>0]=b[a+3>>0];b[s+4>>0]=b[a+4>>0];b[s+5>>0]=b[a+5>>0];b[s+6>>0]=b[a+6>>0];b[s+7>>0]=b[a+7>>0];p[s>>3]=+p[s>>3];b[d>>0]=b[s>>0];b[d+1>>0]=b[s+1>>0];b[d+2>>0]=b[s+2>>0];b[d+3>>0]=b[s+3>>0];b[d+4>>0]=b[s+4>>0];b[d+5>>0]=b[s+5>>0];b[d+6>>0]=b[s+6>>0];b[d+7>>0]=b[s+7>>0];d=1;return d|0}function yi(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Td(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+20>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;Td(a,b);return}function zi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;if(c>>>0>4294967279)Lq(a);i=a+11|0;e=b[i>>0]|0;g=e<<24>>24<0;if(g){j=f[a+4>>2]|0;d=(f[a+8>>2]&2147483647)+-1|0}else{j=e&255;d=10}h=j>>>0>c>>>0?j:c;c=h>>>0<11;h=c?10:(h+16&-16)+-1|0;do if((h|0)!=(d|0)){do if(c){d=f[a>>2]|0;if(g){c=a;e=0;g=13}else{Wp(a,d,(e&255)+1|0)|0;ds(d);g=15}}else{c=no(h+1|0)|0;if(g){e=1;d=f[a>>2]|0;g=13;break}else{Wp(c,a,(e&255)+1|0)|0;g=14;break}}while(0);if((g|0)==13){Wp(c,d,(f[a+4>>2]|0)+1|0)|0;ds(d);if(e)g=14;else g=15}if((g|0)==14){f[a+8>>2]=h+1|-2147483648;f[a+4>>2]=j;f[a>>2]=c;break}else if((g|0)==15){b[i>>0]=j;break}}while(0);return}function Ai(a){a=a|0;Ar(a);Ar(a+16|0);Ar(a+32|0);Ar(a+48|0);Ar(a+64|0);Ar(a+80|0);Ar(a+96|0);Ar(a+112|0);Ar(a+128|0);Ar(a+144|0);Ar(a+160|0);Ar(a+176|0);Ar(a+192|0);Ar(a+208|0);Ar(a+224|0);Ar(a+240|0);Ar(a+256|0);Ar(a+272|0);Ar(a+288|0);Ar(a+304|0);Ar(a+320|0);Ar(a+336|0);Ar(a+352|0);Ar(a+368|0);Ar(a+384|0);Ar(a+400|0);Ar(a+416|0);Ar(a+432|0);Ar(a+448|0);Ar(a+464|0);Ar(a+480|0);Ar(a+496|0);return}function Bi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(f[a>>2]|0)+1794895138|0;h=Cq(f[a+8>>2]|0,o)|0;e=Cq(f[a+12>>2]|0,o)|0;g=Cq(f[a+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=c-(h<<2)|0,e>>>0>>0&g>>>0>>0):0)?((g|e)&3|0)==0:0){n=e>>>2;m=g>>>2;l=0;while(1){k=h>>>1;j=l+k|0;i=j<<1;g=i+n|0;e=Cq(f[a+(g<<2)>>2]|0,o)|0;g=Cq(f[a+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&e>>>0<(c-g|0)>>>0)){e=0;break a}if(b[a+(g+e)>>0]|0){e=0;break a}e=Om(d,a+g|0)|0;if(!e)break;e=(e|0)<0;if((h|0)==1){e=0;break a}else{l=e?l:j;h=e?k:h-k|0}}e=i+m|0;g=Cq(f[a+(e<<2)>>2]|0,o)|0;e=Cq(f[a+(e+1<<2)>>2]|0,o)|0;if(e>>>0>>0&g>>>0<(c-e|0)>>>0)e=(b[a+(e+g)>>0]|0)==0?a+e|0:0;else e=0}else e=0;while(0);return e|0}function Ci(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j+4|0;h=j;f[a>>2]=0;f[a+8>>2]=b;Ai(a+12|0);Ar(a+524|0);vp(a+540|0);vp(a+560|0);vp(a+580|0);f[i>>2]=0;Ik(a+600|0,b,i);f[i>>2]=0;Ik(a+612|0,b,i);g=b<<5|1;f[h>>2]=0;Ik(i,b,h);Dk(a+624|0,g,i);c=f[i>>2]|0;if(c|0){e=i+4|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}f[h>>2]=0;Ik(i,b,h);Dk(a+636|0,g,i);e=f[i>>2]|0;if(!e){u=j;return}d=i+4|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);u=j;return}function Di(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Yc(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;Yc(a,b);return}function Ei(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){pd(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;pd(a,b);return}function Fi(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Hd(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;Hd(a,b);return}function Gi(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){de(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;de(a,b);return}function Hi(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Zc(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;Zc(a,b);return}function Ii(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){qd(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;qd(a,b);return}function Ji(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Kd(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;Kd(a,b);return}function Ki(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){_c(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;_c(a,b);return}function Li(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){rd(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;rd(a,b);return}function Mi(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Ld(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;Ld(a,b);return}function Ni(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){ee(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;ee(a,b);return}function Oi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a=f[a+4>>2]|0;if(!a){m=0;return m|0}k=b[c+11>>0]|0;j=k<<24>>24<0;k=j?f[c+4>>2]|0:k&255;j=j?f[c>>2]|0:c;while(1){e=a+16|0;d=b[e+11>>0]|0;h=d<<24>>24<0;d=h?f[a+20>>2]|0:d&255;g=d>>>0>>0;c=g?d:k;if((c|0)!=0?(m=nm(j,h?f[e>>2]|0:e,c)|0,(m|0)!=0):0)if((m|0)<0)i=7;else i=8;else if(k>>>0>>0)i=7;else i=8;if((i|0)!=7)if((i|0)==8){i=0;c=k>>>0>>0?k:d;if((c|0)!=0?(l=nm(h?f[e>>2]|0:e,j,c)|0,(l|0)!=0):0){if((l|0)>=0){a=1;i=14;break}}else i=10;if((i|0)==10?(0,!g):0){a=1;i=14;break}a=a+4|0}a=f[a>>2]|0;if(!a){a=0;i=14;break}}if((i|0)==14)return a|0;return 0}function Pi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[b>>2]|0;e=f[a+12>>2]|0;if((i|0)>(e|0))Ga(11217,10410,259,11241);d=f[c>>2]|0;if((d|0)>(e|0))Ga(11255,10410,260,11241);a=0-e|0;if((i|0)<(a|0))Ga(11279,10410,261,11241);if((d|0)<(a|0))Ga(11304,10410,262,11241);if((d|i|0)>-1){h=1;a=1}else{a=(i|0)<1&(d|0)<1;h=a?-1:(i|0)>0?1:-1;a=a?-1:(d|0)>0?1:-1}g=X(e,h)|0;e=X(e,a)|0;f[b>>2]=(i<<1)-g;d=(f[c>>2]<<1)-e|0;f[c>>2]=d;i=(X(h,a)|0)>-1;a=f[b>>2]|0;if(i){f[b>>2]=0-d;i=0-a|0;f[c>>2]=i;i=f[b>>2]|0;i=i+g|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}else{f[b>>2]=d;i=a;f[c>>2]=i;i=f[b>>2]|0;i=i+g|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}}function Qi(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;h=no(32)|0;f[a>>2]=h;f[a+4>>2]=c+8;g=a+8|0;b[g>>0]=0;i=h+8|0;f[i>>2]=f[e>>2];f[i+4>>2]=f[e+4>>2];f[i+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;i=h+20|0;j=e+12|0;f[i>>2]=0;f[h+24>>2]=0;f[h+28>>2]=0;h=f[j>>2]|0;c=(f[e+16>>2]|0)-h|0;if(!c){i=0;j=h;Fh(i|0,j|0,c|0)|0;b[g>>0]=1;a=f[a>>2]|0;j=a+4|0;f[j>>2]=d;f[a>>2]=0;return}nj(i,c);i=f[i>>2]|0;j=f[j>>2]|0;Fh(i|0,j|0,c|0)|0;b[g>>0]=1;a=f[a>>2]|0;j=a+4|0;f[j>>2]=d;f[a>>2]=0;return}function Ri(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){od(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;od(a,b);return}function Si(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;e=f[g>>2]|0;c=f[a>>2]|0;d=(e-c|0)/116|0;if(d>>>0>>0){kg(a,b-d|0);return}if(d>>>0<=b>>>0)return;a=c+(b*116|0)|0;if((e|0)==(a|0))return;do{f[g>>2]=e+-116;c=f[e+-12>>2]|0;if(c|0){d=e+-8|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c)}c=f[e+-28>>2]|0;if(c|0){d=e+-24|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c)}c=f[e+-40>>2]|0;if(c|0){d=e+-36|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c)}vk(e+-112|0);e=f[g>>2]|0}while((e|0)!=(a|0));return}function Ti(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j+4|0;h=j;f[a>>2]=0;f[a+8>>2]=b;vp(a+12|0);vp(a+32|0);vp(a+52|0);vp(a+72|0);f[i>>2]=0;Ik(a+92|0,b,i);f[i>>2]=0;Ik(a+104|0,b,i);g=b<<5|1;f[h>>2]=0;Ik(i,b,h);Dk(a+116|0,g,i);c=f[i>>2]|0;if(c|0){e=i+4|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}f[h>>2]=0;Ik(i,b,h);Dk(a+128|0,g,i);e=f[i>>2]|0;if(!e){u=j;return}d=i+4|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);u=j;return}function Ui(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j+4|0;h=j;f[a>>2]=0;f[a+8>>2]=b;Ar(a+12|0);vp(a+28|0);vp(a+48|0);vp(a+68|0);f[i>>2]=0;Ik(a+88|0,b,i);f[i>>2]=0;Ik(a+100|0,b,i);g=b<<5|1;f[h>>2]=0;Ik(i,b,h);Dk(a+112|0,g,i);c=f[i>>2]|0;if(c|0){e=i+4|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}f[h>>2]=0;Ik(i,b,h);Dk(a+124|0,g,i);e=f[i>>2]|0;if(!e){u=j;return}d=i+4|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);ds(e);u=j;return}function Vi(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=1764;e=a+60|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Pa[f[(f[b>>2]|0)+4>>2]&255](b);b=f[a+48>>2]|0;if(b|0){d=a+52|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}d=a+36|0;b=f[d>>2]|0;if(b|0){e=a+40|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Pa[f[(f[c>>2]|0)+4>>2]&255](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}ds(b)}f[a>>2]=1604;b=f[a+16>>2]|0;if(b|0){d=a+20|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}d=f[a+4>>2]|0;if(!d)return;c=a+8|0;b=f[c>>2]|0;if((b|0)!=(d|0))f[c>>2]=b+(~((b+-4-d|0)>>>2)<<2);ds(d);return}function Wi(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{d=b+-4|0;f[h>>2]=d;e=f[d>>2]|0;f[d>>2]=0;if(e|0){d=e+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){d=b+12|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;ds(c)}ds(b)}b=f[e+68>>2]|0;if(b|0){d=e+72|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}d=e+64|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b>>2]|0;if(c|0){d=b+4|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;ds(c)}ds(b)}ds(e)}b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;ds(b);return}function Xi(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+8|0;e=f[l>>2]|0;g=b[e+24>>0]|0;k=g<<24>>24;n=k<<1;m=as(k>>>0>2147483647?-1:k<<1)|0;j=f[a+16>>2]|0;j=(f[f[j>>2]>>2]|0)+(f[j+48>>2]|0)|0;if(!c){bs(m);return}if(g<<24>>24>0){e=0;g=0;h=0;while(1){a=0;i=h;while(1){d[m+(a<<1)>>1]=f[j+(i<<2)>>2];a=a+1|0;if((a|0)==(k|0))break;else i=i+1|0}Fh((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+g|0,m|0,n|0)|0;e=e+1|0;if((e|0)==(c|0))break;else{g=g+n|0;h=k+h|0}}bs(m);return}else{Fh(f[f[e+64>>2]>>2]|0,m|0,n|0)|0;if((c|0)==1){bs(m);return}else{a=1;e=0}do{e=e+n|0;Fh((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+e|0,m|0,n|0)|0;a=a+1|0}while((a|0)!=(c|0));bs(m);return}}function Yi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;d=f[k>>2]|0;e=b[d+24>>0]|0;j=e<<24>>24;m=j<<2;l=as(j>>>0>1073741823?-1:j<<2)|0;i=f[a+16>>2]|0;i=(f[f[i>>2]>>2]|0)+(f[i+48>>2]|0)|0;if(!c){bs(l);return}if(e<<24>>24>0){d=0;e=0;g=0;while(1){a=0;h=g;while(1){f[l+(a<<2)>>2]=f[i+(h<<2)>>2];a=a+1|0;if((a|0)==(j|0))break;else h=h+1|0}Fh((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,l|0,m|0)|0;d=d+1|0;if((d|0)==(c|0))break;else{e=e+m|0;g=j+g|0}}bs(l);return}else{Fh(f[f[d+64>>2]>>2]|0,l|0,m|0)|0;if((c|0)==1){bs(l);return}else{a=1;d=0}do{d=d+m|0;Fh((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+d|0,l|0,m|0)|0;a=a+1|0}while((a|0)!=(c|0));bs(l);return}}function Zi(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{e=c+-4|0;f[h>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+88|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;ds(d)}ds(c)}c=f[g+68>>2]|0;if(c|0){e=g+72|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}e=g+64|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;ds(d)}ds(c)}ds(g)}c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}ds(b);return}function _i(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;l=b+8|0;k=f[l>>2]|0;l=f[l+4>>2]|0;m=b+16|0;c=m;e=f[c>>2]|0;c=f[c+4>>2]|0;j=Kp(e|0,c|0,4,0)|0;d=I;if((l|0)<(d|0)|(l|0)==(d|0)&k>>>0>>0){a=0;return a|0}g=f[b>>2]|0;i=g+e|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;b=m;f[b>>2]=j;f[b+4>>2]=d;b=Kp(e|0,c|0,8,0)|0;c=I;if((l|0)<(c|0)|(l|0)==(c|0)&k>>>0>>0){a=0;return a|0}l=g+j|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;f[m>>2]=b;f[m+4>>2]=c;f[a+12>>2]=i;f[a+16>>2]=l;m=l+(1-i)|0;f[a+20>>2]=m;b=(m|0)/2|0;c=a+24|0;f[c>>2]=b;f[a+28>>2]=0-b;if(m&1|0){a=1;return a|0}f[c>>2]=b+-1;a=1;return a|0}function $i(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+16|0;i=m+8|0;j=m;h=f[b>>2]|0;k=f[a+16>>2]<<1;if((h|0)>(k|0))Ga(10643,10688,69,10867);e=f[b+4>>2]|0;if((e|0)>(k|0))Ga(10888,10688,70,10867);g=f[c>>2]|0;if((g|0)>(k|0))Ga(10933,10688,71,10867);b=f[c+4>>2]|0;if((b|0)>(k|0))Ga(10978,10688,72,10867);if((h|0)<=-1)Ga(11023,10688,74,10867);if((e|0)<=-1)Ga(11045,10688,75,10867);if((g|0)<=-1)Ga(11067,10688,76,10867);if((b|0)>-1){f[i>>2]=h;f[i+4>>2]=e;f[j>>2]=g;f[j+4>>2]=b;of(l,a,i,j);f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];u=m;return}else Ga(11089,10688,77,10867)}function aj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;c=l;g=f[c>>2]|0;c=f[c+4>>2]|0;d=Kp(g|0,c|0,4,0)|0;e=I;if((k|0)<(e|0)|(k|0)==(e|0)&j>>>0>>0)return 0;i=(f[b>>2]|0)+g|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;b=l;f[b>>2]=d;f[b+4>>2]=e;b=Kp(g|0,c|0,8,0)|0;c=I;if((k|0)<(c|0)|(k|0)==(c|0)&j>>>0>>0)return 0;f[l>>2]=b;f[l+4>>2]=c;if(((i|0)%2|0|0)!=1)Ga(11329,11362,69,11523);c=(_(i|0)|0)^31;b=c+1|0;if(!c)Ga(10399,10410,60,10526);if(b>>>0<31){f[a+4>>2]=b;l=2<>2]=l+-1;l=l+-2|0;f[a+12>>2]=l;f[a+16>>2]=(l|0)/2|0;return (c+-1|0)>>>0<29|0}else Ga(10546,10410,61,10526);return 0}function bj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=La;n=u;u=u+32|0;j=n+16|0;m=n;k=a+8|0;l=b[(f[k>>2]|0)+24>>0]<<2;i=f[a+16>>2]|0;i=(f[f[i>>2]>>2]|0)+(f[i+48>>2]|0)|0;a=f[a+24>>2]|0;if((a|0)<=1)Ga(10399,10410,60,10526);if((a|0)>=31)Ga(10546,10410,61,10526);f[m>>2]=a;a=1<>2]=a+-1;a=a+-2|0;h=m+8|0;f[h>>2]=a;f[m+12>>2]=(a|0)/2|0;if(!c){u=n;return 1}d=0;e=0;g=0;while(1){o=$($(1.0)/$(a|0));Hg(m,$($(f[i+(g<<2)>>2]|0)*o),$($(f[i+((g|1)<<2)>>2]|0)*o),j);Fh((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,j|0,l|0)|0;d=d+1|0;if((d|0)==(c|0))break;a=f[h>>2]|0;e=e+l|0;g=g+2|0}u=n;return 1}function cj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;c=l;g=f[c>>2]|0;c=f[c+4>>2]|0;d=Kp(g|0,c|0,4,0)|0;e=I;if((k|0)<(e|0)|(k|0)==(e|0)&j>>>0>>0){a=0;return a|0}i=(f[b>>2]|0)+g|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;b=l;f[b>>2]=d;f[b+4>>2]=e;b=Kp(g|0,c|0,8,0)|0;c=I;if((k|0)<(c|0)|(k|0)==(c|0)&j>>>0>>0){a=0;return a|0}f[l>>2]=b;f[l+4>>2]=c;if(((i|0)%2|0|0)!=1)Ga(11329,11362,69,11523);c=(_(i|0)|0)^31;b=c+1|0;if(!c)Ga(10399,10410,60,10526);if(b>>>0>=31)Ga(10546,10410,61,10526);f[a+4>>2]=b;l=2<>2]=l+-1;l=l+-2|0;f[a+12>>2]=l;f[a+16>>2]=(l|0)/2|0;a=1;return a|0}function dj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;j=m+16|0;l=m+8|0;i=m;h=f[b>>2]|0;k=f[a+16>>2]<<1;if((h|0)>(k|0))Ga(10643,16474,62,10867);e=f[b+4>>2]|0;if((e|0)>(k|0))Ga(10888,16474,63,10867);g=f[c>>2]|0;if((g|0)>(k|0))Ga(10933,16474,64,10867);b=f[c+4>>2]|0;if((b|0)>(k|0))Ga(10978,16474,65,10867);if((h|0)<=-1)Ga(11023,16474,67,10867);if((e|0)<=-1)Ga(11045,16474,68,10867);if((g|0)<=-1)Ga(11067,16474,69,10867);if((b|0)>-1){f[j>>2]=g;f[j+4>>2]=b;f[i>>2]=h;f[i+4>>2]=e;Xg(l,a,i,j);f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];u=m;return}else Ga(11089,16474,70,10867)}function ej(a,b){a=a|0;b=b|0;var c=0,d=0,e=La;if((b|0)!=1){if(b+-1&b)b=ab(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){ge(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=ab(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;ge(a,b);return}function fj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=c&255;e=(d|0)!=0;a:do if(e&(a&3|0)!=0){g=c&255;while(1){if((b[a>>0]|0)==g<<24>>24){i=6;break a}a=a+1|0;d=d+-1|0;e=(d|0)!=0;if(!(e&(a&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(e)i=6;else d=0;b:do if((i|0)==6){g=c&255;if((b[a>>0]|0)!=g<<24>>24){e=X(h,16843009)|0;c:do if(d>>>0>3)while(1){h=f[a>>2]^e;if((h&-2139062144^-2139062144)&h+-16843009|0)break;a=a+4|0;d=d+-4|0;if(d>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!d){d=0;break}while(1){if((b[a>>0]|0)==g<<24>>24)break b;a=a+1|0;d=d+-1|0;if(!d){d=0;break}}}}while(0);return (d|0?a:0)|0}function gj(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;e=a+12|0;g=f[e>>2]|0;f[e>>2]=0;if(!g){Op(a);return}b=f[g+28>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;gj(e+8|0);ds(e)}while((b|0)!=0);e=g+20|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)ds(b);b=f[g+8>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;c=f[e+20>>2]|0;if(c|0){d=e+24|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;ds(c)}Op(e+8|0);ds(e)}while((b|0)!=0);b=f[g>>2]|0;f[g>>2]=0;if(b|0)ds(b);ds(g);Op(a);return}function hj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=a+4|0;d=f[k>>2]|0;c=f[a>>2]|0;e=((d-c|0)/12|0)+1|0;if(e>>>0>357913941){Pq(a);c=f[a>>2]|0;d=f[k>>2]|0}j=a+8|0;i=((f[j>>2]|0)-c|0)/12|0;h=i<<1;h=i>>>0<178956970?(h>>>0>>0?e:h):357913941;e=(d-c|0)/12|0;do if(h)if(h>>>0>357913941){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}else{i=no(h*12|0)|0;break}else i=0;while(0);g=i+(e*12|0)|0;f[g>>2]=f[b>>2];f[g+4>>2]=f[b+4>>2];f[g+8>>2]=f[b+8>>2];e=d-c|0;d=g+(((e|0)/-12|0)*12|0)|0;if((e|0)>0)Fh(d|0,c|0,e|0)|0;f[a>>2]=d;f[k>>2]=g+12;f[j>>2]=i+(h*12|0);if(!c)return;ds(c);return}function ij(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+32|0;c=e+16|0;d=e;switch(b<<24>>24){case 0:{d=no(48)|0;Sq(d);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=d;u=e;return}case 1:{d=no(52)|0;$p(d);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=d;u=e;return}default:{f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;Jk(d,20056,28);f[c>>2]=-1;b=c+4|0;im(b,d);f[a>>2]=f[c>>2];im(a+4|0,b);f[a+16>>2]=0;Op(b);Op(d);u=e;return}}}function jj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;i=j+16|0;c=j+8|0;d=j;g=a+8|0;if(f[g>>2]<<5>>>0>=b>>>0){u=j;return}f[i>>2]=0;h=i+4|0;f[h>>2]=0;e=i+8|0;f[e>>2]=0;if((b|0)<0)Pq(i);l=((b+-1|0)>>>5)+1|0;k=no(l<<2)|0;f[i>>2]=k;f[h>>2]=0;f[e>>2]=l;l=f[a>>2]|0;f[c>>2]=l;f[c+4>>2]=0;k=a+4|0;b=f[k>>2]|0;f[d>>2]=l+(b>>>5<<2);f[d+4>>2]=b&31;ph(i,c,d);b=f[a>>2]|0;f[a>>2]=f[i>>2];f[i>>2]=b;a=f[k>>2]|0;f[k>>2]=f[h>>2];f[h>>2]=a;a=f[g>>2]|0;f[g>>2]=f[e>>2];f[e>>2]=a;if(b|0)ds(b);u=j;return}function kj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+224|0;j=a+228|0;d=f[k>>2]|0;if((f[j>>2]|0)==(d|0)){l=0;return l|0}g=a+4|0;e=0;a:while(1){a=f[d+(e*116|0)>>2]|0;if(((a|0)>=0?(d=f[g>>2]|0,h=f[d+8>>2]|0,(a|0)<((f[d+12>>2]|0)-h>>2|0)):0)?(i=f[h+(a<<2)>>2]|0,(Sa[f[(f[i>>2]|0)+24>>2]&255](i)|0)>0):0){a=0;do{if((Wa[f[(f[i>>2]|0)+20>>2]&127](i,a)|0)==(c|0))break a;a=a+1|0}while((a|0)<(Sa[f[(f[i>>2]|0)+24>>2]&255](i)|0))}a=e+1|0;d=f[k>>2]|0;if(a>>>0>=(((f[j>>2]|0)-d|0)/116|0)>>>0){a=0;l=11;break}else e=a}if((l|0)==11)return a|0;l=f[k>>2]|0;l=(b[l+(e*116|0)+72>>0]|0)==0?0:l+(e*116|0)+4|0;return l|0}function lj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=(f[b+4>>2]|0)-(f[b>>2]|0)|0;l=k>>2;g=a+8|0;e=f[(f[g>>2]|0)+40>>2]|0;m=as((e|0)>-1?e:-1)|0;h=c+8|0;if((k|0)<=0){c=1;bs(m);return c|0}k=c+16|0;i=0;j=0;while(1){o=h;n=f[o>>2]|0;o=f[o+4>>2]|0;a=k;b=f[a>>2]|0;a=Kp(b|0,f[a+4>>2]|0,e|0,0)|0;d=I;if((o|0)<(d|0)|(o|0)==(d|0)&n>>>0>>0){b=0;a=5;break}Fh(m|0,(f[c>>2]|0)+b|0,e|0)|0;o=k;f[o>>2]=a;f[o+4>>2]=d;Fh((f[f[(f[g>>2]|0)+64>>2]>>2]|0)+j|0,m|0,e|0)|0;i=i+1|0;if((i|0)>=(l|0)){b=1;a=5;break}else j=j+e|0}if((a|0)==5){bs(m);return b|0}return 0}function mj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=a+8|0;d=f[k>>2]|0;j=a+4|0;e=f[j>>2]|0;if(d-e>>2>>>0>=b>>>0){_j(e|0,0,b<<2|0)|0;f[j>>2]=e+(b<<2);return}c=f[a>>2]|0;g=(e-c>>2)+b|0;if(g>>>0>1073741823){Pq(a);c=f[a>>2]|0;d=f[k>>2]|0;e=f[j>>2]|0}d=d-c|0;h=d>>1;h=d>>2>>>0<536870911?(h>>>0>>0?g:h):1073741823;d=e-c>>2;do if(h)if(h>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}else{i=no(h<<2)|0;break}else i=0;while(0);g=i+(d<<2)|0;_j(g|0,0,b<<2|0)|0;e=e-c|0;d=g+(0-(e>>2)<<2)|0;if((e|0)>0)Fh(d|0,c|0,e|0)|0;f[a>>2]=d;f[j>>2]=g+(b<<2);f[k>>2]=i+(h<<2);if(!c)return;ds(c);return}function nj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[j>>2]|0;k=a+4|0;d=f[k>>2]|0;if((g-d|0)>>>0>=c>>>0){do{b[d>>0]=0;d=(f[k>>2]|0)+1|0;f[k>>2]=d;c=c+-1|0}while((c|0)!=0);return}e=f[a>>2]|0;h=d-e+c|0;if((h|0)<0){Pq(a);e=f[a>>2]|0;g=f[j>>2]|0;d=f[k>>2]|0}i=g-e|0;g=i<<1;g=i>>>0<1073741823?(g>>>0>>0?h:g):2147483647;if(!g)h=0;else h=no(g)|0;i=h+(d-e)|0;h=h+g|0;d=i;g=i;do{b[d>>0]=0;d=g+1|0;g=d;c=c+-1|0}while((c|0)!=0);d=f[a>>2]|0;e=(f[k>>2]|0)-d|0;c=i+(0-e)|0;if((e|0)>0)Fh(c|0,d|0,e|0)|0;f[a>>2]=c;f[k>>2]=g;f[j>>2]=h;if(!d)return;ds(d);return}function oj(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o;if((-18-c|0)>>>0>>0)Lq(a);if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){l=d+c|0;k=c<<1;l=l>>>0>>0?k:l;l=l>>>0<11?11:l+16&-16}else l=-17;k=no(l)|0;if(g|0)Wp(k,m,g)|0;if(i|0)Wp(k+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)Wp(k+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)ds(m);f[a>>2]=k;f[a+8>>2]=l|-2147483648;m=d+i|0;f[a+4>>2]=m;b[n>>0]=0;Uq(k+m|0,n);u=o;return}function pj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;g=d+16|0;e=f[g>>2]|0;if(!e)if(!(vm(d)|0)){e=f[g>>2]|0;h=5}else e=0;else h=5;a:do if((h|0)==5){j=d+20|0;i=f[j>>2]|0;g=i;if((e-i|0)>>>0>>0){e=Na[f[d+36>>2]&31](d,a,c)|0;break}b:do if((b[d+75>>0]|0)>-1){i=c;while(1){if(!i){h=g;d=0;g=c;e=a;break b}e=i+-1|0;if((b[a+e>>0]|0)==10)break;else i=e}e=Na[f[d+36>>2]&31](d,a,i)|0;if(e>>>0>>0)break a;h=f[j>>2]|0;d=i;g=c-i|0;e=a+i|0}else{h=g;d=0;g=c;e=a}while(0);Fh(h|0,e|0,g|0)|0;f[j>>2]=(f[j>>2]|0)+g;e=d+g|0}while(0);return e|0}function qj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=sh(a,d,b)|0;c=f[e>>2]|0;if(c|0){a=c;a=a+28|0;u=h;return a|0}g=no(40)|0;im(g+16|0,b);c=g+28|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;c=f[d>>2]|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=c;f[e>>2]=g;c=f[f[a>>2]>>2]|0;if(!c)c=g;else{f[a>>2]=c;c=f[e>>2]|0}Af(f[a+4>>2]|0,c);a=a+8|0;f[a>>2]=(f[a>>2]|0)+1;a=g;a=a+28|0;u=h;return a|0}function rj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;i=j;do if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)>511){k=d+8|0;l=f[k+4>>2]|0;g=d+16|0;e=g;c=f[e>>2]|0;e=f[e+4>>2]|0;if((l|0)>(e|0)|((l|0)==(e|0)?(f[k>>2]|0)>>>0>c>>>0:0)){l=b[(f[d>>2]|0)+c>>0]|0;k=Kp(c|0,e|0,1,0)|0;c=g;f[c>>2]=k;f[c+4>>2]=I;c=l&255;f[a+24>>2]=c;break}else{l=0;u=j;return l|0}}else c=f[a+24>>2]|0;while(0);f[i>>2]=1544;f[i+4>>2]=-1;Fq(i,c);l=Gl(i,f[a+16>>2]|0)|0;u=j;return l|0}function sj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=a+224|0;h=a+228|0;c=f[i>>2]|0;a:do if((f[h>>2]|0)!=(c|0)){j=a+4|0;d=0;b:while(1){c=f[c+(d*116|0)>>2]|0;if(((c|0)>=0?(k=f[j>>2]|0,e=f[k+8>>2]|0,(c|0)<((f[k+12>>2]|0)-e>>2|0)):0)?(g=f[e+(c<<2)>>2]|0,(Sa[f[(f[g>>2]|0)+24>>2]&255](g)|0)>0):0){c=0;do{if((Wa[f[(f[g>>2]|0)+20>>2]&127](g,c)|0)==(b|0))break b;c=c+1|0}while((c|0)<(Sa[f[(f[g>>2]|0)+24>>2]&255](g)|0))}d=d+1|0;c=f[i>>2]|0;if(d>>>0>=(((f[h>>2]|0)-c|0)/116|0)>>>0)break a}k=(f[i>>2]|0)+(d*116|0)+76|0;return k|0}while(0);k=a+196|0;return k|0}function tj(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4792;b=a+96|0;c=a+4|0;d=c+92|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[b>>2]=-1;f[a+100>>2]=-1;f[a+104>>2]=-1;b=a+164|0;c=a+108|0;d=c+56|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));n[b>>2]=$(1.0);b=a+240|0;c=a+168|0;d=c+68|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));Hn(b);Hn(a+280|0);d=a+320|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;f[d+24>>2]=0;f[d+28>>2]=0;f[a+352>>2]=-1;f[a+356>>2]=-1;f[a+360>>2]=2;f[a+364>>2]=7;d=a+368|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;return}function uj(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{f[h>>2]=b+-116;c=f[b+-12>>2]|0;if(c|0){e=b+-8|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}c=f[b+-28>>2]|0;if(c|0){e=b+-24|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}c=f[b+-40>>2]|0;if(c|0){e=b+-36|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}vk(b+-112|0);b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;ds(b);return}function vj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;d=g;if((h[(f[a+4>>2]|0)+36>>0]<<8&65535)>511?!(Sa[f[(f[a>>2]|0)+52>>2]&255](a)|0):0){e=0;u=g;return e|0}f[d>>2]=1572;f[d+4>>2]=-1;c=d+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;Cm(d,f[a+24>>2]|0,f[a+28>>2]|0,b[(f[a+8>>2]|0)+24>>0]|0,$(n[a+32>>2]));e=Gl(d,f[a+16>>2]|0)|0;f[d>>2]=1572;a=f[c>>2]|0;if(a|0){c=d+12|0;d=f[c>>2]|0;if((d|0)!=(a|0))f[c>>2]=d+(~((d+-4-a|0)>>>2)<<2);ds(a)}u=g;return e|0}function wj(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{f[h>>2]=c+-116;d=f[c+-12>>2]|0;if(d|0){g=c+-8|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}d=f[c+-28>>2]|0;if(d|0){g=c+-24|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}d=f[c+-40>>2]|0;if(d|0){g=c+-36|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d)}vk(c+-112|0);c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}ds(b);return}function xj(){var a=0,b=0,c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+48|0;h=e+32|0;c=e+24|0;i=e+16|0;g=e;e=e+36|0;a=ko()|0;if(a|0?(d=f[a>>2]|0,d|0):0){b=d+48|0;a=f[b>>2]|0;b=f[b+4>>2]|0;if(!((a&-256|0)==1126902528&(b|0)==1129074247)){f[c>>2]=f[1546];To(25808,c)}if((a|0)==1126902529&(b|0)==1129074247)a=f[d+44>>2]|0;else a=d+80|0;f[e>>2]=a;d=f[d>>2]|0;a=f[d+4>>2]|0;d=Na[f[(f[356]|0)+16>>2]&31](1424,d,e)|0;b=f[1546]|0;if(d){i=f[e>>2]|0;i=Sa[f[(f[i>>2]|0)+8>>2]&255](i)|0;f[g>>2]=b;f[g+4>>2]=a;f[g+8>>2]=i;To(25722,g)}else{f[i>>2]=b;f[i+4>>2]=a;To(25767,i)}}To(25846,h)}function yj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=no(36)|0;Bq(j);i=a+8|0;g=a+12|0;a=f[g>>2]|0;c=f[i>>2]|0;e=a-c>>2;do if((e|0)<=(b|0)){d=b+1|0;if(d>>>0>e>>>0){$g(i,d-e|0);break}if(d>>>0>>0?(h=c+(d<<2)|0,(a|0)!=(h|0)):0)do{e=a+-4|0;f[g>>2]=e;a=f[e>>2]|0;f[e>>2]=0;if(a|0)Pa[f[(f[a>>2]|0)+4>>2]&255](a);a=f[g>>2]|0}while((a|0)!=(h|0))}while(0);i=(f[i>>2]|0)+(b<<2)|0;a=f[i>>2]|0;f[i>>2]=j;if(!a)return 1;Pa[f[(f[a>>2]|0)+4>>2]&255](a);return 1}function zj(a){a=a|0;var b=0,c=0,d=0;b=f[a+92>>2]|0;if(b|0){d=a+96|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+76>>2]|0;if(b|0){d=a+80|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+52>>2]|0;if(b|0){d=a+56|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}f[a+4>>2]=4700;b=f[a+24>>2]|0;if(b|0)ds(b);b=f[a+12>>2]|0;if(!b)return;ds(b);return}function Aj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;g=u;u=u+80|0;i=g;h=g+16|0;e=g+4|0;f[i>>2]=d&1;Go(h,21659,i)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;Jk(e,h,Rk(h)|0);a=qj(a,c)|0;c=a+11|0;if((b[c>>0]|0)<0){b[f[a>>2]>>0]=0;f[a+4>>2]=0}else{b[a>>0]=0;b[c>>0]=0}zi(a,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;Op(e);u=g;return}function Bj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=a+4|0;d=f[k>>2]|0;c=f[a>>2]|0;e=(d-c>>2)+1|0;if(e>>>0>1073741823){Pq(a);c=f[a>>2]|0;d=f[k>>2]|0}j=a+8|0;i=(f[j>>2]|0)-c|0;h=i>>1;h=i>>2>>>0<536870911?(h>>>0>>0?e:h):1073741823;e=d-c>>2;do if(h)if(h>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}else{i=no(h<<2)|0;break}else i=0;while(0);g=i+(e<<2)|0;f[g>>2]=f[b>>2];e=d-c|0;d=g+(0-(e>>2)<<2)|0;if((e|0)>0)Fh(d|0,c|0,e|0)|0;f[a>>2]=d;f[k>>2]=g+4;f[j>>2]=i+(h<<2);if(!c)return;ds(c);return}function Cj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;g=u;u=u+32|0;d=g+12|0;e=g;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;Jk(d,b,Rk(b)|0);f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;Jk(e,c,Rk(c)|0);b=Tg(f[a+4>>2]|0,d,e)|0;if(!b){a=-1;Op(e);Op(d);u=g;return a|0}a=f[b+40>>2]|0;Op(e);Op(d);u=g;return a|0}function Dj(a,c,d){a=a|0;c=c|0;d=d|0;do if(a){if(c>>>0<128){b[a>>0]=c;a=1;break}d=($r()|0)+188|0;if(!(f[f[d>>2]>>2]|0))if((c&-128|0)==57216){b[a>>0]=c;a=1;break}else{a=Rr()|0;f[a>>2]=84;a=-1;break}if(c>>>0<2048){b[a>>0]=c>>>6|192;b[a+1>>0]=c&63|128;a=2;break}if(c>>>0<55296|(c&-8192|0)==57344){b[a>>0]=c>>>12|224;b[a+1>>0]=c>>>6&63|128;b[a+2>>0]=c&63|128;a=3;break}if((c+-65536|0)>>>0<1048576){b[a>>0]=c>>>18|240;b[a+1>>0]=c>>>12&63|128;b[a+2>>0]=c>>>6&63|128;b[a+3>>0]=c&63|128;a=4;break}else{a=Rr()|0;f[a>>2]=84;a=-1;break}}else a=1;while(0);return a|0}function Ej(a){a=a|0;var b=0,c=0,d=0,e=0;e=f[a>>2]|0;f[a>>2]=0;if(!e)return;a=f[e+28>>2]|0;if(a|0)do{d=a;a=f[a>>2]|0;Ej(d+20|0);Op(d+8|0);ds(d)}while((a|0)!=0);d=e+20|0;a=f[d>>2]|0;f[d>>2]=0;if(a|0)ds(a);a=f[e+8>>2]|0;if(a|0)do{d=a;a=f[a>>2]|0;b=f[d+20>>2]|0;if(b|0){c=d+24|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;ds(b)}Op(d+8|0);ds(d)}while((a|0)!=0);a=f[e>>2]|0;f[e>>2]=0;if(a|0)ds(a);ds(e);return}function Fj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;e=u;u=u+32|0;c=e+12|0;d=e;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;Jk(c,b,Rk(b)|0);f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;Jk(d,22781,4);b=Tg(f[a+4>>2]|0,d,c)|0;if(!b){a=-1;Op(d);Op(c);u=e;return a|0}a=f[b+40>>2]|0;Op(d);Op(c);u=e;return a|0}function Gj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0;j=u;u=u+80|0;i=j;g=j+56|0;e=j+40|0;d=i;c=d+40|0;do{f[d>>2]=f[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(c|0));rc(e,i,g);b=f[e>>2]|0;if(!b){Op(e+4|0);g=h[g+7>>0]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=g;i=i+24|0;is(i);u=j;return}else{f[a>>2]=b;g=e+4|0;im(a+4|0,g);Op(g);i=i+24|0;is(i);u=j;return}}function Hj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=u;u=u+16|0;d=e;if(!c){a=0;u=e;return a|0}i=c+4|0;g=(f[i>>2]|0)-(f[c>>2]|0)>>2;b[d>>0]=0;Rh(a,g,d);g=c+24|0;h=c+28|0;j=(f[h>>2]|0)-(f[g>>2]|0)>>2;b[d>>0]=0;Rh(a+12|0,j,d);Ag(a+28|0,(f[i>>2]|0)-(f[c>>2]|0)>>2,5112);Mk(a+52|0,(f[h>>2]|0)-(f[g>>2]|0)>>2);Mk(a+40|0,(f[h>>2]|0)-(f[g>>2]|0)>>2);f[a+64>>2]=c;b[a+24>>0]=1;a=1;u=e;return a|0}function Ij(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;h=j+4|0;i=j;if((d|0)!=1){f[a>>2]=0;u=j;return}g=f[b+12>>2]|0;d=f[b+4>>2]|0;b=h;e=b+36|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(e|0));Ih(i,c,g,d,h);e=f[h+24>>2]|0;if(e|0){b=h+28|0;d=f[b>>2]|0;if((d|0)!=(e|0))f[b>>2]=d+(~((d+-4-e|0)>>>2)<<2);ds(e)}f[a>>2]=f[i>>2];u=j;return}function Jj(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+28>>2]|0;if(b|0)do{c=b;b=f[b>>2]|0;e=c+20|0;d=f[e>>2]|0;f[e>>2]=0;if(d|0){Jj(d);ds(d)}Op(c+8|0);ds(c)}while((b|0)!=0);e=a+20|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)ds(b);b=f[a+8>>2]|0;if(b|0)do{e=b;b=f[b>>2]|0;c=f[e+20>>2]|0;if(c|0){d=e+24|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;ds(c)}Op(e+8|0);ds(e)}while((b|0)!=0);b=f[a>>2]|0;f[a>>2]=0;if(!b)return;ds(b);return}function Kj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if(!(aj(a+8|0,c)|0)){a=0;return a|0}e=c+8|0;i=f[e+4>>2]|0;h=c+16|0;d=h;g=f[d>>2]|0;d=f[d+4>>2]|0;if(!((i|0)>(d|0)|((i|0)==(d|0)?(f[e>>2]|0)>>>0>g>>>0:0))){i=0;return i|0}e=b[(f[c>>2]|0)+g>>0]|0;g=Kp(g|0,d|0,1,0)|0;i=h;f[i>>2]=g;f[i+4>>2]=I;if((e&255)>=2){i=0;return i|0}f[a+72>>2]=e&255;i=xg(a+92|0,c)|0;return i|0}function Lj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;if(b>>>0<64){e=f[a+8>>2]|0;if(e>>>0<=1){h=0;return h|0}b=f[c>>2]|0;c=1;d=0;do{d=(f[b+(d<<2)>>2]|0)>>>0>(f[b+(c<<2)>>2]|0)>>>0?c:d;c=c+1|0}while(c>>>0>>0);return d|0}h=a+576|0;g=f[h>>2]|0;e=32-g|0;c=a+572|0;b=f[c>>2]|0;d=f[b>>2]<>2]=a;g=b+4|0;f[c>>2]=g;h=32-a|0;h=(f[g>>2]|0)>>>h|d>>>(h-e|0);return h|0}d=d>>>28;g=g+4|0;f[h>>2]=g;if((g|0)!=32){h=d;return h|0}f[c>>2]=b+4;f[h>>2]=0;h=d;return h|0}function Mj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0;do if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)<512){j=d+8|0;k=f[j+4>>2]|0;i=d+16|0;g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;if((k|0)>(g|0)|((k|0)==(g|0)?(f[j>>2]|0)>>>0>e>>>0:0)){k=b[(f[d>>2]|0)+e>>0]|0;g=Kp(e|0,g|0,1,0)|0;j=i;f[j>>2]=g;f[j+4>>2]=I;f[a+24>>2]=k&255;break}else{k=0;return k|0}}while(0);k=ed(a,c,d)|0;return k|0}function Nj(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+16|0;a=f[b>>2]|0;f[b>>2]=0;d=f[c>>2]|0;f[c>>2]=a;if(!d)return;c=d+88|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){a=f[b+8>>2]|0;if(a|0){c=b+12|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;ds(a)}ds(b)}b=f[d+68>>2]|0;if(b|0){c=d+72|0;a=f[c>>2]|0;if((a|0)!=(b|0))f[c>>2]=a+(~((a+-4-b|0)>>>2)<<2);ds(b)}c=d+64|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){a=f[b>>2]|0;if(a|0){c=b+4|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;ds(a)}ds(b)}ds(d);return}function Oj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=c+8|0;i=f[e+4>>2]|0;h=c+16|0;d=h;g=f[d>>2]|0;d=f[d+4>>2]|0;if(!((i|0)>(d|0)|((i|0)==(d|0)?(f[e>>2]|0)>>>0>g>>>0:0))){i=0;return i|0}e=b[(f[c>>2]|0)+g>>0]|0;g=Kp(g|0,d|0,1,0)|0;i=h;f[i>>2]=g;f[i+4>>2]=I;do if(e<<24>>24<0)if(Oj(a,c)|0){d=a;d=Ro(f[d>>2]|0,f[d+4>>2]|0,7)|0;i=I;h=a;f[h>>2]=d;f[h+4>>2]=i;d=d|e&127;e=i;break}else{i=0;return i|0}else{d=e&255;e=0}while(0);i=a;f[i>>2]=d;f[i+4>>2]=e;i=1;return i|0}function Pj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;g=f[a>>2]|0;d=g;if((((f[j>>2]|0)-g|0)/12|0)>>>0>=b>>>0)return;i=a+4|0;if(b>>>0>357913941){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}k=f[i>>2]|0;e=no(b*12|0)|0;c=e+(((k-g|0)/12|0)*12|0)|0;h=c;e=e+(b*12|0)|0;b=k;if((b|0)==(d|0))c=h;else do{k=b;b=b+-12|0;f[c+-12>>2]=f[b>>2];f[c+-8>>2]=f[k+-8>>2];f[c+-4>>2]=f[k+-4>>2];c=c+-12|0}while((b|0)!=(d|0));f[a>>2]=c;f[i>>2]=h;f[j>>2]=e;if(!g)return;ds(g);return}function Qj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;if(!(cj(a+8|0,c)|0)){a=0;return a|0}e=c+8|0;i=f[e+4>>2]|0;h=c+16|0;d=h;g=f[d>>2]|0;d=f[d+4>>2]|0;if(!((i|0)>(d|0)|((i|0)==(d|0)?(f[e>>2]|0)>>>0>g>>>0:0))){i=0;return i|0}e=b[(f[c>>2]|0)+g>>0]|0;g=Kp(g|0,d|0,1,0)|0;i=h;f[i>>2]=g;f[i+4>>2]=I;if((e&255)>=2){i=0;return i|0}f[a+72>>2]=e&255;i=xg(a+92|0,c)|0;return i|0}function Rj(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+128|0;g=m+124|0;l=m;h=l;i=5672;j=h+124|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((c+-1|0)>>>0>2147483646)if(!c){c=1;k=4}else{g=Rr()|0;f[g>>2]=75;g=-1}else{g=a;k=4}if((k|0)==4){k=-2-g|0;k=c>>>0>k>>>0?k:c;f[l+48>>2]=k;h=l+20|0;f[h>>2]=g;f[l+44>>2]=g;g=g+k|0;c=l+16|0;f[c>>2]=g;f[l+28>>2]=g;g=ji(l,d,e)|0;if(k){d=f[h>>2]|0;b[d+(((d|0)==(f[c>>2]|0))<<31>>31)>>0]=0}}u=m;return g|0}function Sj(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;if((a|0)<0){d=0;return d|0}if(!a){d=1;return d|0}j=d+8|0;k=f[j+4>>2]|0;i=d+16|0;g=i;h=f[g>>2]|0;g=f[g+4>>2]|0;if(!((k|0)>(g|0)|((k|0)==(g|0)?(f[j>>2]|0)>>>0>h>>>0:0))){k=0;return k|0}k=b[(f[d>>2]|0)+h>>0]|0;h=Kp(h|0,g|0,1,0)|0;j=i;f[j>>2]=h;f[j+4>>2]=I;switch(k<<24>>24){case 0:{k=ld(a,c,d,e)|0;return k|0}case 1:{k=ve(a,d,e)|0;return k|0}default:{k=0;return k|0}}return 0}function Tj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;j=k;h=a+11|0;e=b[h>>0]|0;g=e<<24>>24<0;if(g)i=(f[a+8>>2]&2147483647)+-1|0;else i=10;do if(i>>>0>=d>>>0){if(g)e=f[a>>2]|0;else e=a;Sp(e,c,d)|0;b[j>>0]=0;Uq(e+d|0,j);if((b[h>>0]|0)<0){f[a+4>>2]=d;break}else{b[h>>0]=d;break}}else{if(g)e=f[a+4>>2]|0;else e=e&255;oj(a,i,d-i|0,e,0,e,d,c)}while(0);u=k;return a|0}function Uj(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=f[a>>2]|0;if(!d){a=0;return a|0}e=f[c>>2]|0;if(!e){a=0;return a|0}g=f[e>>2]|0;hk(d,g,(f[e+4>>2]|0)-g|0,0)|0;b[a+24>>0]=b[c+24>>0]|0;f[a+28>>2]=f[c+28>>2];b[a+32>>0]=b[c+32>>0]|0;e=c+40|0;d=f[e+4>>2]|0;g=a+40|0;f[g>>2]=f[e>>2];f[g+4>>2]=d;g=c+48|0;d=f[g+4>>2]|0;e=a+48|0;f[e>>2]=f[g>>2];f[e+4>>2]=d;f[a+56>>2]=f[c+56>>2];c=c+8|0;a=a+8|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];a=1;return a|0}function Vj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;if(c|0){h=a+11|0;e=b[h>>0]|0;if(e<<24>>24<0){j=f[a+4>>2]|0;g=(f[a+8>>2]&2147483647)+-1|0}else{j=e&255;g=10}i=j+c|0;if((g-j|0)>>>0>>0){fk(a,g,i-g|0,j,j,0,0);e=b[h>>0]|0}if(e<<24>>24<0)e=f[a>>2]|0;else e=a;Po(e+j|0,c,d)|0;if((b[h>>0]|0)<0)f[a+4>>2]=i;else b[h>>0]=i;b[k>>0]=0;Uq(e+i|0,k)}u=l;return a|0}function Wj(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;j=a+4|0;g=f[j>>2]|0;i=a+8|0;a=f[i>>2]|0;d=g+4|0;c=f[d>>2]|0;b=f[g>>2]|0;e=c-b>>2;if(a>>>0<=e>>>0){if(a>>>0>>0?(h=b+(a<<2)|0,(c|0)!=(h|0)):0)f[d>>2]=c+(~((c+-4-h|0)>>>2)<<2)}else{mj(g,a-e|0);a=f[i>>2]|0}if((a|0)>0)d=0;else return 1;do{b=f[j>>2]|0;c=f[b>>2]|0;if((f[b+4>>2]|0)-c>>2>>>0<=d>>>0){Oq(b);c=f[b>>2]|0;a=f[i>>2]|0}f[c+(d<<2)>>2]=d;d=d+1|0}while((d|0)<(a|0));return 1}function Xj(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=4520;e=a+48|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Pa[f[(f[b>>2]|0)+4>>2]&255](b);f[a>>2]=4944;b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}d=a+8|0;b=f[d>>2]|0;if(!b){ds(a);return}e=a+12|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Pa[f[(f[c>>2]|0)+4>>2]&255](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}ds(b);ds(a);return}function Yj(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;do if(!(Aq(a,f[c+8>>2]|0,g)|0)){if(Aq(a,f[c>>2]|0,g)|0){a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[a>>2]=e;f[h>>2]=d;e=c+40|0;f[e>>2]=(f[e>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1;f[c+44>>2]=4;break}if((e|0)==1)f[a>>2]=1}}else Nn(0,c,d,e);while(0);return}function Zj(a){a=a|0;is(a+496|0);is(a+480|0);is(a+464|0);is(a+448|0);is(a+432|0);is(a+416|0);is(a+400|0);is(a+384|0);is(a+368|0);is(a+352|0);is(a+336|0);is(a+320|0);is(a+304|0);is(a+288|0);is(a+272|0);is(a+256|0);is(a+240|0);is(a+224|0);is(a+208|0);is(a+192|0);is(a+176|0);is(a+160|0);is(a+144|0);is(a+128|0);is(a+112|0);is(a+96|0);is(a+80|0);is(a+64|0);is(a+48|0);is(a+32|0);is(a+16|0);is(a);return}function _j(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}e=h&-4|0;g=e-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(g|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(e|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(h|0)){b[a>>0]=c;a=a+1|0}return h-d|0}function $j(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;b=Id(a,b)|0;if(!b){c=0;return c|0}e=b+20|0;d=f[e>>2]|0;a=b+24|0;b=f[a>>2]|0;if((d|0)==(b|0)){c=0;return c|0}tk(c,b-d|0,0);d=rm(c,0)|0;c=f[e>>2]|0;Fh(d|0,c|0,(f[a>>2]|0)-c|0)|0;c=1;return c|0}function ak(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;b[c+53>>0]=1;do if((f[c+4>>2]|0)==(e|0)){b[c+52>>0]=1;h=c+16|0;a=f[h>>2]|0;k=c+54|0;j=c+48|0;i=c+24|0;e=c+36|0;if(!a){f[h>>2]=d;f[i>>2]=g;f[e>>2]=1;if(!((f[j>>2]|0)==1&(g|0)==1))break;b[k>>0]=1;break}if((a|0)!=(d|0)){f[e>>2]=(f[e>>2]|0)+1;b[k>>0]=1;break}e=f[i>>2]|0;if((e|0)==2){f[i>>2]=g;e=g}if((f[j>>2]|0)==1&(e|0)==1)b[k>>0]=1}while(0);return}function bk(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=4520;e=a+48|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Pa[f[(f[b>>2]|0)+4>>2]&255](b);f[a>>2]=4944;b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}e=a+8|0;b=f[e>>2]|0;if(!b)return;d=a+12|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{a=c+-4|0;f[d>>2]=a;c=f[a>>2]|0;f[a>>2]=0;if(c|0)Pa[f[(f[c>>2]|0)+4>>2]&255](c);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}ds(b);return}function ck(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1716;c=a+16|0;d=f[c>>2]|0;f[c>>2]=0;if(!d)return;c=d+88|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a+8>>2]|0;if(b|0){c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;ds(b)}ds(a)}a=f[d+68>>2]|0;if(a|0){c=d+72|0;b=f[c>>2]|0;if((b|0)!=(a|0))f[c>>2]=b+(~((b+-4-a|0)>>>2)<<2);ds(a)}c=d+64|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;ds(b)}ds(a)}ds(d);return}function dk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;if((b|0)>=33)Ga(22431,21789,53,22558);if((b|0)<=0)Ga(22587,21789,54,22558);k=a+8|0;i=a+4|0;j=0-(h[a+12>>0]|0)&255;d=f[k>>2]|0;e=0;do{e=e<<1;if(d>>>0<4096?(g=f[i>>2]|0,(g|0)>0):0){m=f[a>>2]|0;l=g+-1|0;f[i>>2]=l;d=h[m+l>>0]|0|d<<8;f[k>>2]=d}n=d&255;l=X(d>>>8,j)|0;m=n>>>0>>0;d=m?l+n|0:d-j-l|0;f[k>>2]=d;e=m&1|e;b=b+-1|0}while((b|0)!=0);f[c>>2]=e;return}function ek(a,b){a=a|0;b=b|0;if(!b)return;else{ek(a,f[b>>2]|0);ek(a,f[b+4>>2]|0);nk(b+20|0,f[b+24>>2]|0);ds(b);return}}function fk(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-c|0)>>>0>>0)Lq(a);if((b[a+11>>0]|0)<0)l=f[a>>2]|0;else l=a;if(c>>>0<2147483623){k=d+c|0;j=c<<1;k=k>>>0>>0?j:k;k=k>>>0<11?11:k+16&-16}else k=-17;j=no(k)|0;if(g|0)Wp(j,l,g)|0;d=e-h-g|0;if(d|0)Wp(j+g+i|0,l+g+h|0,d)|0;if((c|0)!=10)ds(l);f[a>>2]=j;f[a+8>>2]=k|-2147483648;return}function gk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;Ug(a,b,c);d=f[a+96>>2]|0;a=(f[a+100>>2]|0)-d|0;if((a|0)<=0)return;b=f[b>>2]|0;c=(a>>>0)/12|0;a=0;do{e=d+(a*12|0)|0;f[e>>2]=f[b+(f[e>>2]<<2)>>2];e=d+(a*12|0)+4|0;f[e>>2]=f[b+(f[e>>2]<<2)>>2];e=d+(a*12|0)+8|0;f[e>>2]=f[b+(f[e>>2]<<2)>>2];a=a+1|0}while((a|0)<(c|0));return}function hk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)<0){a=0;return a|0}do if(!b){e=a+4|0;d=f[e>>2]|0;b=f[a>>2]|0;g=d-b|0;if(c>>>0>g>>>0){nj(a,c-g|0);break}if(c>>>0>>0?(h=b+c|0,(d|0)!=(h|0)):0)f[e>>2]=h}else _g(a,b,b+c|0);while(0);a=a+24|0;h=a;h=Kp(f[h>>2]|0,f[h+4>>2]|0,1,0)|0;f[a>>2]=h;f[a+4>>2]=I;a=1;return a|0}function ik(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h;f[a>>2]=c;f[a+68>>2]=0;f[a+72>>2]=0;oh(g,c);e=a+4|0;i=f[g>>2]|0;f[g>>2]=0;d=f[e>>2]|0;f[e>>2]=i;if(d){mk(d);ds(d);d=f[g>>2]|0;f[g>>2]=0;if(d|0){mk(d);ds(d)}}else f[g>>2]=0;if(!(f[e>>2]|0)){i=0;u=h;return i|0}i=((f[c+100>>2]|0)-(f[c+96>>2]|0)|0)/12|0;b[g>>0]=0;Rh(a+56|0,i,g);i=1;u=h;return i|0}function jk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=a+64|0;if((f[h>>2]|0)==0?(g=no(32)|0,zo(g),d=f[h>>2]|0,f[h>>2]=g,d|0):0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;ds(e)}ds(d)}e=bn(f[a+28>>2]|0)|0;e=X(b[a+24>>0]|0,e)|0;d=((e|0)<0)<<31>>31;i=f[h>>2]|0;g=mo(e|0,d|0,c|0,0)|0;if(!(hk(i,0,g,I)|0)){i=0;return i|0}ul(a,f[h>>2]|0,e,d,0,0);f[a+80>>2]=c;i=1;return i|0}function kk(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;g=e>>>0>1073741823?-1:e<<2;h=as(g)|0;_j(h|0,0,g|0)|0;g=a+8|0;$i(g,h,b,c);if((e|0)>=(d|0)){bs(h);return 1}a=0-e|0;f=e;do{i=c+(f<<2)|0;$i(g,i+(a<<2)|0,b+(f<<2)|0,i);f=f+e|0}while((f|0)<(d|0));bs(h);return 1}function lk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;g=h;if(!(Aq(a,b,0)|0))if((b|0)!=0?(e=mi(b,1448,1432,0)|0,(e|0)!=0):0){b=g+4|0;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[g>>2]=e;f[g+8>>2]=a;f[g+12>>2]=-1;f[g+48>>2]=1;Xa[f[(f[e>>2]|0)+28>>2]&7](e,g,f[c>>2]|0,1);if((f[g+24>>2]|0)==1){f[c>>2]=f[g+16>>2];b=1}else b=0}else b=0;else b=1;u=h;return b|0}function mk(a){a=a|0;var b=0,c=0,d=0;b=f[a+48>>2]|0;if(b|0){d=a+52|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+24>>2]|0;if(b|0){d=a+28|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+12>>2]|0;if(b|0){d=a+16|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}d=f[a>>2]|0;if(!d)return;c=a+4|0;b=f[c>>2]|0;if((b|0)!=(d|0))f[c>>2]=b+(~((b+-4-d|0)>>>2)<<2);ds(d);return}function nk(a,b){a=a|0;b=b|0;if(!b)return;else{nk(a,f[b>>2]|0);nk(a,f[b+4>>2]|0);Op(b+28|0);Op(b+16|0);ds(b);return}}function ok(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;g=e>>>0>1073741823?-1:e<<2;h=as(g)|0;_j(h|0,0,g|0)|0;g=a+8|0;dj(g,h,b,c);if((e|0)>=(d|0)){bs(h);return 1}a=0-e|0;f=e;do{i=c+(f<<2)|0;dj(g,i+(a<<2)|0,b+(f<<2)|0,i);f=f+e|0}while((f|0)<(d|0));bs(h);return 1}function pk(a,c,d){a=a|0;c=c|0;d=d|0;a=Id(a,c)|0;if(!a){d=0;return d|0}c=f[a+20>>2]|0;if(((f[a+24>>2]|0)-c|0)!=4){d=0;return d|0}a=c;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;d=1;return d|0}function qk(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;f[a>>2]=d;if(d|0){o=d+16|0;m=f[o+4>>2]|0;n=a+8|0;f[n>>2]=f[o>>2];f[n+4>>2]=m;n=d+24|0;m=f[n+4>>2]|0;d=a+16|0;f[d>>2]=f[n>>2];f[d+4>>2]=m}b[a+24>>0]=e;f[a+28>>2]=g;b[a+32>>0]=h&1;o=a+40|0;f[o>>2]=i;f[o+4>>2]=j;o=a+48|0;f[o>>2]=k;f[o+4>>2]=l;f[a+56>>2]=c;return}function rk(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;i=f[h+4>>2]|0;g=c+16|0;d=g;e=f[d>>2]|0;d=f[d+4>>2]|0;if(!((i|0)>(d|0)|((i|0)==(d|0)?(f[h>>2]|0)>>>0>e>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+e>>0]|0;i=Kp(e|0,d|0,1,0)|0;d=g;f[d>>2]=i;f[d+4>>2]=I;d=h&255;do if(d&128)if(rk(a,c)|0){d=f[a>>2]<<7;f[a>>2]=d;d=d|h&127;break}else{i=0;return i|0}while(0);f[a>>2]=d;i=1;return i|0}function sk(a){a=a|0;var b=0,c=0,d=0;if(!a)return;d=a+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){d=b+12|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;ds(c)}ds(b)}b=f[a+68>>2]|0;if(b|0){d=a+72|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}d=a+64|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b>>2]|0;if(c|0){d=b+4|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;ds(c)}ds(b)}ds(a);return}function tk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;g=a+11|0;e=b[g>>0]|0;i=e<<24>>24<0;if(i)e=f[a+4>>2]|0;else e=e&255;do if(e>>>0>=c>>>0)if(i){i=(f[a>>2]|0)+c|0;b[h>>0]=0;Uq(i,h);f[a+4>>2]=c;break}else{b[h>>0]=0;Uq(a+c|0,h);b[g>>0]=c;break}else Vj(a,c-e|0,d)|0;while(0);u=j;return}function uk(a,b){a=a|0;b=b|0;var c=0,d=0;f[a>>2]=0;c=a+4|0;f[c>>2]=0;f[a+8>>2]=0;if(!b)return;if(b>>>0>357913941){Pq(a);c=Ia(4)|0;Hr(c);sa(c|0,1488,137)}d=no(b*12|0)|0;f[c>>2]=d;f[a>>2]=d;f[a+8>>2]=d+(b*12|0);a=d;do{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;a=(f[c>>2]|0)+12|0;f[c>>2]=a;b=b+-1|0}while((b|0)!=0);return}function vk(a){a=a|0;var b=0,c=0,d=0;b=f[a+52>>2]|0;if(b|0){d=a+56|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+40>>2]|0;if(b|0){d=a+44|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+28>>2]|0;if(b|0){d=a+32|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+12>>2]|0;if(b|0)ds(b);b=f[a>>2]|0;if(!b)return;ds(b);return}function wk(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4580;b=a+96|0;c=a+4|0;d=c+92|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[b>>2]=-1;f[a+100>>2]=-1;f[a+104>>2]=-1;b=a+164|0;c=a+108|0;d=c+56|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));n[b>>2]=$(1.0);b=a+240|0;c=a+168|0;d=c+68|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));Hn(b);Hn(a+280|0);f[a+320>>2]=0;f[a+324>>2]=0;f[a+328>>2]=0;return}function xk(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=4944;b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}d=a+8|0;b=f[d>>2]|0;if(!b){ds(a);return}e=a+12|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Pa[f[(f[c>>2]|0)+4>>2]&255](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}ds(b);ds(a);return}function yk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=u;u=u+32|0;g=e+12|0;h=e;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;Jk(h,d,Rk(d)|0);$j(c,h,g)|0;a=(b[g+11>>0]|0)<0?f[g>>2]|0:g;Op(h);Op(g);u=e;return a|0}function zk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;f[a>>2]=0;h=a+4|0;f[h>>2]=0;f[a+8>>2]=0;e=b+4|0;c=(f[e>>2]|0)-(f[b>>2]|0)|0;d=c>>2;if(!d)return;if(d>>>0>1073741823){Pq(a);h=Ia(4)|0;Hr(h);sa(h|0,1488,137)}g=no(c)|0;f[h>>2]=g;f[a>>2]=g;f[a+8>>2]=g+(d<<2);b=f[b>>2]|0;c=(f[e>>2]|0)-b|0;if((c|0)<=0)return;Fh(g|0,b|0,c|0)|0;f[h>>2]=g+(c>>>2<<2);return}function Ak(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;k=c&255;b[j>>0]=k;g=a+16|0;e=f[g>>2]|0;if(!e)if(!(vm(a)|0)){e=f[g>>2]|0;i=4}else d=-1;else i=4;do if((i|0)==4){i=a+20|0;g=f[i>>2]|0;if(g>>>0>>0?(d=c&255,(d|0)!=(b[a+75>>0]|0)):0){f[i>>2]=g+1;b[g>>0]=k;break}if((Na[f[a+36>>2]&31](a,j,1)|0)==1)d=h[j>>0]|0;else d=-1}while(0);u=l;return d|0}function Bk(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=4944;b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}e=a+8|0;b=f[e>>2]|0;if(!b)return;d=a+12|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{a=c+-4|0;f[d>>2]=a;c=f[a>>2]|0;f[a>>2]=0;if(c|0)Pa[f[(f[c>>2]|0)+4>>2]&255](c);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}ds(b);return} -function Ya(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,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;za=u;u=u+48|0;pa=za+40|0;wa=za+28|0;xa=za+8|0;Z=za+4|0;ra=za;f[wa>>2]=0;ya=wa+4|0;f[ya>>2]=0;f[wa+8>>2]=0;f[xa>>2]=0;f[xa+4>>2]=0;f[xa+8>>2]=0;f[xa+12>>2]=0;n[xa+16>>2]=$(1.0);qa=a+132|0;ka=f[a+136>>2]|0;a:do if((c|0)>0){ja=a+240|0;K=a+356|0;y=a+276|0;_=a+352|0;A=a+272|0;B=a+264|0;C=a+268|0;J=a+8|0;H=xa+4|0;D=a+340|0;I=wa+8|0;ia=a+36|0;G=a+40|0;ha=c+-1|0;E=a+368|0;F=a+380|0;x=0;w=0;while(1){d=x+1|0;e=f[K>>2]|0;b:do if((e|0)!=-1){v=f[E>>2]|0;t=(f[F>>2]|0)+(e<<2)|0;la=(f[t>>2]|0)+-1|0;f[t>>2]=la;la=f[(f[v+(e*12|0)>>2]|0)+(la<<2)>>2]|0;e=f[4832+(la<<2)>>2]|0;f[_>>2]=e;if(!la)la=15;else la=58}else{do if(!(b[y>>0]|0))e=1;else{g=f[A>>2]|0;j=f[B>>2]|0;k=f[C>>2]|0;e=j+(g>>>3)|0;if(e>>>0>>0?(la=h[e>>0]|0,L=g+1|0,f[A>>2]=L,la&1<<(g&7)|0):0){e=j+(L>>>3)|0;if(e>>>0>>0){i=(h[e>>0]|0)>>>(L&7)&1;g=g+2|0;f[A>>2]=g}else{g=L;i=0}e=j+(g>>>3)|0;if(e>>>0>>0){e=(h[e>>0]|0)>>>(g&7);f[A>>2]=g+1;e=e<<1&2}else e=0;e=(e|i)<<1|1;break}f[_>>2]=0;la=15;break b}while(0);f[_>>2]=e;la=58}while(0);c:do if((la|0)==15){la=0;e=f[ya>>2]|0;if((f[wa>>2]|0)==(e|0)){g=-1;break a}s=f[e+-4>>2]|0;r=(s|0)<0;d:do if(!r){e=s+(((s>>>0)%3|0|0)==0?2:-1)|0;if((e|0)<0)la=18;else{j=f[J>>2]|0;i=f[j+12>>2]|0;while(1){g=f[i+(e<<2)>>2]|0;if((g|0)<=-1){p=0;break d}e=g+(((g>>>0)%3|0|0)==0?2:-1)|0;if((e|0)<0){p=1;break}}}}else{e=s;la=18}while(0);if((la|0)==18){la=0;j=f[J>>2]|0;i=f[j+12>>2]|0;p=1}v=x*3|0;q=v+1|0;f[i+(s<<2)>>2]=q;f[i+(q<<2)>>2]=s;t=v+2|0;f[i+(e<<2)>>2]=t;f[i+(t<<2)>>2]=e;g=s+1|0;if(!r?(fa=((g|0)%3|0|0)==0?s+-2|0:g,(fa|0)>=0):0){m=f[j>>2]|0;o=f[m+(fa<<2)>>2]|0;f[m+(v<<2)>>2]=o;if((o|0)>-1){m=j+24|0;j=j+28|0;i=f[j>>2]|0;g=f[m>>2]|0;l=i-g>>2;do if(l>>>0<=o>>>0){k=o+1|0;if(k>>>0>l>>>0){mj(m,k-l|0);g=f[m>>2]|0;break}if(k>>>0>>0?(N=g+(k<<2)|0,(i|0)!=(N|0)):0)f[j>>2]=i+(~((i+-4-N|0)>>>2)<<2)}while(0);f[g+(o<<2)>>2]=v;j=f[J>>2]|0}}else{f[(f[j>>2]|0)+(v<<2)>>2]=-1073741824;o=-1073741824}g=e+1|0;if(!p?(ea=((g|0)%3|0|0)==0?e+-2|0:g,(ea|0)>=0):0){p=f[j>>2]|0;m=f[p+(ea<<2)>>2]|0;f[p+(q<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);e=f[l>>2]|0;break}if(j>>>0>>0?(R=e+(j<<2)|0,(g|0)!=(R|0)):0)f[i>>2]=g+(~((g+-4-R|0)>>>2)<<2)}while(0);f[e+(m<<2)>>2]=q;j=f[J>>2]|0}}else f[(f[j>>2]|0)+(q<<2)>>2]=-1073741824;if(!r?(ca=(((s>>>0)%3|0|0)==0?2:-1)+s|0,(ca|0)>=0):0){s=f[j>>2]|0;m=f[s+(ca<<2)>>2]|0;f[s+(t<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);e=f[l>>2]|0;break}if(j>>>0>>0?(Q=e+(j<<2)|0,(g|0)!=(Q|0)):0)f[i>>2]=g+(~((g+-4-Q|0)>>>2)<<2)}while(0);g=t;e=e+(m<<2)|0;la=55}}else{g=-1073741824;e=(f[j>>2]|0)+(t<<2)|0;la=55}if((la|0)==55){la=0;f[e>>2]=g}if((w|0)>(ka|0)){g=-1;break a}e=(f[qa>>2]|0)+(o>>>5<<2)|0;f[e>>2]=f[e>>2]&~(1<<(o&31));f[(f[ya>>2]|0)+-4>>2]=v;e=v;g=0;k=w}else if((la|0)==58){la=0;switch(e|0){case 3:case 5:{g=f[ya>>2]|0;if((f[wa>>2]|0)==(g|0)){g=-1;break a}s=f[g+-4>>2]|0;t=x*3|0;r=((e|0)==5?2:1)+t|0;e=f[J>>2]|0;v=f[e+12>>2]|0;f[v+(r<<2)>>2]=s;f[v+(s<<2)>>2]=r;v=w+1|0;f[(f[e>>2]|0)+(r<<2)>>2]=w;if((w|0)>-1){k=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[k>>2]|0;j=g-e>>2;do if(j>>>0<=w>>>0){if(v>>>0>j>>>0){mj(k,v-j|0);e=f[k>>2]|0;break}if(v>>>0>>0?(P=e+(v<<2)|0,(g|0)!=(P|0)):0)f[i>>2]=g+(~((g+-4-P|0)>>>2)<<2)}while(0);f[e+(w<<2)>>2]=r;e=f[J>>2]|0}p=(r|0)<0;g=r+1|0;if(p)m=r;else m=((g|0)%3|0|0)==0?r+-2|0:g;q=(s|0)<0;if(!q?(ba=(((s>>>0)%3|0|0)==0?2:-1)+s|0,(ba|0)>=0):0){w=f[e>>2]|0;o=f[w+(ba<<2)>>2]|0;f[w+(m<<2)>>2]=o;if((o|0)>-1){l=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=o>>>0){j=o+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);e=f[l>>2]|0;break}if(j>>>0>>0?(O=e+(j<<2)|0,(g|0)!=(O|0)):0)f[i>>2]=g+(~((g+-4-O|0)>>>2)<<2)}while(0);f[e+(o<<2)>>2]=m;e=f[J>>2]|0}}else f[(f[e>>2]|0)+(m<<2)>>2]=-1073741824;do if(!p)if(!((r>>>0)%3|0)){o=r+2|0;break}else{o=r+-1|0;break}else o=r;while(0);g=s+1|0;if(!q?(da=((g|0)%3|0|0)==0?s+-2|0:g,(da|0)>=0):0){w=f[e>>2]|0;m=f[w+(da<<2)>>2]|0;f[w+(o<<2)>>2]=m;if((m|0)>-1){l=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);e=f[l>>2]|0;break}if(j>>>0>>0?(M=e+(j<<2)|0,(g|0)!=(M|0)):0)f[i>>2]=g+(~((g+-4-M|0)>>>2)<<2)}while(0);g=o;e=e+(m<<2)|0;la=96}}else{g=-1073741824;e=(f[e>>2]|0)+(o<<2)|0;la=96}if((la|0)==96){la=0;f[e>>2]=g}f[(f[ya>>2]|0)+-4>>2]=t;e=t;g=1;k=v;break c}case 1:{g=f[wa>>2]|0;e=f[ya>>2]|0;if((g|0)==(e|0)){g=-1;break a}p=e+-4|0;m=f[p>>2]|0;f[ya>>2]=p;k=f[H>>2]|0;e:do if(k){l=k+-1|0;j=(l&k|0)==0;if(j)o=l&x;else o=(x>>>0)%(k>>>0)|0;i=f[(f[xa>>2]|0)+(o<<2)>>2]|0;if(i){if(j)do{i=f[i>>2]|0;if(!i){e=p;break e}if((f[i+4>>2]&l|0)!=(o|0)){e=p;break e}}while((f[i+8>>2]|0)!=(x|0));else do{i=f[i>>2]|0;if(!i){e=p;break e}if((((f[i+4>>2]|0)>>>0)%(k>>>0)|0|0)!=(o|0)){e=p;break e}}while((f[i+8>>2]|0)!=(x|0));i=i+12|0;if((p|0)==(f[I>>2]|0)){Bj(wa,i);g=f[wa>>2]|0;e=f[ya>>2]|0;break}else{f[p>>2]=f[i>>2];f[ya>>2]=e;break}}else e=p}else e=p;while(0);if((g|0)==(e|0)){g=-1;break a}p=f[e+-4>>2]|0;t=x*3|0;s=t+2|0;e=f[J>>2]|0;v=f[e+12>>2]|0;f[v+(p<<2)>>2]=s;f[v+(s<<2)>>2]=p;r=t+1|0;f[v+(m<<2)>>2]=r;f[v+(r<<2)>>2]=m;if((p|0)>=0){g=(((p>>>0)%3|0|0)==0?2:-1)+p|0;i=f[e>>2]|0;if((g|0)>=0){j=f[i+(g<<2)>>2]|0;f[i+(t<<2)>>2]=j;if((j|0)>-1){o=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[o>>2]|0;l=g-e>>2;do if(l>>>0<=j>>>0){k=j+1|0;if(k>>>0>l>>>0){mj(o,k-l|0);e=f[o>>2]|0;break}if(k>>>0>>0?(Y=e+(k<<2)|0,(g|0)!=(Y|0)):0)f[i>>2]=g+(~((g+-4-Y|0)>>>2)<<2)}while(0);f[e+(j<<2)>>2]=t;e=f[J>>2]|0;i=1}else i=0}else{f[i+(t<<2)>>2]=-1073741824;i=0;j=-1073741824}g=p+1|0;g=((g|0)%3|0|0)==0?p+-2|0:g;k=f[e>>2]|0;if((g|0)>=0){q=f[k+(g<<2)>>2]|0;f[k+(r<<2)>>2]=q;if((q|0)>-1){p=e+24|0;k=e+28|0;g=f[k>>2]|0;e=f[p>>2]|0;o=g-e>>2;do if(o>>>0<=q>>>0){l=q+1|0;if(l>>>0>o>>>0){mj(p,l-o|0);e=f[p>>2]|0;break}if(l>>>0>>0?(X=e+(l<<2)|0,(g|0)!=(X|0)):0)f[k>>2]=g+(~((g+-4-X|0)>>>2)<<2)}while(0);f[e+(q<<2)>>2]=r;e=f[J>>2]|0;q=i}else q=i}else{g=k;la=128}}else{g=f[e>>2]|0;f[g+(t<<2)>>2]=-1073741824;i=0;j=-1073741824;la=128}if((la|0)==128){la=0;f[g+(r<<2)>>2]=-1073741824;q=i}if((m|0)>=0){g=(((m>>>0)%3|0|0)==0?2:-1)+m|0;i=f[e>>2]|0;if((g|0)>=0){p=f[i+(g<<2)>>2]|0;f[i+(s<<2)>>2]=p;if((p|0)>-1){o=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[o>>2]|0;l=g-e>>2;do if(l>>>0<=p>>>0){k=p+1|0;if(k>>>0>l>>>0){mj(o,k-l|0);e=f[o>>2]|0;break}if(k>>>0>>0?(W=e+(k<<2)|0,(g|0)!=(W|0)):0)f[i>>2]=g+(~((g+-4-W|0)>>>2)<<2)}while(0);g=s;e=e+(p<<2)|0;la=149}}else{g=-1073741824;e=i+(s<<2)|0;la=149}if((la|0)==149){la=0;f[e>>2]=g}i=m+1|0;i=((i|0)%3|0|0)==0?m+-2|0:i;g=f[J>>2]|0;if((i|0)<0){e=g;m=i;p=-1073741824}else{e=g;m=i;p=f[(f[g>>2]|0)+(i<<2)>>2]|0}}else{f[(f[e>>2]|0)+(s<<2)>>2]=-1073741824;p=-1073741824}s=f[D>>2]|0;v=s+(j<<2)|0;f[v>>2]=(f[v>>2]|0)+(f[s+(p<<2)>>2]|0);f:do if((m|0)>-1){o=j+1|0;if(!q){k=f[e>>2]|0;l=e+12|0;g=m;while(1){f[k+(g<<2)>>2]=j;v=g+1|0;g=((v|0)%3|0|0)==0?g+-2|0:v;if((g|0)<0)break f;i=f[(f[l>>2]|0)+(g<<2)>>2]|0;g=i+1|0;if((i|0)<0)break f;g=((g|0)%3|0|0)==0?i+-2|0:g;if((g|0)<=-1)break f}}do{f[(f[e>>2]|0)+(m<<2)>>2]=j;l=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=j>>>0){if(o>>>0>k>>>0){mj(l,o-k|0);e=f[l>>2]|0;break}if(o>>>0>>0?(V=e+(o<<2)|0,(g|0)!=(V|0)):0)f[i>>2]=g+(~((g+-4-V|0)>>>2)<<2)}while(0);f[e+(j<<2)>>2]=m;g=m+1|0;g=((g|0)%3|0|0)==0?m+-2|0:g;e=f[J>>2]|0;if((g|0)<0)break f;i=f[(f[e+12>>2]|0)+(g<<2)>>2]|0;g=i+1|0;if((i|0)<0)break f;m=((g|0)%3|0|0)==0?i+-2|0:g}while((m|0)>-1)}while(0);f[(f[e+24>>2]|0)+(p<<2)>>2]=-1073741824;f[(f[ya>>2]|0)+-4>>2]=t;e=t;g=0;k=w;break c}case 7:{l=x*3|0;f[pa>>2]=l;i=f[J>>2]|0;o=w+1|0;e=f[i>>2]|0;f[e+(l<<2)>>2]=w;if((w|0)<=-1){g=l+1|0;j=w+2|0;f[e+(g<<2)>>2]=o;if((w|0)==-1){e=i;m=j;la=177}else{g=l;m=j}}else{k=i+24|0;i=i+28|0;g=f[i>>2]|0;e=f[k>>2]|0;j=g-e>>2;do if(j>>>0<=w>>>0){if(o>>>0>j>>>0){mj(k,o-j|0);e=f[k>>2]|0;break}if(o>>>0>>0?(U=e+(o<<2)|0,(g|0)!=(U|0)):0)f[i>>2]=g+(~((g+-4-U|0)>>>2)<<2)}while(0);f[e+(w<<2)>>2]=l;e=f[J>>2]|0;g=(f[pa>>2]|0)+1|0;f[(f[e>>2]|0)+(g<<2)>>2]=o;m=w+2|0;la=177}if((la|0)==177){la=0;l=e+24|0;j=e+28|0;i=f[j>>2]|0;e=f[l>>2]|0;k=i-e>>2;do if(k>>>0<=o>>>0){if(m>>>0>k>>>0){mj(l,m-k|0);e=f[l>>2]|0;break}if(m>>>0>>0?(T=e+(m<<2)|0,(i|0)!=(T|0)):0)f[j>>2]=i+(~((i+-4-T|0)>>>2)<<2)}while(0);f[e+(o<<2)>>2]=g;i=f[J>>2]|0;g=f[pa>>2]|0;e=f[i>>2]|0}l=g+2|0;o=w+3|0;f[e+(l<<2)>>2]=m;if((m|0)>-1){k=i+24|0;i=i+28|0;g=f[i>>2]|0;e=f[k>>2]|0;j=g-e>>2;do if(j>>>0<=m>>>0){if(o>>>0>j>>>0){mj(k,o-j|0);e=f[k>>2]|0;break}if(o>>>0>>0?(S=e+(o<<2)|0,(g|0)!=(S|0)):0)f[i>>2]=g+(~((g+-4-S|0)>>>2)<<2)}while(0);f[e+(m<<2)>>2]=l}e=f[ya>>2]|0;if((e|0)==(f[I>>2]|0)){Bj(wa,pa);e=f[ya>>2]|0}else{f[e>>2]=f[pa>>2];e=e+4|0;f[ya>>2]=e}e=f[e+-4>>2]|0;g=1;k=o;break c}default:{g=-1;break a}}}while(0);f[Z>>2]=e;f[pa>>2]=f[Z>>2];je(ja,pa);g:do if(g?(aa=c-x|0,ga=aa+-1|0,z=f[G>>2]|0,(z|0)!=(f[ia>>2]|0)):0){e=z;do{g=f[e+-8>>2]|0;if((g|0)>=(aa|0)){g=-1;break a}if((g|0)!=(ga|0))break g;g=b[e+-4>>0]|0;j=f[e+-12>>2]|0;f[G>>2]=e+-12;if((j|0)<0){g=-1;break a}e=f[(f[ya>>2]|0)+-4>>2]|0;i=(e|0)<0;do if(!(g&1)){if(!i)if(!((e>>>0)%3|0)){e=e+2|0;break}else{e=e+-1|0;break}}else{g=e+1|0;if(!i)e=((g|0)%3|0|0)==0?e+-2|0:g}while(0);f[pa>>2]=ha-j;x=tf(xa,pa)|0;f[x>>2]=e;e=f[G>>2]|0}while((e|0)!=(f[ia>>2]|0))}while(0);if((d|0)<(c|0)){x=d;w=k}else{D=k;la=210;break}}}else{d=0;D=0;la=210}while(0);do if((la|0)==210)if((D|0)<=(ka|0)){g=f[ya>>2]|0;if((g|0)==(f[wa>>2]|0))e=a+8|0;else{s=a+316|0;e=a+8|0;C=a+60|0;A=a+64|0;y=a+68|0;x=a+76|0;z=a+80|0;B=a+72|0;t=a+312|0;v=a+304|0;w=a+308|0;do{ka=g;o=f[ka+-4>>2]|0;f[pa>>2]=o;f[ya>>2]=ka+-4;do if(b[s>>0]|0){g=f[t>>2]|0;i=(f[v>>2]|0)+(g>>>3)|0;if(i>>>0<(f[w>>2]|0)>>>0?(ka=h[i>>0]|0,f[t>>2]=g+1,ka&1<<(g&7)|0):0){la=217;break}g=f[A>>2]|0;i=f[y>>2]|0;if((g|0)==(i<<5|0)){if((g+1|0)<0){Pq(C);i=f[y>>2]|0}ka=i<<6;g=g+32&-32;jj(C,i<<5>>>0<1073741823?(ka>>>0>>0?g:ka):2147483647);g=f[A>>2]|0}f[A>>2]=g+1;ka=(f[C>>2]|0)+(g>>>5<<2)|0;f[ka>>2]=f[ka>>2]&~(1<<(g&31));g=f[x>>2]|0;if((g|0)==(f[z>>2]|0)){Bj(B,pa);break}else{f[g>>2]=f[pa>>2];f[x>>2]=g+4;break}}else la=217;while(0);if((la|0)==217){la=0;k=(o|0)<0;h:do if(!k){g=o+(((o>>>0)%3|0|0)==0?2:-1)|0;if((g|0)>=0){i=f[(f[e>>2]|0)+12>>2]|0;j=g;while(1){g=f[i+(j<<2)>>2]|0;if((g|0)<=-1){i=0;g=j;break}g=g+(((g>>>0)%3|0|0)==0?2:-1)|0;if((g|0)<0){i=1;break}else j=g}if(k){k=o;la=224;break}}else i=1;k=o+1|0;k=((k|0)%3|0|0)==0?o+-2|0:k;if((k|0)<0)la=224;else{j=f[e>>2]|0;l=f[j+12>>2]|0;m=k;while(1){k=f[l+(m<<2)>>2]|0;if((k|0)<=-1){q=0;break h}ka=k+1|0;k=((ka|0)%3|0|0)==0?k+-2|0:ka;if((k|0)<0){q=1;m=k;break}else m=k}}}else{i=1;g=o;k=o;la=224}while(0);if((la|0)==224){la=0;j=f[e>>2]|0;l=f[j+12>>2]|0;q=1;m=k}r=d+1|0;d=d*3|0;f[ra>>2]=d;f[l+(d<<2)>>2]=o;f[l+(o<<2)>>2]=d;d=(f[ra>>2]|0)+1|0;f[l+(d<<2)>>2]=g;f[l+(g<<2)>>2]=d;d=(f[ra>>2]|0)+2|0;f[l+(d<<2)>>2]=m;f[l+(m<<2)>>2]=d;d=f[ra>>2]|0;k=g+1|0;if(!i?(ua=((k|0)%3|0|0)==0?g+-2|0:k,(ua|0)>=0):0){ka=f[j>>2]|0;p=f[ka+(ua<<2)>>2]|0;f[ka+(d<<2)>>2]=p;if((p|0)>-1){o=j+24|0;j=j+28|0;i=f[j>>2]|0;g=f[o>>2]|0;l=i-g>>2;do if(l>>>0<=p>>>0){k=p+1|0;if(k>>>0>l>>>0){mj(o,k-l|0);g=f[o>>2]|0;break}if(k>>>0>>0?(oa=g+(k<<2)|0,(i|0)!=(oa|0)):0)f[j>>2]=i+(~((i+-4-oa|0)>>>2)<<2)}while(0);f[g+(p<<2)>>2]=d;d=f[ra>>2]|0;j=f[e>>2]|0}}else f[(f[j>>2]|0)+(d<<2)>>2]=-1073741824;o=d+1|0;g=m+1|0;if(!q?(ta=((g|0)%3|0|0)==0?m+-2|0:g,(ta|0)>=0):0){ka=f[j>>2]|0;m=f[ka+(ta<<2)>>2]|0;f[ka+(o<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;d=f[l>>2]|0;k=g-d>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);d=f[l>>2]|0;break}if(j>>>0>>0?(na=d+(j<<2)|0,(g|0)!=(na|0)):0)f[i>>2]=g+(~((g+-4-na|0)>>>2)<<2)}while(0);f[d+(m<<2)>>2]=o;d=f[ra>>2]|0;j=f[e>>2]|0}}else f[(f[j>>2]|0)+(o<<2)>>2]=-1073741824;o=d+2|0;g=f[pa>>2]|0;i=g+1|0;if((g|0)>=0?(sa=((i|0)%3|0|0)==0?g+-2|0:i,(sa|0)>=0):0){ka=f[j>>2]|0;m=f[ka+(sa<<2)>>2]|0;f[ka+(o<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;d=f[l>>2]|0;k=g-d>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);d=f[l>>2]|0;break}if(j>>>0>>0?(ma=d+(j<<2)|0,(g|0)!=(ma|0)):0)f[i>>2]=g+(~((g+-4-ma|0)>>>2)<<2)}while(0);f[d+(m<<2)>>2]=o;d=f[ra>>2]|0}}else f[(f[j>>2]|0)+(o<<2)>>2]=-1073741824;if((d|0)<0)d=-1073741824;else d=f[(f[f[e>>2]>>2]|0)+(d<<2)>>2]|0;g=f[qa>>2]|0;ka=g+(d>>>5<<2)|0;f[ka>>2]=f[ka>>2]&~(1<<(d&31));d=f[ra>>2]|0;if((d|0)<-1)d=-1073741824;else d=f[(f[f[e>>2]>>2]|0)+(d+1<<2)>>2]|0;ka=g+(d>>>5<<2)|0;f[ka>>2]=f[ka>>2]&~(1<<(d&31));d=f[ra>>2]|0;if((d|0)<-2)d=-1073741824;else d=f[(f[f[e>>2]>>2]|0)+(d+2<<2)>>2]|0;g=g+(d>>>5<<2)|0;f[g>>2]=f[g>>2]&~(1<<(d&31));d=f[A>>2]|0;g=f[y>>2]|0;if((d|0)==(g<<5|0)){if((d+1|0)<0){Pq(C);g=f[y>>2]|0}ka=g<<6;d=d+32&-32;jj(C,g<<5>>>0<1073741823?(ka>>>0>>0?d:ka):2147483647);d=f[A>>2]|0}f[A>>2]=d+1;ka=(f[C>>2]|0)+(d>>>5<<2)|0;f[ka>>2]=f[ka>>2]|1<<(d&31);d=f[x>>2]|0;if((d|0)==(f[z>>2]|0))Bj(B,ra);else{f[d>>2]=f[ra>>2];f[x>>2]=d+4}d=r}g=f[ya>>2]|0}while((g|0)!=(f[wa>>2]|0))}ua=f[e>>2]|0;if((d|0)==(((f[ua+4>>2]|0)-(f[ua>>2]|0)>>2>>>0)/3|0|0)){j=a+84|0;g=a+88|0;e=f[g>>2]|0;d=f[j>>2]|0;i=e-d>>2;if(D>>>0>i>>>0){mj(j,D-i|0);g=D;break}if(D>>>0>>0?(va=d+(D<<2)|0,(e|0)!=(va|0)):0){f[g>>2]=e+(~((e+-4-va|0)>>>2)<<2);g=D}else g=D}else g=-1}else g=-1;while(0);d=f[xa+8>>2]|0;if(d|0)do{va=d;d=f[d>>2]|0;ds(va)}while((d|0)!=0);d=f[xa>>2]|0;f[xa>>2]=0;if(d|0)ds(d);d=f[wa>>2]|0;if(!d){u=za;return g|0}e=f[ya>>2]|0;if((e|0)!=(d|0))f[ya>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);u=za;return g|0}function Za(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,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;ya=u;u=u+48|0;oa=ya+40|0;va=ya+28|0;wa=ya+8|0;W=ya+4|0;qa=ya;f[va>>2]=0;xa=va+4|0;f[xa>>2]=0;f[va+8>>2]=0;f[wa>>2]=0;f[wa+4>>2]=0;f[wa+8>>2]=0;f[wa+12>>2]=0;n[wa+16>>2]=$(1.0);pa=a+132|0;ja=f[a+136>>2]|0;a:do if((c|0)>0){ia=a+240|0;Y=a+372|0;y=a+276|0;X=a+368|0;A=a+272|0;B=a+264|0;C=a+268|0;H=a+8|0;F=wa+4|0;D=a+340|0;G=va+8|0;ha=a+36|0;E=a+40|0;ga=c+-1|0;Z=a+352|0;x=0;w=0;while(1){d=x+1|0;if((f[Y>>2]|0)!=-1?Cl(Z)|0:0){e=f[Y>>2]|0;f[X>>2]=e;if(!e)ka=16;else ka=59}else ka=5;b:do if((ka|0)==5){do if(!(b[y>>0]|0))e=1;else{g=f[A>>2]|0;j=f[B>>2]|0;k=f[C>>2]|0;e=j+(g>>>3)|0;if(e>>>0>>0?(ka=h[e>>0]|0,I=g+1|0,f[A>>2]=I,ka&1<<(g&7)|0):0){e=j+(I>>>3)|0;if(e>>>0>>0){i=(h[e>>0]|0)>>>(I&7)&1;g=g+2|0;f[A>>2]=g}else{g=I;i=0}e=j+(g>>>3)|0;if(e>>>0>>0){e=(h[e>>0]|0)>>>(g&7);f[A>>2]=g+1;e=e<<1&2}else e=0;e=(e|i)<<1|1;break}f[X>>2]=0;ka=16;break b}while(0);f[X>>2]=e;ka=59}while(0);c:do if((ka|0)==16){ka=0;e=f[xa>>2]|0;if((f[va>>2]|0)==(e|0)){g=-1;break a}s=f[e+-4>>2]|0;r=(s|0)<0;d:do if(!r){e=s+(((s>>>0)%3|0|0)==0?2:-1)|0;if((e|0)<0)ka=19;else{j=f[H>>2]|0;i=f[j+12>>2]|0;while(1){g=f[i+(e<<2)>>2]|0;if((g|0)<=-1){p=0;break d}e=g+(((g>>>0)%3|0|0)==0?2:-1)|0;if((e|0)<0){p=1;break}}}}else{e=s;ka=19}while(0);if((ka|0)==19){ka=0;j=f[H>>2]|0;i=f[j+12>>2]|0;p=1}v=x*3|0;q=v+1|0;f[i+(s<<2)>>2]=q;f[i+(q<<2)>>2]=s;t=v+2|0;f[i+(e<<2)>>2]=t;f[i+(t<<2)>>2]=e;g=s+1|0;if(!r?(ea=((g|0)%3|0|0)==0?s+-2|0:g,(ea|0)>=0):0){m=f[j>>2]|0;o=f[m+(ea<<2)>>2]|0;f[m+(v<<2)>>2]=o;if((o|0)>-1){m=j+24|0;j=j+28|0;i=f[j>>2]|0;g=f[m>>2]|0;l=i-g>>2;do if(l>>>0<=o>>>0){k=o+1|0;if(k>>>0>l>>>0){mj(m,k-l|0);g=f[m>>2]|0;break}if(k>>>0>>0?(J=g+(k<<2)|0,(i|0)!=(J|0)):0)f[j>>2]=i+(~((i+-4-J|0)>>>2)<<2)}while(0);f[g+(o<<2)>>2]=v;j=f[H>>2]|0}}else{f[(f[j>>2]|0)+(v<<2)>>2]=-1073741824;o=-1073741824}g=e+1|0;if(!p?(da=((g|0)%3|0|0)==0?e+-2|0:g,(da|0)>=0):0){p=f[j>>2]|0;m=f[p+(da<<2)>>2]|0;f[p+(q<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);e=f[l>>2]|0;break}if(j>>>0>>0?(O=e+(j<<2)|0,(g|0)!=(O|0)):0)f[i>>2]=g+(~((g+-4-O|0)>>>2)<<2)}while(0);f[e+(m<<2)>>2]=q;j=f[H>>2]|0}}else f[(f[j>>2]|0)+(q<<2)>>2]=-1073741824;if(!r?(ba=(((s>>>0)%3|0|0)==0?2:-1)+s|0,(ba|0)>=0):0){s=f[j>>2]|0;m=f[s+(ba<<2)>>2]|0;f[s+(t<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);e=f[l>>2]|0;break}if(j>>>0>>0?(N=e+(j<<2)|0,(g|0)!=(N|0)):0)f[i>>2]=g+(~((g+-4-N|0)>>>2)<<2)}while(0);g=t;e=e+(m<<2)|0;ka=56}}else{g=-1073741824;e=(f[j>>2]|0)+(t<<2)|0;ka=56}if((ka|0)==56){ka=0;f[e>>2]=g}if((w|0)>(ja|0)){g=-1;break a}e=(f[pa>>2]|0)+(o>>>5<<2)|0;f[e>>2]=f[e>>2]&~(1<<(o&31));f[(f[xa>>2]|0)+-4>>2]=v;e=v;g=0;k=w}else if((ka|0)==59){ka=0;switch(e|0){case 3:case 5:{g=f[xa>>2]|0;if((f[va>>2]|0)==(g|0)){g=-1;break a}s=f[g+-4>>2]|0;t=x*3|0;r=((e|0)==5?2:1)+t|0;e=f[H>>2]|0;v=f[e+12>>2]|0;f[v+(r<<2)>>2]=s;f[v+(s<<2)>>2]=r;v=w+1|0;f[(f[e>>2]|0)+(r<<2)>>2]=w;if((w|0)>-1){k=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[k>>2]|0;j=g-e>>2;do if(j>>>0<=w>>>0){if(v>>>0>j>>>0){mj(k,v-j|0);e=f[k>>2]|0;break}if(v>>>0>>0?(M=e+(v<<2)|0,(g|0)!=(M|0)):0)f[i>>2]=g+(~((g+-4-M|0)>>>2)<<2)}while(0);f[e+(w<<2)>>2]=r;e=f[H>>2]|0}p=(r|0)<0;g=r+1|0;if(p)m=r;else m=((g|0)%3|0|0)==0?r+-2|0:g;q=(s|0)<0;if(!q?(aa=(((s>>>0)%3|0|0)==0?2:-1)+s|0,(aa|0)>=0):0){w=f[e>>2]|0;o=f[w+(aa<<2)>>2]|0;f[w+(m<<2)>>2]=o;if((o|0)>-1){l=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=o>>>0){j=o+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);e=f[l>>2]|0;break}if(j>>>0>>0?(L=e+(j<<2)|0,(g|0)!=(L|0)):0)f[i>>2]=g+(~((g+-4-L|0)>>>2)<<2)}while(0);f[e+(o<<2)>>2]=m;e=f[H>>2]|0}}else f[(f[e>>2]|0)+(m<<2)>>2]=-1073741824;do if(!p)if(!((r>>>0)%3|0)){o=r+2|0;break}else{o=r+-1|0;break}else o=r;while(0);g=s+1|0;if(!q?(ca=((g|0)%3|0|0)==0?s+-2|0:g,(ca|0)>=0):0){w=f[e>>2]|0;m=f[w+(ca<<2)>>2]|0;f[w+(o<<2)>>2]=m;if((m|0)>-1){l=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);e=f[l>>2]|0;break}if(j>>>0>>0?(K=e+(j<<2)|0,(g|0)!=(K|0)):0)f[i>>2]=g+(~((g+-4-K|0)>>>2)<<2)}while(0);g=o;e=e+(m<<2)|0;ka=97}}else{g=-1073741824;e=(f[e>>2]|0)+(o<<2)|0;ka=97}if((ka|0)==97){ka=0;f[e>>2]=g}f[(f[xa>>2]|0)+-4>>2]=t;e=t;g=1;k=v;break c}case 1:{g=f[va>>2]|0;e=f[xa>>2]|0;if((g|0)==(e|0)){g=-1;break a}p=e+-4|0;m=f[p>>2]|0;f[xa>>2]=p;k=f[F>>2]|0;e:do if(k){l=k+-1|0;j=(l&k|0)==0;if(j)o=l&x;else o=(x>>>0)%(k>>>0)|0;i=f[(f[wa>>2]|0)+(o<<2)>>2]|0;if(i){if(j)do{i=f[i>>2]|0;if(!i){e=p;break e}if((f[i+4>>2]&l|0)!=(o|0)){e=p;break e}}while((f[i+8>>2]|0)!=(x|0));else do{i=f[i>>2]|0;if(!i){e=p;break e}if((((f[i+4>>2]|0)>>>0)%(k>>>0)|0|0)!=(o|0)){e=p;break e}}while((f[i+8>>2]|0)!=(x|0));i=i+12|0;if((p|0)==(f[G>>2]|0)){Bj(va,i);g=f[va>>2]|0;e=f[xa>>2]|0;break}else{f[p>>2]=f[i>>2];f[xa>>2]=e;break}}else e=p}else e=p;while(0);if((g|0)==(e|0)){g=-1;break a}p=f[e+-4>>2]|0;t=x*3|0;s=t+2|0;e=f[H>>2]|0;v=f[e+12>>2]|0;f[v+(p<<2)>>2]=s;f[v+(s<<2)>>2]=p;r=t+1|0;f[v+(m<<2)>>2]=r;f[v+(r<<2)>>2]=m;if((p|0)>=0){g=(((p>>>0)%3|0|0)==0?2:-1)+p|0;i=f[e>>2]|0;if((g|0)>=0){j=f[i+(g<<2)>>2]|0;f[i+(t<<2)>>2]=j;if((j|0)>-1){o=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[o>>2]|0;l=g-e>>2;do if(l>>>0<=j>>>0){k=j+1|0;if(k>>>0>l>>>0){mj(o,k-l|0);e=f[o>>2]|0;break}if(k>>>0>>0?(V=e+(k<<2)|0,(g|0)!=(V|0)):0)f[i>>2]=g+(~((g+-4-V|0)>>>2)<<2)}while(0);f[e+(j<<2)>>2]=t;e=f[H>>2]|0;i=1}else i=0}else{f[i+(t<<2)>>2]=-1073741824;i=0;j=-1073741824}g=p+1|0;g=((g|0)%3|0|0)==0?p+-2|0:g;k=f[e>>2]|0;if((g|0)>=0){q=f[k+(g<<2)>>2]|0;f[k+(r<<2)>>2]=q;if((q|0)>-1){p=e+24|0;k=e+28|0;g=f[k>>2]|0;e=f[p>>2]|0;o=g-e>>2;do if(o>>>0<=q>>>0){l=q+1|0;if(l>>>0>o>>>0){mj(p,l-o|0);e=f[p>>2]|0;break}if(l>>>0>>0?(U=e+(l<<2)|0,(g|0)!=(U|0)):0)f[k>>2]=g+(~((g+-4-U|0)>>>2)<<2)}while(0);f[e+(q<<2)>>2]=r;e=f[H>>2]|0;q=i}else q=i}else{g=k;ka=129}}else{g=f[e>>2]|0;f[g+(t<<2)>>2]=-1073741824;i=0;j=-1073741824;ka=129}if((ka|0)==129){ka=0;f[g+(r<<2)>>2]=-1073741824;q=i}if((m|0)>=0){g=(((m>>>0)%3|0|0)==0?2:-1)+m|0;i=f[e>>2]|0;if((g|0)>=0){p=f[i+(g<<2)>>2]|0;f[i+(s<<2)>>2]=p;if((p|0)>-1){o=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[o>>2]|0;l=g-e>>2;do if(l>>>0<=p>>>0){k=p+1|0;if(k>>>0>l>>>0){mj(o,k-l|0);e=f[o>>2]|0;break}if(k>>>0>>0?(T=e+(k<<2)|0,(g|0)!=(T|0)):0)f[i>>2]=g+(~((g+-4-T|0)>>>2)<<2)}while(0);g=s;e=e+(p<<2)|0;ka=150}}else{g=-1073741824;e=i+(s<<2)|0;ka=150}if((ka|0)==150){ka=0;f[e>>2]=g}i=m+1|0;i=((i|0)%3|0|0)==0?m+-2|0:i;g=f[H>>2]|0;if((i|0)<0){e=g;m=i;p=-1073741824}else{e=g;m=i;p=f[(f[g>>2]|0)+(i<<2)>>2]|0}}else{f[(f[e>>2]|0)+(s<<2)>>2]=-1073741824;p=-1073741824}s=f[D>>2]|0;v=s+(j<<2)|0;f[v>>2]=(f[v>>2]|0)+(f[s+(p<<2)>>2]|0);f:do if((m|0)>-1){o=j+1|0;if(!q){k=f[e>>2]|0;l=e+12|0;g=m;while(1){f[k+(g<<2)>>2]=j;v=g+1|0;g=((v|0)%3|0|0)==0?g+-2|0:v;if((g|0)<0)break f;i=f[(f[l>>2]|0)+(g<<2)>>2]|0;g=i+1|0;if((i|0)<0)break f;g=((g|0)%3|0|0)==0?i+-2|0:g;if((g|0)<=-1)break f}}do{f[(f[e>>2]|0)+(m<<2)>>2]=j;l=e+24|0;i=e+28|0;g=f[i>>2]|0;e=f[l>>2]|0;k=g-e>>2;do if(k>>>0<=j>>>0){if(o>>>0>k>>>0){mj(l,o-k|0);e=f[l>>2]|0;break}if(o>>>0>>0?(S=e+(o<<2)|0,(g|0)!=(S|0)):0)f[i>>2]=g+(~((g+-4-S|0)>>>2)<<2)}while(0);f[e+(j<<2)>>2]=m;g=m+1|0;g=((g|0)%3|0|0)==0?m+-2|0:g;e=f[H>>2]|0;if((g|0)<0)break f;i=f[(f[e+12>>2]|0)+(g<<2)>>2]|0;g=i+1|0;if((i|0)<0)break f;m=((g|0)%3|0|0)==0?i+-2|0:g}while((m|0)>-1)}while(0);f[(f[e+24>>2]|0)+(p<<2)>>2]=-1073741824;f[(f[xa>>2]|0)+-4>>2]=t;e=t;g=0;k=w;break c}case 7:{l=x*3|0;f[oa>>2]=l;i=f[H>>2]|0;o=w+1|0;e=f[i>>2]|0;f[e+(l<<2)>>2]=w;if((w|0)<=-1){g=l+1|0;j=w+2|0;f[e+(g<<2)>>2]=o;if((w|0)==-1){e=i;m=j;ka=178}else{g=l;m=j}}else{k=i+24|0;i=i+28|0;g=f[i>>2]|0;e=f[k>>2]|0;j=g-e>>2;do if(j>>>0<=w>>>0){if(o>>>0>j>>>0){mj(k,o-j|0);e=f[k>>2]|0;break}if(o>>>0>>0?(R=e+(o<<2)|0,(g|0)!=(R|0)):0)f[i>>2]=g+(~((g+-4-R|0)>>>2)<<2)}while(0);f[e+(w<<2)>>2]=l;e=f[H>>2]|0;g=(f[oa>>2]|0)+1|0;f[(f[e>>2]|0)+(g<<2)>>2]=o;m=w+2|0;ka=178}if((ka|0)==178){ka=0;l=e+24|0;j=e+28|0;i=f[j>>2]|0;e=f[l>>2]|0;k=i-e>>2;do if(k>>>0<=o>>>0){if(m>>>0>k>>>0){mj(l,m-k|0);e=f[l>>2]|0;break}if(m>>>0>>0?(Q=e+(m<<2)|0,(i|0)!=(Q|0)):0)f[j>>2]=i+(~((i+-4-Q|0)>>>2)<<2)}while(0);f[e+(o<<2)>>2]=g;i=f[H>>2]|0;g=f[oa>>2]|0;e=f[i>>2]|0}l=g+2|0;o=w+3|0;f[e+(l<<2)>>2]=m;if((m|0)>-1){k=i+24|0;i=i+28|0;g=f[i>>2]|0;e=f[k>>2]|0;j=g-e>>2;do if(j>>>0<=m>>>0){if(o>>>0>j>>>0){mj(k,o-j|0);e=f[k>>2]|0;break}if(o>>>0>>0?(P=e+(o<<2)|0,(g|0)!=(P|0)):0)f[i>>2]=g+(~((g+-4-P|0)>>>2)<<2)}while(0);f[e+(m<<2)>>2]=l}e=f[xa>>2]|0;if((e|0)==(f[G>>2]|0)){Bj(va,oa);e=f[xa>>2]|0}else{f[e>>2]=f[oa>>2];e=e+4|0;f[xa>>2]=e}e=f[e+-4>>2]|0;g=1;k=o;break c}default:{g=-1;break a}}}while(0);f[W>>2]=e;f[oa>>2]=f[W>>2];ce(ia,oa);g:do if(g?(_=c-x|0,fa=_+-1|0,z=f[E>>2]|0,(z|0)!=(f[ha>>2]|0)):0){e=z;do{g=f[e+-8>>2]|0;if((g|0)>=(_|0)){g=-1;break a}if((g|0)!=(fa|0))break g;g=b[e+-4>>0]|0;j=f[e+-12>>2]|0;f[E>>2]=e+-12;if((j|0)<0){g=-1;break a}e=f[(f[xa>>2]|0)+-4>>2]|0;i=(e|0)<0;do if(!(g&1)){if(!i)if(!((e>>>0)%3|0)){e=e+2|0;break}else{e=e+-1|0;break}}else{g=e+1|0;if(!i)e=((g|0)%3|0|0)==0?e+-2|0:g}while(0);f[oa>>2]=ga-j;x=tf(wa,oa)|0;f[x>>2]=e;e=f[E>>2]|0}while((e|0)!=(f[ha>>2]|0))}while(0);if((d|0)<(c|0)){x=d;w=k}else{D=k;ka=211;break}}}else{d=0;D=0;ka=211}while(0);do if((ka|0)==211)if((D|0)<=(ja|0)){g=f[xa>>2]|0;if((g|0)==(f[va>>2]|0))e=a+8|0;else{s=a+316|0;e=a+8|0;C=a+60|0;A=a+64|0;y=a+68|0;x=a+76|0;z=a+80|0;B=a+72|0;t=a+312|0;v=a+304|0;w=a+308|0;do{ja=g;o=f[ja+-4>>2]|0;f[oa>>2]=o;f[xa>>2]=ja+-4;do if(b[s>>0]|0){g=f[t>>2]|0;i=(f[v>>2]|0)+(g>>>3)|0;if(i>>>0<(f[w>>2]|0)>>>0?(ja=h[i>>0]|0,f[t>>2]=g+1,ja&1<<(g&7)|0):0){ka=218;break}g=f[A>>2]|0;i=f[y>>2]|0;if((g|0)==(i<<5|0)){if((g+1|0)<0){Pq(C);i=f[y>>2]|0}ja=i<<6;g=g+32&-32;jj(C,i<<5>>>0<1073741823?(ja>>>0>>0?g:ja):2147483647);g=f[A>>2]|0}f[A>>2]=g+1;ja=(f[C>>2]|0)+(g>>>5<<2)|0;f[ja>>2]=f[ja>>2]&~(1<<(g&31));g=f[x>>2]|0;if((g|0)==(f[z>>2]|0)){Bj(B,oa);break}else{f[g>>2]=f[oa>>2];f[x>>2]=g+4;break}}else ka=218;while(0);if((ka|0)==218){ka=0;k=(o|0)<0;h:do if(!k){g=o+(((o>>>0)%3|0|0)==0?2:-1)|0;if((g|0)>=0){i=f[(f[e>>2]|0)+12>>2]|0;j=g;while(1){g=f[i+(j<<2)>>2]|0;if((g|0)<=-1){i=0;g=j;break}g=g+(((g>>>0)%3|0|0)==0?2:-1)|0;if((g|0)<0){i=1;break}else j=g}if(k){k=o;ka=225;break}}else i=1;k=o+1|0;k=((k|0)%3|0|0)==0?o+-2|0:k;if((k|0)<0)ka=225;else{j=f[e>>2]|0;l=f[j+12>>2]|0;m=k;while(1){k=f[l+(m<<2)>>2]|0;if((k|0)<=-1){q=0;break h}ja=k+1|0;k=((ja|0)%3|0|0)==0?k+-2|0:ja;if((k|0)<0){q=1;m=k;break}else m=k}}}else{i=1;g=o;k=o;ka=225}while(0);if((ka|0)==225){ka=0;j=f[e>>2]|0;l=f[j+12>>2]|0;q=1;m=k}r=d+1|0;d=d*3|0;f[qa>>2]=d;f[l+(d<<2)>>2]=o;f[l+(o<<2)>>2]=d;d=(f[qa>>2]|0)+1|0;f[l+(d<<2)>>2]=g;f[l+(g<<2)>>2]=d;d=(f[qa>>2]|0)+2|0;f[l+(d<<2)>>2]=m;f[l+(m<<2)>>2]=d;d=f[qa>>2]|0;k=g+1|0;if(!i?(ta=((k|0)%3|0|0)==0?g+-2|0:k,(ta|0)>=0):0){ja=f[j>>2]|0;p=f[ja+(ta<<2)>>2]|0;f[ja+(d<<2)>>2]=p;if((p|0)>-1){o=j+24|0;j=j+28|0;i=f[j>>2]|0;g=f[o>>2]|0;l=i-g>>2;do if(l>>>0<=p>>>0){k=p+1|0;if(k>>>0>l>>>0){mj(o,k-l|0);g=f[o>>2]|0;break}if(k>>>0>>0?(na=g+(k<<2)|0,(i|0)!=(na|0)):0)f[j>>2]=i+(~((i+-4-na|0)>>>2)<<2)}while(0);f[g+(p<<2)>>2]=d;d=f[qa>>2]|0;j=f[e>>2]|0}}else f[(f[j>>2]|0)+(d<<2)>>2]=-1073741824;o=d+1|0;g=m+1|0;if(!q?(sa=((g|0)%3|0|0)==0?m+-2|0:g,(sa|0)>=0):0){ja=f[j>>2]|0;m=f[ja+(sa<<2)>>2]|0;f[ja+(o<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;d=f[l>>2]|0;k=g-d>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);d=f[l>>2]|0;break}if(j>>>0>>0?(ma=d+(j<<2)|0,(g|0)!=(ma|0)):0)f[i>>2]=g+(~((g+-4-ma|0)>>>2)<<2)}while(0);f[d+(m<<2)>>2]=o;d=f[qa>>2]|0;j=f[e>>2]|0}}else f[(f[j>>2]|0)+(o<<2)>>2]=-1073741824;o=d+2|0;g=f[oa>>2]|0;i=g+1|0;if((g|0)>=0?(ra=((i|0)%3|0|0)==0?g+-2|0:i,(ra|0)>=0):0){ja=f[j>>2]|0;m=f[ja+(ra<<2)>>2]|0;f[ja+(o<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;d=f[l>>2]|0;k=g-d>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);d=f[l>>2]|0;break}if(j>>>0>>0?(la=d+(j<<2)|0,(g|0)!=(la|0)):0)f[i>>2]=g+(~((g+-4-la|0)>>>2)<<2)}while(0);f[d+(m<<2)>>2]=o;d=f[qa>>2]|0}}else f[(f[j>>2]|0)+(o<<2)>>2]=-1073741824;if((d|0)<0)d=-1073741824;else d=f[(f[f[e>>2]>>2]|0)+(d<<2)>>2]|0;g=f[pa>>2]|0;ja=g+(d>>>5<<2)|0;f[ja>>2]=f[ja>>2]&~(1<<(d&31));d=f[qa>>2]|0;if((d|0)<-1)d=-1073741824;else d=f[(f[f[e>>2]>>2]|0)+(d+1<<2)>>2]|0;ja=g+(d>>>5<<2)|0;f[ja>>2]=f[ja>>2]&~(1<<(d&31));d=f[qa>>2]|0;if((d|0)<-2)d=-1073741824;else d=f[(f[f[e>>2]>>2]|0)+(d+2<<2)>>2]|0;g=g+(d>>>5<<2)|0;f[g>>2]=f[g>>2]&~(1<<(d&31));d=f[A>>2]|0;g=f[y>>2]|0;if((d|0)==(g<<5|0)){if((d+1|0)<0){Pq(C);g=f[y>>2]|0}ja=g<<6;d=d+32&-32;jj(C,g<<5>>>0<1073741823?(ja>>>0>>0?d:ja):2147483647);d=f[A>>2]|0}f[A>>2]=d+1;ja=(f[C>>2]|0)+(d>>>5<<2)|0;f[ja>>2]=f[ja>>2]|1<<(d&31);d=f[x>>2]|0;if((d|0)==(f[z>>2]|0))Bj(B,qa);else{f[d>>2]=f[qa>>2];f[x>>2]=d+4}d=r}g=f[xa>>2]|0}while((g|0)!=(f[va>>2]|0))}ta=f[e>>2]|0;if((d|0)==(((f[ta+4>>2]|0)-(f[ta>>2]|0)>>2>>>0)/3|0|0)){j=a+84|0;g=a+88|0;e=f[g>>2]|0;d=f[j>>2]|0;i=e-d>>2;if(D>>>0>i>>>0){mj(j,D-i|0);g=D;break}if(D>>>0>>0?(ua=d+(D<<2)|0,(e|0)!=(ua|0)):0){f[g>>2]=e+(~((e+-4-ua|0)>>>2)<<2);g=D}else g=D}else g=-1}else g=-1;while(0);d=f[wa+8>>2]|0;if(d|0)do{ua=d;d=f[d>>2]|0;ds(ua)}while((d|0)!=0);d=f[wa>>2]|0;f[wa>>2]=0;if(d|0)ds(d);d=f[va>>2]|0;if(!d){u=ya;return g|0}e=f[xa>>2]|0;if((e|0)!=(d|0))f[xa>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);u=ya;return g|0}function _a(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,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;pa=u;u=u+48|0;ma=pa+28|0;na=pa+8|0;fa=pa+4|0;ha=pa;f[ma>>2]=0;oa=ma+4|0;f[oa>>2]=0;f[ma+8>>2]=0;f[na>>2]=0;f[na+4>>2]=0;f[na+8>>2]=0;f[na+12>>2]=0;n[na+16>>2]=$(1.0);ga=a+132|0;aa=f[a+136>>2]|0;a:do if((c|0)>0){S=a+276|0;A=na+4|0;B=a+8|0;C=ma+8|0;T=a+272|0;Q=a+264|0;R=a+268|0;_=a+36|0;z=a+40|0;Z=c+-1|0;x=0;y=0;b:while(1){d=x+1|0;c:do if(!(b[S>>0]|0))ba=93;else{g=f[T>>2]|0;j=f[Q>>2]|0;k=f[R>>2]|0;e=j+(g>>>3)|0;if(e>>>0>>0?(w=h[e>>0]|0,E=g+1|0,f[T>>2]=E,w&1<<(g&7)|0):0){e=j+(E>>>3)|0;if(e>>>0>>0){i=(h[e>>0]|0)>>>(E&7)&1;g=g+2|0;f[T>>2]=g}else{g=E;i=0}e=j+(g>>>3)|0;if(e>>>0>>0){e=(h[e>>0]|0)>>>(g&7);f[T>>2]=g+1;e=e<<1&2}else e=0;g=(e|i)<<1|1;switch(g&7){case 1:{ba=93;break c}case 3:case 5:{e=f[oa>>2]|0;if((f[ma>>2]|0)==(e|0)){D=-1;break a}v=f[e+-4>>2]|0;w=x*3|0;t=((g|0)==5?2:1)+w|0;g=f[B>>2]|0;e=f[g+12>>2]|0;f[e+(t<<2)>>2]=v;f[e+(v<<2)>>2]=t;e=y+1|0;f[(f[g>>2]|0)+(t<<2)>>2]=y;if((y|0)>-1){l=g+24|0;j=g+28|0;i=f[j>>2]|0;g=f[l>>2]|0;k=i-g>>2;do if(k>>>0<=y>>>0){if(e>>>0>k>>>0){mj(l,e-k|0);g=f[l>>2]|0;break}if(e>>>0>>0?(G=g+(e<<2)|0,(i|0)!=(G|0)):0)f[j>>2]=i+(~((i+-4-G|0)>>>2)<<2)}while(0);f[g+(y<<2)>>2]=t;g=f[B>>2]|0}r=(t|0)<0;i=t+1|0;if(r)p=t;else p=((i|0)%3|0|0)==0?t+-2|0:i;s=(v|0)<0;if(!s?(U=(((v>>>0)%3|0|0)==0?2:-1)+v|0,(U|0)>=0):0){y=f[g>>2]|0;q=f[y+(U<<2)>>2]|0;f[y+(p<<2)>>2]=q;if((q|0)>-1){o=g+24|0;m=g+28|0;i=f[m>>2]|0;g=f[o>>2]|0;l=i-g>>2;do if(l>>>0<=q>>>0){k=q+1|0;j=i;if(k>>>0>l>>>0){mj(o,k-l|0);g=f[o>>2]|0;break}if(k>>>0>=l>>>0)break;i=g+(k<<2)|0;if((j|0)==(i|0))break;f[m>>2]=j+(~((j+-4-i|0)>>>2)<<2)}while(0);f[g+(q<<2)>>2]=p;g=f[B>>2]|0}}else f[(f[g>>2]|0)+(p<<2)>>2]=-1073741824;do if(!r)if(!((t>>>0)%3|0)){q=t+2|0;break}else{q=t+-1|0;break}else q=t;while(0);i=v+1|0;if(!s?(W=((i|0)%3|0|0)==0?v+-2|0:i,(W|0)>=0):0){y=f[g>>2]|0;p=f[y+(W<<2)>>2]|0;f[y+(q<<2)>>2]=p;if((p|0)>-1){o=g+24|0;m=g+28|0;i=f[m>>2]|0;g=f[o>>2]|0;l=i-g>>2;do if(l>>>0<=p>>>0){k=p+1|0;j=i;if(k>>>0>l>>>0){mj(o,k-l|0);g=f[o>>2]|0;break}if(k>>>0>=l>>>0)break;i=g+(k<<2)|0;if((j|0)==(i|0))break;f[m>>2]=j+(~((j+-4-i|0)>>>2)<<2)}while(0);i=q;g=g+(p<<2)|0;ba=91}}else{i=-1073741824;g=(f[g>>2]|0)+(q<<2)|0;ba=91}if((ba|0)==91){ba=0;f[g>>2]=i}f[(f[oa>>2]|0)+-4>>2]=w;break}case 7:{l=x*3|0;f[fa>>2]=l;i=f[B>>2]|0;m=y+1|0;e=f[i>>2]|0;f[e+(l<<2)>>2]=y;if((y|0)<=-1){g=l+1|0;j=y+2|0;f[e+(g<<2)>>2]=m;if((y|0)==-1){e=i;o=j;ba=170}else{g=l;o=j}}else{k=i+24|0;i=i+28|0;g=f[i>>2]|0;e=f[k>>2]|0;j=g-e>>2;do if(j>>>0<=y>>>0){if(m>>>0>j>>>0){mj(k,m-j|0);e=f[k>>2]|0;break}if(m>>>0>>0?(L=e+(m<<2)|0,(g|0)!=(L|0)):0)f[i>>2]=g+(~((g+-4-L|0)>>>2)<<2)}while(0);f[e+(y<<2)>>2]=l;e=f[B>>2]|0;g=(f[fa>>2]|0)+1|0;f[(f[e>>2]|0)+(g<<2)>>2]=m;o=y+2|0;ba=170}if((ba|0)==170){ba=0;l=e+24|0;j=e+28|0;i=f[j>>2]|0;e=f[l>>2]|0;k=i-e>>2;do if(k>>>0<=m>>>0){if(o>>>0>k>>>0){mj(l,o-k|0);e=f[l>>2]|0;break}if(o>>>0>>0?(K=e+(o<<2)|0,(i|0)!=(K|0)):0)f[j>>2]=i+(~((i+-4-K|0)>>>2)<<2)}while(0);f[e+(m<<2)>>2]=g;i=f[B>>2]|0;g=f[fa>>2]|0;e=f[i>>2]|0}l=g+2|0;m=y+3|0;f[e+(l<<2)>>2]=o;if((o|0)>-1){k=i+24|0;i=i+28|0;g=f[i>>2]|0;e=f[k>>2]|0;j=g-e>>2;do if(j>>>0<=o>>>0){if(m>>>0>j>>>0){mj(k,m-j|0);e=f[k>>2]|0;break}if(m>>>0>>0?(J=e+(m<<2)|0,(g|0)!=(J|0)):0)f[i>>2]=g+(~((g+-4-J|0)>>>2)<<2)}while(0);f[e+(o<<2)>>2]=l}e=f[oa>>2]|0;if((e|0)==(f[C>>2]|0))Bj(ma,fa);else{f[e>>2]=f[fa>>2];f[oa>>2]=e+4}e=m;break}default:break b}l=c-x|0;m=l+-1|0;g=f[z>>2]|0;if((g|0)==(f[_>>2]|0))break;while(1){i=f[g+-8>>2]|0;if((i|0)>=(l|0)){D=-1;break a}if((i|0)!=(m|0))break c;i=b[g+-4>>0]|0;k=f[g+-12>>2]|0;f[z>>2]=g+-12;if((k|0)<0){D=-1;break a}g=f[(f[oa>>2]|0)+-4>>2]|0;j=(g|0)<0;do if(!(i&1)){if(!j)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}else{i=g+1|0;if(!j)g=((i|0)%3|0|0)==0?g+-2|0:i}while(0);f[fa>>2]=Z-k;y=tf(na,fa)|0;f[y>>2]=g;g=f[z>>2]|0;if((g|0)==(f[_>>2]|0))break c}}e=f[oa>>2]|0;if((f[ma>>2]|0)==(e|0)){D=-1;break a}v=f[e+-4>>2]|0;t=(v|0)<0;d:do if(!t){e=v+(((v>>>0)%3|0|0)==0?2:-1)|0;if((e|0)<0)ba=13;else{j=f[B>>2]|0;i=f[j+12>>2]|0;while(1){g=f[i+(e<<2)>>2]|0;if((g|0)<=-1){g=j;q=0;p=e;break d}e=g+(((g>>>0)%3|0|0)==0?2:-1)|0;if((e|0)<0){g=j;q=1;p=e;break}}}}else{e=v;ba=13}while(0);if((ba|0)==13){ba=0;g=f[B>>2]|0;i=f[g+12>>2]|0;q=1;p=e}e=x*3|0;r=e+1|0;f[i+(v<<2)>>2]=r;f[i+(r<<2)>>2]=v;w=e+2|0;f[i+(p<<2)>>2]=w;f[i+(w<<2)>>2]=p;i=v+1|0;if(!t?(Y=((i|0)%3|0|0)==0?v+-2|0:i,(Y|0)>=0):0){x=f[g>>2]|0;o=f[x+(Y<<2)>>2]|0;f[x+(e<<2)>>2]=o;if((o|0)>-1){m=g+24|0;j=g+28|0;i=f[j>>2]|0;g=f[m>>2]|0;l=i-g>>2;do if(l>>>0<=o>>>0){k=o+1|0;if(k>>>0>l>>>0){mj(m,k-l|0);g=f[m>>2]|0;break}if(k>>>0>>0?(F=g+(k<<2)|0,(i|0)!=(F|0)):0)f[j>>2]=i+(~((i+-4-F|0)>>>2)<<2)}while(0);f[g+(o<<2)>>2]=e;g=f[B>>2]|0;s=o}else s=o}else{f[(f[g>>2]|0)+(e<<2)>>2]=-1073741824;s=-1073741824}i=p+1|0;if(!q?(X=((i|0)%3|0|0)==0?p+-2|0:i,(X|0)>=0):0){x=f[g>>2]|0;o=f[x+(X<<2)>>2]|0;f[x+(r<<2)>>2]=o;if((o|0)>-1){m=g+24|0;j=g+28|0;i=f[j>>2]|0;g=f[m>>2]|0;l=i-g>>2;do if(l>>>0<=o>>>0){k=o+1|0;if(k>>>0>l>>>0){mj(m,k-l|0);g=f[m>>2]|0;break}if(k>>>0>>0?(I=g+(k<<2)|0,(i|0)!=(I|0)):0)f[j>>2]=i+(~((i+-4-I|0)>>>2)<<2)}while(0);f[g+(o<<2)>>2]=r;g=f[B>>2]|0}}else f[(f[g>>2]|0)+(r<<2)>>2]=-1073741824;if(!t?(V=(((v>>>0)%3|0|0)==0?2:-1)+v|0,(V|0)>=0):0){x=f[g>>2]|0;o=f[x+(V<<2)>>2]|0;f[x+(w<<2)>>2]=o;if((o|0)>-1){m=g+24|0;j=g+28|0;i=f[j>>2]|0;g=f[m>>2]|0;l=i-g>>2;do if(l>>>0<=o>>>0){k=o+1|0;if(k>>>0>l>>>0){mj(m,k-l|0);g=f[m>>2]|0;break}if(k>>>0>>0?(H=g+(k<<2)|0,(i|0)!=(H|0)):0)f[j>>2]=i+(~((i+-4-H|0)>>>2)<<2)}while(0);i=w;g=g+(o<<2)|0;ba=50}}else{i=-1073741824;g=(f[g>>2]|0)+(w<<2)|0;ba=50}if((ba|0)==50){ba=0;f[g>>2]=i}if((y|0)>(aa|0)){D=-1;break a}ba=(f[ga>>2]|0)+(s>>>5<<2)|0;f[ba>>2]=f[ba>>2]&~(1<<(s&31));ba=189}while(0);if((ba|0)==93){ba=0;g=f[ma>>2]|0;e=f[oa>>2]|0;if((g|0)==(e|0)){D=-1;break a}o=e+-4|0;t=f[o>>2]|0;f[oa>>2]=o;k=f[A>>2]|0;e:do if(k){l=k+-1|0;j=(l&k|0)==0;if(j)m=l&x;else m=(x>>>0)%(k>>>0)|0;i=f[(f[na>>2]|0)+(m<<2)>>2]|0;if(i){if(j)do{i=f[i>>2]|0;if(!i){e=o;break e}if((f[i+4>>2]&l|0)!=(m|0)){e=o;break e}}while((f[i+8>>2]|0)!=(x|0));else do{i=f[i>>2]|0;if(!i){e=o;break e}if((((f[i+4>>2]|0)>>>0)%(k>>>0)|0|0)!=(m|0)){e=o;break e}}while((f[i+8>>2]|0)!=(x|0));i=i+12|0;if((o|0)==(f[C>>2]|0)){Bj(ma,i);g=f[ma>>2]|0;e=f[oa>>2]|0;break}else{f[o>>2]=f[i>>2];f[oa>>2]=e;break}}else e=o}else e=o;while(0);if((g|0)==(e|0)){D=-1;break a}p=f[e+-4>>2]|0;e=x*3|0;s=e+2|0;i=f[B>>2]|0;x=f[i+12>>2]|0;f[x+(p<<2)>>2]=s;f[x+(s<<2)>>2]=p;r=e+1|0;f[x+(t<<2)>>2]=r;f[x+(r<<2)>>2]=t;if((p|0)>=0){g=(((p>>>0)%3|0|0)==0?2:-1)+p|0;j=f[i>>2]|0;if((g|0)>=0){k=f[j+(g<<2)>>2]|0;f[j+(e<<2)>>2]=k;if((k|0)>-1){o=i+24|0;j=i+28|0;i=f[j>>2]|0;g=f[o>>2]|0;m=i-g>>2;do if(m>>>0<=k>>>0){l=k+1|0;if(l>>>0>m>>>0){mj(o,l-m|0);g=f[o>>2]|0;break}if(l>>>0>>0?(P=g+(l<<2)|0,(i|0)!=(P|0)):0)f[j>>2]=i+(~((i+-4-P|0)>>>2)<<2)}while(0);f[g+(k<<2)>>2]=e;i=f[B>>2]|0;j=1}else j=0}else{f[j+(e<<2)>>2]=-1073741824;j=0;k=-1073741824}g=p+1|0;g=((g|0)%3|0|0)==0?p+-2|0:g;l=f[i>>2]|0;if((g|0)>=0){q=f[l+(g<<2)>>2]|0;f[l+(r<<2)>>2]=q;if((q|0)>-1){p=i+24|0;l=i+28|0;i=f[l>>2]|0;g=f[p>>2]|0;o=i-g>>2;do if(o>>>0<=q>>>0){m=q+1|0;if(m>>>0>o>>>0){mj(p,m-o|0);g=f[p>>2]|0;break}if(m>>>0>>0?(O=g+(m<<2)|0,(i|0)!=(O|0)):0)f[l>>2]=i+(~((i+-4-O|0)>>>2)<<2)}while(0);f[g+(q<<2)>>2]=r;i=f[B>>2]|0;q=j;r=k}else{q=j;r=k}}else{g=l;ba=123}}else{g=f[i>>2]|0;f[g+(e<<2)>>2]=-1073741824;j=0;k=-1073741824;ba=123}if((ba|0)==123){ba=0;f[g+(r<<2)>>2]=-1073741824;q=j;r=k}f:do if((t|0)>=0){g=(((t>>>0)%3|0|0)==0?2:-1)+t|0;j=f[i>>2]|0;if((g|0)>=0){o=f[j+(g<<2)>>2]|0;f[j+(s<<2)>>2]=o;if((o|0)>-1){m=i+24|0;j=i+28|0;i=f[j>>2]|0;g=f[m>>2]|0;l=i-g>>2;do if(l>>>0<=o>>>0){k=o+1|0;if(k>>>0>l>>>0){mj(m,k-l|0);g=f[m>>2]|0;break}if(k>>>0>>0?(N=g+(k<<2)|0,(i|0)!=(N|0)):0)f[j>>2]=i+(~((i+-4-N|0)>>>2)<<2)}while(0);i=s;g=g+(o<<2)|0;ba=144}}else{i=-1073741824;g=j+(s<<2)|0;ba=144}if((ba|0)==144)f[g>>2]=i;j=t+1|0;j=((j|0)%3|0|0)==0?t+-2|0:j;i=f[B>>2]|0;if((j|0)<0)g=-1073741824;else{g=f[(f[i>>2]|0)+(j<<2)>>2]|0;p=r+1|0;if(!q){l=f[i>>2]|0;m=i+12|0;while(1){f[l+(j<<2)>>2]=r;ba=j+1|0;j=((ba|0)%3|0|0)==0?j+-2|0:ba;if((j|0)<0)break f;k=f[(f[m>>2]|0)+(j<<2)>>2]|0;j=k+1|0;if((k|0)<0)break f;j=((j|0)%3|0|0)==0?k+-2|0:j;if((j|0)<=-1)break f}}do{f[(f[i>>2]|0)+(j<<2)>>2]=r;o=i+24|0;l=i+28|0;k=f[l>>2]|0;i=f[o>>2]|0;m=k-i>>2;do if(m>>>0<=r>>>0){if(p>>>0>m>>>0){mj(o,p-m|0);i=f[o>>2]|0;break}if(p>>>0>>0?(M=i+(p<<2)|0,(k|0)!=(M|0)):0)f[l>>2]=k+(~((k+-4-M|0)>>>2)<<2)}while(0);f[i+(r<<2)>>2]=j;i=j+1|0;j=((i|0)%3|0|0)==0?j+-2|0:i;i=f[B>>2]|0;if((j|0)<0)break f;k=f[(f[i+12>>2]|0)+(j<<2)>>2]|0;j=k+1|0;if((k|0)<0)break f;j=((j|0)%3|0|0)==0?k+-2|0:j}while((j|0)>-1)}}else{f[(f[i>>2]|0)+(s<<2)>>2]=-1073741824;g=-1073741824}while(0);f[(f[i+24>>2]|0)+(g<<2)>>2]=-1073741824;ba=189}if((ba|0)==189){ba=0;f[(f[oa>>2]|0)+-4>>2]=e;e=y}if((d|0)<(c|0)){x=d;y=e}else{D=e;ba=203;break a}}}else{d=0;D=0;ba=203}while(0);do if((ba|0)==203)if((D|0)<=(aa|0)){g=f[oa>>2]|0;if((g|0)==(f[ma>>2]|0))e=a+8|0;else{z=a+316|0;e=a+8|0;C=a+60|0;w=a+64|0;t=a+68|0;s=a+76|0;v=a+80|0;B=a+72|0;A=a+312|0;x=a+304|0;y=a+308|0;do{aa=g;o=f[aa+-4>>2]|0;f[fa>>2]=o;f[oa>>2]=aa+-4;do if(b[z>>0]|0){g=f[A>>2]|0;i=(f[x>>2]|0)+(g>>>3)|0;if(i>>>0<(f[y>>2]|0)>>>0?(aa=h[i>>0]|0,f[A>>2]=g+1,aa&1<<(g&7)|0):0){ba=210;break}g=f[w>>2]|0;i=f[t>>2]|0;if((g|0)==(i<<5|0)){if((g+1|0)<0){Pq(C);i=f[t>>2]|0}aa=i<<6;g=g+32&-32;jj(C,i<<5>>>0<1073741823?(aa>>>0>>0?g:aa):2147483647);g=f[w>>2]|0}f[w>>2]=g+1;aa=(f[C>>2]|0)+(g>>>5<<2)|0;f[aa>>2]=f[aa>>2]&~(1<<(g&31));g=f[s>>2]|0;if((g|0)==(f[v>>2]|0)){Bj(B,fa);break}else{f[g>>2]=f[fa>>2];f[s>>2]=g+4;break}}else ba=210;while(0);if((ba|0)==210){ba=0;k=(o|0)<0;g:do if(!k){g=o+(((o>>>0)%3|0|0)==0?2:-1)|0;if((g|0)>=0){i=f[(f[e>>2]|0)+12>>2]|0;j=g;while(1){g=f[i+(j<<2)>>2]|0;if((g|0)<=-1){i=0;g=j;break}g=g+(((g>>>0)%3|0|0)==0?2:-1)|0;if((g|0)<0){i=1;break}else j=g}if(k){k=o;ba=217;break}}else i=1;k=o+1|0;k=((k|0)%3|0|0)==0?o+-2|0:k;if((k|0)<0)ba=217;else{j=f[e>>2]|0;l=f[j+12>>2]|0;m=k;while(1){k=f[l+(m<<2)>>2]|0;if((k|0)<=-1){q=0;break g}aa=k+1|0;k=((aa|0)%3|0|0)==0?k+-2|0:aa;if((k|0)<0){q=1;m=k;break}else m=k}}}else{i=1;g=o;k=o;ba=217}while(0);if((ba|0)==217){ba=0;j=f[e>>2]|0;l=f[j+12>>2]|0;q=1;m=k}r=d+1|0;d=d*3|0;f[ha>>2]=d;f[l+(d<<2)>>2]=o;f[l+(o<<2)>>2]=d;d=(f[ha>>2]|0)+1|0;f[l+(d<<2)>>2]=g;f[l+(g<<2)>>2]=d;d=(f[ha>>2]|0)+2|0;f[l+(d<<2)>>2]=m;f[l+(m<<2)>>2]=d;d=f[ha>>2]|0;k=g+1|0;if(!i?(ka=((k|0)%3|0|0)==0?g+-2|0:k,(ka|0)>=0):0){aa=f[j>>2]|0;p=f[aa+(ka<<2)>>2]|0;f[aa+(d<<2)>>2]=p;if((p|0)>-1){o=j+24|0;j=j+28|0;i=f[j>>2]|0;g=f[o>>2]|0;l=i-g>>2;do if(l>>>0<=p>>>0){k=p+1|0;if(k>>>0>l>>>0){mj(o,k-l|0);g=f[o>>2]|0;break}if(k>>>0>>0?(ea=g+(k<<2)|0,(i|0)!=(ea|0)):0)f[j>>2]=i+(~((i+-4-ea|0)>>>2)<<2)}while(0);f[g+(p<<2)>>2]=d;d=f[ha>>2]|0;j=f[e>>2]|0}}else f[(f[j>>2]|0)+(d<<2)>>2]=-1073741824;o=d+1|0;g=m+1|0;if(!q?(ja=((g|0)%3|0|0)==0?m+-2|0:g,(ja|0)>=0):0){aa=f[j>>2]|0;m=f[aa+(ja<<2)>>2]|0;f[aa+(o<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;d=f[l>>2]|0;k=g-d>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);d=f[l>>2]|0;break}if(j>>>0>>0?(da=d+(j<<2)|0,(g|0)!=(da|0)):0)f[i>>2]=g+(~((g+-4-da|0)>>>2)<<2)}while(0);f[d+(m<<2)>>2]=o;d=f[ha>>2]|0;j=f[e>>2]|0}}else f[(f[j>>2]|0)+(o<<2)>>2]=-1073741824;o=d+2|0;g=f[fa>>2]|0;i=g+1|0;if((g|0)>=0?(ia=((i|0)%3|0|0)==0?g+-2|0:i,(ia|0)>=0):0){aa=f[j>>2]|0;m=f[aa+(ia<<2)>>2]|0;f[aa+(o<<2)>>2]=m;if((m|0)>-1){l=j+24|0;i=j+28|0;g=f[i>>2]|0;d=f[l>>2]|0;k=g-d>>2;do if(k>>>0<=m>>>0){j=m+1|0;if(j>>>0>k>>>0){mj(l,j-k|0);d=f[l>>2]|0;break}if(j>>>0>>0?(ca=d+(j<<2)|0,(g|0)!=(ca|0)):0)f[i>>2]=g+(~((g+-4-ca|0)>>>2)<<2)}while(0);f[d+(m<<2)>>2]=o;d=f[ha>>2]|0}}else f[(f[j>>2]|0)+(o<<2)>>2]=-1073741824;if((d|0)<0)d=-1073741824;else d=f[(f[f[e>>2]>>2]|0)+(d<<2)>>2]|0;g=f[ga>>2]|0;aa=g+(d>>>5<<2)|0;f[aa>>2]=f[aa>>2]&~(1<<(d&31));d=f[ha>>2]|0;if((d|0)<-1)d=-1073741824;else d=f[(f[f[e>>2]>>2]|0)+(d+1<<2)>>2]|0;aa=g+(d>>>5<<2)|0;f[aa>>2]=f[aa>>2]&~(1<<(d&31));d=f[ha>>2]|0;if((d|0)<-2)d=-1073741824;else d=f[(f[f[e>>2]>>2]|0)+(d+2<<2)>>2]|0;g=g+(d>>>5<<2)|0;f[g>>2]=f[g>>2]&~(1<<(d&31));d=f[w>>2]|0;g=f[t>>2]|0;if((d|0)==(g<<5|0)){if((d+1|0)<0){Pq(C);g=f[t>>2]|0}aa=g<<6;d=d+32&-32;jj(C,g<<5>>>0<1073741823?(aa>>>0>>0?d:aa):2147483647);d=f[w>>2]|0}f[w>>2]=d+1;aa=(f[C>>2]|0)+(d>>>5<<2)|0;f[aa>>2]=f[aa>>2]|1<<(d&31);d=f[s>>2]|0;if((d|0)==(f[v>>2]|0))Bj(B,ha);else{f[d>>2]=f[ha>>2];f[s>>2]=d+4}d=r}g=f[oa>>2]|0}while((g|0)!=(f[ma>>2]|0))}ka=f[e>>2]|0;if((d|0)==(((f[ka+4>>2]|0)-(f[ka>>2]|0)>>2>>>0)/3|0|0)){j=a+84|0;g=a+88|0;e=f[g>>2]|0;d=f[j>>2]|0;i=e-d>>2;if(D>>>0>i>>>0){mj(j,D-i|0);break}if(D>>>0>>0?(la=d+(D<<2)|0,(e|0)!=(la|0)):0)f[g>>2]=e+(~((e+-4-la|0)>>>2)<<2)}else D=-1}else D=-1;while(0);d=f[na+8>>2]|0;if(d|0)do{la=d;d=f[d>>2]|0;ds(la)}while((d|0)!=0);d=f[na>>2]|0;f[na>>2]=0;if(d|0)ds(d);d=f[ma>>2]|0;if(!d){u=pa;return D|0}e=f[oa>>2]|0;if((e|0)!=(d|0))f[oa>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);u=pa;return D|0}function $a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;n=x;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=f[6572]|0;c=m>>>a;if(c&3|0){d=(c&1^1)+a|0;e=26328+(d<<1<<2)|0;b=e+8|0;a=f[b>>2]|0;g=a+8|0;c=f[g>>2]|0;if((e|0)==(c|0))f[6572]=m&~(1<>2]=e;f[b>>2]=c}w=d<<3;f[a+4>>2]=w|3;w=a+w+4|0;f[w>>2]=f[w>>2]|1;w=g;u=x;return w|0}l=f[6574]|0;if(k>>>0>l>>>0){if(c|0){h=2<>>12&16;c=c>>>h;a=c>>>5&8;c=c>>>a;e=c>>>2&4;c=c>>>e;b=c>>>1&2;c=c>>>b;d=c>>>1&1;d=(a|h|e|b|d)+(c>>>d)|0;c=26328+(d<<1<<2)|0;b=c+8|0;e=f[b>>2]|0;h=e+8|0;a=f[h>>2]|0;if((c|0)==(a|0)){a=m&~(1<>2]=c;f[b>>2]=a;a=m}g=(d<<3)-k|0;f[e+4>>2]=k|3;e=e+k|0;f[e+4>>2]=g|1;f[e+g>>2]=g;if(l|0){d=f[6577]|0;b=l>>>3;c=26328+(b<<1<<2)|0;b=1<>2]|0}f[b>>2]=d;f[a+12>>2]=d;f[d+8>>2]=a;f[d+12>>2]=c}f[6574]=g;f[6577]=e;w=h;u=x;return w|0}i=f[6573]|0;if(i){c=(i&0-i)+-1|0;h=c>>>12&16;c=c>>>h;g=c>>>5&8;c=c>>>g;j=c>>>2&4;c=c>>>j;a=c>>>1&2;c=c>>>a;d=c>>>1&1;d=f[26592+((g|h|j|a|d)+(c>>>d)<<2)>>2]|0;c=(f[d+4>>2]&-8)-k|0;a=f[d+16+(((f[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!a){j=c;h=d}else{do{h=(f[a+4>>2]&-8)-k|0;j=h>>>0>>0;c=j?h:c;d=j?a:d;a=f[a+16+(((f[a+16>>2]|0)==0&1)<<2)>>2]|0}while((a|0)!=0);j=c;h=d}g=h+k|0;if(h>>>0>>0){e=f[h+24>>2]|0;b=f[h+12>>2]|0;do if((b|0)==(h|0)){a=h+20|0;b=f[a>>2]|0;if(!b){a=h+16|0;b=f[a>>2]|0;if(!b){c=0;break}}while(1){d=b+20|0;c=f[d>>2]|0;if(c|0){b=c;a=d;continue}d=b+16|0;c=f[d>>2]|0;if(!c)break;else{b=c;a=d}}f[a>>2]=0;c=b}else{c=f[h+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);do if(e|0){b=f[h+28>>2]|0;a=26592+(b<<2)|0;if((h|0)==(f[a>>2]|0)){f[a>>2]=c;if(!c){f[6573]=i&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=e;b=f[h+16>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}b=f[h+20>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}while(0);if(j>>>0<16){w=j+k|0;f[h+4>>2]=w|3;w=h+w+4|0;f[w>>2]=f[w>>2]|1}else{f[h+4>>2]=k|3;f[g+4>>2]=j|1;f[g+j>>2]=j;if(l|0){d=f[6577]|0;b=l>>>3;c=26328+(b<<1<<2)|0;b=1<>2]|0}f[b>>2]=d;f[a+12>>2]=d;f[d+8>>2]=a;f[d+12>>2]=c}f[6574]=j;f[6577]=g}w=h+8|0;u=x;return w|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;d=f[6573]|0;if(d){c=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{m=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(l|m|j)+(v<>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;a=f[26592+(j<<2)>>2]|0;a:do if(!a){e=0;a=0;v=57}else{e=0;h=k<<((j|0)==31?0:25-(j>>>1)|0);i=a;a=0;while(1){g=(f[i+4>>2]&-8)-k|0;if(g>>>0>>0)if(!g){c=0;e=i;a=i;v=61;break a}else{c=g;a=i}g=f[i+20>>2]|0;i=f[i+16+(h>>>31<<2)>>2]|0;e=(g|0)==0|(g|0)==(i|0)?e:g;g=(i|0)==0;if(g){v=57;break}else h=h<<((g^1)&1)}}while(0);if((v|0)==57){if((e|0)==0&(a|0)==0){a=2<>>12&16;a=a>>>j;i=a>>>5&8;a=a>>>i;l=a>>>2&4;a=a>>>l;m=a>>>1&2;a=a>>>m;e=a>>>1&1;e=f[26592+((i|j|l|m|e)+(a>>>e)<<2)>>2]|0;a=0}if(!e){i=c;j=a}else v=61}if((v|0)==61)while(1){v=0;l=(f[e+4>>2]&-8)-k|0;m=l>>>0>>0;c=m?l:c;a=m?e:a;e=f[e+16+(((f[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){i=c;j=a;break}else v=61}if((j|0)!=0?i>>>0<((f[6574]|0)-k|0)>>>0:0){h=j+k|0;if(j>>>0>=h>>>0){w=0;u=x;return w|0}g=f[j+24>>2]|0;b=f[j+12>>2]|0;do if((b|0)==(j|0)){a=j+20|0;b=f[a>>2]|0;if(!b){a=j+16|0;b=f[a>>2]|0;if(!b){b=0;break}}while(1){e=b+20|0;c=f[e>>2]|0;if(c|0){b=c;a=e;continue}e=b+16|0;c=f[e>>2]|0;if(!c)break;else{b=c;a=e}}f[a>>2]=0}else{w=f[j+8>>2]|0;f[w+12>>2]=b;f[b+8>>2]=w}while(0);do if(g){a=f[j+28>>2]|0;c=26592+(a<<2)|0;if((j|0)==(f[c>>2]|0)){f[c>>2]=b;if(!b){d=d&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=b;if(!b)break}f[b+24>>2]=g;a=f[j+16>>2]|0;if(a|0){f[b+16>>2]=a;f[a+24>>2]=b}a=f[j+20>>2]|0;if(a){f[b+20>>2]=a;f[a+24>>2]=b}}while(0);do if(i>>>0>=16){f[j+4>>2]=k|3;f[h+4>>2]=i|1;f[h+i>>2]=i;b=i>>>3;if(i>>>0<256){c=26328+(b<<1<<2)|0;a=f[6572]|0;b=1<>2]|0}f[b>>2]=h;f[a+12>>2]=h;f[h+8>>2]=a;f[h+12>>2]=c;break}b=i>>>8;if(b)if(i>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(t|v|b)+(w<>>15)|0;b=i>>>(b+7|0)&1|b<<1}else b=0;c=26592+(b<<2)|0;f[h+28>>2]=b;a=h+16|0;f[a+4>>2]=0;f[a>>2]=0;a=1<>2]=h;f[h+24>>2]=c;f[h+12>>2]=h;f[h+8>>2]=h;break}a=i<<((b|0)==31?0:25-(b>>>1)|0);c=f[c>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(i|0)){v=97;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=96;break}else{a=a<<1;c=b}}if((v|0)==96){f[d>>2]=h;f[h+24>>2]=c;f[h+12>>2]=h;f[h+8>>2]=h;break}else if((v|0)==97){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=h;f[v>>2]=h;f[h+8>>2]=w;f[h+12>>2]=c;f[h+24>>2]=0;break}}else{w=i+k|0;f[j+4>>2]=w|3;w=j+w+4|0;f[w>>2]=f[w>>2]|1}while(0);w=j+8|0;u=x;return w|0}else m=k}else m=k}else m=-1;while(0);c=f[6574]|0;if(c>>>0>=m>>>0){a=c-m|0;b=f[6577]|0;if(a>>>0>15){w=b+m|0;f[6577]=w;f[6574]=a;f[w+4>>2]=a|1;f[w+a>>2]=a;f[b+4>>2]=m|3}else{f[6574]=0;f[6577]=0;f[b+4>>2]=c|3;w=b+c+4|0;f[w>>2]=f[w>>2]|1}w=b+8|0;u=x;return w|0}h=f[6575]|0;if(h>>>0>m>>>0){t=h-m|0;f[6575]=t;w=f[6578]|0;v=w+m|0;f[6578]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}if(!(f[6690]|0)){f[6692]=4096;f[6691]=4096;f[6693]=-1;f[6694]=-1;f[6695]=0;f[6683]=0;a=n&-16^1431655768;f[n>>2]=a;f[6690]=a;a=4096}else a=f[6692]|0;i=m+48|0;j=m+47|0;g=a+j|0;d=0-a|0;k=g&d;if(k>>>0<=m>>>0){w=0;u=x;return w|0}a=f[6682]|0;if(a|0?(l=f[6680]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){w=0;u=x;return w|0}b:do if(!(f[6683]&4)){c=f[6578]|0;c:do if(c){e=26736;while(1){a=f[e>>2]|0;if(a>>>0<=c>>>0?(q=e+4|0,(a+(f[q>>2]|0)|0)>>>0>c>>>0):0)break;a=f[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=g-h&d;if(b>>>0<2147483647){a=Dm(b|0)|0;if((a|0)==((f[e>>2]|0)+(f[q>>2]|0)|0)){if((a|0)!=(-1|0)){h=a;g=b;v=135;break b}}else{d=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){c=Dm(0)|0;if((c|0)!=(-1|0)?(b=c,o=f[6691]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=f[6680]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){q=f[6682]|0;if(q|0?p>>>0<=o>>>0|p>>>0>q>>>0:0){b=0;break}a=Dm(b|0)|0;if((a|0)==(c|0)){h=c;g=b;v=135;break b}else{d=a;v=126}}else b=0}while(0);do if((v|0)==126){c=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(d|0)!=(-1|0))))if((d|0)==(-1|0)){b=0;break}else{h=d;g=b;v=135;break b}a=f[6692]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=d;g=b;v=135;break b}if((Dm(a|0)|0)==(-1|0)){Dm(c|0)|0;b=0;break}else{h=d;g=a+b|0;v=135;break b}}while(0);f[6683]=f[6683]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?k>>>0<2147483647:0)?(r=Dm(k|0)|0,q=Dm(0)|0,t=q-r|0,s=t>>>0>(m+40|0)>>>0,!((r|0)==(-1|0)|s^1|r>>>0>>0&((r|0)!=(-1|0)&(q|0)!=(-1|0))^1)):0){h=r;g=s?t:b;v=135}if((v|0)==135){b=(f[6680]|0)+g|0;f[6680]=b;if(b>>>0>(f[6681]|0)>>>0)f[6681]=b;j=f[6578]|0;do if(j){e=26736;while(1){b=f[e>>2]|0;d=e+4|0;a=f[d>>2]|0;if((h|0)==(b+a|0)){v=145;break}c=f[e+8>>2]|0;if(!c)break;else e=c}if(((v|0)==145?(f[e+12>>2]&8|0)==0:0)?j>>>0>>0&j>>>0>=b>>>0:0){f[d>>2]=a+g;w=j+8|0;w=(w&7|0)==0?0:0-w&7;v=j+w|0;w=(f[6575]|0)+(g-w)|0;f[6578]=v;f[6575]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[6579]=f[6694];break}if(h>>>0<(f[6576]|0)>>>0)f[6576]=h;c=h+g|0;a=26736;while(1){if((f[a>>2]|0)==(c|0)){v=153;break}b=f[a+8>>2]|0;if(!b)break;else a=b}if((v|0)==153?(f[a+12>>2]&8|0)==0:0){f[a>>2]=h;l=a+4|0;f[l>>2]=(f[l>>2]|0)+g;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;b=c+8|0;b=c+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;f[l+4>>2]=m|3;do if((b|0)!=(j|0)){if((b|0)==(f[6577]|0)){w=(f[6574]|0)+i|0;f[6574]=w;f[6577]=k;f[k+4>>2]=w|1;f[k+w>>2]=w;break}a=f[b+4>>2]|0;if((a&3|0)==1){h=a&-8;d=a>>>3;d:do if(a>>>0<256){a=f[b+8>>2]|0;c=f[b+12>>2]|0;if((c|0)==(a|0)){f[6572]=f[6572]&~(1<>2]=c;f[c+8>>2]=a;break}}else{g=f[b+24>>2]|0;a=f[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;c=d+4|0;a=f[c>>2]|0;if(!a){a=f[d>>2]|0;if(!a){a=0;break}else e=d}else e=c;while(1){d=a+20|0;c=f[d>>2]|0;if(c|0){a=c;e=d;continue}d=a+16|0;c=f[d>>2]|0;if(!c)break;else{a=c;e=d}}f[e>>2]=0}else{w=f[b+8>>2]|0;f[w+12>>2]=a;f[a+8>>2]=w}while(0);if(!g)break;c=f[b+28>>2]|0;d=26592+(c<<2)|0;do if((b|0)!=(f[d>>2]|0)){f[g+16+(((f[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{f[d>>2]=a;if(a|0)break;f[6573]=f[6573]&~(1<>2]=g;d=b+16|0;c=f[d>>2]|0;if(c|0){f[a+16>>2]=c;f[c+24>>2]=a}c=f[d+4>>2]|0;if(!c)break;f[a+20>>2]=c;f[c+24>>2]=a}while(0);b=b+h|0;e=h+i|0}else e=i;b=b+4|0;f[b>>2]=f[b>>2]&-2;f[k+4>>2]=e|1;f[k+e>>2]=e;b=e>>>3;if(e>>>0<256){c=26328+(b<<1<<2)|0;a=f[6572]|0;b=1<>2]|0}f[b>>2]=k;f[a+12>>2]=k;f[k+8>>2]=a;f[k+12>>2]=c;break}b=e>>>8;do if(!b)a=0;else{if(e>>>0>16777215){a=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;a=14-(t|v|a)+(w<>>15)|0;a=e>>>(a+7|0)&1|a<<1}while(0);d=26592+(a<<2)|0;f[k+28>>2]=a;b=k+16|0;f[b+4>>2]=0;f[b>>2]=0;b=f[6573]|0;c=1<>2]=k;f[k+24>>2]=d;f[k+12>>2]=k;f[k+8>>2]=k;break}a=e<<((a|0)==31?0:25-(a>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){v=194;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=193;break}else{a=a<<1;c=b}}if((v|0)==193){f[d>>2]=k;f[k+24>>2]=c;f[k+12>>2]=k;f[k+8>>2]=k;break}else if((v|0)==194){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=k;f[v>>2]=k;f[k+8>>2]=w;f[k+12>>2]=c;f[k+24>>2]=0;break}}else{w=(f[6575]|0)+i|0;f[6575]=w;f[6578]=k;f[k+4>>2]=w|1}while(0);w=l+8|0;u=x;return w|0}a=26736;while(1){b=f[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(f[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=f[a+8>>2]|0}e=w+-47|0;a=e+8|0;a=e+((a&7|0)==0?0:0-a&7)|0;e=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;c=h+8|0;c=(c&7|0)==0?0:0-c&7;v=h+c|0;c=g+-40-c|0;f[6578]=v;f[6575]=c;f[v+4>>2]=c|1;f[v+c+4>>2]=40;f[6579]=f[6694];c=a+4|0;f[c>>2]=27;f[b>>2]=f[6684];f[b+4>>2]=f[6685];f[b+8>>2]=f[6686];f[b+12>>2]=f[6687];f[6684]=h;f[6685]=g;f[6687]=0;f[6686]=b;b=a+24|0;do{v=b;b=b+4|0;f[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;f[c>>2]=f[c>>2]&-2;f[j+4>>2]=g|1;f[a>>2]=g;b=g>>>3;if(g>>>0<256){c=26328+(b<<1<<2)|0;a=f[6572]|0;b=1<>2]|0}f[b>>2]=j;f[a+12>>2]=j;f[j+8>>2]=a;f[j+12>>2]=c;break}b=g>>>8;if(b)if(g>>>0>16777215)c=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;c=14-(t|v|c)+(w<>>15)|0;c=g>>>(c+7|0)&1|c<<1}else c=0;d=26592+(c<<2)|0;f[j+28>>2]=c;f[j+20>>2]=0;f[e>>2]=0;b=f[6573]|0;a=1<>2]=j;f[j+24>>2]=d;f[j+12>>2]=j;f[j+8>>2]=j;break}a=g<<((c|0)==31?0:25-(c>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(g|0)){v=216;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=215;break}else{a=a<<1;c=b}}if((v|0)==215){f[d>>2]=j;f[j+24>>2]=c;f[j+12>>2]=j;f[j+8>>2]=j;break}else if((v|0)==216){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=j;f[v>>2]=j;f[j+8>>2]=w;f[j+12>>2]=c;f[j+24>>2]=0;break}}}else{w=f[6576]|0;if((w|0)==0|h>>>0>>0)f[6576]=h;f[6684]=h;f[6685]=g;f[6687]=0;f[6581]=f[6690];f[6580]=-1;b=0;do{w=26328+(b<<1<<2)|0;f[w+12>>2]=w;f[w+8>>2]=w;b=b+1|0}while((b|0)!=32);w=h+8|0;w=(w&7|0)==0?0:0-w&7;v=h+w|0;w=g+-40-w|0;f[6578]=v;f[6575]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[6579]=f[6694]}while(0);b=f[6575]|0;if(b>>>0>m>>>0){t=b-m|0;f[6575]=t;w=f[6578]|0;v=w+m|0;f[6578]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}}w=Rr()|0;f[w>>2]=12;w=0;u=x;return w|0}function ab(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;b=l;j=l+8|0;c=l+4|0;f[j>>2]=a;do if(a>>>0>=212){i=(a>>>0)/210|0;e=i*210|0;f[c>>2]=a-e;h=(Fm(5988,6180,c,b)|0)-5988>>2;a=e;e=0;a:while(1){b=(f[5988+(h<<2)>>2]|0)+a|0;d=5;while(1){if(d>>>0>=47){g=211;c=e;k=8;break}a=f[5796+(d<<2)>>2]|0;c=(b>>>0)/(a>>>0)|0;if(c>>>0>>0){k=106;break a}if((b|0)==(X(c,a)|0)){b=e;break}else d=d+1|0}b:do if((k|0)==8){c:while(1){k=0;a=(b>>>0)/(g>>>0)|0;do if(a>>>0>=g>>>0)if((b|0)!=(X(a,g)|0)){d=g+10|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+12|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+16|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+18|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+22|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+28|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)==(X(a,d)|0)){e=9;a=d}else{d=g+30|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+36|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+40|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+42|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+46|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+52|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+58|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+60|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+66|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+70|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+72|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+78|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+82|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+88|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+96|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+100|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+102|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+106|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+108|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+112|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+120|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+126|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+130|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+136|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+138|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+142|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+148|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+150|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+156|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+162|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+166|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+168|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+172|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+178|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+180|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+186|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+190|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+192|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+196|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+198|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}a=g+208|0;m=(b>>>0)/(a>>>0)|0;d=m>>>0>>0;m=(b|0)==(X(m,a)|0);e=d?1:m?9:0;a=d|m?a:g+210|0;c=d?b:c}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=g}else{e=1;a=g;c=b}while(0);switch(e&15){case 9:{b=c;break b}case 0:{g=a;k=8;break}default:break c}}if(!e)b=c;else{k=107;break a}}while(0);e=h+1|0;m=(e|0)==48;a=(m&1)+i|0;h=m?0:e;i=a;a=a*210|0;e=b}if((k|0)==106){f[j>>2]=b;break}else if((k|0)==107){f[j>>2]=b;b=c;break}}else{b=Fm(5796,5988,j,b)|0;b=f[b>>2]|0}while(0);u=l;return b|0}function bb(a){a=a|0;var c=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+128|0;C=F+116|0;l=F+112|0;n=F+108|0;p=F+104|0;t=F+100|0;q=F+96|0;s=F+88|0;E=F+40|0;D=F;v=F+92|0;w=F+84|0;B=F+80|0;m=a+144|0;f[m>>2]=0;i=a+160|0;if(f[i>>2]|0){e=a+156|0;c=f[e>>2]|0;if(c|0)do{A=c;c=f[c>>2]|0;ds(A)}while((c|0)!=0);f[e>>2]=0;c=f[a+152>>2]|0;if(c|0){e=a+148|0;g=0;do{f[(f[e>>2]|0)+(g<<2)>>2]=0;g=g+1|0}while((g|0)!=(c|0))}f[i>>2]=0}r=a+4|0;k=f[r>>2]|0;c=b[k+36>>0]|0;k=f[k+32>>2]|0;do if(((c&255)<<8&65535)<512){z=k+8|0;A=f[z>>2]|0;z=f[z+4>>2]|0;j=k+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((z|0)<(i|0)|(z|0)==(i|0)&A>>>0>>0){E=0;u=F;return E|0}else{e=(f[k>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;f[l>>2]=e;A=j;f[A>>2]=g;f[A+4>>2]=i;break}}else if(rk(l,k)|0){k=f[r>>2]|0;e=f[l>>2]|0;c=b[k+36>>0]|0;k=f[k+32>>2]|0;break}else{E=0;u=F;return E|0}while(0);f[m>>2]=e;if(((c&255)<<8&65535)<512){z=k+8|0;A=f[z>>2]|0;z=f[z+4>>2]|0;j=k+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((z|0)<(i|0)|(z|0)==(i|0)&A>>>0>>0)c=0;else{e=(f[k>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;f[n>>2]=e;f[j>>2]=g;f[j+4>>2]=i;j=k;x=18}}else if(rk(n,k)|0){j=f[r>>2]|0;e=f[n>>2]|0;c=b[j+36>>0]|0;j=f[j+32>>2]|0;x=18}else c=0;if((x|0)==18){m=a+168|0;f[m>>2]=e;if(((c&255)<<8&65535)<512){z=j+8|0;A=f[z>>2]|0;z=f[z+4>>2]|0;i=j+16|0;e=i;c=f[e>>2]|0;e=Kp(c|0,f[e+4>>2]|0,4,0)|0;g=I;if((z|0)<(g|0)|(z|0)==(g|0)&A>>>0>>0)c=0;else{x=(f[j>>2]|0)+c|0;f[p>>2]=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;x=i;f[x>>2]=e;f[x+4>>2]=g;x=22}}else if(rk(p,j)|0)x=22;else c=0;do if((x|0)==22){c=f[a+24>>2]|0;g=a+28|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);c=no(60)|0;Tp(c);A=a+8|0;e=f[A>>2]|0;f[A>>2]=c;if(e){mk(e);ds(e);c=f[A>>2]|0;if(!c){c=0;break}}if(Tl(c,f[p>>2]|0)|0){i=a+172|0;e=f[i>>2]|0;g=a+176|0;c=f[g>>2]|0;if((c|0)!=(e|0))f[g>>2]=c+(~((c+-4-e|0)>>>2)<<2);Mk(i,f[p>>2]|0);i=a+184|0;c=f[i>>2]|0;g=a+188|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);Mk(i,f[p>>2]|0);c=f[a+36>>2]|0;g=a+40|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~(((e+-12-c|0)>>>0)/12|0)*12|0);c=f[a+48>>2]|0;g=a+52|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+64>>2]=0;c=f[a+72>>2]|0;g=a+76|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+96>>2]=-1;f[a+104>>2]=-1;f[a+100>>2]=-1;c=f[(f[r>>2]|0)+32>>2]|0;z=c+8|0;y=f[z+4>>2]|0;i=c+16|0;g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;if((y|0)>(g|0)|((y|0)==(g|0)?(f[z>>2]|0)>>>0>e>>>0:0)?(o=b[(f[c>>2]|0)+e>>0]|0,y=Kp(e|0,g|0,1,0)|0,z=i,f[z>>2]=y,f[z+4>>2]=I,o<<24>>24>=0):0){z=a+224|0;j=f[z>>2]|0;y=a+228|0;c=f[y>>2]|0;if((c|0)!=(j|0))do{f[y>>2]=c+-116;e=f[c+-12>>2]|0;if(e|0){i=c+-8|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}e=f[c+-28>>2]|0;if(e|0){i=c+-24|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}e=f[c+-40>>2]|0;if(e|0){i=c+-36|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}vk(c+-112|0);c=f[y>>2]|0}while((c|0)!=(j|0));l=o<<24>>24;Si(z,l);o=f[r>>2]|0;c=f[o+32>>2]|0;if(((h[o+36>>0]|0)<<8&65535)<512){n=c+8|0;o=f[n>>2]|0;n=f[n+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((n|0)<(i|0)|(n|0)==(i|0)&o>>>0>>0)c=0;else{c=(f[c>>2]|0)+e|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;f[t>>2]=c;x=j;f[x>>2]=g;f[x+4>>2]=i;x=58}}else if(rk(t,c)|0){c=f[t>>2]|0;x=58}else c=0;if((x|0)==58)if((f[p>>2]|0)>>>0>>0)c=0;else{p=f[r>>2]|0;c=f[p+32>>2]|0;do if(((h[p+36>>0]|0)<<8&65535)<512){o=c+8|0;p=f[o>>2]|0;o=f[o+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((o|0)<(i|0)|(o|0)==(i|0)&p>>>0>>0){c=0;break}c=(f[c>>2]|0)+e|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;f[q>>2]=c;x=j;f[x>>2]=g;f[x+4>>2]=i;x=64}else{if(!(rk(q,c)|0)){c=0;break}c=f[q>>2]|0;x=64}while(0);if((x|0)==64){k=a+132|0;q=c+(f[m>>2]|0)|0;b[C>>0]=1;Rh(k,q,C);q=f[r>>2]|0;c=f[q+32>>2]|0;do if(((h[q+36>>0]|0)<<8&65535)>=512)if(rk(s,c)|0)x=68;else c=0;else{p=c+8|0;q=f[p>>2]|0;p=f[p+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((p|0)<(i|0)|(p|0)==(i|0)&q>>>0>>0){c=0;break}x=(f[c>>2]|0)+e|0;f[s>>2]=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;x=j;f[x>>2]=g;f[x+4>>2]=i;x=68}while(0);if((x|0)==68){Hn(E);c=f[(f[r>>2]|0)+32>>2]|0;q=c+16|0;p=f[q>>2]|0;x=f[s>>2]|0;s=(f[c>>2]|0)+p+x|0;o=c+8|0;q=_o(f[o>>2]|0,f[o+4>>2]|0,p|0,f[q+4>>2]|0)|0;x=_o(q|0,I|0,x|0,0)|0;ao(E,s,x,d[c+38>>1]|0);c=Rb(a,E)|0;if((c|0)==-1)c=0;else{g=a+240|0;f[a+328>>2]=a;q=(Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0)+32|0;q=f[q>>2]|0;q=(f[q>>2]|0)+(f[q+16>>2]|0)|0;s=(Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0)+32|0;s=f[s>>2]|0;o=s+8|0;n=f[o>>2]|0;o=f[o+4>>2]|0;s=s+16|0;p=f[s>>2]|0;s=f[s+4>>2]|0;x=Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0;s=_o(n|0,o|0,p|0,s|0)|0;ao(g,q,s,d[(f[x+32>>2]|0)+38>>1]|0);x=Sa[f[(f[a>>2]|0)+36>>2]&255](a)|0;f[a+332>>2]=x;f[a+336>>2]=f[m>>2];f[a+324>>2]=l;Hn(D);a:do if(ki(g,D)|0){if((Za(a,f[t>>2]|0)|0)==-1){c=0;break}e=f[(f[r>>2]|0)+32>>2]|0;x=D+16|0;s=f[x>>2]|0;t=(f[D>>2]|0)+s|0;q=D+8|0;x=_o(f[q>>2]|0,f[q+4>>2]|0,s|0,f[x+4>>2]|0)|0;ao(e,t,x,d[e+38>>1]|0);e=f[r>>2]|0;x=(f[e+32>>2]|0)+16|0;t=x;t=Kp(f[t>>2]|0,f[t+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;f[x>>2]=t;f[x+4>>2]=I;do if((f[y>>2]|0)!=(f[z>>2]|0)){c=f[A>>2]|0;c=((f[c+4>>2]|0)-(f[c>>2]|0)|0)>0;if((((h[e+36>>0]|0)<<8|(h[e+37>>0]|0))&65535)<513){if(!c)break;c=0;do{f[v>>2]=c;f[C>>2]=f[v>>2];c=c+3|0;if(!(Uf(a,C)|0)){c=0;break a}x=f[A>>2]|0}while((c|0)<((f[x+4>>2]|0)-(f[x>>2]|0)>>2|0))}else{if(!c)break;c=0;do{f[w>>2]=c;f[C>>2]=f[w>>2];c=c+3|0;if(!(Of(a,C)|0)){c=0;break a}x=f[A>>2]|0}while((c|0)<((f[x+4>>2]|0)-(f[x>>2]|0)>>2|0))}}while(0);gn(g);gn(a+280|0);i=f[A>>2]|0;s=f[i+28>>2]|0;j=f[i+24>>2]|0;r=j;if((s-j|0)>0){m=f[k>>2]|0;q=s-j>>2;o=i+12|0;p=0;do{do if(f[m+(p>>>5<<2)>>2]&1<<(p&31)|0){n=r+(p<<2)|0;c=f[n>>2]|0;if((c|0)<0)break;e=c+1|0;e=((e|0)%3|0|0)==0?c+-2|0:e;if((e|0)>=0){l=f[o>>2]|0;g=f[l+(e<<2)>>2]|0;e=g+1|0;b:do if((g|0)<0)e=c;else{e=((e|0)%3|0|0)==0?g+-2|0:e;if(!((e|0)>-1&(e|0)!=(c|0))){g=e;e=c;break}while(1){g=e+1|0;g=((g|0)%3|0|0)==0?e+-2|0:g;if((g|0)<0)break b;g=f[l+(g<<2)>>2]|0;k=g+1|0;if((g|0)<0)break b;g=((k|0)%3|0|0)==0?g+-2|0:k;if((g|0)>-1&(g|0)!=(c|0))e=g;else break}}while(0);if((g|0)==(c|0))break;else c=e}f[n>>2]=c}while(0);p=p+1|0}while((p|0)<(q|0))}g=f[y>>2]|0;x=f[z>>2]|0;c=x;if((g|0)==(x|0)){i=s;e=g}else{j=0;do{Hj(c+(j*116|0)+4|0,i)|0;c=f[z>>2]|0;e=f[c+(j*116|0)+104>>2]|0;g=f[c+(j*116|0)+108>>2]|0;if((e|0)!=(g|0))do{f[B>>2]=f[e>>2];f[C>>2]=f[B>>2];th(c+(j*116|0)+4|0,C);e=e+4|0;c=f[z>>2]|0}while((e|0)!=(g|0));Bm(c+(j*116|0)+4|0,0,0);j=j+1|0;g=f[y>>2]|0;e=f[z>>2]|0;c=e;i=f[A>>2]|0}while(j>>>0<((g-e|0)/116|0)>>>0);j=f[i+24>>2]|0;i=f[i+28>>2]|0}j=i-j>>2;l=a+208|0;n=a+212|0;m=f[n>>2]|0;i=f[l>>2]|0;k=m-i>>2;do if(j>>>0>k>>>0){mj(l,j-k|0);c=f[z>>2]|0;g=f[y>>2]|0;e=c}else{if(j>>>0>=k>>>0)break;i=i+(j<<2)|0;if((m|0)==(i|0))break;f[n>>2]=m+(~((m+-4-i|0)>>>2)<<2)}while(0);if((g|0)!=(e|0)){n=0;while(1){l=(f[c+(n*116|0)+60>>2]|0)-(f[c+(n*116|0)+56>>2]|0)>>2;m=f[A>>2]|0;m=(f[m+28>>2]|0)-(f[m+24>>2]|0)>>2;l=(l|0)<(m|0)?m:l;m=c+(n*116|0)+88|0;k=c+(n*116|0)+92|0;j=f[k>>2]|0;c=f[m>>2]|0;i=j-c>>2;do if(l>>>0>i>>>0){mj(m,l-i|0);e=f[z>>2]|0;g=f[y>>2]|0}else{if(l>>>0>=i>>>0)break;c=c+(l<<2)|0;if((j|0)==(c|0))break;f[k>>2]=j+(~((j+-4-c|0)>>>2)<<2)}while(0);n=n+1|0;if(n>>>0>=((g-e|0)/116|0)>>>0)break;else c=e}}c=vb(a)|0}else c=0;while(0);is(D+24|0)}is(E+24|0)}}}}else c=0}else c=0}while(0)}E=c;u=F;return E|0}function cb(a){a=a|0;var c=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+128|0;C=F+116|0;l=F+112|0;n=F+108|0;p=F+104|0;t=F+100|0;q=F+96|0;s=F+88|0;E=F+40|0;D=F;v=F+92|0;w=F+84|0;B=F+80|0;m=a+144|0;f[m>>2]=0;i=a+160|0;if(f[i>>2]|0){e=a+156|0;c=f[e>>2]|0;if(c|0)do{A=c;c=f[c>>2]|0;ds(A)}while((c|0)!=0);f[e>>2]=0;c=f[a+152>>2]|0;if(c|0){e=a+148|0;g=0;do{f[(f[e>>2]|0)+(g<<2)>>2]=0;g=g+1|0}while((g|0)!=(c|0))}f[i>>2]=0}r=a+4|0;k=f[r>>2]|0;c=b[k+36>>0]|0;k=f[k+32>>2]|0;do if(((c&255)<<8&65535)<512){z=k+8|0;A=f[z>>2]|0;z=f[z+4>>2]|0;j=k+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((z|0)<(i|0)|(z|0)==(i|0)&A>>>0>>0){E=0;u=F;return E|0}else{e=(f[k>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;f[l>>2]=e;A=j;f[A>>2]=g;f[A+4>>2]=i;break}}else if(rk(l,k)|0){k=f[r>>2]|0;e=f[l>>2]|0;c=b[k+36>>0]|0;k=f[k+32>>2]|0;break}else{E=0;u=F;return E|0}while(0);f[m>>2]=e;if(((c&255)<<8&65535)<512){z=k+8|0;A=f[z>>2]|0;z=f[z+4>>2]|0;j=k+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((z|0)<(i|0)|(z|0)==(i|0)&A>>>0>>0)c=0;else{e=(f[k>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;f[n>>2]=e;f[j>>2]=g;f[j+4>>2]=i;j=k;x=18}}else if(rk(n,k)|0){j=f[r>>2]|0;e=f[n>>2]|0;c=b[j+36>>0]|0;j=f[j+32>>2]|0;x=18}else c=0;if((x|0)==18){m=a+168|0;f[m>>2]=e;if(((c&255)<<8&65535)<512){z=j+8|0;A=f[z>>2]|0;z=f[z+4>>2]|0;i=j+16|0;e=i;c=f[e>>2]|0;e=Kp(c|0,f[e+4>>2]|0,4,0)|0;g=I;if((z|0)<(g|0)|(z|0)==(g|0)&A>>>0>>0)c=0;else{x=(f[j>>2]|0)+c|0;f[p>>2]=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;x=i;f[x>>2]=e;f[x+4>>2]=g;x=22}}else if(rk(p,j)|0)x=22;else c=0;do if((x|0)==22){c=f[a+24>>2]|0;g=a+28|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);c=no(60)|0;Tp(c);A=a+8|0;e=f[A>>2]|0;f[A>>2]=c;if(e){mk(e);ds(e);c=f[A>>2]|0;if(!c){c=0;break}}if(Tl(c,f[p>>2]|0)|0){i=a+172|0;e=f[i>>2]|0;g=a+176|0;c=f[g>>2]|0;if((c|0)!=(e|0))f[g>>2]=c+(~((c+-4-e|0)>>>2)<<2);Mk(i,f[p>>2]|0);i=a+184|0;c=f[i>>2]|0;g=a+188|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);Mk(i,f[p>>2]|0);c=f[a+36>>2]|0;g=a+40|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~(((e+-12-c|0)>>>0)/12|0)*12|0);c=f[a+48>>2]|0;g=a+52|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+64>>2]=0;c=f[a+72>>2]|0;g=a+76|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+96>>2]=-1;f[a+104>>2]=-1;f[a+100>>2]=-1;c=f[(f[r>>2]|0)+32>>2]|0;z=c+8|0;y=f[z+4>>2]|0;i=c+16|0;g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;if((y|0)>(g|0)|((y|0)==(g|0)?(f[z>>2]|0)>>>0>e>>>0:0)?(o=b[(f[c>>2]|0)+e>>0]|0,y=Kp(e|0,g|0,1,0)|0,z=i,f[z>>2]=y,f[z+4>>2]=I,o<<24>>24>=0):0){z=a+224|0;j=f[z>>2]|0;y=a+228|0;c=f[y>>2]|0;if((c|0)!=(j|0))do{f[y>>2]=c+-116;e=f[c+-12>>2]|0;if(e|0){i=c+-8|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}e=f[c+-28>>2]|0;if(e|0){i=c+-24|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}e=f[c+-40>>2]|0;if(e|0){i=c+-36|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}vk(c+-112|0);c=f[y>>2]|0}while((c|0)!=(j|0));l=o<<24>>24;Si(z,l);o=f[r>>2]|0;c=f[o+32>>2]|0;if(((h[o+36>>0]|0)<<8&65535)<512){n=c+8|0;o=f[n>>2]|0;n=f[n+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((n|0)<(i|0)|(n|0)==(i|0)&o>>>0>>0)c=0;else{c=(f[c>>2]|0)+e|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;f[t>>2]=c;x=j;f[x>>2]=g;f[x+4>>2]=i;x=58}}else if(rk(t,c)|0){c=f[t>>2]|0;x=58}else c=0;if((x|0)==58)if((f[p>>2]|0)>>>0>>0)c=0;else{p=f[r>>2]|0;c=f[p+32>>2]|0;do if(((h[p+36>>0]|0)<<8&65535)<512){o=c+8|0;p=f[o>>2]|0;o=f[o+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((o|0)<(i|0)|(o|0)==(i|0)&p>>>0>>0){c=0;break}c=(f[c>>2]|0)+e|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;f[q>>2]=c;x=j;f[x>>2]=g;f[x+4>>2]=i;x=64}else{if(!(rk(q,c)|0)){c=0;break}c=f[q>>2]|0;x=64}while(0);if((x|0)==64){k=a+132|0;q=c+(f[m>>2]|0)|0;b[C>>0]=1;Rh(k,q,C);q=f[r>>2]|0;c=f[q+32>>2]|0;do if(((h[q+36>>0]|0)<<8&65535)>=512)if(rk(s,c)|0)x=68;else c=0;else{p=c+8|0;q=f[p>>2]|0;p=f[p+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((p|0)<(i|0)|(p|0)==(i|0)&q>>>0>>0){c=0;break}x=(f[c>>2]|0)+e|0;f[s>>2]=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;x=j;f[x>>2]=g;f[x+4>>2]=i;x=68}while(0);if((x|0)==68){Hn(E);c=f[(f[r>>2]|0)+32>>2]|0;q=c+16|0;p=f[q>>2]|0;x=f[s>>2]|0;s=(f[c>>2]|0)+p+x|0;o=c+8|0;q=_o(f[o>>2]|0,f[o+4>>2]|0,p|0,f[q+4>>2]|0)|0;x=_o(q|0,I|0,x|0,0)|0;ao(E,s,x,d[c+38>>1]|0);c=Rb(a,E)|0;if((c|0)==-1)c=0;else{g=a+240|0;f[a+328>>2]=a;q=(Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0)+32|0;q=f[q>>2]|0;q=(f[q>>2]|0)+(f[q+16>>2]|0)|0;s=(Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0)+32|0;s=f[s>>2]|0;o=s+8|0;n=f[o>>2]|0;o=f[o+4>>2]|0;s=s+16|0;p=f[s>>2]|0;s=f[s+4>>2]|0;x=Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0;s=_o(n|0,o|0,p|0,s|0)|0;ao(g,q,s,d[(f[x+32>>2]|0)+38>>1]|0);x=Sa[f[(f[a>>2]|0)+36>>2]&255](a)|0;f[a+332>>2]=x;f[a+336>>2]=f[m>>2];f[a+324>>2]=l;Hn(D);a:do if(Sc(g,D)|0){if((Ya(a,f[t>>2]|0)|0)==-1){c=0;break}e=f[(f[r>>2]|0)+32>>2]|0;x=D+16|0;s=f[x>>2]|0;t=(f[D>>2]|0)+s|0;q=D+8|0;x=_o(f[q>>2]|0,f[q+4>>2]|0,s|0,f[x+4>>2]|0)|0;ao(e,t,x,d[e+38>>1]|0);e=f[r>>2]|0;x=(f[e+32>>2]|0)+16|0;t=x;t=Kp(f[t>>2]|0,f[t+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;f[x>>2]=t;f[x+4>>2]=I;do if((f[y>>2]|0)!=(f[z>>2]|0)){c=f[A>>2]|0;c=((f[c+4>>2]|0)-(f[c>>2]|0)|0)>0;if((((h[e+36>>0]|0)<<8|(h[e+37>>0]|0))&65535)<513){if(!c)break;c=0;do{f[v>>2]=c;f[C>>2]=f[v>>2];c=c+3|0;if(!(Uf(a,C)|0)){c=0;break a}x=f[A>>2]|0}while((c|0)<((f[x+4>>2]|0)-(f[x>>2]|0)>>2|0))}else{if(!c)break;c=0;do{f[w>>2]=c;f[C>>2]=f[w>>2];c=c+3|0;if(!(Of(a,C)|0)){c=0;break a}x=f[A>>2]|0}while((c|0)<((f[x+4>>2]|0)-(f[x>>2]|0)>>2|0))}}while(0);gn(g);gn(a+280|0);i=f[A>>2]|0;s=f[i+28>>2]|0;j=f[i+24>>2]|0;r=j;if((s-j|0)>0){m=f[k>>2]|0;q=s-j>>2;o=i+12|0;p=0;do{do if(f[m+(p>>>5<<2)>>2]&1<<(p&31)|0){n=r+(p<<2)|0;c=f[n>>2]|0;if((c|0)<0)break;e=c+1|0;e=((e|0)%3|0|0)==0?c+-2|0:e;if((e|0)>=0){l=f[o>>2]|0;g=f[l+(e<<2)>>2]|0;e=g+1|0;b:do if((g|0)<0)e=c;else{e=((e|0)%3|0|0)==0?g+-2|0:e;if(!((e|0)>-1&(e|0)!=(c|0))){g=e;e=c;break}while(1){g=e+1|0;g=((g|0)%3|0|0)==0?e+-2|0:g;if((g|0)<0)break b;g=f[l+(g<<2)>>2]|0;k=g+1|0;if((g|0)<0)break b;g=((k|0)%3|0|0)==0?g+-2|0:k;if((g|0)>-1&(g|0)!=(c|0))e=g;else break}}while(0);if((g|0)==(c|0))break;else c=e}f[n>>2]=c}while(0);p=p+1|0}while((p|0)<(q|0))}g=f[y>>2]|0;x=f[z>>2]|0;c=x;if((g|0)==(x|0)){i=s;e=g}else{j=0;do{Hj(c+(j*116|0)+4|0,i)|0;c=f[z>>2]|0;e=f[c+(j*116|0)+104>>2]|0;g=f[c+(j*116|0)+108>>2]|0;if((e|0)!=(g|0))do{f[B>>2]=f[e>>2];f[C>>2]=f[B>>2];th(c+(j*116|0)+4|0,C);e=e+4|0;c=f[z>>2]|0}while((e|0)!=(g|0));Bm(c+(j*116|0)+4|0,0,0);j=j+1|0;g=f[y>>2]|0;e=f[z>>2]|0;c=e;i=f[A>>2]|0}while(j>>>0<((g-e|0)/116|0)>>>0);j=f[i+24>>2]|0;i=f[i+28>>2]|0}j=i-j>>2;l=a+208|0;n=a+212|0;m=f[n>>2]|0;i=f[l>>2]|0;k=m-i>>2;do if(j>>>0>k>>>0){mj(l,j-k|0);c=f[z>>2]|0;g=f[y>>2]|0;e=c}else{if(j>>>0>=k>>>0)break;i=i+(j<<2)|0;if((m|0)==(i|0))break;f[n>>2]=m+(~((m+-4-i|0)>>>2)<<2)}while(0);if((g|0)!=(e|0)){n=0;while(1){l=(f[c+(n*116|0)+60>>2]|0)-(f[c+(n*116|0)+56>>2]|0)>>2;m=f[A>>2]|0;m=(f[m+28>>2]|0)-(f[m+24>>2]|0)>>2;l=(l|0)<(m|0)?m:l;m=c+(n*116|0)+88|0;k=c+(n*116|0)+92|0;j=f[k>>2]|0;c=f[m>>2]|0;i=j-c>>2;do if(l>>>0>i>>>0){mj(m,l-i|0);e=f[z>>2]|0;g=f[y>>2]|0}else{if(l>>>0>=i>>>0)break;c=c+(l<<2)|0;if((j|0)==(c|0))break;f[k>>2]=j+(~((j+-4-c|0)>>>2)<<2)}while(0);n=n+1|0;if(n>>>0>=((g-e|0)/116|0)>>>0)break;else c=e}}c=vb(a)|0}else c=0;while(0);is(D+24|0)}is(E+24|0)}}}}else c=0}else c=0}while(0)}E=c;u=F;return E|0}function db(a){a=a|0;var c=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+128|0;C=F+116|0;l=F+112|0;n=F+108|0;p=F+104|0;t=F+100|0;q=F+96|0;s=F+88|0;E=F+40|0;D=F;v=F+92|0;w=F+84|0;B=F+80|0;m=a+144|0;f[m>>2]=0;i=a+160|0;if(f[i>>2]|0){e=a+156|0;c=f[e>>2]|0;if(c|0)do{A=c;c=f[c>>2]|0;ds(A)}while((c|0)!=0);f[e>>2]=0;c=f[a+152>>2]|0;if(c|0){e=a+148|0;g=0;do{f[(f[e>>2]|0)+(g<<2)>>2]=0;g=g+1|0}while((g|0)!=(c|0))}f[i>>2]=0}r=a+4|0;k=f[r>>2]|0;c=b[k+36>>0]|0;k=f[k+32>>2]|0;do if(((c&255)<<8&65535)<512){z=k+8|0;A=f[z>>2]|0;z=f[z+4>>2]|0;j=k+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((z|0)<(i|0)|(z|0)==(i|0)&A>>>0>>0){E=0;u=F;return E|0}else{e=(f[k>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;f[l>>2]=e;A=j;f[A>>2]=g;f[A+4>>2]=i;break}}else if(rk(l,k)|0){k=f[r>>2]|0;e=f[l>>2]|0;c=b[k+36>>0]|0;k=f[k+32>>2]|0;break}else{E=0;u=F;return E|0}while(0);f[m>>2]=e;if(((c&255)<<8&65535)<512){z=k+8|0;A=f[z>>2]|0;z=f[z+4>>2]|0;j=k+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((z|0)<(i|0)|(z|0)==(i|0)&A>>>0>>0)c=0;else{e=(f[k>>2]|0)+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;f[n>>2]=e;f[j>>2]=g;f[j+4>>2]=i;j=k;x=18}}else if(rk(n,k)|0){j=f[r>>2]|0;e=f[n>>2]|0;c=b[j+36>>0]|0;j=f[j+32>>2]|0;x=18}else c=0;if((x|0)==18){m=a+168|0;f[m>>2]=e;if(((c&255)<<8&65535)<512){z=j+8|0;A=f[z>>2]|0;z=f[z+4>>2]|0;i=j+16|0;e=i;c=f[e>>2]|0;e=Kp(c|0,f[e+4>>2]|0,4,0)|0;g=I;if((z|0)<(g|0)|(z|0)==(g|0)&A>>>0>>0)c=0;else{x=(f[j>>2]|0)+c|0;f[p>>2]=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;x=i;f[x>>2]=e;f[x+4>>2]=g;x=22}}else if(rk(p,j)|0)x=22;else c=0;do if((x|0)==22){c=f[a+24>>2]|0;g=a+28|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);c=no(60)|0;Tp(c);A=a+8|0;e=f[A>>2]|0;f[A>>2]=c;if(e){mk(e);ds(e);c=f[A>>2]|0;if(!c){c=0;break}}if(Tl(c,f[p>>2]|0)|0){i=a+172|0;e=f[i>>2]|0;g=a+176|0;c=f[g>>2]|0;if((c|0)!=(e|0))f[g>>2]=c+(~((c+-4-e|0)>>>2)<<2);Mk(i,f[p>>2]|0);i=a+184|0;c=f[i>>2]|0;g=a+188|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);Mk(i,f[p>>2]|0);c=f[a+36>>2]|0;g=a+40|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~(((e+-12-c|0)>>>0)/12|0)*12|0);c=f[a+48>>2]|0;g=a+52|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+64>>2]=0;c=f[a+72>>2]|0;g=a+76|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+96>>2]=-1;f[a+104>>2]=-1;f[a+100>>2]=-1;c=f[(f[r>>2]|0)+32>>2]|0;z=c+8|0;y=f[z+4>>2]|0;i=c+16|0;g=i;e=f[g>>2]|0;g=f[g+4>>2]|0;if((y|0)>(g|0)|((y|0)==(g|0)?(f[z>>2]|0)>>>0>e>>>0:0)?(o=b[(f[c>>2]|0)+e>>0]|0,y=Kp(e|0,g|0,1,0)|0,z=i,f[z>>2]=y,f[z+4>>2]=I,o<<24>>24>=0):0){z=a+224|0;j=f[z>>2]|0;y=a+228|0;c=f[y>>2]|0;if((c|0)!=(j|0))do{f[y>>2]=c+-116;e=f[c+-12>>2]|0;if(e|0){i=c+-8|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}e=f[c+-28>>2]|0;if(e|0){i=c+-24|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}e=f[c+-40>>2]|0;if(e|0){i=c+-36|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e)}vk(c+-112|0);c=f[y>>2]|0}while((c|0)!=(j|0));l=o<<24>>24;Si(z,l);o=f[r>>2]|0;c=f[o+32>>2]|0;if(((h[o+36>>0]|0)<<8&65535)<512){n=c+8|0;o=f[n>>2]|0;n=f[n+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((n|0)<(i|0)|(n|0)==(i|0)&o>>>0>>0)c=0;else{c=(f[c>>2]|0)+e|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;f[t>>2]=c;x=j;f[x>>2]=g;f[x+4>>2]=i;x=58}}else if(rk(t,c)|0){c=f[t>>2]|0;x=58}else c=0;if((x|0)==58)if((f[p>>2]|0)>>>0>>0)c=0;else{p=f[r>>2]|0;c=f[p+32>>2]|0;do if(((h[p+36>>0]|0)<<8&65535)<512){o=c+8|0;p=f[o>>2]|0;o=f[o+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((o|0)<(i|0)|(o|0)==(i|0)&p>>>0>>0){c=0;break}c=(f[c>>2]|0)+e|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;f[q>>2]=c;x=j;f[x>>2]=g;f[x+4>>2]=i;x=64}else{if(!(rk(q,c)|0)){c=0;break}c=f[q>>2]|0;x=64}while(0);if((x|0)==64){k=a+132|0;q=c+(f[m>>2]|0)|0;b[C>>0]=1;Rh(k,q,C);q=f[r>>2]|0;c=f[q+32>>2]|0;do if(((h[q+36>>0]|0)<<8&65535)>=512)if(rk(s,c)|0)x=68;else c=0;else{p=c+8|0;q=f[p>>2]|0;p=f[p+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Kp(e|0,f[g+4>>2]|0,4,0)|0;i=I;if((p|0)<(i|0)|(p|0)==(i|0)&q>>>0>>0){c=0;break}x=(f[c>>2]|0)+e|0;f[s>>2]=h[x>>0]|h[x+1>>0]<<8|h[x+2>>0]<<16|h[x+3>>0]<<24;x=j;f[x>>2]=g;f[x+4>>2]=i;x=68}while(0);if((x|0)==68){Hn(E);c=f[(f[r>>2]|0)+32>>2]|0;q=c+16|0;p=f[q>>2]|0;x=f[s>>2]|0;s=(f[c>>2]|0)+p+x|0;o=c+8|0;q=_o(f[o>>2]|0,f[o+4>>2]|0,p|0,f[q+4>>2]|0)|0;x=_o(q|0,I|0,x|0,0)|0;ao(E,s,x,d[c+38>>1]|0);c=Rb(a,E)|0;if((c|0)==-1)c=0;else{g=a+240|0;f[a+328>>2]=a;q=(Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0)+32|0;q=f[q>>2]|0;q=(f[q>>2]|0)+(f[q+16>>2]|0)|0;s=(Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0)+32|0;s=f[s>>2]|0;o=s+8|0;n=f[o>>2]|0;o=f[o+4>>2]|0;s=s+16|0;p=f[s>>2]|0;s=f[s+4>>2]|0;x=Sa[f[(f[a>>2]|0)+32>>2]&255](a)|0;s=_o(n|0,o|0,p|0,s|0)|0;ao(g,q,s,d[(f[x+32>>2]|0)+38>>1]|0);f[a+324>>2]=l;Hn(D);a:do if(te(g,D)|0){if((_a(a,f[t>>2]|0)|0)==-1){c=0;break}e=f[(f[r>>2]|0)+32>>2]|0;x=D+16|0;s=f[x>>2]|0;t=(f[D>>2]|0)+s|0;q=D+8|0;x=_o(f[q>>2]|0,f[q+4>>2]|0,s|0,f[x+4>>2]|0)|0;ao(e,t,x,d[e+38>>1]|0);e=f[r>>2]|0;x=(f[e+32>>2]|0)+16|0;t=x;t=Kp(f[t>>2]|0,f[t+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;f[x>>2]=t;f[x+4>>2]=I;do if((f[y>>2]|0)!=(f[z>>2]|0)){c=f[A>>2]|0;c=((f[c+4>>2]|0)-(f[c>>2]|0)|0)>0;if((((h[e+36>>0]|0)<<8|(h[e+37>>0]|0))&65535)<513){if(!c)break;c=0;do{f[v>>2]=c;f[C>>2]=f[v>>2];c=c+3|0;if(!(Uf(a,C)|0)){c=0;break a}x=f[A>>2]|0}while((c|0)<((f[x+4>>2]|0)-(f[x>>2]|0)>>2|0))}else{if(!c)break;c=0;do{f[w>>2]=c;f[C>>2]=f[w>>2];c=c+3|0;if(!(Pf(a,C)|0)){c=0;break a}x=f[A>>2]|0}while((c|0)<((f[x+4>>2]|0)-(f[x>>2]|0)>>2|0))}}while(0);gn(g);gn(a+280|0);i=f[A>>2]|0;s=f[i+28>>2]|0;j=f[i+24>>2]|0;r=j;if((s-j|0)>0){m=f[k>>2]|0;q=s-j>>2;o=i+12|0;p=0;do{do if(f[m+(p>>>5<<2)>>2]&1<<(p&31)|0){n=r+(p<<2)|0;c=f[n>>2]|0;if((c|0)<0)break;e=c+1|0;e=((e|0)%3|0|0)==0?c+-2|0:e;if((e|0)>=0){l=f[o>>2]|0;g=f[l+(e<<2)>>2]|0;e=g+1|0;b:do if((g|0)<0)e=c;else{e=((e|0)%3|0|0)==0?g+-2|0:e;if(!((e|0)>-1&(e|0)!=(c|0))){g=e;e=c;break}while(1){g=e+1|0;g=((g|0)%3|0|0)==0?e+-2|0:g;if((g|0)<0)break b;g=f[l+(g<<2)>>2]|0;k=g+1|0;if((g|0)<0)break b;g=((k|0)%3|0|0)==0?g+-2|0:k;if((g|0)>-1&(g|0)!=(c|0))e=g;else break}}while(0);if((g|0)==(c|0))break;else c=e}f[n>>2]=c}while(0);p=p+1|0}while((p|0)<(q|0))}g=f[y>>2]|0;x=f[z>>2]|0;c=x;if((g|0)==(x|0)){i=s;e=g}else{j=0;do{Hj(c+(j*116|0)+4|0,i)|0;c=f[z>>2]|0;e=f[c+(j*116|0)+104>>2]|0;g=f[c+(j*116|0)+108>>2]|0;if((e|0)!=(g|0))do{f[B>>2]=f[e>>2];f[C>>2]=f[B>>2];th(c+(j*116|0)+4|0,C);e=e+4|0;c=f[z>>2]|0}while((e|0)!=(g|0));Bm(c+(j*116|0)+4|0,0,0);j=j+1|0;g=f[y>>2]|0;e=f[z>>2]|0;c=e;i=f[A>>2]|0}while(j>>>0<((g-e|0)/116|0)>>>0);j=f[i+24>>2]|0;i=f[i+28>>2]|0}j=i-j>>2;l=a+208|0;n=a+212|0;m=f[n>>2]|0;i=f[l>>2]|0;k=m-i>>2;do if(j>>>0>k>>>0){mj(l,j-k|0);c=f[z>>2]|0;g=f[y>>2]|0;e=c}else{if(j>>>0>=k>>>0)break;i=i+(j<<2)|0;if((m|0)==(i|0))break;f[n>>2]=m+(~((m+-4-i|0)>>>2)<<2)}while(0);if((g|0)!=(e|0)){n=0;while(1){l=(f[c+(n*116|0)+60>>2]|0)-(f[c+(n*116|0)+56>>2]|0)>>2;m=f[A>>2]|0;m=(f[m+28>>2]|0)-(f[m+24>>2]|0)>>2;l=(l|0)<(m|0)?m:l;m=c+(n*116|0)+88|0;k=c+(n*116|0)+92|0;j=f[k>>2]|0;c=f[m>>2]|0;i=j-c>>2;do if(l>>>0>i>>>0){mj(m,l-i|0);e=f[z>>2]|0;g=f[y>>2]|0}else{if(l>>>0>=i>>>0)break;c=c+(l<<2)|0;if((j|0)==(c|0))break;f[k>>2]=j+(~((j+-4-c|0)>>>2)<<2)}while(0);n=n+1|0;if(n>>>0>=((g-e|0)/116|0)>>>0)break;else c=e}}c=vb(a)|0}else c=0;while(0);is(D+24|0)}is(E+24|0)}}}}else c=0}else c=0}while(0)}E=c;u=F;return E|0}function eb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=u;u=u+32|0;L=M+8|0;j=M;G=a+8|0;F=f[G>>2]|0;f[j>>2]=0;Ik(L,F,j);F=a+116|0;i=f[F>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[L>>2];f[h>>2]=f[L+4>>2];f[e>>2]=f[L+8>>2];E=f[G>>2]|0;f[j>>2]=0;Ik(L,E,j);E=a+128|0;i=f[E>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[L>>2];f[h>>2]=f[L+4>>2];f[e>>2]=f[L+8>>2];f[L>>2]=0;f[L+4>>2]=0;f[L+8>>2]=0;f[L+12>>2]=0;f[L+16>>2]=0;f[L+20>>2]=0;K=L+8|0;J=L+4|0;I=L+16|0;H=L+20|0;uc(L);e=f[J>>2]|0;g=(f[H>>2]|0)+(f[I>>2]|0)|0;if((f[K>>2]|0)==(e|0))e=0;else e=(f[e+(((g>>>0)/341|0)<<2)>>2]|0)+(((g>>>0)%341|0)*12|0)|0;f[e>>2]=c;f[e+4>>2]=0;f[e+8>>2]=0;e=(f[H>>2]|0)+1|0;f[H>>2]=e;a:do if(e|0){v=a+104|0;D=a+92|0;t=d+4|0;w=a+96|0;C=a+48|0;z=a+44|0;B=a+28|0;y=a+24|0;A=a+88|0;x=a+84|0;b:while(1){q=f[I>>2]|0;g=e+-1|0;m=q+g|0;r=f[J>>2]|0;p=f[r+(((m>>>0)/341|0)<<2)>>2]|0;m=(m>>>0)%341|0;s=f[p+(m*12|0)>>2]|0;h=f[p+(m*12|0)+4>>2]|0;m=f[p+(m*12|0)+8>>2]|0;f[H>>2]=g;g=f[K>>2]|0;r=g-r>>2;if((1-e-q+((r|0)==0?0:(r*341|0)+-1|0)|0)>>>0>681){ds(f[g+-4>>2]|0);f[K>>2]=(f[K>>2]|0)+-4}i=f[F>>2]|0;r=i+(m*12|0)|0;q=(f[E>>2]|0)+(m*12|0)|0;g=xo(a,s,q,h)|0;e=(f[a>>2]|0)-(f[(f[q>>2]|0)+(g<<2)>>2]|0)|0;c:do if(!e)if((s|0)>0){j=i+(m*12|0)+4|0;c=f[d>>2]|0;m=c+84|0;i=c+68|0;k=c+40|0;c=c+64|0;g=f[t>>2]|0;l=0;while(1){e=g;g=g+1|0;f[t>>2]=g;h=f[r>>2]|0;if(((f[j>>2]|0)-h|0)!=12){o=23;break b}if(!(b[m>>0]|0))e=f[(f[i>>2]|0)+(e<<2)>>2]|0;p=k;q=f[p>>2]|0;p=mo(q|0,f[p+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[c>>2]>>2]|0)+p|0,h|0,q|0)|0;l=l+1|0;if((l|0)>=(s|0)){o=15;break}}}else o=15;else{if(!s){o=28;break b}if(s>>>0<3){i=f[v>>2]|0;f[i>>2]=g;e=f[G>>2]|0;if(e>>>0>1){h=1;do{g=(g|0)==(e+-1|0)?0:g+1|0;f[i+(h<<2)>>2]=g;h=h+1|0;e=f[G>>2]|0}while(h>>>0>>0)}g=0;while(1){if(!e)i=f[D>>2]|0;else{k=f[v>>2]|0;l=f[D>>2]|0;m=f[q>>2]|0;i=l;o=0;do{n=k+(o<<2)|0;f[l+(f[n>>2]<<2)>>2]=0;e=f[n>>2]|0;p=(f[a>>2]|0)-(f[m+(e<<2)>>2]|0)|0;do if(p|0){h=l+(e<<2)|0;if((p|0)>=33){o=42;break b}if((p|0)<=0){o=44;break b}j=f[C>>2]|0;c=32-j|0;e=f[z>>2]|0;j=f[e>>2]<(c|0)){p=p-c|0;f[C>>2]=p;e=e+4|0;f[z>>2]=e;p=32-p|0;f[h>>2]=(f[e>>2]|0)>>>p|j>>>(p-c|0);break}f[h>>2]=j>>>(32-p|0);p=(f[C>>2]|0)+p|0;f[C>>2]=p;if((p|0)!=32)break;f[z>>2]=e+4;f[C>>2]=0}while(0);n=f[n>>2]|0;p=l+(n<<2)|0;f[p>>2]=f[p>>2]|f[(f[r>>2]|0)+(n<<2)>>2];o=o+1|0}while(o>>>0<(f[G>>2]|0)>>>0)}h=f[d>>2]|0;e=f[t>>2]|0;f[t>>2]=e+1;if(((f[w>>2]|0)-i|0)!=12){o=37;break b}if(!(b[h+84>>0]|0))e=f[(f[h+68>>2]|0)+(e<<2)>>2]|0;o=h+40|0;p=f[o>>2]|0;o=mo(p|0,f[o+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[h+64>>2]>>2]|0)+o|0,i|0,p|0)|0;g=g+1|0;if(g>>>0>=s>>>0){o=15;break c}e=f[G>>2]|0}}c=1<>2]|0;e=f[r>>2]|0;j=e;i=f[(f[F>>2]|0)+(n*12|0)>>2]|0;if((h|0)!=(e|0)){h=h-e>>2;e=0;do{f[i+(e<<2)>>2]=f[j+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}r=i+(g<<2)|0;f[r>>2]=(f[r>>2]|0)+c;c=(_(s|0)|0)^31;if(c>>>0>=33){o=56;break b}if(!c){o=58;break b}i=f[B>>2]|0;h=32-i|0;j=f[y>>2]|0;e=f[j>>2]<>>(32-c|0);r=i+c|0;f[B>>2]=r;if((r|0)==32){f[y>>2]=j+4;f[B>>2]=0}}else{r=c-h|0;f[B>>2]=r;q=j+4|0;f[y>>2]=q;r=32-r|0;e=(f[q>>2]|0)>>>r|e>>>(r-h|0)}j=(s>>>1)-e|0;h=s-j|0;if((j|0)==(h|0)){k=j;l=j}else{s=f[A>>2]|0;e=f[x>>2]|0;i=(f[e>>2]&1<<31-s|0)!=0;s=s+1|0;f[A>>2]=s;if((s|0)==32){f[x>>2]=e+4;f[A>>2]=0}k=i?j:h;l=i?h:j}e=f[E>>2]|0;c=f[e+(m*12|0)>>2]|0;h=c+(g<<2)|0;f[h>>2]=(f[h>>2]|0)+1;h=f[e+(m*12|0)+4>>2]|0;i=c;if((h|0)!=(i|0)){j=f[e+(n*12|0)>>2]|0;h=h-i>>2;e=0;do{f[j+(e<<2)>>2]=f[c+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}if(k|0){j=f[K>>2]|0;i=f[J>>2]|0;s=j-i>>2;e=f[I>>2]|0;h=f[H>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(h+e|0)){uc(L);e=f[I>>2]|0;h=f[H>>2]|0;j=f[K>>2]|0;i=f[J>>2]|0}e=h+e|0;if((j|0)==(i|0))e=0;else e=(f[i+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=k;f[e+4>>2]=g;f[e+8>>2]=m;f[H>>2]=(f[H>>2]|0)+1}if(!l)o=15;else{j=f[K>>2]|0;i=f[J>>2]|0;s=j-i>>2;e=f[I>>2]|0;h=f[H>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(h+e|0)){uc(L);e=f[I>>2]|0;h=f[H>>2]|0;j=f[K>>2]|0;i=f[J>>2]|0}e=h+e|0;if((j|0)==(i|0))e=0;else e=(f[i+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=l;f[e+4>>2]=g;f[e+8>>2]=n;e=(f[H>>2]|0)+1|0;f[H>>2]=e}}while(0);if((o|0)==15){o=0;e=f[H>>2]|0}if(!e)break a}if((o|0)==23)Ga(6524,6554,51,6673);else if((o|0)==28)Ga(22236,22274,223,22416);else if((o|0)==37)Ga(6524,6554,51,6673);else if((o|0)==42)Ga(22431,22455,48,22558);else if((o|0)==44)Ga(22587,22455,49,22558);else if((o|0)==56)Ga(22431,22455,48,22558);else if((o|0)==58)Ga(22587,22455,49,22558)}while(0);e=f[J>>2]|0;g=f[I>>2]|0;i=e+(((g>>>0)/341|0)<<2)|0;h=f[K>>2]|0;c=h;k=e;if((h|0)==(e|0)){j=0;g=0}else{g=(f[i>>2]|0)+(((g>>>0)%341|0)*12|0)|0;j=g}d:while(1){do{if((g|0)==(j|0))break d;g=g+12|0}while((g-(f[i>>2]|0)|0)!=4092);g=i+4|0;i=g;g=f[g>>2]|0}f[H>>2]=0;g=c-k>>2;if(g>>>0>2)do{ds(f[e>>2]|0);e=(f[J>>2]|0)+4|0;f[J>>2]=e;h=f[K>>2]|0;g=h-e>>2}while(g>>>0>2);switch(g|0){case 1:{g=170;o=94;break}case 2:{g=341;o=94;break}default:{}}if((o|0)==94)f[I>>2]=g;if((e|0)!=(h|0)){do{ds(f[e>>2]|0);e=e+4|0}while((e|0)!=(h|0));e=f[J>>2]|0;g=f[K>>2]|0;if((g|0)!=(e|0))f[K>>2]=g+(~((g+-4-e|0)>>>2)<<2)}e=f[L>>2]|0;if(!e){u=M;return}ds(e);u=M;return}function fb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=u;u=u+48|0;K=Q+24|0;P=Q;J=a+8|0;I=f[J>>2]|0;f[P>>2]=0;Ik(K,I,P);I=a+116|0;h=f[I>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[K>>2];f[g>>2]=f[K+4>>2];f[d>>2]=f[K+8>>2];H=f[J>>2]|0;f[P>>2]=0;Ik(K,H,P);H=a+128|0;h=f[H>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[K>>2];f[g>>2]=f[K+4>>2];f[d>>2]=f[K+8>>2];f[P>>2]=0;f[P+4>>2]=0;f[P+8>>2]=0;f[P+12>>2]=0;f[P+16>>2]=0;f[P+20>>2]=0;O=P+8|0;N=P+4|0;M=P+16|0;L=P+20|0;uc(P);d=f[N>>2]|0;e=(f[L>>2]|0)+(f[M>>2]|0)|0;if((f[O>>2]|0)==(d|0))d=0;else d=(f[d+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[d>>2]=b;f[d+4>>2]=0;f[d+8>>2]=0;d=(f[L>>2]|0)+1|0;f[L>>2]=d;a:do if(d|0){w=a+104|0;v=a+92|0;A=K+4|0;C=K+8|0;G=a+48|0;z=a+44|0;F=a+28|0;y=a+24|0;E=a+88|0;x=a+84|0;B=K+4|0;D=K+8|0;b:while(1){r=f[M>>2]|0;e=d+-1|0;l=r+e|0;s=f[N>>2]|0;q=f[s+(((l>>>0)/341|0)<<2)>>2]|0;l=(l>>>0)%341|0;t=f[q+(l*12|0)>>2]|0;g=f[q+(l*12|0)+4>>2]|0;l=f[q+(l*12|0)+8>>2]|0;f[L>>2]=e;e=f[O>>2]|0;s=e-s>>2;if((1-d-r+((s|0)==0?0:(s*341|0)+-1|0)|0)>>>0>681){ds(f[e+-4>>2]|0);f[O>>2]=(f[O>>2]|0)+-4}h=f[I>>2]|0;s=h+(l*12|0)|0;r=(f[H>>2]|0)+(l*12|0)|0;e=xo(a,t,r,g)|0;d=(f[a>>2]|0)-(f[(f[r>>2]|0)+(e<<2)>>2]|0)|0;c:do if(!d)if((t|0)>0){i=f[c>>2]|0;g=i+4|0;h=i+8|0;b=0;do{e=f[s>>2]|0;d=f[e>>2]|0;f[K>>2]=d;f[B>>2]=f[e+4>>2];f[D>>2]=f[e+8>>2];e=f[g>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=d;f[e+4>>2]=f[B>>2];f[e+8>>2]=f[D>>2];f[g>>2]=e+12}else ei(i,K);b=b+1|0}while((b|0)<(t|0));n=15}else n=15;else{if(!t){n=27;break b}if(t>>>0<3){h=f[w>>2]|0;f[h>>2]=e;d=f[J>>2]|0;if(d>>>0>1){g=1;do{e=(e|0)==(d+-1|0)?0:e+1|0;f[h+(g<<2)>>2]=e;g=g+1|0;d=f[J>>2]|0}while(g>>>0>>0)}q=f[c>>2]|0;o=q+4|0;p=q+8|0;e=0;while(1){if(d|0){i=f[w>>2]|0;j=f[v>>2]|0;k=f[r>>2]|0;m=0;do{l=i+(m<<2)|0;f[j+(f[l>>2]<<2)>>2]=0;d=f[l>>2]|0;n=(f[a>>2]|0)-(f[k+(d<<2)>>2]|0)|0;do if(n|0){g=j+(d<<2)|0;if((n|0)>=33){n=36;break b}if((n|0)<=0){n=38;break b}h=f[G>>2]|0;b=32-h|0;d=f[z>>2]|0;h=f[d>>2]<(b|0)){n=n-b|0;f[G>>2]=n;d=d+4|0;f[z>>2]=d;n=32-n|0;f[g>>2]=(f[d>>2]|0)>>>n|h>>>(n-b|0);break}f[g>>2]=h>>>(32-n|0);n=(f[G>>2]|0)+n|0;f[G>>2]=n;if((n|0)!=32)break;f[z>>2]=d+4;f[G>>2]=0}while(0);l=f[l>>2]|0;n=j+(l<<2)|0;f[n>>2]=f[n>>2]|f[(f[s>>2]|0)+(l<<2)>>2];m=m+1|0}while(m>>>0<(f[J>>2]|0)>>>0)}g=f[v>>2]|0;d=f[g>>2]|0;f[K>>2]=d;f[A>>2]=f[g+4>>2];f[C>>2]=f[g+8>>2];g=f[o>>2]|0;if(g>>>0<(f[p>>2]|0)>>>0){f[g>>2]=d;f[g+4>>2]=f[A>>2];f[g+8>>2]=f[C>>2];f[o>>2]=g+12}else ei(q,K);e=e+1|0;if(e>>>0>=t>>>0){n=15;break c}d=f[J>>2]|0}}i=1<>2]|0;d=f[s>>2]|0;b=d;h=f[(f[I>>2]|0)+(m*12|0)>>2]|0;if((g|0)!=(d|0)){g=g-d>>2;d=0;do{f[h+(d<<2)>>2]=f[b+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}s=h+(e<<2)|0;f[s>>2]=(f[s>>2]|0)+i;i=(_(t|0)|0)^31;if(i>>>0>=33){n=53;break b}if(!i){n=55;break b}h=f[F>>2]|0;g=32-h|0;b=f[y>>2]|0;d=f[b>>2]<>>(32-i|0);s=h+i|0;f[F>>2]=s;if((s|0)==32){f[y>>2]=b+4;f[F>>2]=0}}else{s=i-g|0;f[F>>2]=s;r=b+4|0;f[y>>2]=r;s=32-s|0;d=(f[r>>2]|0)>>>s|d>>>(s-g|0)}b=(t>>>1)-d|0;g=t-b|0;if((b|0)==(g|0)){j=b;k=b}else{t=f[E>>2]|0;d=f[x>>2]|0;h=(f[d>>2]&1<<31-t|0)!=0;t=t+1|0;f[E>>2]=t;if((t|0)==32){f[x>>2]=d+4;f[E>>2]=0}j=h?b:g;k=h?g:b}d=f[H>>2]|0;i=f[d+(l*12|0)>>2]|0;g=i+(e<<2)|0;f[g>>2]=(f[g>>2]|0)+1;g=f[d+(l*12|0)+4>>2]|0;h=i;if((g|0)!=(h|0)){b=f[d+(m*12|0)>>2]|0;g=g-h>>2;d=0;do{f[b+(d<<2)>>2]=f[i+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}if(j|0){b=f[O>>2]|0;h=f[N>>2]|0;t=b-h>>2;d=f[M>>2]|0;g=f[L>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(g+d|0)){uc(P);d=f[M>>2]|0;g=f[L>>2]|0;b=f[O>>2]|0;h=f[N>>2]|0}d=g+d|0;if((b|0)==(h|0))d=0;else d=(f[h+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=j;f[d+4>>2]=e;f[d+8>>2]=l;f[L>>2]=(f[L>>2]|0)+1}if(!k)n=15;else{b=f[O>>2]|0;h=f[N>>2]|0;t=b-h>>2;d=f[M>>2]|0;g=f[L>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(g+d|0)){uc(P);d=f[M>>2]|0;g=f[L>>2]|0;b=f[O>>2]|0;h=f[N>>2]|0}d=g+d|0;if((b|0)==(h|0))d=0;else d=(f[h+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=k;f[d+4>>2]=e;f[d+8>>2]=m;d=(f[L>>2]|0)+1|0;f[L>>2]=d}}while(0);if((n|0)==15){n=0;d=f[L>>2]|0}if(!d)break a}if((n|0)==27)Ga(22236,22274,223,22416);else if((n|0)==36)Ga(22431,22455,48,22558);else if((n|0)==38)Ga(22587,22455,49,22558);else if((n|0)==53)Ga(22431,22455,48,22558);else if((n|0)==55)Ga(22587,22455,49,22558)}while(0);d=f[N>>2]|0;e=f[M>>2]|0;h=d+(((e>>>0)/341|0)<<2)|0;g=f[O>>2]|0;i=g;j=d;if((g|0)==(d|0)){b=0;e=0}else{e=(f[h>>2]|0)+(((e>>>0)%341|0)*12|0)|0;b=e}d:while(1){do{if((e|0)==(b|0))break d;e=e+12|0}while((e-(f[h>>2]|0)|0)!=4092);e=h+4|0;h=e;e=f[e>>2]|0}f[L>>2]=0;e=i-j>>2;if(e>>>0>2)do{ds(f[d>>2]|0);d=(f[N>>2]|0)+4|0;f[N>>2]=d;g=f[O>>2]|0;e=g-d>>2}while(e>>>0>2);switch(e|0){case 1:{e=170;n=91;break}case 2:{e=341;n=91;break}default:{}}if((n|0)==91)f[M>>2]=e;if((d|0)!=(g|0)){do{ds(f[d>>2]|0);d=d+4|0}while((d|0)!=(g|0));d=f[N>>2]|0;e=f[O>>2]|0;if((e|0)!=(d|0))f[O>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=f[P>>2]|0;if(!d){u=Q;return}ds(d);u=Q;return}function gb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,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=u;u=u+32|0;N=O+8|0;j=O;I=a+8|0;H=f[I>>2]|0;f[j>>2]=0;Ik(N,H,j);H=a+116|0;i=f[H>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[N>>2];f[h>>2]=f[N+4>>2];f[e>>2]=f[N+8>>2];G=f[I>>2]|0;f[j>>2]=0;Ik(N,G,j);G=a+128|0;i=f[G>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[N>>2];f[h>>2]=f[N+4>>2];f[e>>2]=f[N+8>>2];f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=0;f[N+20>>2]=0;M=N+8|0;L=N+4|0;K=N+16|0;J=N+20|0;uc(N);e=f[L>>2]|0;g=(f[J>>2]|0)+(f[K>>2]|0)|0;if((f[M>>2]|0)==(e|0))e=0;else e=(f[e+(((g>>>0)/341|0)<<2)>>2]|0)+(((g>>>0)%341|0)*12|0)|0;f[e>>2]=c;f[e+4>>2]=0;f[e+8>>2]=0;e=(f[J>>2]|0)+1|0;f[J>>2]=e;a:do if(e|0){x=a+104|0;F=a+92|0;w=d+4|0;y=a+96|0;E=a+48|0;B=a+44|0;D=a+28|0;A=a+24|0;C=a+88|0;z=a+84|0;b:while(1){r=f[K>>2]|0;g=e+-1|0;o=r+g|0;s=f[L>>2]|0;q=f[s+(((o>>>0)/341|0)<<2)>>2]|0;o=(o>>>0)%341|0;t=f[q+(o*12|0)>>2]|0;h=f[q+(o*12|0)+4>>2]|0;o=f[q+(o*12|0)+8>>2]|0;f[J>>2]=g;g=f[M>>2]|0;s=g-s>>2;if((1-e-r+((s|0)==0?0:(s*341|0)+-1|0)|0)>>>0>681){ds(f[g+-4>>2]|0);g=(f[M>>2]|0)+-4|0;f[M>>2]=g}i=f[H>>2]|0;r=i+(o*12|0)|0;l=f[G>>2]|0;s=((f[I>>2]|0)+-1|0)==(h|0)?0:h+1|0;q=l+(o*12|0)|0;n=f[q>>2]|0;k=n+(s<<2)|0;e=(f[a>>2]|0)-(f[k>>2]|0)|0;m=n;c:do if(!e)if((t|0)>0){j=i+(o*12|0)+4|0;c=f[d>>2]|0;m=c+84|0;i=c+68|0;k=c+40|0;c=c+64|0;g=f[w>>2]|0;l=0;while(1){e=g;g=g+1|0;f[w>>2]=g;h=f[r>>2]|0;if(((f[j>>2]|0)-h|0)!=12){v=23;break b}if(!(b[m>>0]|0))e=f[(f[i>>2]|0)+(e<<2)>>2]|0;s=k;v=f[s>>2]|0;s=mo(v|0,f[s+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[c>>2]>>2]|0)+s|0,h|0,v|0)|0;l=l+1|0;if((l|0)>=(t|0)){v=15;break}}}else v=15;else{if(!t){v=28;break b}if(t>>>0<3){i=f[x>>2]|0;f[i>>2]=s;e=f[I>>2]|0;if(e>>>0>1){g=s;h=1;do{g=(g|0)==(e+-1|0)?0:g+1|0;f[i+(h<<2)>>2]=g;h=h+1|0;e=f[I>>2]|0}while(h>>>0>>0)}g=0;while(1){if(!e)i=f[F>>2]|0;else{k=f[x>>2]|0;l=f[F>>2]|0;m=f[q>>2]|0;i=l;o=0;do{n=k+(o<<2)|0;f[l+(f[n>>2]<<2)>>2]=0;e=f[n>>2]|0;p=(f[a>>2]|0)-(f[m+(e<<2)>>2]|0)|0;do if(p|0){h=l+(e<<2)|0;if((p|0)>=33){v=42;break b}if((p|0)<=0){v=44;break b}j=f[E>>2]|0;c=32-j|0;e=f[B>>2]|0;j=f[e>>2]<(c|0)){v=p-c|0;f[E>>2]=v;s=e+4|0;f[B>>2]=s;v=32-v|0;f[h>>2]=(f[s>>2]|0)>>>v|j>>>(v-c|0);break}f[h>>2]=j>>>(32-p|0);v=(f[E>>2]|0)+p|0;f[E>>2]=v;if((v|0)!=32)break;f[B>>2]=e+4;f[E>>2]=0}while(0);s=f[n>>2]|0;v=l+(s<<2)|0;f[v>>2]=f[v>>2]|f[(f[r>>2]|0)+(s<<2)>>2];o=o+1|0}while(o>>>0<(f[I>>2]|0)>>>0)}h=f[d>>2]|0;e=f[w>>2]|0;f[w>>2]=e+1;if(((f[y>>2]|0)-i|0)!=12){v=37;break b}if(!(b[h+84>>0]|0))e=f[(f[h+68>>2]|0)+(e<<2)>>2]|0;s=h+40|0;v=f[s>>2]|0;s=mo(v|0,f[s+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[h+64>>2]>>2]|0)+s|0,i|0,v|0)|0;g=g+1|0;if(g>>>0>=t>>>0){v=15;break c}e=f[I>>2]|0}}c=1<>2]|0;e=f[r>>2]|0;j=e;i=f[i+(p*12|0)>>2]|0;if((h|0)!=(e|0)){h=h-e>>2;e=0;do{f[i+(e<<2)>>2]=f[j+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}r=i+(s<<2)|0;f[r>>2]=(f[r>>2]|0)+c;c=(_(t|0)|0)^31;if(c>>>0>=33){v=56;break b}if(!c){v=58;break b}i=f[D>>2]|0;h=32-i|0;j=f[A>>2]|0;e=f[j>>2]<>>(32-c|0);r=i+c|0;f[D>>2]=r;if((r|0)==32){f[A>>2]=j+4;f[D>>2]=0}}else{r=c-h|0;f[D>>2]=r;q=j+4|0;f[A>>2]=q;r=32-r|0;e=(f[q>>2]|0)>>>r|e>>>(r-h|0)}j=(t>>>1)-e|0;h=t-j|0;if((j|0)==(h|0))c=j;else{t=f[C>>2]|0;e=f[z>>2]|0;i=(f[e>>2]&1<<31-t|0)!=0;t=t+1|0;f[C>>2]=t;if((t|0)==32){f[z>>2]=e+4;f[C>>2]=0}c=i?j:h;j=i?h:j}f[k>>2]=(f[k>>2]|0)+1;e=f[l+(o*12|0)+4>>2]|0;if((e|0)!=(m|0)){i=f[l+(p*12|0)>>2]|0;h=e-m>>2;e=0;do{f[i+(e<<2)>>2]=f[n+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}if(c|0){i=f[L>>2]|0;t=g-i>>2;e=f[K>>2]|0;h=f[J>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(h+e|0)){uc(N);e=f[K>>2]|0;h=f[J>>2]|0;g=f[M>>2]|0;i=f[L>>2]|0}e=h+e|0;if((g|0)==(i|0))e=0;else e=(f[i+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=c;f[e+4>>2]=s;f[e+8>>2]=o;f[J>>2]=(f[J>>2]|0)+1}if(!j)v=15;else{i=f[M>>2]|0;h=f[L>>2]|0;t=i-h>>2;e=f[K>>2]|0;g=f[J>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(g+e|0)){uc(N);e=f[K>>2]|0;g=f[J>>2]|0;i=f[M>>2]|0;h=f[L>>2]|0}e=g+e|0;if((i|0)==(h|0))e=0;else e=(f[h+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=j;f[e+4>>2]=s;f[e+8>>2]=p;e=(f[J>>2]|0)+1|0;f[J>>2]=e}}while(0);if((v|0)==15){v=0;e=f[J>>2]|0}if(!e)break a}if((v|0)==23)Ga(6524,6554,51,6673);else if((v|0)==28)Ga(22236,22274,223,22416);else if((v|0)==37)Ga(6524,6554,51,6673);else if((v|0)==42)Ga(22431,22455,48,22558);else if((v|0)==44)Ga(22587,22455,49,22558);else if((v|0)==56)Ga(22431,22455,48,22558);else if((v|0)==58)Ga(22587,22455,49,22558)}while(0);e=f[L>>2]|0;g=f[K>>2]|0;i=e+(((g>>>0)/341|0)<<2)|0;h=f[M>>2]|0;c=h;k=e;if((h|0)==(e|0)){j=0;g=0}else{g=(f[i>>2]|0)+(((g>>>0)%341|0)*12|0)|0;j=g}d:while(1){do{if((g|0)==(j|0))break d;g=g+12|0}while((g-(f[i>>2]|0)|0)!=4092);g=i+4|0;i=g;g=f[g>>2]|0}f[J>>2]=0;g=c-k>>2;if(g>>>0>2)do{ds(f[e>>2]|0);e=(f[L>>2]|0)+4|0;f[L>>2]=e;h=f[M>>2]|0;g=h-e>>2}while(g>>>0>2);switch(g|0){case 1:{g=170;v=94;break}case 2:{g=341;v=94;break}default:{}}if((v|0)==94)f[K>>2]=g;if((e|0)!=(h|0)){do{ds(f[e>>2]|0);e=e+4|0}while((e|0)!=(h|0));e=f[L>>2]|0;g=f[M>>2]|0;if((g|0)!=(e|0))f[M>>2]=g+(~((g+-4-e|0)>>>2)<<2)}e=f[N>>2]|0;if(!e){u=O;return}ds(e);u=O;return}function hb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=u;u=u+48|0;K=Q+24|0;P=Q;J=a+8|0;I=f[J>>2]|0;f[P>>2]=0;Ik(K,I,P);I=a+116|0;h=f[I>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[K>>2];f[g>>2]=f[K+4>>2];f[d>>2]=f[K+8>>2];H=f[J>>2]|0;f[P>>2]=0;Ik(K,H,P);H=a+128|0;h=f[H>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[K>>2];f[g>>2]=f[K+4>>2];f[d>>2]=f[K+8>>2];f[P>>2]=0;f[P+4>>2]=0;f[P+8>>2]=0;f[P+12>>2]=0;f[P+16>>2]=0;f[P+20>>2]=0;O=P+8|0;N=P+4|0;M=P+16|0;L=P+20|0;uc(P);d=f[N>>2]|0;e=(f[L>>2]|0)+(f[M>>2]|0)|0;if((f[O>>2]|0)==(d|0))d=0;else d=(f[d+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[d>>2]=b;f[d+4>>2]=0;f[d+8>>2]=0;d=(f[L>>2]|0)+1|0;f[L>>2]=d;a:do if(d|0){w=a+104|0;v=a+92|0;A=K+4|0;C=K+8|0;G=a+48|0;z=a+44|0;F=a+28|0;y=a+24|0;E=a+88|0;x=a+84|0;B=K+4|0;D=K+8|0;b:while(1){r=f[M>>2]|0;e=d+-1|0;n=r+e|0;s=f[N>>2]|0;p=f[s+(((n>>>0)/341|0)<<2)>>2]|0;n=(n>>>0)%341|0;t=f[p+(n*12|0)>>2]|0;g=f[p+(n*12|0)+4>>2]|0;n=f[p+(n*12|0)+8>>2]|0;f[L>>2]=e;e=f[O>>2]|0;s=e-s>>2;if((1-d-r+((s|0)==0?0:(s*341|0)+-1|0)|0)>>>0>681){ds(f[e+-4>>2]|0);e=(f[O>>2]|0)+-4|0;f[O>>2]=e}h=f[I>>2]|0;s=h+(n*12|0)|0;k=f[H>>2]|0;p=((f[J>>2]|0)+-1|0)==(g|0)?0:g+1|0;r=k+(n*12|0)|0;m=f[r>>2]|0;j=m+(p<<2)|0;d=(f[a>>2]|0)-(f[j>>2]|0)|0;l=m;c:do if(!d)if((t|0)>0){i=f[c>>2]|0;g=i+4|0;h=i+8|0;b=0;do{e=f[s>>2]|0;d=f[e>>2]|0;f[K>>2]=d;f[B>>2]=f[e+4>>2];f[D>>2]=f[e+8>>2];e=f[g>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=d;f[e+4>>2]=f[B>>2];f[e+8>>2]=f[D>>2];f[g>>2]=e+12}else ei(i,K);b=b+1|0}while((b|0)<(t|0));q=15}else q=15;else{if(!t){q=27;break b}if(t>>>0<3){h=f[w>>2]|0;f[h>>2]=p;d=f[J>>2]|0;if(d>>>0>1){e=p;g=1;do{e=(e|0)==(d+-1|0)?0:e+1|0;f[h+(g<<2)>>2]=e;g=g+1|0;d=f[J>>2]|0}while(g>>>0>>0)}q=f[c>>2]|0;o=q+4|0;p=q+8|0;e=0;while(1){if(d|0){i=f[w>>2]|0;j=f[v>>2]|0;k=f[r>>2]|0;m=0;do{l=i+(m<<2)|0;f[j+(f[l>>2]<<2)>>2]=0;d=f[l>>2]|0;n=(f[a>>2]|0)-(f[k+(d<<2)>>2]|0)|0;do if(n|0){g=j+(d<<2)|0;if((n|0)>=33){q=36;break b}if((n|0)<=0){q=38;break b}h=f[G>>2]|0;b=32-h|0;d=f[z>>2]|0;h=f[d>>2]<(b|0)){n=n-b|0;f[G>>2]=n;d=d+4|0;f[z>>2]=d;n=32-n|0;f[g>>2]=(f[d>>2]|0)>>>n|h>>>(n-b|0);break}f[g>>2]=h>>>(32-n|0);n=(f[G>>2]|0)+n|0;f[G>>2]=n;if((n|0)!=32)break;f[z>>2]=d+4;f[G>>2]=0}while(0);l=f[l>>2]|0;n=j+(l<<2)|0;f[n>>2]=f[n>>2]|f[(f[s>>2]|0)+(l<<2)>>2];m=m+1|0}while(m>>>0<(f[J>>2]|0)>>>0)}g=f[v>>2]|0;d=f[g>>2]|0;f[K>>2]=d;f[A>>2]=f[g+4>>2];f[C>>2]=f[g+8>>2];g=f[o>>2]|0;if(g>>>0<(f[p>>2]|0)>>>0){f[g>>2]=d;f[g+4>>2]=f[A>>2];f[g+8>>2]=f[C>>2];f[o>>2]=g+12}else ei(q,K);e=e+1|0;if(e>>>0>=t>>>0){q=15;break c}d=f[J>>2]|0}}i=1<>2]|0;d=f[s>>2]|0;b=d;h=f[h+(o*12|0)>>2]|0;if((g|0)!=(d|0)){g=g-d>>2;d=0;do{f[h+(d<<2)>>2]=f[b+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}s=h+(p<<2)|0;f[s>>2]=(f[s>>2]|0)+i;i=(_(t|0)|0)^31;if(i>>>0>=33){q=53;break b}if(!i){q=55;break b}h=f[F>>2]|0;g=32-h|0;b=f[y>>2]|0;d=f[b>>2]<>>(32-i|0);s=h+i|0;f[F>>2]=s;if((s|0)==32){f[y>>2]=b+4;f[F>>2]=0}}else{s=i-g|0;f[F>>2]=s;r=b+4|0;f[y>>2]=r;s=32-s|0;d=(f[r>>2]|0)>>>s|d>>>(s-g|0)}b=(t>>>1)-d|0;g=t-b|0;if((b|0)==(g|0))i=b;else{t=f[E>>2]|0;d=f[x>>2]|0;h=(f[d>>2]&1<<31-t|0)!=0;t=t+1|0;f[E>>2]=t;if((t|0)==32){f[x>>2]=d+4;f[E>>2]=0}i=h?b:g;b=h?g:b}f[j>>2]=(f[j>>2]|0)+1;d=f[k+(n*12|0)+4>>2]|0;if((d|0)!=(l|0)){h=f[k+(o*12|0)>>2]|0;g=d-l>>2;d=0;do{f[h+(d<<2)>>2]=f[m+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}if(i|0){h=f[N>>2]|0;t=e-h>>2;d=f[M>>2]|0;g=f[L>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(g+d|0)){uc(P);d=f[M>>2]|0;g=f[L>>2]|0;e=f[O>>2]|0;h=f[N>>2]|0}d=g+d|0;if((e|0)==(h|0))d=0;else d=(f[h+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=i;f[d+4>>2]=p;f[d+8>>2]=n;f[L>>2]=(f[L>>2]|0)+1}if(!b)q=15;else{h=f[O>>2]|0;g=f[N>>2]|0;t=h-g>>2;d=f[M>>2]|0;e=f[L>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(e+d|0)){uc(P);d=f[M>>2]|0;e=f[L>>2]|0;h=f[O>>2]|0;g=f[N>>2]|0}d=e+d|0;if((h|0)==(g|0))d=0;else d=(f[g+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=b;f[d+4>>2]=p;f[d+8>>2]=o;d=(f[L>>2]|0)+1|0;f[L>>2]=d}}while(0);if((q|0)==15){q=0;d=f[L>>2]|0}if(!d)break a}if((q|0)==27)Ga(22236,22274,223,22416);else if((q|0)==36)Ga(22431,22455,48,22558);else if((q|0)==38)Ga(22587,22455,49,22558);else if((q|0)==53)Ga(22431,22455,48,22558);else if((q|0)==55)Ga(22587,22455,49,22558)}while(0);d=f[N>>2]|0;e=f[M>>2]|0;h=d+(((e>>>0)/341|0)<<2)|0;g=f[O>>2]|0;i=g;j=d;if((g|0)==(d|0)){b=0;e=0}else{e=(f[h>>2]|0)+(((e>>>0)%341|0)*12|0)|0;b=e}d:while(1){do{if((e|0)==(b|0))break d;e=e+12|0}while((e-(f[h>>2]|0)|0)!=4092);e=h+4|0;h=e;e=f[e>>2]|0}f[L>>2]=0;e=i-j>>2;if(e>>>0>2)do{ds(f[d>>2]|0);d=(f[N>>2]|0)+4|0;f[N>>2]=d;g=f[O>>2]|0;e=g-d>>2}while(e>>>0>2);switch(e|0){case 1:{e=170;q=91;break}case 2:{e=341;q=91;break}default:{}}if((q|0)==91)f[M>>2]=e;if((d|0)!=(g|0)){do{ds(f[d>>2]|0);d=d+4|0}while((d|0)!=(g|0));d=f[N>>2]|0;e=f[O>>2]|0;if((e|0)!=(d|0))f[O>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=f[P>>2]|0;if(!d){u=Q;return}ds(d);u=Q;return}function ib(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;S=u;u=u+64|0;R=S+16|0;P=S;H=a+8|0;f[H>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else mj(i,e-j|0);d=R;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[P>>2]=0;if(!e){d=0;g=0}else{Xh(R,e,P);d=f[R+12>>2]|0;g=f[R+16>>2]|0}f[P>>2]=0;h=R+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else Xh(R+12|0,e-i|0,P);i=R+24|0;f[P>>2]=0;h=R+28|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(m=d+(e<<2)|0,(g|0)!=(m|0)):0)f[h>>2]=g+(~((g+-4-m|0)>>>2)<<2)}else Xh(i,e-j|0,P);i=R+36|0;f[P>>2]=0;h=R+40|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(n=d+(e<<2)|0,(g|0)!=(n|0)):0)f[h>>2]=g+(~((g+-4-n|0)>>>2)<<2)}else Xh(i,e-j|0,P);h=f[R>>2]|0;if((f[H>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;j=0;do{d=f[h+(j<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(j<<2)>>2]=g}else{G=f[m>>2]|0;k=f[i>>2]|0;f[k+(j<<2)>>2]=(d|0)<(G|0)?G:d}j=j+1|0;d=f[H>>2]|0}while((j|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[k+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[i>>2]|0)+d|0;o=18}}else{d=d-(f[i>>2]|0)|0;o=18}if((o|0)==18){o=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[H>>2]|0))}}t=f[a+48>>2]|0;v=f[a+52>>2]|0;G=no(16)|0;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;f[G+12>>2]=0;xl(P,e);B=a+56|0;h=f[B>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;E=g-d|0;F=E>>2;a:do if((E|0)>4){A=t+64|0;x=t+28|0;z=(e|0)>0;D=a+16|0;y=a+32|0;E=a+12|0;C=a+20|0;w=e<<2;i=h;h=1;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}o=f[d+(h<<2)>>2]|0;r=o+((o|0)<0?0:((o>>>0)%3|0|0)==0?2:-1)|0;q=r>>>5;s=1<<(r&31);p=(r|0)<0;g=o;n=1;d=0;b:while(1){do{if((g|0)<=-1){o=61;break b}i=f[R+(d*12|0)>>2]|0;if(((f[(f[t>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)|0)==0?(Q=f[(f[(f[A>>2]|0)+12>>2]|0)+(g<<2)>>2]|0,(Q|0)>=0):0)?(K=f[x>>2]|0,m=f[v>>2]|0,I=f[m+(f[K+(Q<<2)>>2]<<2)>>2]|0,J=Q+1|0,J=f[m+(f[K+((((J|0)%3|0|0)==0?Q+-2|0:J)<<2)>>2]<<2)>>2]|0,K=f[m+(f[K+((((Q>>>0)%3|0|0)==0?2:-1)+Q<<2)>>2]<<2)>>2]|0,(I|0)<(h|0)&(J|0)<(h|0)&(K|0)<(h|0)):0){k=X(I,e)|0;l=X(J,e)|0;m=X(K,e)|0;if(z){j=0;do{f[i+(j<<2)>>2]=(f[c+(j+m<<2)>>2]|0)+(f[c+(j+l<<2)>>2]|0)-(f[c+(j+k<<2)>>2]|0);j=j+1|0}while((j|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;o=42;break b}}do if(n){i=g+1|0;g=((i|0)%3|0|0)==0?g+-2|0:i;i=f[t>>2]|0;if(!(f[i+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[A>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;j=g+1|0;if((g|0)>=0)g=((j|0)%3|0|0)==0?g+-2|0:j}}else g=-1073741824}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;i=f[t>>2]|0;if(!(f[i+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[A>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}else g=-1073741824}while(0);if((g|0)==(o|0)){o=61;break b}}while(!(n&(g|0)<0));g=(s&f[i+(q<<2)>>2]|0)!=0;if(g|p){g=g?-1073741824:r;n=0;continue}g=f[(f[(f[A>>2]|0)+12>>2]|0)+(r<<2)>>2]|0;if((g|0)<0){n=0;continue}if(!((g>>>0)%3|0)){g=g+2|0;n=0;continue}else{g=g+-1|0;n=0;continue}}if((o|0)==61)if((d|0)>0)o=42;else{O=X(h,e)|0;o=73}if((o|0)==42){o=0;if(z){_j(f[P>>2]|0,0,w|0)|0;k=d+-1|0;m=G+(k<<2)|0;k=f[a+60+(k*12|0)>>2]|0;l=f[P>>2]|0;n=0;g=0;do{s=f[m>>2]|0;f[m>>2]=s+1;if(!(f[k+(s>>>5<<2)>>2]&1<<(s&31))){i=f[R+(n*12|0)>>2]|0;j=0;do{s=l+(j<<2)|0;f[s>>2]=(f[s>>2]|0)+(f[i+(j<<2)>>2]|0);j=j+1|0}while((j|0)!=(e|0));g=g+1|0}n=n+1|0}while((n|0)!=(d|0))}else{i=d+-1|0;k=G+(i<<2)|0;i=f[a+60+(i*12|0)>>2]|0;j=f[k>>2]|0;l=0;g=0;do{s=j;j=j+1|0;f[k>>2]=j;g=g+((f[i+(s>>>5<<2)>>2]&1<<(s&31)|0)==0&1)|0;l=l+1|0}while((l|0)!=(d|0))}i=X(h,e)|0;if(g){k=f[P>>2]|0;if(z){d=0;do{s=k+(d<<2)|0;f[s>>2]=(f[s>>2]|0)/(g|0)|0;d=d+1|0}while((d|0)!=(e|0))}m=b+(i<<2)|0;l=c+(i<<2)|0;if((f[H>>2]|0)>0){i=0;do{d=f[k+(i<<2)>>2]|0;g=f[D>>2]|0;if((d|0)>(g|0)){j=f[y>>2]|0;f[j+(i<<2)>>2]=g}else{s=f[E>>2]|0;j=f[y>>2]|0;f[j+(i<<2)>>2]=(d|0)<(s|0)?s:d}i=i+1|0;d=f[H>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[m+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;g=l+(i<<2)|0;f[g>>2]=d;if((d|0)<=(f[D>>2]|0)){if((d|0)<(f[E>>2]|0)){d=(f[C>>2]|0)+d|0;o=95}}else{d=d-(f[C>>2]|0)|0;o=95}if((o|0)==95){o=0;f[g>>2]=d}i=i+1|0}while((i|0)<(f[H>>2]|0))}}}else{O=i;o=73}}if((o|0)==73?(o=0,L=c+((X(h+-1|0,e)|0)<<2)|0,M=b+(O<<2)|0,N=c+(O<<2)|0,(f[H>>2]|0)>0):0){i=0;do{d=f[L+(i<<2)>>2]|0;g=f[D>>2]|0;if((d|0)>(g|0)){j=f[y>>2]|0;f[j+(i<<2)>>2]=g}else{s=f[E>>2]|0;j=f[y>>2]|0;f[j+(i<<2)>>2]=(d|0)<(s|0)?s:d}i=i+1|0;d=f[H>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[M+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;g=N+(i<<2)|0;f[g>>2]=d;if((d|0)<=(f[D>>2]|0)){if((d|0)<(f[E>>2]|0)){d=(f[C>>2]|0)+d|0;o=83}}else{d=d-(f[C>>2]|0)|0;o=83}if((o|0)==83){o=0;f[g>>2]=d}i=i+1|0}while((i|0)<(f[H>>2]|0))}}h=h+1|0;if((h|0)>=(F|0)){d=P;break a}i=f[B>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}}else d=P;while(0);h=f[d>>2]|0;if(h|0){g=P+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h)}ds(G);g=f[R+36>>2]|0;if(g|0){h=R+40|0;d=f[h>>2]|0;if((d|0)!=(g|0))f[h>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g)}d=f[R+24>>2]|0;if(d|0){h=R+28|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[R+12>>2]|0;if(d|0){h=R+16|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}h=f[R>>2]|0;if(!h){u=S;return 1}g=R+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h);u=S;return 1}function jb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=u;u=u+32|0;J=K+8|0;j=K;E=a+8|0;D=f[E>>2]|0;f[j>>2]=0;Ik(J,D,j);D=a+624|0;i=f[D>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[J>>2];f[h>>2]=f[J+4>>2];f[e>>2]=f[J+8>>2];C=f[E>>2]|0;f[j>>2]=0;Ik(J,C,j);C=a+636|0;i=f[C>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[J>>2];f[h>>2]=f[J+4>>2];f[e>>2]=f[J+8>>2];f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;f[J+12>>2]=0;f[J+16>>2]=0;f[J+20>>2]=0;I=J+8|0;H=J+4|0;G=J+16|0;F=J+20|0;uc(J);e=f[H>>2]|0;g=(f[F>>2]|0)+(f[G>>2]|0)|0;if((f[I>>2]|0)==(e|0))e=0;else e=(f[e+(((g>>>0)/341|0)<<2)>>2]|0)+(((g>>>0)%341|0)*12|0)|0;f[e>>2]=c;f[e+4>>2]=0;f[e+8>>2]=0;e=(f[F>>2]|0)+1|0;f[F>>2]=e;a:do if(e|0){v=a+612|0;B=a+600|0;t=d+4|0;w=a+604|0;A=a+556|0;y=a+552|0;z=a+596|0;x=a+592|0;b:while(1){q=f[G>>2]|0;g=e+-1|0;m=q+g|0;r=f[H>>2]|0;p=f[r+(((m>>>0)/341|0)<<2)>>2]|0;m=(m>>>0)%341|0;s=f[p+(m*12|0)>>2]|0;h=f[p+(m*12|0)+4>>2]|0;m=f[p+(m*12|0)+8>>2]|0;f[F>>2]=g;g=f[I>>2]|0;r=g-r>>2;if((1-e-q+((r|0)==0?0:(r*341|0)+-1|0)|0)>>>0>681){ds(f[g+-4>>2]|0);f[I>>2]=(f[I>>2]|0)+-4}i=f[D>>2]|0;r=i+(m*12|0)|0;q=(f[C>>2]|0)+(m*12|0)|0;g=Lj(a,s,q,h)|0;e=(f[a>>2]|0)-(f[(f[q>>2]|0)+(g<<2)>>2]|0)|0;c:do if(!e)if((s|0)>0){j=i+(m*12|0)+4|0;c=f[d>>2]|0;m=c+84|0;i=c+68|0;k=c+40|0;c=c+64|0;g=f[t>>2]|0;l=0;while(1){e=g;g=g+1|0;f[t>>2]=g;h=f[r>>2]|0;if(((f[j>>2]|0)-h|0)!=12){o=23;break b}if(!(b[m>>0]|0))e=f[(f[i>>2]|0)+(e<<2)>>2]|0;p=k;q=f[p>>2]|0;p=mo(q|0,f[p+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[c>>2]>>2]|0)+p|0,h|0,q|0)|0;l=l+1|0;if((l|0)>=(s|0)){o=15;break}}}else o=15;else{if(!s){o=28;break b}if(s>>>0<3){i=f[v>>2]|0;f[i>>2]=g;e=f[E>>2]|0;if(e>>>0>1){h=1;do{g=(g|0)==(e+-1|0)?0:g+1|0;f[i+(h<<2)>>2]=g;h=h+1|0;e=f[E>>2]|0}while(h>>>0>>0)}g=0;while(1){if(!e)i=f[B>>2]|0;else{k=f[v>>2]|0;l=f[B>>2]|0;m=f[q>>2]|0;i=l;o=0;do{n=k+(o<<2)|0;f[l+(f[n>>2]<<2)>>2]=0;e=f[n>>2]|0;p=(f[a>>2]|0)-(f[m+(e<<2)>>2]|0)|0;do if(p|0){h=l+(e<<2)|0;if((p|0)>=33){o=42;break b}if((p|0)<=0){o=44;break b}j=f[A>>2]|0;c=32-j|0;e=f[y>>2]|0;j=f[e>>2]<(c|0)){p=p-c|0;f[A>>2]=p;e=e+4|0;f[y>>2]=e;p=32-p|0;f[h>>2]=(f[e>>2]|0)>>>p|j>>>(p-c|0);break}f[h>>2]=j>>>(32-p|0);p=(f[A>>2]|0)+p|0;f[A>>2]=p;if((p|0)!=32)break;f[y>>2]=e+4;f[A>>2]=0}while(0);n=f[n>>2]|0;p=l+(n<<2)|0;f[p>>2]=f[p>>2]|f[(f[r>>2]|0)+(n<<2)>>2];o=o+1|0}while(o>>>0<(f[E>>2]|0)>>>0)}h=f[d>>2]|0;e=f[t>>2]|0;f[t>>2]=e+1;if(((f[w>>2]|0)-i|0)!=12){o=37;break b}if(!(b[h+84>>0]|0))e=f[(f[h+68>>2]|0)+(e<<2)>>2]|0;o=h+40|0;p=f[o>>2]|0;o=mo(p|0,f[o+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[h+64>>2]>>2]|0)+o|0,i|0,p|0)|0;g=g+1|0;if(g>>>0>=s>>>0){o=15;break c}e=f[E>>2]|0}}c=1<>2]|0;e=f[r>>2]|0;j=e;i=f[(f[D>>2]|0)+(n*12|0)>>2]|0;if((h|0)!=(e|0)){h=h-e>>2;e=0;do{f[i+(e<<2)>>2]=f[j+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}i=i+(g<<2)|0;f[i>>2]=(f[i>>2]|0)+c;i=(_(s|0)|0)^31;if(!i)e=0;else{h=0;e=0;do{e=(Cl(a+12+(h<<4)|0)|0)&1|e<<1;h=h+1|0}while((h|0)!=(i|0))}j=(s>>>1)-e|0;h=s-j|0;if((j|0)==(h|0)){k=j;l=j}else{s=f[z>>2]|0;e=f[x>>2]|0;i=(f[e>>2]&1<<31-s|0)!=0;s=s+1|0;f[z>>2]=s;if((s|0)==32){f[x>>2]=e+4;f[z>>2]=0}k=i?j:h;l=i?h:j}e=f[C>>2]|0;c=f[e+(m*12|0)>>2]|0;h=c+(g<<2)|0;f[h>>2]=(f[h>>2]|0)+1;h=f[e+(m*12|0)+4>>2]|0;i=c;if((h|0)!=(i|0)){j=f[e+(n*12|0)>>2]|0;h=h-i>>2;e=0;do{f[j+(e<<2)>>2]=f[c+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}if(k|0){j=f[I>>2]|0;i=f[H>>2]|0;s=j-i>>2;e=f[G>>2]|0;h=f[F>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(h+e|0)){uc(J);e=f[G>>2]|0;h=f[F>>2]|0;j=f[I>>2]|0;i=f[H>>2]|0}e=h+e|0;if((j|0)==(i|0))e=0;else e=(f[i+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=k;f[e+4>>2]=g;f[e+8>>2]=m;f[F>>2]=(f[F>>2]|0)+1}if(!l)o=15;else{j=f[I>>2]|0;i=f[H>>2]|0;s=j-i>>2;e=f[G>>2]|0;h=f[F>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(h+e|0)){uc(J);e=f[G>>2]|0;h=f[F>>2]|0;j=f[I>>2]|0;i=f[H>>2]|0}e=h+e|0;if((j|0)==(i|0))e=0;else e=(f[i+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=l;f[e+4>>2]=g;f[e+8>>2]=n;e=(f[F>>2]|0)+1|0;f[F>>2]=e}}while(0);if((o|0)==15){o=0;e=f[F>>2]|0}if(!e)break a}if((o|0)==23)Ga(6524,6554,51,6673);else if((o|0)==28)Ga(22236,22274,223,22416);else if((o|0)==37)Ga(6524,6554,51,6673);else if((o|0)==42)Ga(22431,22455,48,22558);else if((o|0)==44)Ga(22587,22455,49,22558)}while(0);e=f[H>>2]|0;g=f[G>>2]|0;i=e+(((g>>>0)/341|0)<<2)|0;h=f[I>>2]|0;c=h;k=e;if((h|0)==(e|0)){j=0;g=0}else{g=(f[i>>2]|0)+(((g>>>0)%341|0)*12|0)|0;j=g}d:while(1){do{if((g|0)==(j|0))break d;g=g+12|0}while((g-(f[i>>2]|0)|0)!=4092);g=i+4|0;i=g;g=f[g>>2]|0}f[F>>2]=0;g=c-k>>2;if(g>>>0>2)do{ds(f[e>>2]|0);e=(f[H>>2]|0)+4|0;f[H>>2]=e;h=f[I>>2]|0;g=h-e>>2}while(g>>>0>2);switch(g|0){case 1:{g=170;o=88;break}case 2:{g=341;o=88;break}default:{}}if((o|0)==88)f[G>>2]=g;if((e|0)!=(h|0)){do{ds(f[e>>2]|0);e=e+4|0}while((e|0)!=(h|0));e=f[H>>2]|0;g=f[I>>2]|0;if((g|0)!=(e|0))f[I>>2]=g+(~((g+-4-e|0)>>>2)<<2)}e=f[J>>2]|0;if(!e){u=K;return}ds(e);u=K;return}function kb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=u;u=u+32|0;J=K+8|0;j=K;E=a+8|0;D=f[E>>2]|0;f[j>>2]=0;Ik(J,D,j);D=a+624|0;i=f[D>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[J>>2];f[h>>2]=f[J+4>>2];f[e>>2]=f[J+8>>2];C=f[E>>2]|0;f[j>>2]=0;Ik(J,C,j);C=a+636|0;i=f[C>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[J>>2];f[h>>2]=f[J+4>>2];f[e>>2]=f[J+8>>2];f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;f[J+12>>2]=0;f[J+16>>2]=0;f[J+20>>2]=0;I=J+8|0;H=J+4|0;G=J+16|0;F=J+20|0;uc(J);e=f[H>>2]|0;g=(f[F>>2]|0)+(f[G>>2]|0)|0;if((f[I>>2]|0)==(e|0))e=0;else e=(f[e+(((g>>>0)/341|0)<<2)>>2]|0)+(((g>>>0)%341|0)*12|0)|0;f[e>>2]=c;f[e+4>>2]=0;f[e+8>>2]=0;e=(f[F>>2]|0)+1|0;f[F>>2]=e;a:do if(e|0){v=a+612|0;B=a+600|0;t=d+4|0;w=a+604|0;A=a+556|0;y=a+552|0;z=a+596|0;x=a+592|0;b:while(1){q=f[G>>2]|0;g=e+-1|0;m=q+g|0;r=f[H>>2]|0;p=f[r+(((m>>>0)/341|0)<<2)>>2]|0;m=(m>>>0)%341|0;s=f[p+(m*12|0)>>2]|0;h=f[p+(m*12|0)+4>>2]|0;m=f[p+(m*12|0)+8>>2]|0;f[F>>2]=g;g=f[I>>2]|0;r=g-r>>2;if((1-e-q+((r|0)==0?0:(r*341|0)+-1|0)|0)>>>0>681){ds(f[g+-4>>2]|0);f[I>>2]=(f[I>>2]|0)+-4}i=f[D>>2]|0;r=i+(m*12|0)|0;q=(f[C>>2]|0)+(m*12|0)|0;g=xo(a,s,q,h)|0;e=(f[a>>2]|0)-(f[(f[q>>2]|0)+(g<<2)>>2]|0)|0;c:do if(!e)if((s|0)>0){j=i+(m*12|0)+4|0;c=f[d>>2]|0;m=c+84|0;i=c+68|0;k=c+40|0;c=c+64|0;g=f[t>>2]|0;l=0;while(1){e=g;g=g+1|0;f[t>>2]=g;h=f[r>>2]|0;if(((f[j>>2]|0)-h|0)!=12){o=23;break b}if(!(b[m>>0]|0))e=f[(f[i>>2]|0)+(e<<2)>>2]|0;p=k;q=f[p>>2]|0;p=mo(q|0,f[p+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[c>>2]>>2]|0)+p|0,h|0,q|0)|0;l=l+1|0;if((l|0)>=(s|0)){o=15;break}}}else o=15;else{if(!s){o=28;break b}if(s>>>0<3){i=f[v>>2]|0;f[i>>2]=g;e=f[E>>2]|0;if(e>>>0>1){h=1;do{g=(g|0)==(e+-1|0)?0:g+1|0;f[i+(h<<2)>>2]=g;h=h+1|0;e=f[E>>2]|0}while(h>>>0>>0)}g=0;while(1){if(!e)i=f[B>>2]|0;else{k=f[v>>2]|0;l=f[B>>2]|0;m=f[q>>2]|0;i=l;o=0;do{n=k+(o<<2)|0;f[l+(f[n>>2]<<2)>>2]=0;e=f[n>>2]|0;p=(f[a>>2]|0)-(f[m+(e<<2)>>2]|0)|0;do if(p|0){h=l+(e<<2)|0;if((p|0)>=33){o=42;break b}if((p|0)<=0){o=44;break b}j=f[A>>2]|0;c=32-j|0;e=f[y>>2]|0;j=f[e>>2]<(c|0)){p=p-c|0;f[A>>2]=p;e=e+4|0;f[y>>2]=e;p=32-p|0;f[h>>2]=(f[e>>2]|0)>>>p|j>>>(p-c|0);break}f[h>>2]=j>>>(32-p|0);p=(f[A>>2]|0)+p|0;f[A>>2]=p;if((p|0)!=32)break;f[y>>2]=e+4;f[A>>2]=0}while(0);n=f[n>>2]|0;p=l+(n<<2)|0;f[p>>2]=f[p>>2]|f[(f[r>>2]|0)+(n<<2)>>2];o=o+1|0}while(o>>>0<(f[E>>2]|0)>>>0)}h=f[d>>2]|0;e=f[t>>2]|0;f[t>>2]=e+1;if(((f[w>>2]|0)-i|0)!=12){o=37;break b}if(!(b[h+84>>0]|0))e=f[(f[h+68>>2]|0)+(e<<2)>>2]|0;o=h+40|0;p=f[o>>2]|0;o=mo(p|0,f[o+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[h+64>>2]>>2]|0)+o|0,i|0,p|0)|0;g=g+1|0;if(g>>>0>=s>>>0){o=15;break c}e=f[E>>2]|0}}c=1<>2]|0;e=f[r>>2]|0;j=e;i=f[(f[D>>2]|0)+(n*12|0)>>2]|0;if((h|0)!=(e|0)){h=h-e>>2;e=0;do{f[i+(e<<2)>>2]=f[j+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}i=i+(g<<2)|0;f[i>>2]=(f[i>>2]|0)+c;i=(_(s|0)|0)^31;if(!i)e=0;else{h=0;e=0;do{e=(Cl(a+12+(h<<4)|0)|0)&1|e<<1;h=h+1|0}while((h|0)!=(i|0))}j=(s>>>1)-e|0;h=s-j|0;if((j|0)==(h|0)){k=j;l=j}else{s=f[z>>2]|0;e=f[x>>2]|0;i=(f[e>>2]&1<<31-s|0)!=0;s=s+1|0;f[z>>2]=s;if((s|0)==32){f[x>>2]=e+4;f[z>>2]=0}k=i?j:h;l=i?h:j}e=f[C>>2]|0;c=f[e+(m*12|0)>>2]|0;h=c+(g<<2)|0;f[h>>2]=(f[h>>2]|0)+1;h=f[e+(m*12|0)+4>>2]|0;i=c;if((h|0)!=(i|0)){j=f[e+(n*12|0)>>2]|0;h=h-i>>2;e=0;do{f[j+(e<<2)>>2]=f[c+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}if(k|0){j=f[I>>2]|0;i=f[H>>2]|0;s=j-i>>2;e=f[G>>2]|0;h=f[F>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(h+e|0)){uc(J);e=f[G>>2]|0;h=f[F>>2]|0;j=f[I>>2]|0;i=f[H>>2]|0}e=h+e|0;if((j|0)==(i|0))e=0;else e=(f[i+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=k;f[e+4>>2]=g;f[e+8>>2]=m;f[F>>2]=(f[F>>2]|0)+1}if(!l)o=15;else{j=f[I>>2]|0;i=f[H>>2]|0;s=j-i>>2;e=f[G>>2]|0;h=f[F>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(h+e|0)){uc(J);e=f[G>>2]|0;h=f[F>>2]|0;j=f[I>>2]|0;i=f[H>>2]|0}e=h+e|0;if((j|0)==(i|0))e=0;else e=(f[i+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=l;f[e+4>>2]=g;f[e+8>>2]=n;e=(f[F>>2]|0)+1|0;f[F>>2]=e}}while(0);if((o|0)==15){o=0;e=f[F>>2]|0}if(!e)break a}if((o|0)==23)Ga(6524,6554,51,6673);else if((o|0)==28)Ga(22236,22274,223,22416);else if((o|0)==37)Ga(6524,6554,51,6673);else if((o|0)==42)Ga(22431,22455,48,22558);else if((o|0)==44)Ga(22587,22455,49,22558)}while(0);e=f[H>>2]|0;g=f[G>>2]|0;i=e+(((g>>>0)/341|0)<<2)|0;h=f[I>>2]|0;c=h;k=e;if((h|0)==(e|0)){j=0;g=0}else{g=(f[i>>2]|0)+(((g>>>0)%341|0)*12|0)|0;j=g}d:while(1){do{if((g|0)==(j|0))break d;g=g+12|0}while((g-(f[i>>2]|0)|0)!=4092);g=i+4|0;i=g;g=f[g>>2]|0}f[F>>2]=0;g=c-k>>2;if(g>>>0>2)do{ds(f[e>>2]|0);e=(f[H>>2]|0)+4|0;f[H>>2]=e;h=f[I>>2]|0;g=h-e>>2}while(g>>>0>2);switch(g|0){case 1:{g=170;o=88;break}case 2:{g=341;o=88;break}default:{}}if((o|0)==88)f[G>>2]=g;if((e|0)!=(h|0)){do{ds(f[e>>2]|0);e=e+4|0}while((e|0)!=(h|0));e=f[H>>2]|0;g=f[I>>2]|0;if((g|0)!=(e|0))f[I>>2]=g+(~((g+-4-e|0)>>>2)<<2)}e=f[J>>2]|0;if(!e){u=K;return}ds(e);u=K;return}function lb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,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=u;u=u+48|0;I=O+24|0;N=O;H=a+8|0;G=f[H>>2]|0;f[N>>2]=0;Ik(I,G,N);G=a+624|0;h=f[G>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[I>>2];f[g>>2]=f[I+4>>2];f[d>>2]=f[I+8>>2];F=f[H>>2]|0;f[N>>2]=0;Ik(I,F,N);F=a+636|0;h=f[F>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[I>>2];f[g>>2]=f[I+4>>2];f[d>>2]=f[I+8>>2];f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=0;f[N+20>>2]=0;M=N+8|0;L=N+4|0;K=N+16|0;J=N+20|0;uc(N);d=f[L>>2]|0;e=(f[J>>2]|0)+(f[K>>2]|0)|0;if((f[M>>2]|0)==(d|0))d=0;else d=(f[d+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[d>>2]=b;f[d+4>>2]=0;f[d+8>>2]=0;d=(f[J>>2]|0)+1|0;f[J>>2]=d;a:do if(d|0){w=a+612|0;v=a+600|0;z=I+4|0;B=I+8|0;E=a+556|0;y=a+552|0;D=a+596|0;x=a+592|0;A=I+4|0;C=I+8|0;b:while(1){r=f[K>>2]|0;e=d+-1|0;l=r+e|0;s=f[L>>2]|0;q=f[s+(((l>>>0)/341|0)<<2)>>2]|0;l=(l>>>0)%341|0;t=f[q+(l*12|0)>>2]|0;g=f[q+(l*12|0)+4>>2]|0;l=f[q+(l*12|0)+8>>2]|0;f[J>>2]=e;e=f[M>>2]|0;s=e-s>>2;if((1-d-r+((s|0)==0?0:(s*341|0)+-1|0)|0)>>>0>681){ds(f[e+-4>>2]|0);f[M>>2]=(f[M>>2]|0)+-4}h=f[G>>2]|0;s=h+(l*12|0)|0;r=(f[F>>2]|0)+(l*12|0)|0;e=Lj(a,t,r,g)|0;d=(f[a>>2]|0)-(f[(f[r>>2]|0)+(e<<2)>>2]|0)|0;c:do if(!d)if((t|0)>0){i=f[c>>2]|0;g=i+4|0;h=i+8|0;b=0;do{e=f[s>>2]|0;d=f[e>>2]|0;f[I>>2]=d;f[A>>2]=f[e+4>>2];f[C>>2]=f[e+8>>2];e=f[g>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=d;f[e+4>>2]=f[A>>2];f[e+8>>2]=f[C>>2];f[g>>2]=e+12}else ei(i,I);b=b+1|0}while((b|0)<(t|0));n=15}else n=15;else{if(!t){n=27;break b}if(t>>>0<3){h=f[w>>2]|0;f[h>>2]=e;d=f[H>>2]|0;if(d>>>0>1){g=1;do{e=(e|0)==(d+-1|0)?0:e+1|0;f[h+(g<<2)>>2]=e;g=g+1|0;d=f[H>>2]|0}while(g>>>0>>0)}q=f[c>>2]|0;o=q+4|0;p=q+8|0;e=0;while(1){if(d|0){i=f[w>>2]|0;j=f[v>>2]|0;k=f[r>>2]|0;m=0;do{l=i+(m<<2)|0;f[j+(f[l>>2]<<2)>>2]=0;d=f[l>>2]|0;n=(f[a>>2]|0)-(f[k+(d<<2)>>2]|0)|0;do if(n|0){g=j+(d<<2)|0;if((n|0)>=33){n=36;break b}if((n|0)<=0){n=38;break b}h=f[E>>2]|0;b=32-h|0;d=f[y>>2]|0;h=f[d>>2]<(b|0)){n=n-b|0;f[E>>2]=n;d=d+4|0;f[y>>2]=d;n=32-n|0;f[g>>2]=(f[d>>2]|0)>>>n|h>>>(n-b|0);break}f[g>>2]=h>>>(32-n|0);n=(f[E>>2]|0)+n|0;f[E>>2]=n;if((n|0)!=32)break;f[y>>2]=d+4;f[E>>2]=0}while(0);l=f[l>>2]|0;n=j+(l<<2)|0;f[n>>2]=f[n>>2]|f[(f[s>>2]|0)+(l<<2)>>2];m=m+1|0}while(m>>>0<(f[H>>2]|0)>>>0)}g=f[v>>2]|0;d=f[g>>2]|0;f[I>>2]=d;f[z>>2]=f[g+4>>2];f[B>>2]=f[g+8>>2];g=f[o>>2]|0;if(g>>>0<(f[p>>2]|0)>>>0){f[g>>2]=d;f[g+4>>2]=f[z>>2];f[g+8>>2]=f[B>>2];f[o>>2]=g+12}else ei(q,I);e=e+1|0;if(e>>>0>=t>>>0){n=15;break c}d=f[H>>2]|0}}i=1<>2]|0;d=f[s>>2]|0;b=d;h=f[(f[G>>2]|0)+(m*12|0)>>2]|0;if((g|0)!=(d|0)){g=g-d>>2;d=0;do{f[h+(d<<2)>>2]=f[b+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}h=h+(e<<2)|0;f[h>>2]=(f[h>>2]|0)+i;h=(_(t|0)|0)^31;if(!h)d=0;else{g=0;d=0;do{d=(Cl(a+12+(g<<4)|0)|0)&1|d<<1;g=g+1|0}while((g|0)!=(h|0))}b=(t>>>1)-d|0;g=t-b|0;if((b|0)==(g|0)){j=b;k=b}else{t=f[D>>2]|0;d=f[x>>2]|0;h=(f[d>>2]&1<<31-t|0)!=0;t=t+1|0;f[D>>2]=t;if((t|0)==32){f[x>>2]=d+4;f[D>>2]=0}j=h?b:g;k=h?g:b}d=f[F>>2]|0;i=f[d+(l*12|0)>>2]|0;g=i+(e<<2)|0;f[g>>2]=(f[g>>2]|0)+1;g=f[d+(l*12|0)+4>>2]|0;h=i;if((g|0)!=(h|0)){b=f[d+(m*12|0)>>2]|0;g=g-h>>2;d=0;do{f[b+(d<<2)>>2]=f[i+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}if(j|0){b=f[M>>2]|0;g=f[L>>2]|0;t=b-g>>2;d=f[K>>2]|0;h=f[J>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(h+d|0)){uc(N);d=f[K>>2]|0;h=f[J>>2]|0;b=f[M>>2]|0;g=f[L>>2]|0}d=h+d|0;if((b|0)==(g|0))d=0;else d=(f[g+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=j;f[d+4>>2]=e;f[d+8>>2]=l;f[J>>2]=(f[J>>2]|0)+1}if(!k)n=15;else{b=f[M>>2]|0;h=f[L>>2]|0;t=b-h>>2;d=f[K>>2]|0;g=f[J>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(g+d|0)){uc(N);d=f[K>>2]|0;g=f[J>>2]|0;b=f[M>>2]|0;h=f[L>>2]|0}d=g+d|0;if((b|0)==(h|0))d=0;else d=(f[h+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=k;f[d+4>>2]=e;f[d+8>>2]=m;d=(f[J>>2]|0)+1|0;f[J>>2]=d}}while(0);if((n|0)==15){n=0;d=f[J>>2]|0}if(!d)break a}if((n|0)==27)Ga(22236,22274,223,22416);else if((n|0)==36)Ga(22431,22455,48,22558);else if((n|0)==38)Ga(22587,22455,49,22558)}while(0);d=f[L>>2]|0;e=f[K>>2]|0;h=d+(((e>>>0)/341|0)<<2)|0;g=f[M>>2]|0;i=g;j=d;if((g|0)==(d|0)){b=0;e=0}else{e=(f[h>>2]|0)+(((e>>>0)%341|0)*12|0)|0;b=e}d:while(1){do{if((e|0)==(b|0))break d;e=e+12|0}while((e-(f[h>>2]|0)|0)!=4092);e=h+4|0;h=e;e=f[e>>2]|0}f[J>>2]=0;e=i-j>>2;if(e>>>0>2)do{ds(f[d>>2]|0);d=(f[L>>2]|0)+4|0;f[L>>2]=d;g=f[M>>2]|0;e=g-d>>2}while(e>>>0>2);switch(e|0){case 1:{e=170;n=85;break}case 2:{e=341;n=85;break}default:{}}if((n|0)==85)f[K>>2]=e;if((d|0)!=(g|0)){do{ds(f[d>>2]|0);d=d+4|0}while((d|0)!=(g|0));d=f[L>>2]|0;e=f[M>>2]|0;if((e|0)!=(d|0))f[M>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=f[N>>2]|0;if(!d){u=O;return}ds(d);u=O;return}function mb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,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=u;u=u+48|0;I=O+24|0;N=O;H=a+8|0;G=f[H>>2]|0;f[N>>2]=0;Ik(I,G,N);G=a+624|0;h=f[G>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[I>>2];f[g>>2]=f[I+4>>2];f[d>>2]=f[I+8>>2];F=f[H>>2]|0;f[N>>2]=0;Ik(I,F,N);F=a+636|0;h=f[F>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[I>>2];f[g>>2]=f[I+4>>2];f[d>>2]=f[I+8>>2];f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=0;f[N+20>>2]=0;M=N+8|0;L=N+4|0;K=N+16|0;J=N+20|0;uc(N);d=f[L>>2]|0;e=(f[J>>2]|0)+(f[K>>2]|0)|0;if((f[M>>2]|0)==(d|0))d=0;else d=(f[d+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[d>>2]=b;f[d+4>>2]=0;f[d+8>>2]=0;d=(f[J>>2]|0)+1|0;f[J>>2]=d;a:do if(d|0){w=a+612|0;v=a+600|0;z=I+4|0;B=I+8|0;E=a+556|0;y=a+552|0;D=a+596|0;x=a+592|0;A=I+4|0;C=I+8|0;b:while(1){r=f[K>>2]|0;e=d+-1|0;l=r+e|0;s=f[L>>2]|0;q=f[s+(((l>>>0)/341|0)<<2)>>2]|0;l=(l>>>0)%341|0;t=f[q+(l*12|0)>>2]|0;g=f[q+(l*12|0)+4>>2]|0;l=f[q+(l*12|0)+8>>2]|0;f[J>>2]=e;e=f[M>>2]|0;s=e-s>>2;if((1-d-r+((s|0)==0?0:(s*341|0)+-1|0)|0)>>>0>681){ds(f[e+-4>>2]|0);f[M>>2]=(f[M>>2]|0)+-4}h=f[G>>2]|0;s=h+(l*12|0)|0;r=(f[F>>2]|0)+(l*12|0)|0;e=xo(a,t,r,g)|0;d=(f[a>>2]|0)-(f[(f[r>>2]|0)+(e<<2)>>2]|0)|0;c:do if(!d)if((t|0)>0){i=f[c>>2]|0;g=i+4|0;h=i+8|0;b=0;do{e=f[s>>2]|0;d=f[e>>2]|0;f[I>>2]=d;f[A>>2]=f[e+4>>2];f[C>>2]=f[e+8>>2];e=f[g>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=d;f[e+4>>2]=f[A>>2];f[e+8>>2]=f[C>>2];f[g>>2]=e+12}else ei(i,I);b=b+1|0}while((b|0)<(t|0));n=15}else n=15;else{if(!t){n=27;break b}if(t>>>0<3){h=f[w>>2]|0;f[h>>2]=e;d=f[H>>2]|0;if(d>>>0>1){g=1;do{e=(e|0)==(d+-1|0)?0:e+1|0;f[h+(g<<2)>>2]=e;g=g+1|0;d=f[H>>2]|0}while(g>>>0>>0)}q=f[c>>2]|0;o=q+4|0;p=q+8|0;e=0;while(1){if(d|0){i=f[w>>2]|0;j=f[v>>2]|0;k=f[r>>2]|0;m=0;do{l=i+(m<<2)|0;f[j+(f[l>>2]<<2)>>2]=0;d=f[l>>2]|0;n=(f[a>>2]|0)-(f[k+(d<<2)>>2]|0)|0;do if(n|0){g=j+(d<<2)|0;if((n|0)>=33){n=36;break b}if((n|0)<=0){n=38;break b}h=f[E>>2]|0;b=32-h|0;d=f[y>>2]|0;h=f[d>>2]<(b|0)){n=n-b|0;f[E>>2]=n;d=d+4|0;f[y>>2]=d;n=32-n|0;f[g>>2]=(f[d>>2]|0)>>>n|h>>>(n-b|0);break}f[g>>2]=h>>>(32-n|0);n=(f[E>>2]|0)+n|0;f[E>>2]=n;if((n|0)!=32)break;f[y>>2]=d+4;f[E>>2]=0}while(0);l=f[l>>2]|0;n=j+(l<<2)|0;f[n>>2]=f[n>>2]|f[(f[s>>2]|0)+(l<<2)>>2];m=m+1|0}while(m>>>0<(f[H>>2]|0)>>>0)}g=f[v>>2]|0;d=f[g>>2]|0;f[I>>2]=d;f[z>>2]=f[g+4>>2];f[B>>2]=f[g+8>>2];g=f[o>>2]|0;if(g>>>0<(f[p>>2]|0)>>>0){f[g>>2]=d;f[g+4>>2]=f[z>>2];f[g+8>>2]=f[B>>2];f[o>>2]=g+12}else ei(q,I);e=e+1|0;if(e>>>0>=t>>>0){n=15;break c}d=f[H>>2]|0}}i=1<>2]|0;d=f[s>>2]|0;b=d;h=f[(f[G>>2]|0)+(m*12|0)>>2]|0;if((g|0)!=(d|0)){g=g-d>>2;d=0;do{f[h+(d<<2)>>2]=f[b+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}h=h+(e<<2)|0;f[h>>2]=(f[h>>2]|0)+i;h=(_(t|0)|0)^31;if(!h)d=0;else{g=0;d=0;do{d=(Cl(a+12+(g<<4)|0)|0)&1|d<<1;g=g+1|0}while((g|0)!=(h|0))}b=(t>>>1)-d|0;g=t-b|0;if((b|0)==(g|0)){j=b;k=b}else{t=f[D>>2]|0;d=f[x>>2]|0;h=(f[d>>2]&1<<31-t|0)!=0;t=t+1|0;f[D>>2]=t;if((t|0)==32){f[x>>2]=d+4;f[D>>2]=0}j=h?b:g;k=h?g:b}d=f[F>>2]|0;i=f[d+(l*12|0)>>2]|0;g=i+(e<<2)|0;f[g>>2]=(f[g>>2]|0)+1;g=f[d+(l*12|0)+4>>2]|0;h=i;if((g|0)!=(h|0)){b=f[d+(m*12|0)>>2]|0;g=g-h>>2;d=0;do{f[b+(d<<2)>>2]=f[i+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}if(j|0){b=f[M>>2]|0;g=f[L>>2]|0;t=b-g>>2;d=f[K>>2]|0;h=f[J>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(h+d|0)){uc(N);d=f[K>>2]|0;h=f[J>>2]|0;b=f[M>>2]|0;g=f[L>>2]|0}d=h+d|0;if((b|0)==(g|0))d=0;else d=(f[g+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=j;f[d+4>>2]=e;f[d+8>>2]=l;f[J>>2]=(f[J>>2]|0)+1}if(!k)n=15;else{b=f[M>>2]|0;h=f[L>>2]|0;t=b-h>>2;d=f[K>>2]|0;g=f[J>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(g+d|0)){uc(N);d=f[K>>2]|0;g=f[J>>2]|0;b=f[M>>2]|0;h=f[L>>2]|0}d=g+d|0;if((b|0)==(h|0))d=0;else d=(f[h+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=k;f[d+4>>2]=e;f[d+8>>2]=m;d=(f[J>>2]|0)+1|0;f[J>>2]=d}}while(0);if((n|0)==15){n=0;d=f[J>>2]|0}if(!d)break a}if((n|0)==27)Ga(22236,22274,223,22416);else if((n|0)==36)Ga(22431,22455,48,22558);else if((n|0)==38)Ga(22587,22455,49,22558)}while(0);d=f[L>>2]|0;e=f[K>>2]|0;h=d+(((e>>>0)/341|0)<<2)|0;g=f[M>>2]|0;i=g;j=d;if((g|0)==(d|0)){b=0;e=0}else{e=(f[h>>2]|0)+(((e>>>0)%341|0)*12|0)|0;b=e}d:while(1){do{if((e|0)==(b|0))break d;e=e+12|0}while((e-(f[h>>2]|0)|0)!=4092);e=h+4|0;h=e;e=f[e>>2]|0}f[J>>2]=0;e=i-j>>2;if(e>>>0>2)do{ds(f[d>>2]|0);d=(f[L>>2]|0)+4|0;f[L>>2]=d;g=f[M>>2]|0;e=g-d>>2}while(e>>>0>2);switch(e|0){case 1:{e=170;n=85;break}case 2:{e=341;n=85;break}default:{}}if((n|0)==85)f[K>>2]=e;if((d|0)!=(g|0)){do{ds(f[d>>2]|0);d=d+4|0}while((d|0)!=(g|0));d=f[L>>2]|0;e=f[M>>2]|0;if((e|0)!=(d|0))f[M>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=f[N>>2]|0;if(!d){u=O;return}ds(d);u=O;return}function nb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=u;u=u+32|0;J=K+8|0;j=K;E=a+8|0;D=f[E>>2]|0;f[j>>2]=0;Ik(J,D,j);D=a+624|0;i=f[D>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[J>>2];f[h>>2]=f[J+4>>2];f[e>>2]=f[J+8>>2];C=f[E>>2]|0;f[j>>2]=0;Ik(J,C,j);C=a+636|0;i=f[C>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[J>>2];f[h>>2]=f[J+4>>2];f[e>>2]=f[J+8>>2];f[J>>2]=0;f[J+4>>2]=0;f[J+8>>2]=0;f[J+12>>2]=0;f[J+16>>2]=0;f[J+20>>2]=0;I=J+8|0;H=J+4|0;G=J+16|0;F=J+20|0;uc(J);e=f[H>>2]|0;g=(f[F>>2]|0)+(f[G>>2]|0)|0;if((f[I>>2]|0)==(e|0))e=0;else e=(f[e+(((g>>>0)/341|0)<<2)>>2]|0)+(((g>>>0)%341|0)*12|0)|0;f[e>>2]=c;f[e+4>>2]=0;f[e+8>>2]=0;e=(f[F>>2]|0)+1|0;f[F>>2]=e;a:do if(e|0){v=a+612|0;B=a+600|0;t=d+4|0;w=a+604|0;A=a+556|0;y=a+552|0;z=a+596|0;x=a+592|0;b:while(1){q=f[G>>2]|0;g=e+-1|0;m=q+g|0;r=f[H>>2]|0;p=f[r+(((m>>>0)/341|0)<<2)>>2]|0;m=(m>>>0)%341|0;s=f[p+(m*12|0)>>2]|0;h=f[p+(m*12|0)+4>>2]|0;m=f[p+(m*12|0)+8>>2]|0;f[F>>2]=g;g=f[I>>2]|0;r=g-r>>2;if((1-e-q+((r|0)==0?0:(r*341|0)+-1|0)|0)>>>0>681){ds(f[g+-4>>2]|0);f[I>>2]=(f[I>>2]|0)+-4}i=f[D>>2]|0;r=i+(m*12|0)|0;g=((f[E>>2]|0)+-1|0)==(h|0)?0:h+1|0;q=(f[C>>2]|0)+(m*12|0)|0;e=(f[a>>2]|0)-(f[(f[q>>2]|0)+(g<<2)>>2]|0)|0;c:do if(!e)if((s|0)>0){j=i+(m*12|0)+4|0;c=f[d>>2]|0;m=c+84|0;i=c+68|0;k=c+40|0;c=c+64|0;g=f[t>>2]|0;l=0;while(1){e=g;g=g+1|0;f[t>>2]=g;h=f[r>>2]|0;if(((f[j>>2]|0)-h|0)!=12){o=23;break b}if(!(b[m>>0]|0))e=f[(f[i>>2]|0)+(e<<2)>>2]|0;p=k;q=f[p>>2]|0;p=mo(q|0,f[p+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[c>>2]>>2]|0)+p|0,h|0,q|0)|0;l=l+1|0;if((l|0)>=(s|0)){o=15;break}}}else o=15;else{if(!s){o=28;break b}if(s>>>0<3){i=f[v>>2]|0;f[i>>2]=g;e=f[E>>2]|0;if(e>>>0>1){h=1;do{g=(g|0)==(e+-1|0)?0:g+1|0;f[i+(h<<2)>>2]=g;h=h+1|0;e=f[E>>2]|0}while(h>>>0>>0)}g=0;while(1){if(!e)i=f[B>>2]|0;else{k=f[v>>2]|0;l=f[B>>2]|0;m=f[q>>2]|0;i=l;o=0;do{n=k+(o<<2)|0;f[l+(f[n>>2]<<2)>>2]=0;e=f[n>>2]|0;p=(f[a>>2]|0)-(f[m+(e<<2)>>2]|0)|0;do if(p|0){h=l+(e<<2)|0;if((p|0)>=33){o=42;break b}if((p|0)<=0){o=44;break b}j=f[A>>2]|0;c=32-j|0;e=f[y>>2]|0;j=f[e>>2]<(c|0)){p=p-c|0;f[A>>2]=p;e=e+4|0;f[y>>2]=e;p=32-p|0;f[h>>2]=(f[e>>2]|0)>>>p|j>>>(p-c|0);break}f[h>>2]=j>>>(32-p|0);p=(f[A>>2]|0)+p|0;f[A>>2]=p;if((p|0)!=32)break;f[y>>2]=e+4;f[A>>2]=0}while(0);n=f[n>>2]|0;p=l+(n<<2)|0;f[p>>2]=f[p>>2]|f[(f[r>>2]|0)+(n<<2)>>2];o=o+1|0}while(o>>>0<(f[E>>2]|0)>>>0)}h=f[d>>2]|0;e=f[t>>2]|0;f[t>>2]=e+1;if(((f[w>>2]|0)-i|0)!=12){o=37;break b}if(!(b[h+84>>0]|0))e=f[(f[h+68>>2]|0)+(e<<2)>>2]|0;o=h+40|0;p=f[o>>2]|0;o=mo(p|0,f[o+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[h+64>>2]>>2]|0)+o|0,i|0,p|0)|0;g=g+1|0;if(g>>>0>=s>>>0){o=15;break c}e=f[E>>2]|0}}c=1<>2]|0;e=f[r>>2]|0;j=e;i=f[i+(n*12|0)>>2]|0;if((h|0)!=(e|0)){h=h-e>>2;e=0;do{f[i+(e<<2)>>2]=f[j+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}i=i+(g<<2)|0;f[i>>2]=(f[i>>2]|0)+c;i=(_(s|0)|0)^31;if(!i)e=0;else{h=0;e=0;do{e=(Cl(a+12+(h<<4)|0)|0)&1|e<<1;h=h+1|0}while((h|0)!=(i|0))}j=(s>>>1)-e|0;h=s-j|0;if((j|0)==(h|0)){k=j;l=j}else{s=f[z>>2]|0;e=f[x>>2]|0;i=(f[e>>2]&1<<31-s|0)!=0;s=s+1|0;f[z>>2]=s;if((s|0)==32){f[x>>2]=e+4;f[z>>2]=0}k=i?j:h;l=i?h:j}e=f[C>>2]|0;c=f[e+(m*12|0)>>2]|0;h=c+(g<<2)|0;f[h>>2]=(f[h>>2]|0)+1;h=f[e+(m*12|0)+4>>2]|0;i=c;if((h|0)!=(i|0)){j=f[e+(n*12|0)>>2]|0;h=h-i>>2;e=0;do{f[j+(e<<2)>>2]=f[c+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}if(k|0){j=f[I>>2]|0;i=f[H>>2]|0;s=j-i>>2;e=f[G>>2]|0;h=f[F>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(h+e|0)){uc(J);e=f[G>>2]|0;h=f[F>>2]|0;j=f[I>>2]|0;i=f[H>>2]|0}e=h+e|0;if((j|0)==(i|0))e=0;else e=(f[i+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=k;f[e+4>>2]=g;f[e+8>>2]=m;f[F>>2]=(f[F>>2]|0)+1}if(!l)o=15;else{j=f[I>>2]|0;i=f[H>>2]|0;s=j-i>>2;e=f[G>>2]|0;h=f[F>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(h+e|0)){uc(J);e=f[G>>2]|0;h=f[F>>2]|0;j=f[I>>2]|0;i=f[H>>2]|0}e=h+e|0;if((j|0)==(i|0))e=0;else e=(f[i+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=l;f[e+4>>2]=g;f[e+8>>2]=n;e=(f[F>>2]|0)+1|0;f[F>>2]=e}}while(0);if((o|0)==15){o=0;e=f[F>>2]|0}if(!e)break a}if((o|0)==23)Ga(6524,6554,51,6673);else if((o|0)==28)Ga(22236,22274,223,22416);else if((o|0)==37)Ga(6524,6554,51,6673);else if((o|0)==42)Ga(22431,22455,48,22558);else if((o|0)==44)Ga(22587,22455,49,22558)}while(0);e=f[H>>2]|0;g=f[G>>2]|0;i=e+(((g>>>0)/341|0)<<2)|0;h=f[I>>2]|0;c=h;k=e;if((h|0)==(e|0)){j=0;g=0}else{g=(f[i>>2]|0)+(((g>>>0)%341|0)*12|0)|0;j=g}d:while(1){do{if((g|0)==(j|0))break d;g=g+12|0}while((g-(f[i>>2]|0)|0)!=4092);g=i+4|0;i=g;g=f[g>>2]|0}f[F>>2]=0;g=c-k>>2;if(g>>>0>2)do{ds(f[e>>2]|0);e=(f[H>>2]|0)+4|0;f[H>>2]=e;h=f[I>>2]|0;g=h-e>>2}while(g>>>0>2);switch(g|0){case 1:{g=170;o=88;break}case 2:{g=341;o=88;break}default:{}}if((o|0)==88)f[G>>2]=g;if((e|0)!=(h|0)){do{ds(f[e>>2]|0);e=e+4|0}while((e|0)!=(h|0));e=f[H>>2]|0;g=f[I>>2]|0;if((g|0)!=(e|0))f[I>>2]=g+(~((g+-4-e|0)>>>2)<<2)}e=f[J>>2]|0;if(!e){u=K;return}ds(e);u=K;return}function ob(a){a=a|0;var c=0,d=0,e=0,g=La,h=La,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,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=La;T=u;u=u+64|0;S=T+28|0;Q=T+16|0;O=T+4|0;L=T;R=a;M=a+80|0;c=f[M>>2]|0;f[S>>2]=0;f[S+4>>2]=0;f[S+8>>2]=0;f[S+12>>2]=0;f[S+16>>2]=R;H=S+20|0;n[H>>2]=$(1.0);f[S+24>>2]=R;yi(S,c);c=f[M>>2]|0;f[Q>>2]=0;R=Q+4|0;f[R>>2]=0;f[Q+8>>2]=0;do if(c|0)if(c>>>0>1073741823){Pq(Q);T=Ia(4)|0;Hr(T);sa(T|0,1488,137)}else{G=c<<2;F=no(G)|0;f[Q>>2]=F;P=F+(c<<2)|0;f[Q+8>>2]=P;_j(F|0,0,G|0)|0;f[R>>2]=P;break}while(0);f[O>>2]=0;P=O+4|0;f[P>>2]=0;f[O+8>>2]=0;f[L>>2]=0;a:do if((c|0)>0){F=S+16|0;C=S+4|0;E=S+12|0;B=S+8|0;D=O+8|0;G=S+24|0;c=0;z=0;b:while(1){w=f[F>>2]|0;k=f[w+8>>2]|0;w=(f[w+12>>2]|0)-k|0;v=(w|0)>0;if(v){i=k;l=w>>>2;d=0;j=0;do{e=f[i+(j<<2)>>2]|0;if(!(b[e+84>>0]|0))e=f[(f[e+68>>2]|0)+(c<<2)>>2]|0;else e=c;d=e<<2^d<<1;j=j+1|0}while((j|0)<(l|0))}else d=0;x=f[C>>2]|0;y=(x|0)==0;c:do if(!y){q=x+-1|0;e=(q&x|0)==0;if(e)t=q&d;else t=(d>>>0)%(x>>>0)|0;d=f[(f[S>>2]|0)+(t<<2)>>2]|0;if((d|0)!=0?(K=f[d>>2]|0,(K|0)!=0):0){r=f[G>>2]|0;s=r+8|0;r=r+12|0;d:do if(e){d=K;while(1){if((f[d+4>>2]&q|0)!=(t|0)){A=45;break c}p=f[d+8>>2]|0;e=f[s>>2]|0;i=(f[r>>2]|0)-e|0;if((i|0)<=0)break d;o=i>>>2;m=0;while(1){i=f[e+(m<<2)>>2]|0;j=(b[i+84>>0]|0)==0;if(j)l=f[(f[i+68>>2]|0)+(p<<2)>>2]|0;else l=p;if((o|0)<=(m|0)){A=39;break b}if(j)i=f[(f[i+68>>2]|0)+(c<<2)>>2]|0;else i=c;m=m+1|0;if((l|0)!=(i|0))break;if((m|0)>=(o|0)){A=43;break d}}d=f[d>>2]|0;if(!d){A=45;break c}}}else{d=K;while(1){if((((f[d+4>>2]|0)>>>0)%(x>>>0)|0|0)!=(t|0)){A=45;break c}p=f[d+8>>2]|0;e=f[s>>2]|0;i=(f[r>>2]|0)-e|0;if((i|0)<=0)break d;o=i>>>2;m=0;while(1){i=f[e+(m<<2)>>2]|0;j=(b[i+84>>0]|0)==0;if(j)l=f[(f[i+68>>2]|0)+(p<<2)>>2]|0;else l=p;if((o|0)<=(m|0)){A=39;break b}if(j)i=f[(f[i+68>>2]|0)+(c<<2)>>2]|0;else i=c;m=m+1|0;if((l|0)!=(i|0))break;if((m|0)>=(o|0)){A=43;break d}}d=f[d>>2]|0;if(!d){A=45;break c}}}while(0);if((A|0)==43){A=0;if(!d){A=45;break}}f[(f[Q>>2]|0)+(c<<2)>>2]=f[d+12>>2];e=z}else A=45}else A=45;while(0);do if((A|0)==45){A=0;if(v){j=w>>>2;d=0;i=0;do{e=f[k+(i<<2)>>2]|0;if(!(b[e+84>>0]|0))e=f[(f[e+68>>2]|0)+(c<<2)>>2]|0;else e=c;d=e<<2^d<<1;i=i+1|0}while((i|0)<(j|0));t=d}else t=0;e:do if(!y){p=x+-1|0;e=(p&x|0)==0;if(e)s=p&t;else s=(t>>>0)%(x>>>0)|0;d=f[(f[S>>2]|0)+(s<<2)>>2]|0;if((d|0)!=0?(J=f[d>>2]|0,(J|0)!=0):0){q=f[G>>2]|0;r=q+8|0;q=q+12|0;if(e){m=J;while(1){if((f[m+4>>2]&p|0)!=(s|0)){d=s;A=80;break e}o=f[m+8>>2]|0;d=f[r>>2]|0;e=(f[q>>2]|0)-d|0;if((e|0)<=0)break e;l=e>>>2;k=0;while(1){e=f[d+(k<<2)>>2]|0;i=(b[e+84>>0]|0)==0;if(i)j=f[(f[e+68>>2]|0)+(o<<2)>>2]|0;else j=o;if((l|0)<=(k|0)){A=76;break b}if(i)e=f[(f[e+68>>2]|0)+(c<<2)>>2]|0;else e=c;k=k+1|0;if((j|0)!=(e|0))break;if((k|0)>=(l|0))break e}m=f[m>>2]|0;if(!m){d=s;A=80;break}}}else{m=J;while(1){if((((f[m+4>>2]|0)>>>0)%(x>>>0)|0|0)!=(s|0)){d=s;A=80;break e}o=f[m+8>>2]|0;d=f[r>>2]|0;e=(f[q>>2]|0)-d|0;if((e|0)<=0)break e;l=e>>>2;k=0;while(1){e=f[d+(k<<2)>>2]|0;i=(b[e+84>>0]|0)==0;if(i)j=f[(f[e+68>>2]|0)+(o<<2)>>2]|0;else j=o;if((l|0)<=(k|0)){A=76;break b}if(i)e=f[(f[e+68>>2]|0)+(c<<2)>>2]|0;else e=c;k=k+1|0;if((j|0)!=(e|0))break;if((k|0)>=(l|0))break e}m=f[m>>2]|0;if(!m){d=s;A=80;break}}}}else{d=s;A=80}}else{d=0;A=80}while(0);if((A|0)==80){A=0;i=no(16)|0;f[i+8>>2]=c;f[i+12>>2]=z;f[i+4>>2]=t;f[i>>2]=0;h=$(((f[E>>2]|0)+1|0)>>>0);U=$(x>>>0);g=$(n[H>>2]);do if(y|h>$(U*g)){c=(x>>>0<3|(x+-1&x|0)!=0)&1|x<<1;d=~~$(W($(h/g)))>>>0;yi(S,c>>>0>>0?d:c);c=f[C>>2]|0;d=c+-1|0;if(!(d&c)){e=c;c=d&t;break}else{e=c;c=(t>>>0)%(c>>>0)|0;break}}else{e=x;c=d}while(0);d=(f[S>>2]|0)+(c<<2)|0;c=f[d>>2]|0;if(!c){f[i>>2]=f[B>>2];f[B>>2]=i;f[d>>2]=B;c=f[i>>2]|0;if(c|0){c=f[c+4>>2]|0;d=e+-1|0;if(!(d&e))c=c&d;else c=(c>>>0)%(e>>>0)|0;c=(f[S>>2]|0)+(c<<2)|0;A=91}}else{f[i>>2]=f[c>>2];A=91}if((A|0)==91){A=0;f[c>>2]=i}f[E>>2]=(f[E>>2]|0)+1;c=f[L>>2]|0}e=z+1|0;f[(f[Q>>2]|0)+(c<<2)>>2]=z;c=f[P>>2]|0;if((c|0)==(f[D>>2]|0)){Bj(O,L);break}else{f[c>>2]=f[L>>2];f[P>>2]=c+4;break}}while(0);c=(f[L>>2]|0)+1|0;f[L>>2]=c;d=f[M>>2]|0;if((c|0)>=(d|0)){I=d;N=e;break a}else z=e}if((A|0)==39)Ga(22727,22625,67,22717);else if((A|0)==76)Ga(22727,22625,67,22717)}else{I=0;N=0}while(0);if((N|0)!=(I|0)){Ta[f[(f[a>>2]|0)+24>>2]&15](a,Q,O);f[M>>2]=N}c=f[O>>2]|0;if(c|0){d=f[P>>2]|0;if((d|0)!=(c|0))f[P>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}c=f[Q>>2]|0;if(c|0){d=f[R>>2]|0;if((d|0)!=(c|0))f[R>>2]=d+(~((d+-4-c|0)>>>2)<<2);ds(c)}c=f[S+8>>2]|0;if(c|0)do{R=c;c=f[c>>2]|0;ds(R)}while((c|0)!=0);c=f[S>>2]|0;f[S>>2]=0;if(!c){u=T;return}ds(c);u=T;return}function pb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,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=u;u=u+48|0;I=O+24|0;N=O;H=a+8|0;G=f[H>>2]|0;f[N>>2]=0;Ik(I,G,N);G=a+624|0;h=f[G>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[I>>2];f[g>>2]=f[I+4>>2];f[d>>2]=f[I+8>>2];F=f[H>>2]|0;f[N>>2]=0;Ik(I,F,N);F=a+636|0;h=f[F>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[I>>2];f[g>>2]=f[I+4>>2];f[d>>2]=f[I+8>>2];f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=0;f[N+20>>2]=0;M=N+8|0;L=N+4|0;K=N+16|0;J=N+20|0;uc(N);d=f[L>>2]|0;e=(f[J>>2]|0)+(f[K>>2]|0)|0;if((f[M>>2]|0)==(d|0))d=0;else d=(f[d+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[d>>2]=b;f[d+4>>2]=0;f[d+8>>2]=0;d=(f[J>>2]|0)+1|0;f[J>>2]=d;a:do if(d|0){w=a+612|0;v=a+600|0;z=I+4|0;B=I+8|0;E=a+556|0;y=a+552|0;D=a+596|0;x=a+592|0;A=I+4|0;C=I+8|0;b:while(1){r=f[K>>2]|0;e=d+-1|0;l=r+e|0;s=f[L>>2]|0;q=f[s+(((l>>>0)/341|0)<<2)>>2]|0;l=(l>>>0)%341|0;t=f[q+(l*12|0)>>2]|0;g=f[q+(l*12|0)+4>>2]|0;l=f[q+(l*12|0)+8>>2]|0;f[J>>2]=e;e=f[M>>2]|0;s=e-s>>2;if((1-d-r+((s|0)==0?0:(s*341|0)+-1|0)|0)>>>0>681){ds(f[e+-4>>2]|0);f[M>>2]=(f[M>>2]|0)+-4}h=f[G>>2]|0;s=h+(l*12|0)|0;e=((f[H>>2]|0)+-1|0)==(g|0)?0:g+1|0;r=(f[F>>2]|0)+(l*12|0)|0;d=(f[a>>2]|0)-(f[(f[r>>2]|0)+(e<<2)>>2]|0)|0;c:do if(!d)if((t|0)>0){i=f[c>>2]|0;g=i+4|0;h=i+8|0;b=0;do{e=f[s>>2]|0;d=f[e>>2]|0;f[I>>2]=d;f[A>>2]=f[e+4>>2];f[C>>2]=f[e+8>>2];e=f[g>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=d;f[e+4>>2]=f[A>>2];f[e+8>>2]=f[C>>2];f[g>>2]=e+12}else ei(i,I);b=b+1|0}while((b|0)<(t|0));n=15}else n=15;else{if(!t){n=27;break b}if(t>>>0<3){h=f[w>>2]|0;f[h>>2]=e;d=f[H>>2]|0;if(d>>>0>1){g=1;do{e=(e|0)==(d+-1|0)?0:e+1|0;f[h+(g<<2)>>2]=e;g=g+1|0;d=f[H>>2]|0}while(g>>>0>>0)}q=f[c>>2]|0;o=q+4|0;p=q+8|0;e=0;while(1){if(d|0){i=f[w>>2]|0;j=f[v>>2]|0;k=f[r>>2]|0;m=0;do{l=i+(m<<2)|0;f[j+(f[l>>2]<<2)>>2]=0;d=f[l>>2]|0;n=(f[a>>2]|0)-(f[k+(d<<2)>>2]|0)|0;do if(n|0){g=j+(d<<2)|0;if((n|0)>=33){n=36;break b}if((n|0)<=0){n=38;break b}h=f[E>>2]|0;b=32-h|0;d=f[y>>2]|0;h=f[d>>2]<(b|0)){n=n-b|0;f[E>>2]=n;d=d+4|0;f[y>>2]=d;n=32-n|0;f[g>>2]=(f[d>>2]|0)>>>n|h>>>(n-b|0);break}f[g>>2]=h>>>(32-n|0);n=(f[E>>2]|0)+n|0;f[E>>2]=n;if((n|0)!=32)break;f[y>>2]=d+4;f[E>>2]=0}while(0);l=f[l>>2]|0;n=j+(l<<2)|0;f[n>>2]=f[n>>2]|f[(f[s>>2]|0)+(l<<2)>>2];m=m+1|0}while(m>>>0<(f[H>>2]|0)>>>0)}g=f[v>>2]|0;d=f[g>>2]|0;f[I>>2]=d;f[z>>2]=f[g+4>>2];f[B>>2]=f[g+8>>2];g=f[o>>2]|0;if(g>>>0<(f[p>>2]|0)>>>0){f[g>>2]=d;f[g+4>>2]=f[z>>2];f[g+8>>2]=f[B>>2];f[o>>2]=g+12}else ei(q,I);e=e+1|0;if(e>>>0>=t>>>0){n=15;break c}d=f[H>>2]|0}}i=1<>2]|0;d=f[s>>2]|0;b=d;h=f[h+(m*12|0)>>2]|0;if((g|0)!=(d|0)){g=g-d>>2;d=0;do{f[h+(d<<2)>>2]=f[b+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}h=h+(e<<2)|0;f[h>>2]=(f[h>>2]|0)+i;h=(_(t|0)|0)^31;if(!h)d=0;else{g=0;d=0;do{d=(Cl(a+12+(g<<4)|0)|0)&1|d<<1;g=g+1|0}while((g|0)!=(h|0))}b=(t>>>1)-d|0;g=t-b|0;if((b|0)==(g|0)){j=b;k=b}else{t=f[D>>2]|0;d=f[x>>2]|0;h=(f[d>>2]&1<<31-t|0)!=0;t=t+1|0;f[D>>2]=t;if((t|0)==32){f[x>>2]=d+4;f[D>>2]=0}j=h?b:g;k=h?g:b}d=f[F>>2]|0;i=f[d+(l*12|0)>>2]|0;g=i+(e<<2)|0;f[g>>2]=(f[g>>2]|0)+1;g=f[d+(l*12|0)+4>>2]|0;h=i;if((g|0)!=(h|0)){b=f[d+(m*12|0)>>2]|0;g=g-h>>2;d=0;do{f[b+(d<<2)>>2]=f[i+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}if(j|0){b=f[M>>2]|0;g=f[L>>2]|0;t=b-g>>2;d=f[K>>2]|0;h=f[J>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(h+d|0)){uc(N);d=f[K>>2]|0;h=f[J>>2]|0;b=f[M>>2]|0;g=f[L>>2]|0}d=h+d|0;if((b|0)==(g|0))d=0;else d=(f[g+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=j;f[d+4>>2]=e;f[d+8>>2]=l;f[J>>2]=(f[J>>2]|0)+1}if(!k)n=15;else{b=f[M>>2]|0;h=f[L>>2]|0;t=b-h>>2;d=f[K>>2]|0;g=f[J>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(g+d|0)){uc(N);d=f[K>>2]|0;g=f[J>>2]|0;b=f[M>>2]|0;h=f[L>>2]|0}d=g+d|0;if((b|0)==(h|0))d=0;else d=(f[h+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=k;f[d+4>>2]=e;f[d+8>>2]=m;d=(f[J>>2]|0)+1|0;f[J>>2]=d}}while(0);if((n|0)==15){n=0;d=f[J>>2]|0}if(!d)break a}if((n|0)==27)Ga(22236,22274,223,22416);else if((n|0)==36)Ga(22431,22455,48,22558);else if((n|0)==38)Ga(22587,22455,49,22558)}while(0);d=f[L>>2]|0;e=f[K>>2]|0;h=d+(((e>>>0)/341|0)<<2)|0;g=f[M>>2]|0;i=g;j=d;if((g|0)==(d|0)){b=0;e=0}else{e=(f[h>>2]|0)+(((e>>>0)%341|0)*12|0)|0;b=e}d:while(1){do{if((e|0)==(b|0))break d;e=e+12|0}while((e-(f[h>>2]|0)|0)!=4092);e=h+4|0;h=e;e=f[e>>2]|0}f[J>>2]=0;e=i-j>>2;if(e>>>0>2)do{ds(f[d>>2]|0);d=(f[L>>2]|0)+4|0;f[L>>2]=d;g=f[M>>2]|0;e=g-d>>2}while(e>>>0>2);switch(e|0){case 1:{e=170;n=85;break}case 2:{e=341;n=85;break}default:{}}if((n|0)==85)f[K>>2]=e;if((d|0)!=(g|0)){do{ds(f[d>>2]|0);d=d+4|0}while((d|0)!=(g|0));d=f[L>>2]|0;e=f[M>>2]|0;if((e|0)!=(d|0))f[M>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=f[N>>2]|0;if(!d){u=O;return}ds(d);u=O;return}function qb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;P=u;u=u+64|0;O=P+16|0;N=P;I=a+8|0;f[I>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else mj(i,e-j|0);d=O;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[N>>2]=0;if(!e){d=0;g=0}else{Xh(O,e,N);d=f[O+12>>2]|0;g=f[O+16>>2]|0}f[N>>2]=0;h=O+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else Xh(O+12|0,e-i|0,N);i=O+24|0;f[N>>2]=0;h=O+28|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(m=d+(e<<2)|0,(g|0)!=(m|0)):0)f[h>>2]=g+(~((g+-4-m|0)>>>2)<<2)}else Xh(i,e-j|0,N);i=O+36|0;f[N>>2]=0;h=O+40|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(n=d+(e<<2)|0,(g|0)!=(n|0)):0)f[h>>2]=g+(~((g+-4-n|0)>>>2)<<2)}else Xh(i,e-j|0,N);h=f[O>>2]|0;if((f[I>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;j=0;do{d=f[h+(j<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(j<<2)>>2]=g}else{H=f[m>>2]|0;k=f[i>>2]|0;f[k+(j<<2)>>2]=(d|0)<(H|0)?H:d}j=j+1|0;d=f[I>>2]|0}while((j|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[k+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[i>>2]|0)+d|0;o=18}}else{d=d-(f[i>>2]|0)|0;o=18}if((o|0)==18){o=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[I>>2]|0))}}w=f[a+48>>2]|0;x=f[a+52>>2]|0;H=no(16)|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;f[H+12>>2]=0;xl(N,e);C=a+56|0;h=f[C>>2]|0;g=f[h+4>>2]|0;d=f[h>>2]|0;F=g-d|0;G=F>>2;a:do if((F|0)>4){z=w+12|0;B=(e|0)>0;E=a+16|0;A=a+32|0;F=a+12|0;D=a+20|0;y=e<<2;i=h;h=1;while(1){if(g-d>>2>>>0<=h>>>0){Oq(i);d=f[i>>2]|0}s=f[d+(h<<2)>>2]|0;v=(((s>>>0)%3|0|0)==0?2:-1)+s|0;t=(s|v|0)<0;r=(s|0)<0?s:v;g=s;q=1;d=0;b:while(1){do{if((g|0)<=-1){o=62;break b}o=f[O+(d*12|0)>>2]|0;p=f[z>>2]|0;j=f[p+(g<<2)>>2]|0;if((j|0)>=0){k=f[w>>2]|0;l=f[x>>2]|0;n=f[l+(f[k+(j<<2)>>2]<<2)>>2]|0;i=j+1|0;i=((i|0)%3|0|0)==0?j+-2|0:i;if((i|0)<0)i=-1073741824;else i=f[k+(i<<2)>>2]|0;m=f[l+(i<<2)>>2]|0;i=(((j>>>0)%3|0|0)==0?2:-1)+j|0;if((i|0)<0)i=-1073741824;else i=f[k+(i<<2)>>2]|0;i=f[l+(i<<2)>>2]|0;if((n|0)<(h|0)&(m|0)<(h|0)&(i|0)<(h|0)){l=X(n,e)|0;k=X(m,e)|0;j=X(i,e)|0;if(B){i=0;do{f[o+(i<<2)>>2]=(f[c+(i+j<<2)>>2]|0)+(f[c+(i+k<<2)>>2]|0)-(f[c+(i+l<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;o=45;break b}}}do if(q){o=g+1|0;g=((o|0)%3|0|0)==0?g+-2|0:o;if((g|0)>=0){g=f[p+(g<<2)>>2]|0;i=g+1|0;if((g|0)>=0)g=((i|0)%3|0|0)==0?g+-2|0:i}}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((g|0)>=0){g=f[p+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}while(0);if((g|0)==(s|0)){o=62;break b}}while(!(q&(g|0)<0));if(t){g=r;q=0;continue}g=f[p+(v<<2)>>2]|0;if((g|0)<0){q=0;continue}if(!((g>>>0)%3|0)){g=g+2|0;q=0;continue}else{g=g+-1|0;q=0;continue}}if((o|0)==62)if((d|0)>0)o=45;else{M=X(h,e)|0;o=74}if((o|0)==45){o=0;if(B){_j(f[N>>2]|0,0,y|0)|0;k=d+-1|0;m=H+(k<<2)|0;k=f[a+60+(k*12|0)>>2]|0;l=f[N>>2]|0;n=0;g=0;do{v=f[m>>2]|0;f[m>>2]=v+1;if(!(f[k+(v>>>5<<2)>>2]&1<<(v&31))){i=f[O+(n*12|0)>>2]|0;j=0;do{v=l+(j<<2)|0;f[v>>2]=(f[v>>2]|0)+(f[i+(j<<2)>>2]|0);j=j+1|0}while((j|0)!=(e|0));g=g+1|0}n=n+1|0}while((n|0)!=(d|0))}else{i=d+-1|0;k=H+(i<<2)|0;i=f[a+60+(i*12|0)>>2]|0;j=f[k>>2]|0;l=0;g=0;do{v=j;j=j+1|0;f[k>>2]=j;g=g+((f[i+(v>>>5<<2)>>2]&1<<(v&31)|0)==0&1)|0;l=l+1|0}while((l|0)!=(d|0))}i=X(h,e)|0;if(g){k=f[N>>2]|0;if(B){d=0;do{v=k+(d<<2)|0;f[v>>2]=(f[v>>2]|0)/(g|0)|0;d=d+1|0}while((d|0)!=(e|0))}m=b+(i<<2)|0;l=c+(i<<2)|0;if((f[I>>2]|0)>0){i=0;do{d=f[k+(i<<2)>>2]|0;g=f[E>>2]|0;if((d|0)>(g|0)){j=f[A>>2]|0;f[j+(i<<2)>>2]=g}else{v=f[F>>2]|0;j=f[A>>2]|0;f[j+(i<<2)>>2]=(d|0)<(v|0)?v:d}i=i+1|0;d=f[I>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[m+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;g=l+(i<<2)|0;f[g>>2]=d;if((d|0)<=(f[E>>2]|0)){if((d|0)<(f[F>>2]|0)){d=(f[D>>2]|0)+d|0;o=96}}else{d=d-(f[D>>2]|0)|0;o=96}if((o|0)==96){o=0;f[g>>2]=d}i=i+1|0}while((i|0)<(f[I>>2]|0))}}}else{M=i;o=74}}if((o|0)==74?(o=0,J=c+((X(h+-1|0,e)|0)<<2)|0,K=b+(M<<2)|0,L=c+(M<<2)|0,(f[I>>2]|0)>0):0){i=0;do{d=f[J+(i<<2)>>2]|0;g=f[E>>2]|0;if((d|0)>(g|0)){j=f[A>>2]|0;f[j+(i<<2)>>2]=g}else{v=f[F>>2]|0;j=f[A>>2]|0;f[j+(i<<2)>>2]=(d|0)<(v|0)?v:d}i=i+1|0;d=f[I>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[K+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;g=L+(i<<2)|0;f[g>>2]=d;if((d|0)<=(f[E>>2]|0)){if((d|0)<(f[F>>2]|0)){d=(f[D>>2]|0)+d|0;o=84}}else{d=d-(f[D>>2]|0)|0;o=84}if((o|0)==84){o=0;f[g>>2]=d}i=i+1|0}while((i|0)<(f[I>>2]|0))}}h=h+1|0;if((h|0)>=(G|0)){d=N;break a}i=f[C>>2]|0;d=f[i>>2]|0;g=f[i+4>>2]|0}}else d=N;while(0);h=f[d>>2]|0;if(h|0){g=N+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h)}ds(H);g=f[O+36>>2]|0;if(g|0){h=O+40|0;d=f[h>>2]|0;if((d|0)!=(g|0))f[h>>2]=d+(~((d+-4-g|0)>>>2)<<2);ds(g)}d=f[O+24>>2]|0;if(d|0){h=O+28|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}d=f[O+12>>2]|0;if(d|0){h=O+16|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);ds(d)}h=f[O>>2]|0;if(!h){u=P;return 1}g=O+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);ds(h);u=P;return 1}function rb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,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=u;u=u+32|0;M=N+8|0;G=N;F=a+8|0;E=f[F>>2]|0;f[G>>2]=0;Ik(M,E,G);E=a+112|0;i=f[E>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[M>>2];f[h>>2]=f[M+4>>2];f[e>>2]=f[M+8>>2];D=f[F>>2]|0;f[G>>2]=0;Ik(M,D,G);D=a+124|0;i=f[D>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[M>>2];f[h>>2]=f[M+4>>2];f[e>>2]=f[M+8>>2];f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;f[M+12>>2]=0;f[M+16>>2]=0;f[M+20>>2]=0;K=M+8|0;J=M+4|0;I=M+16|0;H=M+20|0;uc(M);e=f[J>>2]|0;g=(f[H>>2]|0)+(f[I>>2]|0)|0;if((f[K>>2]|0)==(e|0))e=0;else e=(f[e+(((g>>>0)/341|0)<<2)>>2]|0)+(((g>>>0)%341|0)*12|0)|0;f[e>>2]=c;f[e+4>>2]=0;f[e+8>>2]=0;e=(f[H>>2]|0)+1|0;f[H>>2]=e;a:do if(e|0){v=a+100|0;C=a+88|0;t=d+4|0;w=a+92|0;A=a+44|0;y=a+40|0;B=a+12|0;z=a+84|0;x=a+80|0;b:while(1){q=f[I>>2]|0;g=e+-1|0;l=q+g|0;r=f[J>>2]|0;p=f[r+(((l>>>0)/341|0)<<2)>>2]|0;l=(l>>>0)%341|0;s=f[p+(l*12|0)>>2]|0;h=f[p+(l*12|0)+4>>2]|0;l=f[p+(l*12|0)+8>>2]|0;f[H>>2]=g;g=f[K>>2]|0;r=g-r>>2;if((1-e-q+((r|0)==0?0:(r*341|0)+-1|0)|0)>>>0>681){ds(f[g+-4>>2]|0);f[K>>2]=(f[K>>2]|0)+-4}g=f[E>>2]|0;r=g+(l*12|0)|0;q=(f[D>>2]|0)+(l*12|0)|0;n=xo(a,s,q,h)|0;e=(f[a>>2]|0)-(f[(f[q>>2]|0)+(n<<2)>>2]|0)|0;c:do if(!e){if((s|0)>0){c=g+(l*12|0)+4|0;j=f[d>>2]|0;m=j+84|0;i=j+68|0;k=j+40|0;j=j+64|0;g=f[t>>2]|0;l=0;do{e=g;g=g+1|0;f[t>>2]=g;h=f[r>>2]|0;if(((f[c>>2]|0)-h|0)!=12){L=22;break b}if(!(b[m>>0]|0))e=f[(f[i>>2]|0)+(e<<2)>>2]|0;p=k;q=f[p>>2]|0;p=mo(q|0,f[p+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[j>>2]>>2]|0)+p|0,h|0,q|0)|0;l=l+1|0}while((l|0)<(s|0))}}else{if(!s){L=27;break b}if(s>>>0<3){i=f[v>>2]|0;f[i>>2]=n;e=f[F>>2]|0;if(e>>>0>1){g=n;h=1;do{g=(g|0)==(e+-1|0)?0:g+1|0;f[i+(h<<2)>>2]=g;h=h+1|0;e=f[F>>2]|0}while(h>>>0>>0)}g=0;while(1){if(!e)i=f[C>>2]|0;else{k=f[v>>2]|0;l=f[C>>2]|0;m=f[q>>2]|0;i=l;o=0;do{n=k+(o<<2)|0;f[l+(f[n>>2]<<2)>>2]=0;e=f[n>>2]|0;p=(f[a>>2]|0)-(f[m+(e<<2)>>2]|0)|0;do if(p|0){h=l+(e<<2)|0;if((p|0)>=33){L=41;break b}if((p|0)<=0){L=43;break b}c=f[A>>2]|0;j=32-c|0;e=f[y>>2]|0;c=f[e>>2]<(j|0)){p=p-j|0;f[A>>2]=p;e=e+4|0;f[y>>2]=e;p=32-p|0;f[h>>2]=(f[e>>2]|0)>>>p|c>>>(p-j|0);break}f[h>>2]=c>>>(32-p|0);p=(f[A>>2]|0)+p|0;f[A>>2]=p;if((p|0)!=32)break;f[y>>2]=e+4;f[A>>2]=0}while(0);n=f[n>>2]|0;p=l+(n<<2)|0;f[p>>2]=f[p>>2]|f[(f[r>>2]|0)+(n<<2)>>2];o=o+1|0}while(o>>>0<(f[F>>2]|0)>>>0)}h=f[d>>2]|0;e=f[t>>2]|0;f[t>>2]=e+1;if(((f[w>>2]|0)-i|0)!=12){L=36;break b}if(!(b[h+84>>0]|0))e=f[(f[h+68>>2]|0)+(e<<2)>>2]|0;o=h+40|0;p=f[o>>2]|0;o=mo(p|0,f[o+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[h+64>>2]>>2]|0)+o|0,i|0,p|0)|0;g=g+1|0;if(g>>>0>=s>>>0)break c;e=f[F>>2]|0}}c=1<>2]|0;e=f[r>>2]|0;i=e;h=f[(f[E>>2]|0)+(m*12|0)>>2]|0;if((g|0)!=(e|0)){g=g-e>>2;e=0;do{f[h+(e<<2)>>2]=f[i+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}i=h+(n<<2)|0;f[i>>2]=(f[i>>2]|0)+c;i=(_(s|0)|0)^31;f[G>>2]=0;dk(B,i,G);i=(s>>>1)-(f[G>>2]|0)|0;g=s-i|0;if((i|0)==(g|0)){j=i;k=i}else{s=f[z>>2]|0;e=f[x>>2]|0;h=(f[e>>2]&1<<31-s|0)!=0;s=s+1|0;f[z>>2]=s;if((s|0)==32){f[x>>2]=e+4;f[z>>2]=0}j=h?i:g;k=h?g:i}e=f[D>>2]|0;c=f[e+(l*12|0)>>2]|0;g=c+(n<<2)|0;f[g>>2]=(f[g>>2]|0)+1;g=f[e+(l*12|0)+4>>2]|0;h=c;if((g|0)!=(h|0)){i=f[e+(m*12|0)>>2]|0;g=g-h>>2;e=0;do{f[i+(e<<2)>>2]=f[c+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}if(j|0){i=f[K>>2]|0;h=f[J>>2]|0;s=i-h>>2;e=f[I>>2]|0;g=f[H>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(g+e|0)){uc(M);e=f[I>>2]|0;g=f[H>>2]|0;i=f[K>>2]|0;h=f[J>>2]|0}e=g+e|0;if((i|0)==(h|0))e=0;else e=(f[h+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=j;f[e+4>>2]=n;f[e+8>>2]=l;f[H>>2]=(f[H>>2]|0)+1}if(k|0){i=f[K>>2]|0;h=f[J>>2]|0;s=i-h>>2;e=f[I>>2]|0;g=f[H>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(g+e|0)){uc(M);e=f[I>>2]|0;g=f[H>>2]|0;i=f[K>>2]|0;h=f[J>>2]|0}e=g+e|0;if((i|0)==(h|0))e=0;else e=(f[h+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=k;f[e+4>>2]=n;f[e+8>>2]=m;f[H>>2]=(f[H>>2]|0)+1}}while(0);e=f[H>>2]|0;if(!e)break a}if((L|0)==22)Ga(6524,6554,51,6673);else if((L|0)==27)Ga(22236,22274,223,22416);else if((L|0)==36)Ga(6524,6554,51,6673);else if((L|0)==41)Ga(22431,22455,48,22558);else if((L|0)==43)Ga(22587,22455,49,22558)}while(0);e=f[J>>2]|0;g=f[I>>2]|0;i=e+(((g>>>0)/341|0)<<2)|0;h=f[K>>2]|0;j=h;k=e;if((h|0)==(e|0)){c=0;g=0}else{g=(f[i>>2]|0)+(((g>>>0)%341|0)*12|0)|0;c=g}d:while(1){do{if((g|0)==(c|0))break d;g=g+12|0}while((g-(f[i>>2]|0)|0)!=4092);g=i+4|0;i=g;g=f[g>>2]|0}f[H>>2]=0;g=j-k>>2;if(g>>>0>2)do{ds(f[e>>2]|0);e=(f[J>>2]|0)+4|0;f[J>>2]=e;h=f[K>>2]|0;g=h-e>>2}while(g>>>0>2);switch(g|0){case 1:{g=170;L=86;break}case 2:{g=341;L=86;break}default:{}}if((L|0)==86)f[I>>2]=g;if((e|0)!=(h|0)){do{ds(f[e>>2]|0);e=e+4|0}while((e|0)!=(h|0));e=f[J>>2]|0;g=f[K>>2]|0;if((g|0)!=(e|0))f[K>>2]=g+(~((g+-4-e|0)>>>2)<<2)}e=f[M>>2]|0;if(!e){u=N;return}ds(e);u=N;return}function sb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,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=u;u=u+32|0;M=N+8|0;G=N;F=a+8|0;E=f[F>>2]|0;f[G>>2]=0;Ik(M,E,G);E=a+112|0;i=f[E>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[M>>2];f[h>>2]=f[M+4>>2];f[e>>2]=f[M+8>>2];D=f[F>>2]|0;f[G>>2]=0;Ik(M,D,G);D=a+124|0;i=f[D>>2]|0;e=f[i>>2]|0;h=i+4|0;if(!e)e=i+8|0;else{g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);ds(e);e=i+8|0;f[e>>2]=0;f[h>>2]=0;f[i>>2]=0}f[i>>2]=f[M>>2];f[h>>2]=f[M+4>>2];f[e>>2]=f[M+8>>2];f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;f[M+12>>2]=0;f[M+16>>2]=0;f[M+20>>2]=0;K=M+8|0;J=M+4|0;I=M+16|0;H=M+20|0;uc(M);e=f[J>>2]|0;g=(f[H>>2]|0)+(f[I>>2]|0)|0;if((f[K>>2]|0)==(e|0))e=0;else e=(f[e+(((g>>>0)/341|0)<<2)>>2]|0)+(((g>>>0)%341|0)*12|0)|0;f[e>>2]=c;f[e+4>>2]=0;f[e+8>>2]=0;e=(f[H>>2]|0)+1|0;f[H>>2]=e;a:do if(e|0){v=a+100|0;C=a+88|0;t=d+4|0;w=a+92|0;A=a+44|0;y=a+40|0;B=a+12|0;z=a+84|0;x=a+80|0;b:while(1){q=f[I>>2]|0;g=e+-1|0;l=q+g|0;r=f[J>>2]|0;p=f[r+(((l>>>0)/341|0)<<2)>>2]|0;l=(l>>>0)%341|0;s=f[p+(l*12|0)>>2]|0;h=f[p+(l*12|0)+4>>2]|0;l=f[p+(l*12|0)+8>>2]|0;f[H>>2]=g;g=f[K>>2]|0;r=g-r>>2;if((1-e-q+((r|0)==0?0:(r*341|0)+-1|0)|0)>>>0>681){ds(f[g+-4>>2]|0);f[K>>2]=(f[K>>2]|0)+-4}c=f[E>>2]|0;r=c+(l*12|0)|0;n=((f[F>>2]|0)+-1|0)==(h|0)?0:h+1|0;q=(f[D>>2]|0)+(l*12|0)|0;e=(f[a>>2]|0)-(f[(f[q>>2]|0)+(n<<2)>>2]|0)|0;c:do if(!e){if((s|0)>0){c=c+(l*12|0)+4|0;j=f[d>>2]|0;m=j+84|0;i=j+68|0;k=j+40|0;j=j+64|0;g=f[t>>2]|0;l=0;do{e=g;g=g+1|0;f[t>>2]=g;h=f[r>>2]|0;if(((f[c>>2]|0)-h|0)!=12){L=22;break b}if(!(b[m>>0]|0))e=f[(f[i>>2]|0)+(e<<2)>>2]|0;p=k;q=f[p>>2]|0;p=mo(q|0,f[p+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[j>>2]>>2]|0)+p|0,h|0,q|0)|0;l=l+1|0}while((l|0)<(s|0))}}else{if(!s){L=27;break b}if(s>>>0<3){i=f[v>>2]|0;f[i>>2]=n;e=f[F>>2]|0;if(e>>>0>1){g=n;h=1;do{g=(g|0)==(e+-1|0)?0:g+1|0;f[i+(h<<2)>>2]=g;h=h+1|0;e=f[F>>2]|0}while(h>>>0>>0)}g=0;while(1){if(!e)i=f[C>>2]|0;else{k=f[v>>2]|0;l=f[C>>2]|0;m=f[q>>2]|0;i=l;o=0;do{n=k+(o<<2)|0;f[l+(f[n>>2]<<2)>>2]=0;e=f[n>>2]|0;p=(f[a>>2]|0)-(f[m+(e<<2)>>2]|0)|0;do if(p|0){h=l+(e<<2)|0;if((p|0)>=33){L=41;break b}if((p|0)<=0){L=43;break b}c=f[A>>2]|0;j=32-c|0;e=f[y>>2]|0;c=f[e>>2]<(j|0)){p=p-j|0;f[A>>2]=p;e=e+4|0;f[y>>2]=e;p=32-p|0;f[h>>2]=(f[e>>2]|0)>>>p|c>>>(p-j|0);break}f[h>>2]=c>>>(32-p|0);p=(f[A>>2]|0)+p|0;f[A>>2]=p;if((p|0)!=32)break;f[y>>2]=e+4;f[A>>2]=0}while(0);n=f[n>>2]|0;p=l+(n<<2)|0;f[p>>2]=f[p>>2]|f[(f[r>>2]|0)+(n<<2)>>2];o=o+1|0}while(o>>>0<(f[F>>2]|0)>>>0)}h=f[d>>2]|0;e=f[t>>2]|0;f[t>>2]=e+1;if(((f[w>>2]|0)-i|0)!=12){L=36;break b}if(!(b[h+84>>0]|0))e=f[(f[h+68>>2]|0)+(e<<2)>>2]|0;o=h+40|0;p=f[o>>2]|0;o=mo(p|0,f[o+4>>2]|0,e|0,((e|0)<0)<<31>>31|0)|0;Fh((f[f[h+64>>2]>>2]|0)+o|0,i|0,p|0)|0;g=g+1|0;if(g>>>0>=s>>>0)break c;e=f[F>>2]|0}}j=1<>2]|0;e=f[r>>2]|0;i=e;h=f[c+(m*12|0)>>2]|0;if((g|0)!=(e|0)){g=g-e>>2;e=0;do{f[h+(e<<2)>>2]=f[i+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}i=h+(n<<2)|0;f[i>>2]=(f[i>>2]|0)+j;i=(_(s|0)|0)^31;f[G>>2]=0;dk(B,i,G);i=(s>>>1)-(f[G>>2]|0)|0;g=s-i|0;if((i|0)==(g|0)){j=i;k=i}else{s=f[z>>2]|0;e=f[x>>2]|0;h=(f[e>>2]&1<<31-s|0)!=0;s=s+1|0;f[z>>2]=s;if((s|0)==32){f[x>>2]=e+4;f[z>>2]=0}j=h?i:g;k=h?g:i}e=f[D>>2]|0;c=f[e+(l*12|0)>>2]|0;g=c+(n<<2)|0;f[g>>2]=(f[g>>2]|0)+1;g=f[e+(l*12|0)+4>>2]|0;h=c;if((g|0)!=(h|0)){i=f[e+(m*12|0)>>2]|0;g=g-h>>2;e=0;do{f[i+(e<<2)>>2]=f[c+(e<<2)>>2];e=e+1|0}while(e>>>0>>0)}if(j|0){i=f[K>>2]|0;h=f[J>>2]|0;s=i-h>>2;e=f[I>>2]|0;g=f[H>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(g+e|0)){uc(M);e=f[I>>2]|0;g=f[H>>2]|0;i=f[K>>2]|0;h=f[J>>2]|0}e=g+e|0;if((i|0)==(h|0))e=0;else e=(f[h+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=j;f[e+4>>2]=n;f[e+8>>2]=l;f[H>>2]=(f[H>>2]|0)+1}if(k|0){i=f[K>>2]|0;h=f[J>>2]|0;s=i-h>>2;e=f[I>>2]|0;g=f[H>>2]|0;if((((s|0)==0?0:(s*341|0)+-1|0)|0)==(g+e|0)){uc(M);e=f[I>>2]|0;g=f[H>>2]|0;i=f[K>>2]|0;h=f[J>>2]|0}e=g+e|0;if((i|0)==(h|0))e=0;else e=(f[h+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[e>>2]=k;f[e+4>>2]=n;f[e+8>>2]=m;f[H>>2]=(f[H>>2]|0)+1}}while(0);e=f[H>>2]|0;if(!e)break a}if((L|0)==22)Ga(6524,6554,51,6673);else if((L|0)==27)Ga(22236,22274,223,22416);else if((L|0)==36)Ga(6524,6554,51,6673);else if((L|0)==41)Ga(22431,22455,48,22558);else if((L|0)==43)Ga(22587,22455,49,22558)}while(0);e=f[J>>2]|0;g=f[I>>2]|0;i=e+(((g>>>0)/341|0)<<2)|0;h=f[K>>2]|0;j=h;k=e;if((h|0)==(e|0)){c=0;g=0}else{g=(f[i>>2]|0)+(((g>>>0)%341|0)*12|0)|0;c=g}d:while(1){do{if((g|0)==(c|0))break d;g=g+12|0}while((g-(f[i>>2]|0)|0)!=4092);g=i+4|0;i=g;g=f[g>>2]|0}f[H>>2]=0;g=j-k>>2;if(g>>>0>2)do{ds(f[e>>2]|0);e=(f[J>>2]|0)+4|0;f[J>>2]=e;h=f[K>>2]|0;g=h-e>>2}while(g>>>0>2);switch(g|0){case 1:{g=170;L=86;break}case 2:{g=341;L=86;break}default:{}}if((L|0)==86)f[I>>2]=g;if((e|0)!=(h|0)){do{ds(f[e>>2]|0);e=e+4|0}while((e|0)!=(h|0));e=f[J>>2]|0;g=f[K>>2]|0;if((g|0)!=(e|0))f[K>>2]=g+(~((g+-4-e|0)>>>2)<<2)}e=f[M>>2]|0;if(!e){u=N;return}ds(e);u=N;return}function tb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=u;u=u+48|0;J=Q+24|0;P=Q;I=a+8|0;H=f[I>>2]|0;f[P>>2]=0;Ik(J,H,P);H=a+112|0;h=f[H>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[J>>2];f[g>>2]=f[J+4>>2];f[d>>2]=f[J+8>>2];G=f[I>>2]|0;f[P>>2]=0;Ik(J,G,P);G=a+124|0;h=f[G>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[J>>2];f[g>>2]=f[J+4>>2];f[d>>2]=f[J+8>>2];f[P>>2]=0;f[P+4>>2]=0;f[P+8>>2]=0;f[P+12>>2]=0;f[P+16>>2]=0;f[P+20>>2]=0;N=P+8|0;M=P+4|0;L=P+16|0;K=P+20|0;uc(P);d=f[M>>2]|0;e=(f[K>>2]|0)+(f[L>>2]|0)|0;if((f[N>>2]|0)==(d|0))d=0;else d=(f[d+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[d>>2]=b;f[d+4>>2]=0;f[d+8>>2]=0;d=(f[K>>2]|0)+1|0;f[K>>2]=d;a:do if(d|0){w=a+100|0;v=a+88|0;z=J+4|0;B=J+8|0;E=a+44|0;y=a+40|0;F=a+12|0;D=a+84|0;x=a+80|0;A=J+4|0;C=J+8|0;b:while(1){r=f[L>>2]|0;e=d+-1|0;k=r+e|0;s=f[M>>2]|0;q=f[s+(((k>>>0)/341|0)<<2)>>2]|0;k=(k>>>0)%341|0;t=f[q+(k*12|0)>>2]|0;g=f[q+(k*12|0)+4>>2]|0;k=f[q+(k*12|0)+8>>2]|0;f[K>>2]=e;e=f[N>>2]|0;s=e-s>>2;if((1-d-r+((s|0)==0?0:(s*341|0)+-1|0)|0)>>>0>681){ds(f[e+-4>>2]|0);f[N>>2]=(f[N>>2]|0)+-4}e=f[H>>2]|0;s=e+(k*12|0)|0;r=(f[G>>2]|0)+(k*12|0)|0;m=xo(a,t,r,g)|0;d=(f[a>>2]|0)-(f[(f[r>>2]|0)+(m<<2)>>2]|0)|0;c:do if(!d){if((t|0)>0){i=f[c>>2]|0;g=i+4|0;h=i+8|0;b=0;do{e=f[s>>2]|0;d=f[e>>2]|0;f[J>>2]=d;f[A>>2]=f[e+4>>2];f[C>>2]=f[e+8>>2];e=f[g>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=d;f[e+4>>2]=f[A>>2];f[e+8>>2]=f[C>>2];f[g>>2]=e+12}else ei(i,J);b=b+1|0}while((b|0)<(t|0))}}else{if(!t){O=26;break b}if(t>>>0<3){h=f[w>>2]|0;f[h>>2]=m;d=f[I>>2]|0;if(d>>>0>1){e=m;g=1;do{e=(e|0)==(d+-1|0)?0:e+1|0;f[h+(g<<2)>>2]=e;g=g+1|0;d=f[I>>2]|0}while(g>>>0>>0)}q=f[c>>2]|0;o=q+4|0;p=q+8|0;e=0;while(1){if(d|0){i=f[w>>2]|0;j=f[v>>2]|0;k=f[r>>2]|0;m=0;do{l=i+(m<<2)|0;f[j+(f[l>>2]<<2)>>2]=0;d=f[l>>2]|0;n=(f[a>>2]|0)-(f[k+(d<<2)>>2]|0)|0;do if(n|0){g=j+(d<<2)|0;if((n|0)>=33){O=35;break b}if((n|0)<=0){O=37;break b}h=f[E>>2]|0;b=32-h|0;d=f[y>>2]|0;h=f[d>>2]<(b|0)){n=n-b|0;f[E>>2]=n;d=d+4|0;f[y>>2]=d;n=32-n|0;f[g>>2]=(f[d>>2]|0)>>>n|h>>>(n-b|0);break}f[g>>2]=h>>>(32-n|0);n=(f[E>>2]|0)+n|0;f[E>>2]=n;if((n|0)!=32)break;f[y>>2]=d+4;f[E>>2]=0}while(0);l=f[l>>2]|0;n=j+(l<<2)|0;f[n>>2]=f[n>>2]|f[(f[s>>2]|0)+(l<<2)>>2];m=m+1|0}while(m>>>0<(f[I>>2]|0)>>>0)}g=f[v>>2]|0;d=f[g>>2]|0;f[J>>2]=d;f[z>>2]=f[g+4>>2];f[B>>2]=f[g+8>>2];g=f[o>>2]|0;if(g>>>0<(f[p>>2]|0)>>>0){f[g>>2]=d;f[g+4>>2]=f[z>>2];f[g+8>>2]=f[B>>2];f[o>>2]=g+12}else ei(q,J);e=e+1|0;if(e>>>0>=t>>>0)break c;d=f[I>>2]|0}}b=1<>2]|0;d=f[s>>2]|0;h=d;g=f[(f[H>>2]|0)+(l*12|0)>>2]|0;if((e|0)!=(d|0)){e=e-d>>2;d=0;do{f[g+(d<<2)>>2]=f[h+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}h=g+(m<<2)|0;f[h>>2]=(f[h>>2]|0)+b;h=(_(t|0)|0)^31;f[J>>2]=0;dk(F,h,J);h=(t>>>1)-(f[J>>2]|0)|0;e=t-h|0;if((h|0)==(e|0)){i=h;j=h}else{t=f[D>>2]|0;d=f[x>>2]|0;g=(f[d>>2]&1<<31-t|0)!=0;t=t+1|0;f[D>>2]=t;if((t|0)==32){f[x>>2]=d+4;f[D>>2]=0}i=g?h:e;j=g?e:h}d=f[G>>2]|0;b=f[d+(k*12|0)>>2]|0;e=b+(m<<2)|0;f[e>>2]=(f[e>>2]|0)+1;e=f[d+(k*12|0)+4>>2]|0;g=b;if((e|0)!=(g|0)){h=f[d+(l*12|0)>>2]|0;e=e-g>>2;d=0;do{f[h+(d<<2)>>2]=f[b+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}if(i|0){h=f[N>>2]|0;e=f[M>>2]|0;t=h-e>>2;d=f[L>>2]|0;g=f[K>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(g+d|0)){uc(P);d=f[L>>2]|0;g=f[K>>2]|0;h=f[N>>2]|0;e=f[M>>2]|0}d=g+d|0;if((h|0)==(e|0))d=0;else d=(f[e+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=i;f[d+4>>2]=m;f[d+8>>2]=k;f[K>>2]=(f[K>>2]|0)+1}if(j|0){h=f[N>>2]|0;g=f[M>>2]|0;t=h-g>>2;d=f[L>>2]|0;e=f[K>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(e+d|0)){uc(P);d=f[L>>2]|0;e=f[K>>2]|0;h=f[N>>2]|0;g=f[M>>2]|0}d=e+d|0;if((h|0)==(g|0))d=0;else d=(f[g+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=j;f[d+4>>2]=m;f[d+8>>2]=l;f[K>>2]=(f[K>>2]|0)+1}}while(0);d=f[K>>2]|0;if(!d)break a}if((O|0)==26)Ga(22236,22274,223,22416);else if((O|0)==35)Ga(22431,22455,48,22558);else if((O|0)==37)Ga(22587,22455,49,22558)}while(0);d=f[M>>2]|0;e=f[L>>2]|0;h=d+(((e>>>0)/341|0)<<2)|0;g=f[N>>2]|0;i=g;j=d;if((g|0)==(d|0)){b=0;e=0}else{e=(f[h>>2]|0)+(((e>>>0)%341|0)*12|0)|0;b=e}d:while(1){do{if((e|0)==(b|0))break d;e=e+12|0}while((e-(f[h>>2]|0)|0)!=4092);e=h+4|0;h=e;e=f[e>>2]|0}f[K>>2]=0;e=i-j>>2;if(e>>>0>2)do{ds(f[d>>2]|0);d=(f[M>>2]|0)+4|0;f[M>>2]=d;g=f[N>>2]|0;e=g-d>>2}while(e>>>0>2);switch(e|0){case 1:{e=170;O=83;break}case 2:{e=341;O=83;break}default:{}}if((O|0)==83)f[L>>2]=e;if((d|0)!=(g|0)){do{ds(f[d>>2]|0);d=d+4|0}while((d|0)!=(g|0));d=f[M>>2]|0;e=f[N>>2]|0;if((e|0)!=(d|0))f[N>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=f[P>>2]|0;if(!d){u=Q;return}ds(d);u=Q;return}function ub(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=u;u=u+48|0;J=Q+24|0;P=Q;I=a+8|0;H=f[I>>2]|0;f[P>>2]=0;Ik(J,H,P);H=a+112|0;h=f[H>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[J>>2];f[g>>2]=f[J+4>>2];f[d>>2]=f[J+8>>2];G=f[I>>2]|0;f[P>>2]=0;Ik(J,G,P);G=a+124|0;h=f[G>>2]|0;d=f[h>>2]|0;g=h+4|0;if(!d)d=h+8|0;else{e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);ds(d);d=h+8|0;f[d>>2]=0;f[g>>2]=0;f[h>>2]=0}f[h>>2]=f[J>>2];f[g>>2]=f[J+4>>2];f[d>>2]=f[J+8>>2];f[P>>2]=0;f[P+4>>2]=0;f[P+8>>2]=0;f[P+12>>2]=0;f[P+16>>2]=0;f[P+20>>2]=0;N=P+8|0;M=P+4|0;L=P+16|0;K=P+20|0;uc(P);d=f[M>>2]|0;e=(f[K>>2]|0)+(f[L>>2]|0)|0;if((f[N>>2]|0)==(d|0))d=0;else d=(f[d+(((e>>>0)/341|0)<<2)>>2]|0)+(((e>>>0)%341|0)*12|0)|0;f[d>>2]=b;f[d+4>>2]=0;f[d+8>>2]=0;d=(f[K>>2]|0)+1|0;f[K>>2]=d;a:do if(d|0){w=a+100|0;v=a+88|0;z=J+4|0;B=J+8|0;E=a+44|0;y=a+40|0;F=a+12|0;D=a+84|0;x=a+80|0;A=J+4|0;C=J+8|0;b:while(1){r=f[L>>2]|0;e=d+-1|0;k=r+e|0;s=f[M>>2]|0;q=f[s+(((k>>>0)/341|0)<<2)>>2]|0;k=(k>>>0)%341|0;t=f[q+(k*12|0)>>2]|0;g=f[q+(k*12|0)+4>>2]|0;k=f[q+(k*12|0)+8>>2]|0;f[K>>2]=e;e=f[N>>2]|0;s=e-s>>2;if((1-d-r+((s|0)==0?0:(s*341|0)+-1|0)|0)>>>0>681){ds(f[e+-4>>2]|0);f[N>>2]=(f[N>>2]|0)+-4}b=f[H>>2]|0;s=b+(k*12|0)|0;m=((f[I>>2]|0)+-1|0)==(g|0)?0:g+1|0;r=(f[G>>2]|0)+(k*12|0)|0;d=(f[a>>2]|0)-(f[(f[r>>2]|0)+(m<<2)>>2]|0)|0;c:do if(!d){if((t|0)>0){i=f[c>>2]|0;g=i+4|0;h=i+8|0;b=0;do{e=f[s>>2]|0;d=f[e>>2]|0;f[J>>2]=d;f[A>>2]=f[e+4>>2];f[C>>2]=f[e+8>>2];e=f[g>>2]|0;if(e>>>0<(f[h>>2]|0)>>>0){f[e>>2]=d;f[e+4>>2]=f[A>>2];f[e+8>>2]=f[C>>2];f[g>>2]=e+12}else ei(i,J);b=b+1|0}while((b|0)<(t|0))}}else{if(!t){O=26;break b}if(t>>>0<3){h=f[w>>2]|0;f[h>>2]=m;d=f[I>>2]|0;if(d>>>0>1){e=m;g=1;do{e=(e|0)==(d+-1|0)?0:e+1|0;f[h+(g<<2)>>2]=e;g=g+1|0;d=f[I>>2]|0}while(g>>>0>>0)}q=f[c>>2]|0;o=q+4|0;p=q+8|0;e=0;while(1){if(d|0){i=f[w>>2]|0;j=f[v>>2]|0;k=f[r>>2]|0;m=0;do{l=i+(m<<2)|0;f[j+(f[l>>2]<<2)>>2]=0;d=f[l>>2]|0;n=(f[a>>2]|0)-(f[k+(d<<2)>>2]|0)|0;do if(n|0){g=j+(d<<2)|0;if((n|0)>=33){O=35;break b}if((n|0)<=0){O=37;break b}h=f[E>>2]|0;b=32-h|0;d=f[y>>2]|0;h=f[d>>2]<(b|0)){n=n-b|0;f[E>>2]=n;d=d+4|0;f[y>>2]=d;n=32-n|0;f[g>>2]=(f[d>>2]|0)>>>n|h>>>(n-b|0);break}f[g>>2]=h>>>(32-n|0);n=(f[E>>2]|0)+n|0;f[E>>2]=n;if((n|0)!=32)break;f[y>>2]=d+4;f[E>>2]=0}while(0);l=f[l>>2]|0;n=j+(l<<2)|0;f[n>>2]=f[n>>2]|f[(f[s>>2]|0)+(l<<2)>>2];m=m+1|0}while(m>>>0<(f[I>>2]|0)>>>0)}g=f[v>>2]|0;d=f[g>>2]|0;f[J>>2]=d;f[z>>2]=f[g+4>>2];f[B>>2]=f[g+8>>2];g=f[o>>2]|0;if(g>>>0<(f[p>>2]|0)>>>0){f[g>>2]=d;f[g+4>>2]=f[z>>2];f[g+8>>2]=f[B>>2];f[o>>2]=g+12}else ei(q,J);e=e+1|0;if(e>>>0>=t>>>0)break c;d=f[I>>2]|0}}i=1<>2]|0;d=f[s>>2]|0;h=d;g=f[b+(l*12|0)>>2]|0;if((e|0)!=(d|0)){e=e-d>>2;d=0;do{f[g+(d<<2)>>2]=f[h+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}h=g+(m<<2)|0;f[h>>2]=(f[h>>2]|0)+i;h=(_(t|0)|0)^31;f[J>>2]=0;dk(F,h,J);h=(t>>>1)-(f[J>>2]|0)|0;e=t-h|0;if((h|0)==(e|0)){i=h;j=h}else{t=f[D>>2]|0;d=f[x>>2]|0;g=(f[d>>2]&1<<31-t|0)!=0;t=t+1|0;f[D>>2]=t;if((t|0)==32){f[x>>2]=d+4;f[D>>2]=0}i=g?h:e;j=g?e:h}d=f[G>>2]|0;b=f[d+(k*12|0)>>2]|0;e=b+(m<<2)|0;f[e>>2]=(f[e>>2]|0)+1;e=f[d+(k*12|0)+4>>2]|0;g=b;if((e|0)!=(g|0)){h=f[d+(l*12|0)>>2]|0;e=e-g>>2;d=0;do{f[h+(d<<2)>>2]=f[b+(d<<2)>>2];d=d+1|0}while(d>>>0>>0)}if(i|0){h=f[N>>2]|0;g=f[M>>2]|0;t=h-g>>2;d=f[L>>2]|0;e=f[K>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(e+d|0)){uc(P);d=f[L>>2]|0;e=f[K>>2]|0;h=f[N>>2]|0;g=f[M>>2]|0}d=e+d|0;if((h|0)==(g|0))d=0;else d=(f[g+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=i;f[d+4>>2]=m;f[d+8>>2]=k;f[K>>2]=(f[K>>2]|0)+1}if(j|0){h=f[N>>2]|0;g=f[M>>2]|0;t=h-g>>2;d=f[L>>2]|0;e=f[K>>2]|0;if((((t|0)==0?0:(t*341|0)+-1|0)|0)==(e+d|0)){uc(P);d=f[L>>2]|0;e=f[K>>2]|0;h=f[N>>2]|0;g=f[M>>2]|0}d=e+d|0;if((h|0)==(g|0))d=0;else d=(f[g+(((d>>>0)/341|0)<<2)>>2]|0)+(((d>>>0)%341|0)*12|0)|0;f[d>>2]=j;f[d+4>>2]=m;f[d+8>>2]=l;f[K>>2]=(f[K>>2]|0)+1}}while(0);d=f[K>>2]|0;if(!d)break a}if((O|0)==26)Ga(22236,22274,223,22416);else if((O|0)==35)Ga(22431,22455,48,22558);else if((O|0)==37)Ga(22587,22455,49,22558)}while(0);d=f[M>>2]|0;e=f[L>>2]|0;h=d+(((e>>>0)/341|0)<<2)|0;g=f[N>>2]|0;i=g;j=d;if((g|0)==(d|0)){b=0;e=0}else{e=(f[h>>2]|0)+(((e>>>0)%341|0)*12|0)|0;b=e}d:while(1){do{if((e|0)==(b|0))break d;e=e+12|0}while((e-(f[h>>2]|0)|0)!=4092);e=h+4|0;h=e;e=f[e>>2]|0}f[K>>2]=0;e=i-j>>2;if(e>>>0>2)do{ds(f[d>>2]|0);d=(f[M>>2]|0)+4|0;f[M>>2]=d;g=f[N>>2]|0;e=g-d>>2}while(e>>>0>2);switch(e|0){case 1:{e=170;O=83;break}case 2:{e=341;O=83;break}default:{}}if((O|0)==83)f[L>>2]=e;if((d|0)!=(g|0)){do{ds(f[d>>2]|0);d=d+4|0}while((d|0)!=(g|0));d=f[M>>2]|0;e=f[N>>2]|0;if((e|0)!=(d|0))f[N>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=f[P>>2]|0;if(!d){u=Q;return}ds(d);u=Q;return}function vb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=u;u=u+48|0;F=I+36|0;H=I+24|0;G=I+12|0;C=I;E=a+4|0;d=f[(f[E>>2]|0)+44>>2]|0;D=a+8|0;g=f[D>>2]|0;g=((f[g+4>>2]|0)-(f[g>>2]|0)>>2>>>0)/3|0;h=d+96|0;d=d+100|0;f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;c=f[d>>2]|0;b=f[h>>2]|0;i=(c-b|0)/12|0;if(g>>>0<=i>>>0){if(g>>>0>>0?(e=b+(g*12|0)|0,(c|0)!=(e|0)):0)f[d>>2]=c+(~(((c+-12-e|0)>>>0)/12|0)*12|0)}else fh(h,g-i|0,F);r=a+224|0;q=a+228|0;if((f[q>>2]|0)==(f[r>>2]|0)){d=f[D>>2]|0;d=(f[d+28>>2]|0)-(f[d+24>>2]|0)>>2;f[F>>2]=-1;Ik(H,d,F);d=f[E>>2]|0;b=f[d+44>>2]|0;e=f[b+100>>2]|0;c=f[b+96>>2]|0;if((e-c|0)>0){o=G+4|0;p=G+8|0;l=b;m=c;c=d;h=d;n=0;b=0;while(1){f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;i=n*3|0;if((n|0)<0)d=-1073741824;else d=f[(f[f[D>>2]>>2]|0)+(i<<2)>>2]|0;a=f[H>>2]|0;g=a+(d<<2)|0;d=f[g>>2]|0;if((d|0)==-1){f[g>>2]=b;k=b;b=b+1|0}else k=d;f[G>>2]=k;if((i|0)<-1)d=-1073741824;else d=f[(f[f[D>>2]>>2]|0)+(i+1<<2)>>2]|0;g=a+(d<<2)|0;d=f[g>>2]|0;if((d|0)==-1){f[g>>2]=b;d=b;b=b+1|0}f[o>>2]=d;if((i|0)<-2)d=-1073741824;else d=f[(f[f[D>>2]>>2]|0)+(i+2<<2)>>2]|0;g=a+(d<<2)|0;d=f[g>>2]|0;if((d|0)==-1){f[g>>2]=b;d=b;b=b+1|0}f[p>>2]=d;g=l+96|0;d=l+100|0;a=(e-m|0)/12|0;i=m;j=n;n=n+1|0;if((j|0)<(a|0)){d=l;g=m}else{c=e;f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;if(n>>>0<=a>>>0)if(n>>>0>>0?(A=i+(n*12|0)|0,(c|0)!=(A|0)):0){e=c+(~(((c+-12-A|0)>>>0)/12|0)*12|0)|0;f[d>>2]=e;d=l;g=m}else{d=l;g=m}else{fh(g,n-a|0,F);h=f[E>>2]|0;C=f[h+44>>2]|0;i=f[g>>2]|0;d=C;e=f[C+100>>2]|0;g=f[C+96>>2]|0}c=h}f[i+(j*12|0)>>2]=k;f[i+(j*12|0)+4>>2]=f[o>>2];f[i+(j*12|0)+8>>2]=f[p>>2];if((n|0)>=((e-g|0)/12|0|0)){d=H;break}else{l=d;m=g}}}else{c=d;d=H;b=0}f[(f[c+4>>2]|0)+80>>2]=b;d=f[d>>2]|0;if(d|0){c=H+4|0;b=f[c>>2]|0;if((b|0)!=(d|0))f[c>>2]=b+(~((b+-4-d|0)>>>2)<<2);ds(d)}u=I;return 1}f[H>>2]=0;A=H+4|0;f[A>>2]=0;f[H+8>>2]=0;b=f[D>>2]|0;xl(G,(f[b+4>>2]|0)-(f[b>>2]|0)>>2);b=f[D>>2]|0;if(((f[b+28>>2]|0)-(f[b+24>>2]|0)|0)>0){o=a+132|0;p=H+8|0;n=0;do{h=f[(f[b+24>>2]|0)+(n<<2)>>2]|0;a:do if((h|0)>=0){b:do if((f[(f[o>>2]|0)+(n>>>5<<2)>>2]&1<<(n&31)|0)==0?(s=f[q>>2]|0,t=f[r>>2]|0,v=t,(s|0)!=(t|0)):0){a=(((h>>>0)%3|0|0)==0?2:-1)+h|0;j=(a|0)<0;l=(s-t|0)/116|0;i=b+12|0;g=b+12|0;k=0;c:while(1){m=f[(f[f[v+(k*116|0)+68>>2]>>2]|0)+(h<<2)>>2]|0;do if(1<<(m&31)&f[(f[v+(k*116|0)+16>>2]|0)+(m>>>5<<2)>>2]|0){e=f[v+(k*116|0)+32>>2]|0;m=f[e+(h<<2)>>2]|0;if(!j){c=f[(f[i>>2]|0)+(a<<2)>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);if((c|0)==(h|0))break;else d=c}else d=a;while(1){c=f[e+(d<<2)>>2]|0;if((d|0)<0)break c;if((c|0)!=(m|0)){h=d;break b}c=(((d>>>0)%3|0|0)==0?2:-1)+d|0;do if((c|0)>=0){c=f[(f[g>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}while(0);if((c|0)==(h|0))break;else d=c}}while(0);k=k+1|0;if(k>>>0>=l>>>0)break b}while(1)if((c|0)==(m|0))c=m;else{h=d;break}}while(0);c=f[A>>2]|0;f[(f[G>>2]|0)+(h<<2)>>2]=c-(f[H>>2]|0)>>2;f[F>>2]=h;if(c>>>0<(f[p>>2]|0)>>>0){f[c>>2]=h;f[A>>2]=c+4}else{Bj(H,F);b=f[D>>2]|0}if((((h|0)>=0?(w=(((h>>>0)%3|0|0)==0?2:-1)+h|0,(w|0)>=0):0)?(x=f[(f[b+12>>2]|0)+(w<<2)>>2]|0,(x|0)>=0):0)?(y=x+(((x>>>0)%3|0|0)==0?2:-1)|0,(y|0)>-1&(y|0)!=(h|0)):0){g=y;e=h;while(1){b=f[q>>2]|0;c=f[r>>2]|0;d=c;d:do if((b|0)!=(c|0)){c=(b-c|0)/116|0;b=0;while(1){m=f[d+(b*116|0)+32>>2]|0;b=b+1|0;if((f[m+(g<<2)>>2]|0)!=(f[m+(e<<2)>>2]|0))break;if(b>>>0>=c>>>0){z=67;break d}}b=f[A>>2]|0;f[(f[G>>2]|0)+(g<<2)>>2]=b-(f[H>>2]|0)>>2;f[F>>2]=g;if(b>>>0<(f[p>>2]|0)>>>0){f[b>>2]=g;f[A>>2]=b+4}else Bj(H,F)}else z=67;while(0);if((z|0)==67){z=0;m=f[G>>2]|0;f[m+(g<<2)>>2]=f[m+(e<<2)>>2]}b=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((b|0)<0)break a;b=f[(f[(f[D>>2]|0)+12>>2]|0)+(b<<2)>>2]|0;if((b|0)<0)break a;b=b+(((b>>>0)%3|0|0)==0?2:-1)|0;if((b|0)>-1&(b|0)!=(h|0)){e=g;g=b}else break}}}while(0);n=n+1|0;b=f[D>>2]|0}while((n|0)<((f[b+28>>2]|0)-(f[b+24>>2]|0)>>2|0))}e=f[E>>2]|0;b=f[e+44>>2]|0;d=f[b+100>>2]|0;c=f[b+96>>2]|0;if((d-c|0)>0){m=C+4|0;n=C+8|0;j=c;c=e;g=e;k=0;while(1){f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;i=(f[G>>2]|0)+(k*3<<2)|0;f[C>>2]=f[i>>2];f[C+4>>2]=f[i+4>>2];f[C+8>>2]=f[i+8>>2];i=b+96|0;h=b+100|0;a=(d-j|0)/12|0;e=j;l=k;k=k+1|0;if((l|0)<(a|0))h=j;else{c=d;f[F>>2]=0;f[F+4>>2]=0;f[F+8>>2]=0;if(k>>>0<=a>>>0)if(k>>>0>>0?(B=e+(k*12|0)|0,(c|0)!=(B|0)):0){d=c+(~(((c+-12-B|0)>>>0)/12|0)*12|0)|0;f[h>>2]=d;c=j}else c=j;else{fh(i,k-a|0,F);g=f[E>>2]|0;c=f[g+44>>2]|0;e=f[i>>2]|0;b=c;d=f[c+100>>2]|0;c=f[c+96>>2]|0}h=c;c=g}f[e+(l*12|0)>>2]=f[C>>2];f[e+(l*12|0)+4>>2]=f[m>>2];f[e+(l*12|0)+8>>2]=f[n>>2];if((k|0)>=((d-h|0)/12|0|0))break;else j=h}}else c=e;b=f[H>>2]|0;f[(f[c+4>>2]|0)+80>>2]=(f[A>>2]|0)-b>>2;d=f[G>>2]|0;if(d){c=G+4|0;b=f[c>>2]|0;if((b|0)!=(d|0))f[c>>2]=b+(~((b+-4-d|0)>>>2)<<2);ds(d);b=f[H>>2]|0}if(b|0){c=f[A>>2]|0;if((c|0)!=(b|0))f[A>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}u=I;return 1}function wb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=u;u=u+32|0;A=B+16|0;z=B+4|0;x=B;f[a+36>>2]=b;y=a+24|0;w=a+28|0;d=f[w>>2]|0;c=f[y>>2]|0;g=d-c>>2;if(g>>>0>=b>>>0){if(g>>>0>b>>>0?(e=c+(b<<2)|0,(d|0)!=(e|0)):0)f[w>>2]=d+(~((d+-4-e|0)>>>2)<<2)}else Xh(y,b-g|0,5068);f[A>>2]=0;v=A+4|0;f[v>>2]=0;t=A+8|0;f[t>>2]=0;if(b|0){if((b|0)<0)Pq(A);c=((b+-1|0)>>>5)+1|0;s=no(c<<2)|0;f[A>>2]=s;f[t>>2]=c;f[v>>2]=b;c=b>>>5;_j(s|0,0,c<<2|0)|0;d=b-(c<<5)|0;c=s+(c<<2)|0;if(d|0)f[c>>2]=f[c>>2]&~(-1>>>(32-d|0))}s=a+4|0;c=(f[s>>2]|0)-(f[a>>2]|0)|0;g=c>>2;f[z>>2]=0;e=z+4|0;f[e>>2]=0;d=z+8|0;f[d>>2]=0;if(g){if((c|0)<0)Pq(z);c=((g+-1|0)>>>5)+1|0;h=no(c<<2)|0;f[z>>2]=h;f[d>>2]=c;f[e>>2]=g;c=g>>>5;_j(h|0,0,c<<2|0)|0;d=g-(c<<5)|0;c=h+(c<<2)|0;if(d)f[c>>2]=f[c>>2]&~(-1>>>(32-d|0))}else h=0;c=f[a>>2]|0;a:do if((f[s>>2]|0)-c>>2>>>0>2){n=a+12|0;q=a+32|0;o=a+52|0;p=a+56|0;r=a+48|0;m=0;d=b;b:while(1){l=m*3|0;if((m|0)>=0){b=f[c+(l<<2)>>2]|0;e=l+1|0;e=((e|0)%3|0|0)==0?l+-2|0:e;if((e|0)<0)g=-1073741824;else g=f[c+(e<<2)>>2]|0;e=(((l>>>0)%3|0|0)==0?2:-1)+l|0;if((e|0)<0)c=-1073741824;else c=f[c+(e<<2)>>2]|0;if((b|0)!=(g|0)?!((b|0)==(c|0)|(g|0)==(c|0)):0){k=0;do{g=k+l|0;if(!(f[h+(g>>>5<<2)>>2]&1<<(g&31))){c=f[(f[a>>2]|0)+(g<<2)>>2]|0;f[x>>2]=c;e=f[A>>2]|0;if(!(f[e+(c>>>5<<2)>>2]&1<<(c&31)))b=0;else{c=f[w>>2]|0;if((c|0)==(f[q>>2]|0))Bj(y,5068);else{f[c>>2]=-1073741824;f[w>>2]=c+4}c=f[o>>2]|0;if((c|0)==(f[p>>2]|0))Bj(r,x);else{f[c>>2]=f[x>>2];f[o>>2]=c+4}c=f[v>>2]|0;e=f[t>>2]|0;if((c|0)==(e<<5|0)){if((c+1|0)<0){Pq(A);e=f[t>>2]|0}j=e<<6;c=c+32&-32;jj(A,e<<5>>>0<1073741823?(j>>>0>>0?c:j):2147483647);c=f[v>>2]|0}f[v>>2]=c+1;e=f[A>>2]|0;b=e+(c>>>5<<2)|0;f[b>>2]=f[b>>2]&~(1<<(c&31));f[x>>2]=d;c=d;b=1;d=d+1|0}j=e+(c>>>5<<2)|0;f[j>>2]=f[j>>2]|1<<(c&31);c:do if(b){c=g;while(1){if((c|0)==-1073741824){e=68;break c}h=f[z>>2]|0;e=h+(c>>>5<<2)|0;f[e>>2]=f[e>>2]|1<<(c&31);e=f[x>>2]|0;f[(f[y>>2]|0)+(e<<2)>>2]=c;f[(f[a>>2]|0)+(c<<2)>>2]=e;e=c+1|0;do if((c|0)>=0){c=((e|0)%3|0|0)==0?c+-2|0:e;if((c|0)<0)break;c=f[(f[n>>2]|0)+(c<<2)>>2]|0;e=c+1|0;if((c|0)<0)break;c=((e|0)%3|0|0)==0?c+-2|0:e}while(0);if((c|0)==(g|0)){e=67;break}}}else{c=g;while(1){if((c|0)==-1073741824){e=68;break c}h=f[z>>2]|0;e=h+(c>>>5<<2)|0;f[e>>2]=f[e>>2]|1<<(c&31);f[(f[y>>2]|0)+(f[x>>2]<<2)>>2]=c;e=c+1|0;do if((c|0)>=0){c=((e|0)%3|0|0)==0?c+-2|0:e;if((c|0)<0)break;c=f[(f[n>>2]|0)+(c<<2)>>2]|0;e=c+1|0;if((c|0)<0)break;c=((e|0)%3|0|0)==0?c+-2|0:e}while(0);if((c|0)==(g|0)){e=67;break}}}while(0);do if((e|0)==67){e=0;if((g|0)==-1073741824){c=-1073741824;e=74}}else if((e|0)==68)if((g|0)>=0){c=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((c|0)>=0){c=f[(f[n>>2]|0)+(c<<2)>>2]|0;if((c|0)<0){e=74;break}if(!((c>>>0)%3|0)){c=c+2|0;e=74;break}else{c=c+-1|0;e=74;break}}else e=74}else{c=g;e=74}while(0);d:do if((e|0)==74){h=f[z>>2]|0;g=h+(c>>>5<<2)|0;i=1<<(c&31);e=(c|0)<0;if((c|0)!=-1073741824){if(!b){b=c;c=i;while(1){if(e)break b;f[g>>2]=f[g>>2]|c;c=(((b>>>0)%3|0|0)==0?2:-1)+b|0;do if((c|0)>=0){c=f[(f[n>>2]|0)+(c<<2)>>2]|0;if((c|0)<0)break;if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}while(0);h=f[z>>2]|0;if((c|0)==-1073741824)break d;else{b=c;g=h+(c>>>5<<2)|0;e=(c|0)<0;c=1<<(c&31)}}}j=f[a>>2]|0;b=g;h=e;e=i;while(1){g=j+(c<<2)|0;do{f[b>>2]=f[b>>2]|e;f[g>>2]=f[x>>2]}while(h);c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;do if((c|0)>=0){c=f[(f[n>>2]|0)+(c<<2)>>2]|0;if((c|0)<0){e=c;break}if(!((c>>>0)%3|0)){e=c+2|0;break}else{e=c+-1|0;break}}else e=c;while(0);h=f[z>>2]|0;if((e|0)==-1073741824)break;else{c=e;b=h+(e>>>5<<2)|0;h=(e|0)<0;e=1<<(e&31)}}}}while(0)}k=k+1|0}while((k|0)<3)}}m=m+1|0;c=f[a>>2]|0;if((m|0)>=(((f[s>>2]|0)-c>>2>>>0)/3|0|0))break a}while(1){}}while(0);j=a+44|0;f[j>>2]=0;c=f[A>>2]|0;b=f[v>>2]|0;y=b>>>5;i=c+(y<<2)|0;b=b&31;e=(y|0)!=0;e:do if(y|b|0){if(!b){g=c;d=0;while(1){f:do if(e){e=0;while(1){if(!(f[g>>2]&1<>2]=d}if((e|0)==31)break;else e=e+1|0}}else{e=0;while(1){if(!(f[g>>2]&1<>2]=d}if((e|0)==31)break f;e=e+1|0;if(!e)break e}}while(0);g=g+4|0;if((g|0)==(i|0))break e;else e=1}}if(e){g=c;d=0;e=0;do{h=0;while(1){if(!(f[g>>2]&1<>2]=e;d=e}if((h|0)==31)break;else h=h+1|0}g=g+4|0}while((g|0)!=(i|0))}else{g=c;d=0}e=0;do{if(!(f[g>>2]&1<>2]=d}e=e+1|0}while((e|0)!=(b|0))}while(0);d=f[z>>2]|0;if(d){ds(d);c=f[A>>2]|0}if(!c){u=B;return 1}ds(c);u=B;return 1}function xb(a,c,d,e,g,i){a=a|0;c=+c;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=u;u=u+560|0;l=G+8|0;t=G;F=G+524|0;E=F;m=G+512|0;f[t>>2]=0;D=m+12|0;Fp(c)|0;if((I|0)<0){C=1;A=23429;c=-c}else{C=(g&2049|0)!=0&1;A=(g&2048|0)==0?((g&1|0)==0?23430:23435):23432}Fp(c)|0;B=I&2146435072;do if(B>>>0<2146435072|(B|0)==2146435072&0<0){q=+Jr(c,t)*2.0;j=q!=0.0;if(j)f[t>>2]=(f[t>>2]|0)+-1;w=i|32;if((w|0)==97){r=i&32;p=(r|0)==0?A:A+9|0;o=C|2;j=12-e|0;do if(!(e>>>0>11|(j|0)==0)){c=8.0;do{j=j+-1|0;c=c*16.0}while((j|0)!=0);if((b[p>>0]|0)==45){c=-(c+(-q-c));break}else{c=q+c-c;break}}else c=q;while(0);k=f[t>>2]|0;j=(k|0)<0?0-k|0:k;j=nl(j,((j|0)<0)<<31>>31,D)|0;if((j|0)==(D|0)){j=m+11|0;b[j>>0]=48}b[j+-1>>0]=(k>>31&2)+43;n=j+-2|0;b[n>>0]=i+15;l=(e|0)<1;m=(g&8|0)==0;k=F;while(1){C=~~c;j=k+1|0;b[k>>0]=h[23464+C>>0]|r;c=(c-+(C|0))*16.0;if((j-E|0)==1?!(m&(l&c==0.0)):0){b[j>>0]=46;j=k+2|0}if(!(c!=0.0))break;else k=j}C=j-E|0;E=D-n|0;D=(e|0)!=0&(C+-2|0)<(e|0)?e+2|0:C;j=E+o+D|0;Yl(a,32,d,j,g);mq(a,p,o);Yl(a,48,d,j,g^65536);mq(a,F,C);Yl(a,48,D-C|0,0,0);mq(a,n,E);Yl(a,32,d,j,g^8192);break}k=(e|0)<0?6:e;if(j){j=(f[t>>2]|0)+-28|0;f[t>>2]=j;c=q*268435456.0}else{j=f[t>>2]|0;c=q}B=(j|0)<0?l:l+288|0;l=B;do{y=~~c>>>0;f[l>>2]=y;l=l+4|0;c=(c-+(y>>>0))*1.0e9}while(c!=0.0);if((j|0)>0){m=B;n=l;while(1){o=(j|0)<29?j:29;j=n+-4|0;if(j>>>0>=m>>>0){l=0;do{x=Ro(f[j>>2]|0,0,o|0)|0;x=Kp(x|0,I|0,l|0,0)|0;y=I;v=bo(x|0,y|0,1e9,0)|0;f[j>>2]=v;l=Hq(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=m>>>0);if(l){m=m+-4|0;f[m>>2]=l}}l=n;while(1){if(l>>>0<=m>>>0)break;j=l+-4|0;if(!(f[j>>2]|0))l=j;else break}j=(f[t>>2]|0)-o|0;f[t>>2]=j;if((j|0)>0)n=l;else break}}else m=B;if((j|0)<0){e=((k+25|0)/9|0)+1|0;s=(w|0)==102;do{r=0-j|0;r=(r|0)<9?r:9;if(m>>>0>>0){o=(1<>>r;p=0;j=m;do{y=f[j>>2]|0;f[j>>2]=(y>>>r)+p;p=X(y&o,n)|0;j=j+4|0}while(j>>>0>>0);j=(f[m>>2]|0)==0?m+4|0:m;if(!p){m=j;j=l}else{f[l>>2]=p;m=j;j=l+4|0}}else{m=(f[m>>2]|0)==0?m+4|0:m;j=l}l=s?B:m;l=(j-l>>2|0)>(e|0)?l+(e<<2)|0:j;j=(f[t>>2]|0)+r|0;f[t>>2]=j}while((j|0)<0);j=m;e=l}else{j=m;e=l}y=B;if(j>>>0>>0){l=(y-j>>2)*9|0;n=f[j>>2]|0;if(n>>>0>=10){m=10;do{m=m*10|0;l=l+1|0}while(n>>>0>=m>>>0)}}else l=0;s=(w|0)==103;v=(k|0)!=0;m=k-((w|0)!=102?l:0)+((v&s)<<31>>31)|0;if((m|0)<(((e-y>>2)*9|0)+-9|0)){n=m+9216|0;m=B+4+(((n|0)/9|0)+-1024<<2)|0;n=((n|0)%9|0)+1|0;if((n|0)<9){o=10;do{o=o*10|0;n=n+1|0}while((n|0)!=9)}else o=10;p=f[m>>2]|0;r=(p>>>0)%(o>>>0)|0;n=(m+4|0)==(e|0);if(!(n&(r|0)==0)){q=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;c=r>>>0>>0?.5:n&(r|0)==(x|0)?1.0:1.5;if(C){x=(b[A>>0]|0)==45;q=x?-q:q;c=x?-c:c}n=p-r|0;f[m>>2]=n;if(q+c!=q){x=n+o|0;f[m>>2]=x;if(x>>>0>999999999){l=m;while(1){m=l+-4|0;f[l>>2]=0;if(m>>>0>>0){j=j+-4|0;f[j>>2]=0}x=(f[m>>2]|0)+1|0;f[m>>2]=x;if(x>>>0>999999999)l=m;else break}}l=(y-j>>2)*9|0;o=f[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;l=l+1|0}while(o>>>0>=n>>>0)}}}w=m+4|0;x=j;j=e>>>0>w>>>0?w:e}else{x=j;j=e}w=j;while(1){if(w>>>0<=x>>>0){t=0;break}j=w+-4|0;if(!(f[j>>2]|0))w=j;else{t=1;break}}e=0-l|0;do if(s){j=((v^1)&1)+k|0;if((j|0)>(l|0)&(l|0)>-5){k=j+-1-l|0;n=i+-1|0}else{k=j+-1|0;n=i+-2|0}j=g&8;if(!j){if(t?(z=f[w+-4>>2]|0,(z|0)!=0):0)if(!((z>>>0)%10|0)){j=10;m=0;do{j=j*10|0;m=m+1|0}while(!((z>>>0)%(j>>>0)|0|0))}else m=0;else m=9;j=((w-y>>2)*9|0)+-9|0;if((n|32|0)==102){i=j-m|0;i=(i|0)>0?i:0;r=0;k=(k|0)<(i|0)?k:i;break}else{i=j+l-m|0;i=(i|0)>0?i:0;r=0;k=(k|0)<(i|0)?k:i;break}}else r=j}else{r=g&8;n=i}while(0);s=k|r;o=(s|0)!=0&1;p=(n|32|0)==102;if(p){v=0;j=(l|0)>0?l:0}else{j=(l|0)<0?e:l;j=nl(j,((j|0)<0)<<31>>31,D)|0;m=D;if((m-j|0)<2)do{j=j+-1|0;b[j>>0]=48}while((m-j|0)<2);b[j+-1>>0]=(l>>31&2)+43;j=j+-2|0;b[j>>0]=n;v=j;j=m-j|0}j=C+1+k+o+j|0;Yl(a,32,d,j,g);mq(a,A,C);Yl(a,48,d,j,g^65536);if(p){o=x>>>0>B>>>0?B:x;r=F+9|0;p=r;n=F+8|0;m=o;do{l=nl(f[m>>2]|0,0,r)|0;if((m|0)==(o|0)){if((l|0)==(r|0)){b[n>>0]=48;l=n}}else if(l>>>0>F>>>0){_j(F|0,48,l-E|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}mq(a,l,p-l|0);m=m+4|0}while(m>>>0<=B>>>0);if(s|0)mq(a,23480,1);if(m>>>0>>0&(k|0)>0)while(1){l=nl(f[m>>2]|0,0,r)|0;if(l>>>0>F>>>0){_j(F|0,48,l-E|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}mq(a,l,(k|0)<9?k:9);m=m+4|0;l=k+-9|0;if(!(m>>>0>>0&(k|0)>9)){k=l;break}else k=l}Yl(a,48,k+9|0,9,0)}else{t=t?w:x+4|0;if((k|0)>-1){s=F+9|0;e=(r|0)==0;r=s;n=0-E|0;p=F+8|0;o=x;do{l=nl(f[o>>2]|0,0,s)|0;if((l|0)==(s|0)){b[p>>0]=48;l=p}do if((o|0)==(x|0)){m=l+1|0;mq(a,l,1);if(e&(k|0)<1){l=m;break}mq(a,23480,1);l=m}else{if(l>>>0<=F>>>0)break;_j(F|0,48,l+n|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}while(0);E=r-l|0;mq(a,l,(k|0)>(E|0)?E:k);k=k-E|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}Yl(a,48,k+18|0,18,0);mq(a,v,D-v|0)}Yl(a,32,d,j,g^8192)}else{F=(i&32|0)!=0;j=C+3|0;Yl(a,32,d,j,g&-65537);mq(a,A,C);mq(a,c!=c|0.0!=0.0?(F?23456:23460):F?23448:23452,3);Yl(a,32,d,j,g^8192)}while(0);u=G;return ((j|0)<(d|0)?d:j)|0}function yb(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=u;u=u+64|0;C=G+16|0;z=G;y=G+24|0;F=G+8|0;B=G+20|0;f[C>>2]=c;E=(a|0)!=0;x=y+40|0;D=x;y=y+39|0;A=F+4|0;o=c;c=0;i=0;l=0;a:while(1){do if((c|0)>-1)if((i|0)>(2147483647-c|0)){c=Rr()|0;f[c>>2]=75;c=-1;break}else{c=i+c|0;break}while(0);i=b[o>>0]|0;if(!(i<<24>>24)){w=87;break}else j=o;b:while(1){switch(i<<24>>24){case 37:{i=j;w=9;break b}case 0:{i=j;break b}default:{}}v=j+1|0;f[C>>2]=v;i=b[v>>0]|0;j=v}c:do if((w|0)==9)while(1){w=0;if((b[i+1>>0]|0)!=37)break c;j=j+1|0;i=i+2|0;f[C>>2]=i;if((b[i>>0]|0)==37)w=9;else break}while(0);j=j-o|0;if(E)mq(a,o,j);if(j|0){o=i;i=j;continue}k=i+1|0;j=(b[k>>0]|0)+-48|0;if(j>>>0<10){v=(b[i+2>>0]|0)==36;r=v?j:-1;n=v?1:l;k=v?i+3|0:k}else{r=-1;n=l}f[C>>2]=k;i=b[k>>0]|0;j=(i<<24>>24)+-32|0;d:do if(j>>>0<32){l=0;while(1){j=1<>2]=k;i=b[k>>0]|0;j=(i<<24>>24)+-32|0;if(j>>>0>=32){m=l;break}}}else m=0;while(0);if(i<<24>>24==42){j=k+1|0;i=(b[j>>0]|0)+-48|0;if(i>>>0<10?(b[k+2>>0]|0)==36:0){f[h+(i<<2)>>2]=10;l=1;i=k+3|0;j=f[g+((b[j>>0]|0)+-48<<3)>>2]|0}else{if(n|0){c=-1;break}if(E){l=(f[e>>2]|0)+(4-1)&~(4-1);v=f[l>>2]|0;f[e>>2]=l+4;l=0;i=j;j=v}else{l=0;i=j;j=0}}f[C>>2]=i;t=(j|0)<0;q=t?m|8192:m;v=l;t=t?0-j|0:j}else{j=sn(C)|0;if((j|0)<0){c=-1;break}i=f[C>>2]|0;q=m;v=n;t=j}do if((b[i>>0]|0)==46){if((b[i+1>>0]|0)!=42){f[C>>2]=i+1;m=sn(C)|0;i=f[C>>2]|0;break}k=i+2|0;j=(b[k>>0]|0)+-48|0;if(j>>>0<10?(b[i+3>>0]|0)==36:0){f[h+(j<<2)>>2]=10;m=f[g+((b[k>>0]|0)+-48<<3)>>2]|0;i=i+4|0;f[C>>2]=i;break}if(v|0){c=-1;break a}if(E){s=(f[e>>2]|0)+(4-1)&~(4-1);j=f[s>>2]|0;f[e>>2]=s+4}else j=0;f[C>>2]=k;i=k;m=j}else m=-1;while(0);n=0;while(1){if(((b[i>>0]|0)+-65|0)>>>0>57){c=-1;break a}s=i+1|0;f[C>>2]=s;j=b[(b[i>>0]|0)+-65+(22948+(n*58|0))>>0]|0;l=j&255;if((l+-1|0)>>>0<8){i=s;n=l}else break}if(!(j<<24>>24)){c=-1;break}k=(r|0)>-1;do if(j<<24>>24==19)if(k){c=-1;break a}else w=49;else{if(k){f[h+(r<<2)>>2]=l;l=g+(r<<3)|0;r=f[l+4>>2]|0;w=z;f[w>>2]=f[l>>2];f[w+4>>2]=r;w=49;break}if(!E){c=0;break a}Sf(z,l,e)}while(0);if((w|0)==49?(w=0,!E):0){o=s;i=0;l=v;continue}l=b[i>>0]|0;l=(n|0)!=0&(l&15|0)==3?l&-33:l;j=q&-65537;r=(q&8192|0)==0?q:j;e:do switch(l|0){case 110:switch((n&255)<<24>>24){case 0:{f[f[z>>2]>>2]=c;o=s;i=0;l=v;continue a}case 1:{f[f[z>>2]>>2]=c;o=s;i=0;l=v;continue a}case 2:{o=f[z>>2]|0;f[o>>2]=c;f[o+4>>2]=((c|0)<0)<<31>>31;o=s;i=0;l=v;continue a}case 3:{d[f[z>>2]>>1]=c;o=s;i=0;l=v;continue a}case 4:{b[f[z>>2]>>0]=c;o=s;i=0;l=v;continue a}case 6:{f[f[z>>2]>>2]=c;o=s;i=0;l=v;continue a}case 7:{o=f[z>>2]|0;f[o>>2]=c;f[o+4>>2]=((c|0)<0)<<31>>31;o=s;i=0;l=v;continue a}default:{o=s;i=0;l=v;continue a}}case 112:{i=r|8;j=m>>>0>8?m:8;l=120;w=61;break}case 88:case 120:{i=r;j=m;w=61;break}case 111:{q=z;o=f[q>>2]|0;q=f[q+4>>2]|0;n=Sn(o,q,x)|0;j=D-n|0;i=r;j=(r&8|0)==0|(m|0)>(j|0)?m:j+1|0;k=0;m=23412;w=67;break}case 105:case 100:{j=z;i=f[j>>2]|0;j=f[j+4>>2]|0;if((j|0)<0){i=_o(0,0,i|0,j|0)|0;j=I;k=z;f[k>>2]=i;f[k+4>>2]=j;k=1;l=23412;w=66;break e}else{k=(r&2049|0)!=0&1;l=(r&2048|0)==0?((r&1|0)==0?23412:23414):23413;w=66;break e}}case 117:{j=z;i=f[j>>2]|0;j=f[j+4>>2]|0;k=0;l=23412;w=66;break}case 99:{b[y>>0]=f[z>>2];o=y;n=j;l=1;k=0;j=23412;i=x;break}case 109:{i=Rr()|0;i=tq(f[i>>2]|0)|0;w=71;break}case 115:{i=f[z>>2]|0;i=i|0?i:23422;w=71;break}case 67:{f[F>>2]=f[z>>2];f[A>>2]=0;f[z>>2]=F;i=F;m=-1;w=75;break}case 83:{i=f[z>>2]|0;if(!m){Yl(a,32,t,0,r);i=0;w=84}else w=75;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{o=s;i=xb(a,+p[z>>3],t,m,r,l)|0;l=v;continue a}default:{n=r;l=m;k=0;j=23412;i=x}}while(0);f:do if((w|0)==61){q=z;o=f[q>>2]|0;q=f[q+4>>2]|0;n=xn(o,q,x,l&32)|0;m=(i&8|0)==0|(o|0)==0&(q|0)==0;k=m?0:2;m=m?23412:23412+(l>>4)|0;w=67}else if((w|0)==66){o=i;q=j;n=nl(i,j,x)|0;i=r;j=m;m=l;w=67}else if((w|0)==71){w=0;r=fj(i,0,m)|0;q=(r|0)==0;o=i;n=j;l=q?m:r-i|0;k=0;j=23412;i=q?i+m|0:r}else if((w|0)==75){w=0;k=0;j=0;n=i;while(1){l=f[n>>2]|0;if(!l)break;j=sq(B,l)|0;if((j|0)<0|j>>>0>(m-k|0)>>>0)break;k=j+k|0;if(m>>>0>k>>>0)n=n+4|0;else break}if((j|0)<0){c=-1;break a}Yl(a,32,t,k,r);if(!k){i=0;w=84}else{l=0;while(1){j=f[i>>2]|0;if(!j){i=k;w=84;break f}j=sq(B,j)|0;l=j+l|0;if((l|0)>(k|0)){i=k;w=84;break f}mq(a,B,j);if(l>>>0>=k>>>0){i=k;w=84;break}else i=i+4|0}}}while(0);if((w|0)==67){w=0;l=(o|0)!=0|(q|0)!=0;r=(j|0)!=0|l;l=((l^1)&1)+(D-n)|0;o=r?n:x;n=(j|0)>-1?i&-65537:i;l=r?((j|0)>(l|0)?j:l):j;j=m;i=x}else if((w|0)==84){w=0;Yl(a,32,t,i,r^8192);o=s;i=(t|0)>(i|0)?t:i;l=v;continue}r=i-o|0;q=(l|0)<(r|0)?r:l;l=q+k|0;i=(t|0)<(l|0)?l:t;Yl(a,32,i,l,n);mq(a,j,k);Yl(a,48,i,l,n^65536);Yl(a,48,q,r,0);mq(a,o,r);Yl(a,32,i,l,n^8192);o=s;l=v}g:do if((w|0)==87)if(!a)if(!l)c=0;else{c=1;while(1){i=f[h+(c<<2)>>2]|0;if(!i)break;Sf(g+(c<<3)|0,i,e);c=c+1|0;if((c|0)>=10){c=1;break g}}while(1){if(f[h+(c<<2)>>2]|0){c=-1;break g}c=c+1|0;if((c|0)>=10){c=1;break}}}while(0);u=G;return c|0} -function Ck(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=a&255;d=a&255;if((f[c+76>>2]|0)>=0?(js(c)|0)!=0:0){if((d|0)!=(b[c+75>>0]|0)?(j=c+20|0,g=f[j>>2]|0,g>>>0<(f[c+16>>2]|0)>>>0):0){f[j>>2]=g+1;b[g>>0]=h}else d=Ak(c,a)|0;is(c)}else k=3;do if((k|0)==3){if((d|0)!=(b[c+75>>0]|0)?(i=c+20|0,e=f[i>>2]|0,e>>>0<(f[c+16>>2]|0)>>>0):0){f[i>>2]=e+1;b[e>>0]=h;break}d=Ak(c,a)|0}while(0);return d|0}function Dk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;if(!b)return;if(b>>>0>357913941){Pq(a);c=Ia(4)|0;Hr(c);sa(c|0,1488,137)}e=no(b*12|0)|0;f[d>>2]=e;f[a>>2]=e;f[a+8>>2]=e+(b*12|0);a=e;do{zk(a,c);a=(f[d>>2]|0)+12|0;f[d>>2]=a;b=b+-1|0}while((b|0)!=0);return}function Ek(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2472;b=f[a+96>>2]|0;if(b|0)ds(b);b=f[a+84>>2]|0;if(b|0)ds(b);b=f[a+72>>2]|0;if(b|0)ds(b);b=f[a+60>>2]|0;if(b|0)ds(b);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c){ds(a);return}d=a+36|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c);ds(a);return}function Fk(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2108;b=f[a+96>>2]|0;if(b|0)ds(b);b=f[a+84>>2]|0;if(b|0)ds(b);b=f[a+72>>2]|0;if(b|0)ds(b);b=f[a+60>>2]|0;if(b|0)ds(b);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c){ds(a);return}d=a+36|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c);ds(a);return}function Gk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=u;u=u+32|0;e=d+12|0;g=d;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;Jk(g,c,Rk(c)|0);a=$j(b,g,e)|0;Op(g);Op(e);u=d;return a|0}function Hk(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4744;b=a+96|0;c=a+4|0;d=c+92|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[b>>2]=-1;f[a+100>>2]=-1;f[a+104>>2]=-1;b=a+164|0;c=a+108|0;d=c+56|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));n[b>>2]=$(1.0);b=a+240|0;c=a+168|0;d=c+68|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));em(b);return}function Ik(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;f[a>>2]=0;d=a+4|0;f[d>>2]=0;f[a+8>>2]=0;if(!b)return;if(b>>>0>1073741823){Pq(a);e=Ia(4)|0;Hr(e);sa(e|0,1488,137)}g=no(b<<2)|0;f[d>>2]=g;f[a>>2]=g;e=g+(b<<2)|0;f[a+8>>2]=e;a=g;while(1){f[a>>2]=f[c>>2];b=b+-1|0;if(!b)break;else a=a+4|0}f[d>>2]=e;return}function Jk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h;if(d>>>0<=4294967279)if(d>>>0<11)b[a+11>>0]=d;else g=5;else{Lq(a);g=5}if((g|0)==5){i=d+16&-16;g=no(i)|0;f[a>>2]=g;f[a+8>>2]=i|-2147483648;f[a+4>>2]=d;a=g}Wp(a,c,d)|0;b[e>>0]=0;Uq(a+d|0,e);u=h;return}function Kk(a){a=a|0;var b=0,c=0;f[a>>2]=2472;b=f[a+96>>2]|0;if(b|0)ds(b);b=f[a+84>>2]|0;if(b|0)ds(b);b=f[a+72>>2]|0;if(b|0)ds(b);b=f[a+60>>2]|0;if(b|0)ds(b);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c);return}function Lk(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0,j=0;b=f[a+32>>2]|0;j=b+8|0;i=f[j>>2]|0;j=f[j+4>>2]|0;g=b+16|0;c=g;e=f[c>>2]|0;c=Kp(e|0,f[c+4>>2]|0,4,0)|0;d=I;if((j|0)<(d|0)|(j|0)==(d|0)&i>>>0>>0){j=0;return j|0}j=(f[b>>2]|0)+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;i=g;f[i>>2]=c;f[i+4>>2]=d;f[(f[a+4>>2]|0)+80>>2]=j;j=1;return j|0}function Mk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=a+8|0;c=f[a>>2]|0;if((f[e>>2]|0)-c>>2>>>0>=b>>>0)return;d=a+4|0;if(b>>>0>1073741823){a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}j=(f[d>>2]|0)-c|0;h=j>>2;i=no(b<<2)|0;g=i+(h<<2)|0;h=g+(0-h<<2)|0;if((j|0)>0)Fh(h|0,c|0,j|0)|0;f[a>>2]=h;f[d>>2]=g;f[e>>2]=i+(b<<2);if(!c)return;ds(c);return}function Nk(a){a=a|0;var c=0,d=0,e=0,f=0,g=0;while(1){c=b[a>>0]|0;d=c<<24>>24;e=a+1|0;if(!(vr(d)|0))break;else a=e}switch(d|0){case 45:{a=1;f=5;break}case 43:{a=0;f=5;break}default:{g=0;e=a}}if((f|0)==5){c=b[e>>0]|0;g=a}a=(c<<24>>24)+-48|0;if(a>>>0<10){d=a;a=0;c=e;do{c=c+1|0;a=(a*10|0)-d|0;d=(b[c>>0]|0)+-48|0}while(d>>>0<10)}else a=0;return (g|0?a:0-a|0)|0}function Ok(a){a=a|0;var b=0,c=0;f[a>>2]=2108;b=f[a+96>>2]|0;if(b|0)ds(b);b=f[a+84>>2]|0;if(b|0)ds(b);b=f[a+72>>2]|0;if(b|0)ds(b);b=f[a+60>>2]|0;if(b|0)ds(b);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c);return}function Pk(a,c,d){a=a|0;c=c|0;d=d|0;c=Dh(a,c)|0;if((c|0)==(a+4|0)){a=-1;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}c=c+28|0;if((b[c+11>>0]|0)<0)c=f[c>>2]|0;a=Nk(c)|0;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}function Qk(a){a=a|0;var b=0,c=0,d=0;if(!(f[a+80>>2]|0)){d=0;return d|0}d=a+8|0;c=a+12|0;a=f[d>>2]|0;if(((f[c>>2]|0)-a|0)>0)b=0;else{d=1;return d|0}while(1){a=f[a+(b<<2)>>2]|0;b=b+1|0;if(!(Em(a,a)|0)){a=0;b=5;break}a=f[d>>2]|0;if((b|0)>=((f[c>>2]|0)-a>>2|0)){a=1;b=5;break}}if((b|0)==5)return a|0;return 0}function Rk(a){a=a|0;var c=0,d=0,e=0;e=a;a:do if(!(e&3)){c=a;d=4}else{c=e;while(1){if(!(b[a>>0]|0))break a;a=a+1|0;c=a;if(!(c&3)){c=a;d=4;break}}}while(0);if((d|0)==4){while(1){a=f[c>>2]|0;if(!((a&-2139062144^-2139062144)&a+-16843009))c=c+4|0;else break}if((a&255)<<24>>24)do c=c+1|0;while((b[c>>0]|0)!=0)}return c-e|0}function Sk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;e=c;d=c+4|0;f[e>>2]=b;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;Jk(d,20134,24);Aj(vd(a,e)|0,d,1);Op(d);u=c;return}function Tk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=Sa[f[(f[a>>2]|0)+24>>2]&255](a)|0;if((e|0)<=0){b=1;return b|0}d=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[d>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Na[f[(f[g>>2]|0)+20>>2]&31](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(e|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function Uk(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4628;b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}f[a+12>>2]=4652;b=f[a+32>>2]|0;if(b|0)ds(b);b=f[a+20>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Vk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b>>2]|0;if(!c){a=0;return a|0}e=a+44|0;d=f[e>>2]|0;if(d>>>0<(f[a+48>>2]|0)>>>0){f[b>>2]=0;f[d>>2]=c;f[e>>2]=(f[e>>2]|0)+4;a=1;return a|0}else{qh(a+40|0,b);a=1;return a|0}return 0}function Wk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=Sa[f[(f[a>>2]|0)+24>>2]&255](a)|0;if((e|0)<=0){b=1;return b|0}d=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[d>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Na[f[(f[g>>2]|0)+16>>2]&31](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(e|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function Xk(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;e=Wo(c|0,d|0,52)|0;switch(e&2047){case 0:{if(a!=0.0){a=+Xk(a*18446744073709551616.0,b);c=(f[b>>2]|0)+-64|0}else c=0;f[b>>2]=c;break}case 2047:break;default:{f[b>>2]=(e&2047)+-1022;f[s>>2]=c;f[s+4>>2]=d&-2146435073|1071644672;a=+p[s>>3]}}return +a}function Yk(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4720;b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}f[a+12>>2]=4700;b=f[a+32>>2]|0;if(b|0)ds(b);b=f[a+20>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Zk(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2528;b=f[a+76>>2]|0;if(b|0)ds(b);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)bs(b);f[a>>2]=1884;b=f[a+32>>2]|0;if(!b){ds(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);ds(a);return}function _k(a){a=a|0;if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}if(!(f[a+28>>2]|0)){a=0;return a|0}if(!(f[a+32>>2]|0)){a=0;return a|0}if(!(f[a+36>>2]|0)){a=0;return a|0}if(!(f[a+40>>2]|0)){a=0;return a|0}a=(f[a+76>>2]|0)!=-1;return a|0}function $k(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0,g=0;a=u;u=u+32|0;g=a;e=a+8|0;p[g>>3]=0.0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;Jk(e,c,Rk(c)|0);xi(b,e,g)|0;d=+p[g>>3];Op(e);u=a;return +d}function al(a,c){a=a|0;c=c|0;var d=0,e=0;d=0;while(1){if((h[23482+d>>0]|0)==(a|0)){e=2;break}d=d+1|0;if((d|0)==87){d=87;a=23570;e=5;break}}if((e|0)==2)if(!d)d=23570;else{a=23570;e=5}if((e|0)==5)while(1){do{e=a;a=a+1|0}while((b[e>>0]|0)!=0);d=d+-1|0;if(!d){d=a;break}else e=5}return zr(d,f[c+20>>2]|0)|0}function bl(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4628;b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}f[a+12>>2]=4652;b=f[a+32>>2]|0;if(b|0)ds(b);b=f[a+20>>2]|0;if(!b)return;ds(b);return}function cl(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2164;b=f[a+76>>2]|0;if(b|0)ds(b);d=a+68|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)bs(b);f[a>>2]=1884;b=f[a+32>>2]|0;if(!b){ds(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);ds(a);return}function dl(a){a=a|0;if(!(f[a+64>>2]|0)){a=0;return a|0}if(!(f[a+68>>2]|0)){a=0;return a|0}if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}if(!(f[a+56>>2]|0)){a=0;return a|0}a=(f[a+92>>2]|0)!=-1;return a|0}function el(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;a=d+12|0;e=d;f[a>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;Jk(e,c,Rk(c)|0);pk(b,e,a)|0;a=f[a>>2]|0;Op(e);u=d;return a|0}function fl(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=4720;b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}f[a+12>>2]=4700;b=f[a+32>>2]|0;if(b|0)ds(b);b=f[a+20>>2]|0;if(!b)return;ds(b);return}function gl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=no(60)|0;d=c;e=d+60|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));e=ni(c,b)|0;f[a>>2]=e?c:0;a=e?0:c;if(e)return;mk(a);ds(a);return}function hl(a){a=a|0;if(!a)return;Op(a+28|0);ek(a+12|0,f[a+16>>2]|0);nk(a,f[a+4>>2]|0);ds(a);return}function il(a,b,c){a=a|0;b=b|0;c=c|0;switch(c<<24>>24){case 0:{c=no(20)|0;hp(c);break}case 1:{c=no(24)|0;Jp(c);break}case 2:{c=no(36)|0;uo(c);break}case 3:{c=no(28)|0;Cp(c);break}default:c=0}f[a>>2]=c;return}function jl(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=_o(j^a|0,i^b|0,j|0,i|0)|0;g=I;a=f^j;b=e^i;return _o((Bd(h,g,_o(f^c|0,e^d|0,f|0,e|0)|0,I,0)|0)^a|0,I^b|0,a|0,b|0)|0}function kl(a,c){a=a|0;c=c|0;var d=0,e=0;f[c>>2]=2;e=a+4|0;d=c+8|0;a=f[d>>2]|0;c=(f[c+12>>2]|0)-a|0;if(c>>>0<4294967292){Al(d,c+4|0,0);a=f[d>>2]|0}c=a+c|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[c>>0]=e;b[c+1>>0]=e>>8;b[c+2>>0]=e>>16;b[c+3>>0]=e>>24;return}function ll(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+32|0;a=d;e=d+8|0;p[a>>3]=0.0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;Jk(e,c,Rk(c)|0);a=xi(b,e,a)|0;Op(e);u=d;return a|0}function ml(a){a=a|0;var b=0,c=0;f[a>>2]=2528;b=f[a+76>>2]|0;if(b|0)ds(b);c=a+68|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)bs(b);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c);return}function nl(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&a>>>0>4294967295)while(1){e=bo(a|0,c|0,10,0)|0;d=d+-1|0;b[d>>0]=e&255|48;e=a;a=Hq(a|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=I}if(a)while(1){d=d+-1|0;b[d>>0]=(a>>>0)%10|0|48;if(a>>>0<10)break;else a=(a>>>0)/10|0}return d|0}function ol(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=5084;b=f[a+96>>2]|0;if(b|0){d=a+100|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);ds(b)}b=f[a+84>>2]|0;if(!b){lh(a);ds(a);return}d=a+88|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);lh(a);ds(a);return}function pl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[a>>2]|0;if((d|0)<0){c=-1073741824;return c|0}if((f[(f[b>>2]|0)+(d<<2)>>2]|0)==-1073741824){c=-1073741824;return c|0}b=(d>>>0)/3|0;a=f[c+96>>2]|0;if((b|0)>=(((f[c+100>>2]|0)-a|0)/12|0|0))Ga(22894,22811,64,22889);c=f[a+(b*12|0)+(((d>>>0)%3|0)<<2)>>2]|0;return c|0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;a=d+12|0;e=d;f[a>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;Jk(e,c,Rk(c)|0);a=pk(b,e,a)|0;Op(e);u=d;return a|0}function rl(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=c+16|0;a=f[g>>2]|0;h=c+36|0;i=c+24|0;do if(a){if((a|0)!=(d|0)){f[h>>2]=(f[h>>2]|0)+1;f[i>>2]=2;b[c+54>>0]=1;break}if((f[i>>2]|0)==2)f[i>>2]=e}else{f[g>>2]=d;f[i>>2]=e;f[h>>2]=1}while(0);return}function sl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;Kc(a,b);if((b|0)<=-1)return;g=a+88|0;c=f[g>>2]|0;a=f[a+84>>2]|0;if((c-a>>2|0)<=(b|0))return;d=a+(b<<2)|0;a=d+4|0;b=c-a|0;e=b>>2;if(e){rn(d|0,a|0,b|0)|0;c=f[g>>2]|0}a=d+(e<<2)|0;if((c|0)==(a|0))return;f[g>>2]=c+(~((c+-4-a|0)>>>2)<<2);return}function tl(a){a=a|0;var b=0,c=0;f[a>>2]=2164;b=f[a+76>>2]|0;if(b|0)ds(b);c=a+68|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)bs(b);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c);return}function ul(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;f[a>>2]=b;j=b+16|0;h=f[j+4>>2]|0;i=a+8|0;f[i>>2]=f[j>>2];f[i+4>>2]=h;i=b+24|0;h=f[i+4>>2]|0;b=a+16|0;f[b>>2]=f[i>>2];f[b+4>>2]=h;b=a+40|0;f[b>>2]=c;f[b+4>>2]=d;a=a+48|0;f[a>>2]=e;f[a+4>>2]=g;return}function vl(a,b,c){a=a|0;b=b|0;c=c|0;if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)<512?!(Sa[f[(f[a>>2]|0)+52>>2]&255](a)|0):0){a=0;return a|0}a=ed(a,b,c)|0;return a|0}function wl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)<=-1)Ga(22786,22811,63,22889);d=f[a+96>>2]|0;if((((f[a+100>>2]|0)-d|0)/12|0|0)>(b|0)){a=d+(b*12|0)|0;vg(c,a,a+12|0);return 1}else Ga(22894,22811,64,22889);return 0}function xl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a>>2]=0;c=a+4|0;f[c>>2]=0;f[a+8>>2]=0;if(!b)return;if(b>>>0>1073741823){Pq(a);a=Ia(4)|0;Hr(a);sa(a|0,1488,137)}d=b<<2;e=no(d)|0;f[a>>2]=e;b=e+(b<<2)|0;f[a+8>>2]=b;_j(e|0,0,d|0)|0;f[c>>2]=b;return}function yl(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=5084;b=f[a+96>>2]|0;if(b|0){d=a+100|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);ds(b)}b=f[a+84>>2]|0;if(!b){lh(a);return}d=a+88|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);lh(a);return}function zl(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Bo(a,b,c)|0)){c=0;return c|0}b=f[b+4>>2]|0;if((c|0)<=-1)Ga(22609,22625,66,22717);a=f[b+8>>2]|0;if(((f[b+12>>2]|0)-a>>2|0)<=(c|0))Ga(22727,22625,67,22717);c=(f[(f[a+(c<<2)>>2]|0)+28>>2]|0)==9;return c|0}function Al(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;e=a+4|0;d=f[e>>2]|0;c=f[a>>2]|0;g=d-c|0;if(b>>>0<=g>>>0){if(b>>>0>>0?(h=c+b|0,(d|0)!=(h|0)):0)f[e>>2]=h}else nj(a,b-g|0);a=a+24|0;h=a;h=Kp(f[h>>2]|0,f[h+4>>2]|0,1,0)|0;f[a>>2]=h;f[a+4>>2]=I;return}function Bl(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2584;b=f[a+76>>2]|0;if(b|0)ds(b);f[a>>2]=1884;b=f[a+32>>2]|0;if(!b){ds(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);ds(a);return}function Cl(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0;e=h[a+12>>0]|0;g=a+8|0;b=f[g>>2]|0;if(b>>>0<4096?(d=a+4|0,c=f[d>>2]|0,(c|0)>0):0){i=f[a>>2]|0;a=c+-1|0;f[d>>2]=a;b=h[i+a>>0]|0|b<<8;f[g>>2]=b}d=b&255;a=0-e&255;e=X(b>>>8,a)|0;i=d>>>0>>0;f[g>>2]=i?e+d|0:b-a-e|0;return i|0}function Dl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;Jg(e,a,b,c);c=a+24|0;f[c>>2]=f[e>>2];b=e+4|0;dn(a+28|0,b)|0;Op(b);u=d;return c|0}function El(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;b=f[b+4>>2]|0;if(!b){c=0;return c|0}a=f[b+40>>2]|0;d=f[b+44>>2]|0;a:do if((a|0)==(d|0))b=0;else while(1){b=f[a>>2]|0;a=a+4|0;if((f[b+40>>2]|0)==(c|0))break a;if((a|0)==(d|0)){b=0;break}}while(0);c=b;return c|0}function Fl(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2220;b=f[a+76>>2]|0;if(b|0)ds(b);f[a>>2]=1884;b=f[a+32>>2]|0;if(!b){ds(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);ds(a);return}function Gl(a,b){a=a|0;b=b|0;var c=0,d=0;d=no(40)|0;f[d>>2]=-1;zo(d+8|0);Qa[f[(f[a>>2]|0)+16>>2]&7](a,d);c=b+88|0;b=f[c>>2]|0;f[c>>2]=d;if(!b)return 1;a=f[b+8>>2]|0;if(a|0){c=b+12|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;ds(a)}ds(b);return 1}function Hl(a){a=a|0;var b=0;f[a>>2]=3356;b=f[a+80>>2]|0;if(b|0)ds(b);b=f[a+68>>2]|0;if(b|0)ds(b);b=f[a+56>>2]|0;if(b|0)ds(b);b=f[a+44>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Il(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1604;b=f[a+16>>2]|0;if(b|0){d=a+20|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}b=f[a+4>>2]|0;if(!b){ds(a);return}d=a+8|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);ds(a);return}function Jl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;Kg(e,a,b,c);c=a+24|0;f[c>>2]=f[e>>2];b=e+4|0;dn(a+28|0,b)|0;Op(b);u=d;return c|0}function Kl(a){a=a|0;var b=0;f[a>>2]=2992;b=f[a+80>>2]|0;if(b|0)ds(b);b=f[a+68>>2]|0;if(b|0)ds(b);b=f[a+56>>2]|0;if(b|0)ds(b);b=f[a+44>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Ll(a){a=a|0;var b=0;f[a>>2]=4140;b=f[a+80>>2]|0;if(b|0)ds(b);b=f[a+68>>2]|0;if(b|0)ds(b);b=f[a+56>>2]|0;if(b|0)ds(b);b=f[a+44>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Ml(a){a=a|0;var b=0,c=0,d=0;b=f[a+8>>2]|0;c=f[a+12>>2]|0;if((b|0)==(c|0)){c=1;return c|0}a=a+32|0;while(1){d=f[b>>2]|0;b=b+4|0;if(!(Wa[f[(f[d>>2]|0)+16>>2]&127](d,f[a>>2]|0)|0)){b=0;a=5;break}if((b|0)==(c|0)){b=1;a=5;break}}if((a|0)==5)return b|0;return 0}function Nl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(Aq(a,f[b+8>>2]|0,g)|0)ak(0,b,c,d,e);else{a=f[a+8>>2]|0;Va[f[(f[a>>2]|0)+20>>2]&3](a,b,c,d,e,g)}return}function Ol(a){a=a|0;var b=0,c=0;f[a>>2]=2584;b=f[a+76>>2]|0;if(b|0)ds(b);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c);return}function Pl(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2640;is(a+108|0);f[a>>2]=1884;b=f[a+32>>2]|0;if(!b){ds(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);ds(a);return}function Ql(a){a=a|0;var b=0,c=0;f[a>>2]=4392;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)bs(b);f[a>>2]=1824;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ck(a);ds(a);return}Pa[f[(f[b>>2]|0)+4>>2]&255](b);ck(a);ds(a);return}function Rl(a){a=a|0;var b=0;f[a>>2]=3776;b=f[a+80>>2]|0;if(b|0)ds(b);b=f[a+68>>2]|0;if(b|0)ds(b);b=f[a+56>>2]|0;if(b|0)ds(b);b=f[a+44>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Sl(a){a=a|0;var b=0;f[a>>2]=3356;b=f[a+80>>2]|0;if(b|0)ds(b);b=f[a+68>>2]|0;if(b|0)ds(b);b=f[a+56>>2]|0;if(b|0)ds(b);b=f[a+44>>2]|0;if(!b)return;ds(b);return}function Tl(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0){a=0;return a|0}c=b*3|0;if((b|0)>715827882){a=0;return a|0}Ag(a,c,5072);Ag(a+12|0,c,5068);Mk(a+24|0,c);a=1;return a|0}function Ul(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[a+12>>2]|0;a=f[a+8>>2]|0;e=a;if((c|0)==(a|0)){b=0;return b|0}d=c-a>>2;c=0;while(1){a=f[e+(c<<2)>>2]|0;c=c+1|0;if((f[a+60>>2]|0)==(b|0)){c=5;break}if(c>>>0>=d>>>0){a=0;c=5;break}}if((c|0)==5)return a|0;return 0}function Vl(a){a=a|0;var b=0,c=0;f[a>>2]=2220;b=f[a+76>>2]|0;if(b|0)ds(b);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);ds(c);return}function Wl(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2276;is(a+108|0);f[a>>2]=1884;b=f[a+32>>2]|0;if(!b){ds(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);ds(a);return}function Xl(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1604;b=f[a+16>>2]|0;if(b|0){d=a+20|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}d=f[a+4>>2]|0;if(!d)return;c=a+8|0;b=f[c>>2]|0;if((b|0)!=(d|0))f[c>>2]=b+(~((b+-4-d|0)>>>2)<<2);ds(d);return}function Yl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=u;u=u+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;_j(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{mq(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}mq(a,f,e)}u=g;return}function Zl(a){a=a|0;var b=0;f[a>>2]=2992;b=f[a+80>>2]|0;if(b|0)ds(b);b=f[a+68>>2]|0;if(b|0)ds(b);b=f[a+56>>2]|0;if(b|0)ds(b);b=f[a+44>>2]|0;if(!b)return;ds(b);return}function _l(a){a=a|0;var b=0;f[a>>2]=4140;b=f[a+80>>2]|0;if(b|0)ds(b);b=f[a+68>>2]|0;if(b|0)ds(b);b=f[a+56>>2]|0;if(b|0)ds(b);b=f[a+44>>2]|0;if(!b)return;ds(b);return}function $l(a){a=a|0;var b=0,c=0;f[a>>2]=4392;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)bs(b);f[a>>2]=1824;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ck(a);return}Pa[f[(f[b>>2]|0)+4>>2]&255](b);ck(a);return}function am(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;f[a+4>>2]=b;b=f[b+4>>2]|0;if((c|0)<=-1)Ga(22609,22625,66,22717);d=f[b+8>>2]|0;if(((f[b+12>>2]|0)-d>>2|0)>(c|0)){f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=c;return 1}else Ga(22727,22625,67,22717);return 0}function bm(a){a=a|0;var b=0;f[a>>2]=3776;b=f[a+80>>2]|0;if(b|0)ds(b);b=f[a+68>>2]|0;if(b|0)ds(b);b=f[a+56>>2]|0;if(b|0)ds(b);b=f[a+44>>2]|0;if(!b)return;ds(b);return}function cm(a){a=a|0;var b=0,c=0;f[a>>2]=2640;is(a+108|0);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);ds(c);return}function dm(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0){a=0;return a|0}c=f[a+4>>2]|0;if(((f[c+12>>2]|0)-(f[c+8>>2]|0)>>2|0)<=(b|0)){c=0;return c|0}c=f[(f[a+8>>2]|0)+(f[(f[a+20>>2]|0)+(b<<2)>>2]<<2)>>2]|0;c=Wa[f[(f[c>>2]|0)+32>>2]&127](c,b)|0;return c|0}function em(a){a=a|0;var b=0;Hn(a);Hn(a+40|0);b=a+80|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;Ar(a+112|0);f[a+128>>2]=-1;f[a+132>>2]=-1;return}function fm(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;c=f[a>>2]|0;d=a+4|0;g=f[d>>2]|0;e=c;b=g+(~((g+-4-e|0)>>>2)<<2)|0;if((g|0)==(c|0))b=c;else f[d>>2]=b;f[a+16>>2]=0;f[a+12>>2]=b;if(!c)return;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-e|0)>>>2)<<2);ds(c);return}function gm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Aq(a,f[b+8>>2]|0,0)|0)rl(0,b,c,d);else{a=f[a+8>>2]|0;Xa[f[(f[a>>2]|0)+28>>2]&7](a,b,c,d)}return}function hm(a){a=a|0;var b=0,c=0;f[a>>2]=2276;is(a+108|0);f[a>>2]=1884;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);ds(c);return}function im(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0)Jk(a,f[c>>2]|0,f[c+4>>2]|0);else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}return}function jm(a,b){a=a|0;b=b|0;var c=0;c=f[a+4>>2]|0;if(c|0?((h[c+36>>0]|0)<<8&65535)<512:0){c=1;return c|0}c=Wa[f[(f[a>>2]|0)+48>>2]&127](a,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0;return c|0}function km(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+32|0;g=e;d=e+20|0;f[g>>2]=f[a+60>>2];f[g+4>>2]=0;f[g+8>>2]=b;f[g+12>>2]=d;f[g+16>>2]=c;if((Vp(Da(140,g|0)|0)|0)<0){f[d>>2]=-1;a=-1}else a=f[d>>2]|0;u=e;return a|0}function lm(a,b){a=a|0;b=b|0;var c=0;if((b|0)==-1|(b|0)>4){a=0;return a|0}c=f[a+20+(b*12|0)>>2]|0;if(((f[a+20+(b*12|0)+4>>2]|0)-c|0)<=0){a=0;return a|0}c=f[c>>2]|0;if((c|0)==-1){a=0;return a|0}a=f[(f[a+8>>2]|0)+(c<<2)>>2]|0;return a|0}function mm(a,b){a=a|0;b=b|0;var c=0;Un(a);f[a>>2]=1764;c=a+36|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;c=f[b>>2]|0;f[b>>2]=0;f[a+60>>2]=c;return}function nm(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)a=0;else{while(1){e=b[a>>0]|0;f=b[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){a=0;break a}else{a=a+1|0;c=c+1|0}}a=(e&255)-(f&255)|0}while(0);return a|0}function om(a,b,c){a=a|0;b=b|0;c=c|0;if(!(jk(f[a+8>>2]|0,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0)){a=0;return a|0}a=Na[f[(f[a>>2]|0)+32>>2]&31](a,b,c)|0;return a|0}function pm(a,b){a=a|0;b=b|0;var c=0;c=f[a+16>>2]|0;if(((f[a+20>>2]|0)-c>>2|0)<=(b|0)){a=0;return a|0}c=f[c+(b<<2)>>2]|0;if((c|0)<0){a=0;return a|0}a=Th(f[(f[a+36>>2]|0)+(c<<2)>>2]|0)|0;return a|0}function qm(a){a=a|0;if(!(f[a+44>>2]|0))return 0;if(!(f[a+28>>2]|0))return 0;if(!(f[a+32>>2]|0))return 0;if(!(f[a+36>>2]|0))return 0;else return (f[a+40>>2]|0)!=0|0;return 0}function rm(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;e=a+11|0;d=b[e>>0]|0;if(d<<24>>24<0)g=f[a+4>>2]|0;else g=d&255;if(g>>>0<=c>>>0){Kq(a);d=b[e>>0]|0}if(d<<24>>24<0)a=f[a>>2]|0;return a+c|0}function sm(a){a=a|0;var b=0,c=0;f[a>>2]=3412;b=f[a+60>>2]|0;if(b|0)ds(b);c=a+52|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ds(a);return}bs(b);ds(a);return}function tm(a){a=a|0;if(!(f[a+60>>2]|0))return 0;if(!(f[a+44>>2]|0))return 0;if(!(f[a+48>>2]|0))return 0;if(!(f[a+52>>2]|0))return 0;else return (f[a+56>>2]|0)!=0|0;return 0}function um(a){a=a|0;if(!(f[a+28>>2]|0)){a=0;return a|0}if(!(f[a+32>>2]|0)){a=0;return a|0}if(!(f[a+36>>2]|0)){a=0;return a|0}a=(f[a+40>>2]|0)!=0;return a|0}function vm(a){a=a|0;var c=0,d=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;c=f[a>>2]|0;if(!(c&8)){f[a+8>>2]=0;f[a+4>>2]=0;c=f[a+44>>2]|0;f[a+28>>2]=c;f[a+20>>2]=c;f[a+16>>2]=c+(f[a+48>>2]|0);c=0}else{f[a>>2]=c|32;c=-1}return c|0}function wm(a,c){a=a|0;c=c|0;var d=0,e=0;e=a;d=e+64|0;do{f[e>>2]=f[c>>2];e=e+4|0;c=c+4|0}while((e|0)<(d|0));e=a+64|0;f[a+88>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;b[e+20>>0]=0;return}function xm(a){a=a|0;var b=0,c=0;f[a>>2]=3048;b=f[a+60>>2]|0;if(b|0)ds(b);c=a+52|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ds(a);return}bs(b);ds(a);return}function ym(a){a=a|0;var b=0,c=0;f[a>>2]=4196;b=f[a+60>>2]|0;if(b|0)ds(b);c=a+52|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ds(a);return}bs(b);ds(a);return}function zm(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;e=g;f[a+36>>2]=15;if((f[a>>2]&64|0)==0?(f[e>>2]=f[a+60>>2],f[e+4>>2]=21523,f[e+8>>2]=g+16,Ca(54,e|0)|0):0)b[a+75>>0]=-1;e=Kh(a,c,d)|0;u=g;return e|0}function Am(a){a=a|0;if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}a=(f[a+56>>2]|0)!=0;return a|0}function Bm(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)!=0&(c|0)!=0){jc(a,b,c);return}else{yc(a,0,0);return}}function Cm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=$(e);f[a+4>>2]=b;ug(a+8|0,c,c+(d<<2)|0);n[a+20>>2]=e;return}function Dm(a){a=a|0;var b=0,c=0;c=a+15&-16|0;b=f[r>>2]|0;a=b+c|0;if((c|0)>0&(a|0)<(b|0)|(a|0)<0){ea()|0;va(12);return -1}f[r>>2]=a;if((a|0)>(da()|0)?(ca()|0)==0:0){f[r>>2]=b;va(12);return -1}return b|0}function Em(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c+4|0;e=c;f[e>>2]=0;f[d>>2]=f[e>>2];a=Lb(a,b,d)|0;u=c;return a|0}function Fm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;c=f[c>>2]|0;e=a;d=b-a>>2;while(1){if(!d)break;b=(d|0)/2|0;g=e+(b<<2)|0;a=(f[g>>2]|0)>>>0>>0;e=a?g+4|0:e;d=a?d+-1-b|0:b}return e|0}function Gm(a){a=a|0;var b=0,c=0;f[a>>2]=3832;b=f[a+60>>2]|0;if(b|0)ds(b);c=a+52|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ds(a);return}bs(b);ds(a);return}function Hm(a,b){a=a|0;b=b|0;b=f[b+88>>2]|0;if(!b){a=0;return a|0}if((f[b>>2]|0)!=2){a=0;return a|0}b=f[b+8>>2]|0;f[a+4>>2]=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;a=1;return a|0}function Im(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=X(c,b)|0;c=(b|0)==0?0:c;if((f[d+76>>2]|0)>-1){g=(js(d)|0)==0;a=pj(a,e,d)|0;if(!g)is(d)}else a=pj(a,e,d)|0;if((a|0)!=(e|0))c=(a>>>0)/(b>>>0)|0;return c|0}function Jm(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;b[a+24>>0]=1;f[a+28>>2]=9;c=a+40|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+56>>2]=-1;f[a+60>>2]=0;return}function Km(a,b){a=a|0;b=b|0;if(!(Wa[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){a=0;return a|0}if(!(Wa[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){a=0;return a|0}a=Sa[f[(f[a>>2]|0)+44>>2]&255](a)|0;return a|0}function Lm(a){a=a|0;var b=0;f[a>>2]=3412;b=f[a+60>>2]|0;if(b|0)ds(b);a=a+52|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;bs(b);return}function Mm(a,c,d){a=a|0;c=c|0;d=d|0;if(!(Bo(a,c,d)|0)){a=0;return a|0}d=f[a+8>>2]|0;if((b[d+24>>0]|0)!=3){a=0;return a|0}a=(f[d+28>>2]|0)==9;return a|0}function Nm(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){a=0;return a|0}if((b[c+24>>0]|0)!=3){a=0;return a|0}f[a+48>>2]=c;a=1;return a|0}function Om(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a>>0]|0;e=b[c>>0]|0;if(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24))do{a=a+1|0;c=c+1|0;d=b[a>>0]|0;e=b[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));return (d&255)-(e&255)|0}function Pm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(Aq(a,f[b+8>>2]|0,g)|0)ak(0,b,c,d,e);return}function Qm(a,c){a=a|0;c=c|0;if(((c|0)!=0?(f[c+56>>2]|0)==0:0)?(b[c+24>>0]|0)==3:0){f[a+44>>2]=c;c=1}else c=0;return c|0}function Rm(a){a=a|0;var b=0;f[a>>2]=3048;b=f[a+60>>2]|0;if(b|0)ds(b);a=a+52|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;bs(b);return}function Sm(a){a=a|0;var b=0;f[a>>2]=4196;b=f[a+60>>2]|0;if(b|0)ds(b);a=a+52|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;bs(b);return}function Tm(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){a=0;return a|0}if((b[c+24>>0]|0)!=3){a=0;return a|0}f[a+44>>2]=c;a=1;return a|0}function Um(a){a=a|0;var b=0,c=0;f[a>>2]=1824;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ck(a);ds(a);return}Pa[f[(f[b>>2]|0)+4>>2]&255](b);ck(a);ds(a);return}function Vm(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1884;b=f[a+32>>2]|0;if(!b){ds(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);ds(a);return}function Wm(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){a=0;return a|0}if((b[c+24>>0]|0)!=3){a=0;return a|0}f[a+64>>2]=c;a=1;return a|0}function Xm(a){a=a|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=f[a+4>>2]|0;e=(f[e+56>>2]|0)-(f[e+52>>2]|0)>>2;b[d>>0]=0;Rh(a+20|0,e,d);u=c;return}function Ym(a,c){a=a|0;c=c|0;if(((c|0)!=0?(f[c+56>>2]|0)==0:0)?(b[c+24>>0]|0)==3:0){f[a+60>>2]=c;c=1}else c=0;return c|0}function Zm(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){a=0;return a|0}if((b[c+24>>0]|0)!=3){a=0;return a|0}f[a+60>>2]=c;a=1;return a|0}function _m(a){a=a|0;var b=0;f[a>>2]=3832;b=f[a+60>>2]|0;if(b|0)ds(b);a=a+52|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;bs(b);return}function $m(){var a=0,b=0;a=no(40)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;n[a+16>>2]=$(1.0);b=a+20|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[a+36>>2]=$(1.0);return a|0}function an(a){a=a|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=f[a+4>>2]|0;e=(f[e+28>>2]|0)-(f[e+24>>2]|0)>>2;b[d>>0]=0;Rh(a+20|0,e,d);u=c;return}function bn(a){a=a|0;switch(a|0){case 11:case 2:case 1:{a=1;break}case 4:case 3:{a=2;break}case 6:case 5:{a=4;break}case 8:case 7:{a=8;break}case 9:{a=4;break}case 10:{a=8;break}default:a=-1}return a|0}function cn(a){a=a|0;f[a>>2]=4676;zj(a+8|0);ds(a);return}function dn(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;Tj(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}return a|0}function en(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+32|0;d=c;Gj(d,b);a=f[d+16>>2]|0;Op(d+4|0);u=c;return a|0}function fn(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=X(e,f)|0;d=a>>>16;a=(c>>>16)+(X(e,d)|0)|0;e=b>>>16;b=X(e,f)|0;return (I=(a>>>16)+(X(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function gn(a){a=a|0;var c=0,d=0;b[a+36>>0]=0;d=Kp(f[a+32>>2]|0,0,7,0)|0;d=Wo(d|0,I|0,3)|0;a=a+16|0;c=a;c=Kp(d|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;f[a>>2]=c;f[a+4>>2]=I;return}function hn(a){a=a|0;var b=0,c=0;f[a>>2]=1824;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){ck(a);return}Pa[f[(f[b>>2]|0)+4>>2]&255](b);ck(a);return}function jn(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ga(7630,7636,76,7784);return 0}function kn(a){a=a|0;f[a>>2]=4676;zj(a+8|0);return}function ln(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[b+44>>2]=e;Od(a,b,c,d,e);return}function mn(a,b){a=a|0;b=b|0;var c=0;if((b|0)==-1|(b|0)>4){b=-1;return b|0}c=f[a+20+(b*12|0)>>2]|0;if(((f[a+20+(b*12|0)+4>>2]|0)-c|0)<=0){b=-1;return b|0}b=f[c>>2]|0;return b|0}function nn(a){a=a|0;var b=0,c=0;f[a>>2]=1884;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);ds(c);return}function on(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(Aq(a,f[b+8>>2]|0,0)|0)rl(0,b,c,d);return}function pn(a){a=a|0;var c=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;b[a+24>>0]=1;a=a+28|0;c=a+40|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(c|0));return}function qn(a){a=a|0;var b=0;f[a>>2]=4944;b=a+4|0;f[a+40>>2]=0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;d[b+32>>1]=0;return}function rn(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else Fh(a,c,d)|0;return a|0}function sn(a){a=a|0;var c=0,d=0,e=0;c=f[a>>2]|0;d=(b[c>>0]|0)+-48|0;if(d>>>0<10){e=c;c=0;do{c=d+(c*10|0)|0;e=e+1|0;f[a>>2]=e;d=(b[e>>0]|0)+-48|0}while(d>>>0<10)}else c=0;return c|0}function tn(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1572;b=f[a+8>>2]|0;if(!b){ds(a);return}d=a+12|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b);ds(a);return}function un(a){a=a|0;var b=0;f[a>>2]=3468;b=f[a+60>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function vn(a,b){a=a|0;b=b|0;var c=0;if((b|0)<=-1)Ga(22609,22625,58,22717);c=f[a+8>>2]|0;if(((f[a+12>>2]|0)-c>>2|0)>(b|0))return f[c+(b<<2)>>2]|0;else Ga(22727,22625,59,22717);return 0}function wn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((b|0)>0)d=0;else return;do{e=f[a+(d<<2)>>2]|0;f[c+(d<<2)>>2]=e<<31>>31^e>>>1;d=d+1|0}while((d|0)!=(b|0));return}function xn(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=h[23464+(a&15)>>0]|0|e;a=Wo(a|0,c|0,4)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function yn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=f[c>>2];a=Na[f[(f[a>>2]|0)+16>>2]&31](a,b,d)|0;if(a)f[c>>2]=f[d>>2];u=e;return a&1|0}function zn(){var a=0,b=0;b=ko()|0;if((b|0?(a=f[b>>2]|0,a|0):0)?(b=a+48|0,(f[b>>2]&-256|0)==1126902528?(f[b+4>>2]|0)==1129074247:0):0)Zp(f[a+12>>2]|0);Zp(jr()|0)}function An(a){a=a|0;var b=0;f[a>>2]=3104;b=f[a+60>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Bn(a){a=a|0;var b=0;f[a>>2]=4252;b=f[a+60>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Cn(a){a=a|0;var c=0;c=b[w+(a&255)>>0]|0;if((c|0)<8)return c|0;c=b[w+(a>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=b[w+(a>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (b[w+(a>>>24)>>0]|0)+24|0}function Dn(a){a=a|0;var b=0,c=0,d=0;if(!a)return;b=f[a>>2]|0;if(b|0){d=a+4|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);ds(b)}ds(a);return}function En(a,c){a=a|0;c=c|0;var d=0;b[c+84>>0]=1;d=f[c+68>>2]|0;c=c+72|0;a=f[c>>2]|0;if((a|0)==(d|0))return 1;f[c>>2]=a+(~((a+-4-d|0)>>>2)<<2);return 1}function Fn(a,b){a=a|0;b=b|0;if(b>>>0>=2){a=0;return a|0}f[a+28>>2]=b;a=1;return a|0}function Gn(a){a=a|0;var b=0;f[a>>2]=3888;b=f[a+60>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Hn(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;d[a+38>>1]=0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;b[c+28>>0]=0;return}function In(a){a=a|0;var b=0,c=0;f[a>>2]=1572;c=f[a+8>>2]|0;if(!c)return;b=a+12|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);ds(c);return}function Jn(a,b){a=a|0;b=b|0;return aj(a+8|0,b)|0}function Kn(a,b,c){a=a|0;b=b|0;c=c|0;Pb(a,b,c);return}function Ln(a){a=a|0;f[a>>2]=3468;a=f[a+60>>2]|0;if(!a)return;ds(a);return}function Mn(a,b){a=a|0;b=b|0;if(!b)return 0;else Ga(12983,13354,61,12994);return 0}function Nn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if((f[b+4>>2]|0)==(c|0)?(e=b+28|0,(f[e>>2]|0)!=1):0)f[e>>2]=d;return}function On(a,b){a=a|0;b=b|0;if(!b)return 0;else Ga(12983,12583,65,12994);return 0}function Pn(a){a=a|0;f[a>>2]=3104;a=f[a+60>>2]|0;if(!a)return;ds(a);return}function Qn(a){a=a|0;f[a>>2]=4252;a=f[a+60>>2]|0;if(!a)return;ds(a);return}function Rn(a){a=a|0;var b=0;f[a>>2]=4652;b=f[a+20>>2]|0;if(b|0)ds(b);b=f[a+8>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function Sn(a,c,d){a=a|0;c=c|0;d=d|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=a&7|48;a=Wo(a|0,c|0,3)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function Tn(){var a=0,b=0;a=no(24)|0;f[a>>2]=1572;f[a+4>>2]=-1;b=a+8|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;return a|0}function Un(a){a=a|0;f[a>>2]=1604;a=a+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return}function Vn(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=f[d>>2]|0;a=(f[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;Fh(e|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+a;return c|0}function Wn(a,b){a=a|0;b=b|0;if(!b)return 0;else Ga(12983,13693,68,12994);return 0}function Xn(a,b){a=a|0;b=b|0;return cj(a+8|0,b)|0}function Yn(a){a=a|0;var c=0;Jm(a);c=a+64|0;f[a+88>>2]=0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;b[c+20>>0]=0;return}function Zn(a){a=a|0;var b=0,c=0;if(!a)return;b=f[a+8>>2]|0;if(b|0){c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;ds(b)}ds(a);return}function _n(a){a=a|0;f[a>>2]=3888;a=f[a+60>>2]|0;if(!a)return;ds(a);return}function $n(a){a=a|0;var b=0;f[a>>2]=4700;b=f[a+20>>2]|0;if(b|0)ds(b);b=f[a+8>>2]|0;if(!b){ds(a);return}ds(b);ds(a);return}function ao(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;f[a>>2]=b;b=a+8|0;f[b>>2]=c;f[b+4>>2]=0;d[a+38>>1]=e;e=a+16|0;f[e>>2]=0;f[e+4>>2]=0;return}function bo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g|0;Bd(a,b,c,d,e)|0;u=g;return (I=f[e+4>>2]|0,f[e>>2]|0)|0}function co(a){a=a|0;f[a>>2]=3524;is(a+92|0);ds(a);return}function eo(a){a=a|0;var b=0;f[a>>2]=4652;b=f[a+20>>2]|0;if(b|0)ds(b);b=f[a+8>>2]|0;if(!b)return;ds(b);return}function fo(a){a=a|0;Iq(a);f[a+16>>2]=0;f[a+20>>2]=0;f[a+12>>2]=a+16;a=a+24|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function go(a){a=a|0;ap(a);f[a>>2]=5084;a=a+84|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function ho(a){a=a|0;f[a>>2]=3160;is(a+92|0);ds(a);return}function io(a){a=a|0;f[a>>2]=4308;is(a+92|0);ds(a);return}function jo(a){a=a|0;f[a>>2]=3524;is(a+92|0);return}function ko(){var a=0,b=0;a=u;u=u+16|0;if(!(Aa(26848,3)|0)){b=qa(f[6713]|0)|0;u=a;return b|0}else To(25997,a);return 0}function lo(a){a=a|0;var b=0;f[a>>2]=4700;b=f[a+20>>2]|0;if(b|0)ds(b);b=f[a+8>>2]|0;if(!b)return;ds(b);return}function mo(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=fn(e,f)|0;a=I;return (I=(X(b,f)|0)+(X(d,e)|0)+a|a&0,c|0|0)|0}function no(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=$a(b)|0;if(a|0)break;a=hr()|0;if(!a){a=0;break}Ua[a&3]()}return a|0}function oo(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;a=gs(f[a+60>>2]|0)|0;f[c>>2]=a;a=Vp(ua(6,c|0)|0)|0;u=b;return a|0}function po(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return jd(b,c,d)|0}function qo(a){a=a|0;f[a>>2]=3944;is(a+92|0);ds(a);return}function ro(a){a=a|0;var b=0;b=u;u=u+16|0;cc(a);if(!(ra(f[6713]|0,0)|0)){u=b;return}else To(26096,b)}function so(a){a=a|0;f[a>>2]=3160;is(a+92|0);return}function to(a){a=a|0;f[a>>2]=4308;is(a+92|0);return}function uo(a){a=a|0;Jp(a);f[a>>2]=4392;f[a+24>>2]=-1;f[a+28>>2]=0;n[a+32>>2]=$(0.0);return}function vo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return yd(b,c,d)|0}function wo(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;b=a+8|0;f[b>>2]=c;f[b+4>>2]=0;a=a+16|0;f[a>>2]=0;f[a+4>>2]=0;return}function xo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return (((f[a+8>>2]|0)+-1|0)==(d|0)?0:d+1|0)|0}function yo(a){a=a|0;f[a>>2]=3944;is(a+92|0);return}function zo(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;a=a+16|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function Ao(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Bo(a,b,c){a=a|0;b=b|0;c=c|0;return am(a,b,c)|0}function Co(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 Ra[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Do(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>c;return a>>>c|(b&(1<>c-32|0}function Eo(a,b,c){a=a|0;b=b|0;c=c|0;return mn(b,c)|0}function Fo(a){a=a|0;be(a);ds(a);return}function Go(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=u;u=u+16|0;e=d;f[e>>2]=c;c=ar(a,b,e)|0;u=d;return c|0}function Ho(a,b,c){a=a|0;b=$(b);c=c|0;var d=La;d=$($(1.0)/$(c|0));n[a+4>>2]=d;n[a>>2]=b;return}function Io(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Cj(b,c,d)|0}function Jo(){var a=0;a=u;u=u+16|0;if(!(ya(26852,139)|0)){u=a;return}else To(26046,a)}function Ko(a){a=a|0;jf(a);ds(a);return}function Lo(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;f[d>>2]=b;b=ji(f[1386]|0,a,d)|0;u=c;return b|0}function Mo(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;Va[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function No(a){a=a|0;if(!(f[a+44>>2]|0))return 0;else return Sa[f[(f[a>>2]|0)+48>>2]&255](a)|0;return 0}function Oo(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return xh(b,c,d)|0}function Po(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)_j(a|0,(Cr(c)|0)&255|0,b|0)|0;return a|0}function Qo(a){a=a|0;return 4}function Ro(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<>>32-c;return a<>2]|0;return Wa[f[(f[a>>2]|0)+16>>2]&127](a,b)|0}function To(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;f[c>>2]=b;b=f[1293]|0;ji(b,a,c)|0;Ck(10,b)|0;wa()}function Uo(a,b){a=a|0;b=b|0;a=f[a+48>>2]|0;return Wa[f[(f[a>>2]|0)+12>>2]&127](a,b)|0}function Vo(a,b){a=a|0;b=b|0;a=f[a+48>>2]|0;return Wa[f[(f[a>>2]|0)+20>>2]&127](a,b)|0}function Wo(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Xo(a,b,c){a=a|0;b=b|0;c=c|0;return Dl(a,b,c)|0}function Yo(a){a=a|0;Ae(a);ds(a);return}function Zo(){}function _o(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 (I=d,a-c>>>0|0)|0}function $o(a){a=a|0;return 5}function ap(a){a=a|0;var b=0;f[a>>2]=5124;a=a+4|0;b=a+80|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function bp(a){a=a|0;return 6}function cp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return wl(b,c,d)|0}function dp(a,b,c){a=a|0;b=b|0;c=c|0;f[a+28>>2]=b;f[a+32>>2]=c;return 1}function ep(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Bi(f[b>>2]|0,f[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function fp(a,b,c){a=a|0;b=b|0;c=c|0;return Eo(a,b,c)|0}function gp(a,b,c){a=a|0;b=b|0;c=c|0;return Pg(b,c)|0}function hp(a){a=a|0;f[a>>2]=1716;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=-1;f[a+16>>2]=0;return}function ip(a,b){a=a|0;b=b|0;Sk(a,b);return}function jp(a){a=a|0;if(!a)return;Op(a+4|0);ds(a);return}function kp(a){a=a|0;a=a+4|0;if((b[a+11>>0]|0)<0){a=f[a>>2]|0;return a|0}else return a|0;return 0}function lp(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Oa[a&3](b|0,c|0,d|0,e|0,f|0)}function mp(a,b,c){a=a|0;b=b|0;c=c|0;return Jl(a,b,c)|0}function np(a,b,c){a=a|0;b=b|0;c=c|0;return Gk(a,b,c)|0}function op(a,b,c){a=a|0;b=b|0;c=c|0;return ll(a,b,c)|0}function pp(a,b,c){a=a|0;b=b|0;c=c|0;return yk(a,b,c)|0}function qp(a,b,c){a=a|0;b=b|0;c=c|0;return +(+$k(a,b,c))}function rp(a){a=a|0;a=f[a+48>>2]|0;return Sa[f[(f[a>>2]|0)+28>>2]&255](a)|0}function sp(a,b){a=a|0;b=b|0;return Wa[f[(f[a>>2]|0)+12>>2]&127](a,b)|0}function tp(a,b){a=a|0;b=b|0;return Wa[f[(f[a>>2]|0)+56>>2]&127](a,b)|0}function up(a){a=a|0;a=f[a+48>>2]|0;return Sa[f[(f[a>>2]|0)+24>>2]&255](a)|0}function vp(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;return}function wp(a,b,c){a=a|0;b=b|0;c=c|0;return El(a,b,c)|0}function xp(a,b){a=a|0;b=b|0;f[a+4>>2]=b;return 1}function yp(a,b,c){a=a|0;b=b|0;c=c|0;return Qp(b,c)|0}function zp(a){a=a|0;a=f[a+48>>2]|0;return Sa[f[(f[a>>2]|0)+36>>2]&255](a)|0}function Ap(a,b,c){a=a|0;b=b|0;c=c|0;return ql(a,b,c)|0}function Bp(a,b,c){a=a|0;b=b|0;c=c|0;return el(a,b,c)|0}function Cp(a){a=a|0;Jp(a);f[a>>2]=2724;f[a+24>>2]=-1;return}function Dp(a,b){a=a|0;b=b|0;f[a+8>>2]=b;f[a+12>>2]=-1;return 1}function Ep(a,b,c){a=a|0;b=b|0;c=c|0;return Fj(b,c)|0}function Fp(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;I=f[s+4>>2]|0;return b|0}function Gp(a){a=a|0;f[a+12>>2]=0;f[a+16>>2]=0;f[a>>2]=0;n[a+4>>2]=$(0.0);return}function Hp(){var a=0;a=no(40)|0;f[a>>2]=-1;zo(a+8|0);return a|0}function Ip(){var a=0;a=no(8)|0;f[a>>2]=1544;f[a+4>>2]=-1;return a|0}function Jp(a){a=a|0;hp(a);f[a>>2]=1824;f[a+20>>2]=0;return}function Kp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (I=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Lp(a,b){a=a|0;b=b|0;ip(a,b);return}function Mp(a,b){a=a|0;b=b|0;return $(n[(f[a+8>>2]|0)+(b<<2)>>2])}function Np(a,b){a=a|0;b=b|0;return en(a,b)|0}function Op(a){a=a|0;if((b[a+11>>0]|0)<0)ds(f[a>>2]|0);return}function Pp(a){a=a|0;if(!a)return;Pa[f[(f[a>>2]|0)+4>>2]&255](a);return}function Qp(a,b){a=a|0;b=b|0;return Ul(a,b)|0}function Rp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Xa[a&7](b|0,c|0,d|0,e|0)}function Sp(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)rn(a|0,b|0,c|0)|0;return a|0}function Tp(a){a=a|0;var b=0;b=a+60|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Up(a,b,c){a=a|0;b=b|0;c=c|0;return vn(b,c)|0}function Vp(a){a=a|0;var b=0;if(a>>>0>4294963200){b=Rr()|0;f[b>>2]=0-a;a=-1}return a|0}function Wp(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Fh(a|0,b|0,c|0)|0;return a|0}function Xp(a,b){a=a|0;b=b|0;return -1}function Yp(a){a=a|0;if(!a)a=0;else a=(mi(a,1448,1520,0)|0)!=0;return a&1|0}function Zp(a){a=a|0;var b=0;b=u;u=u+16|0;Ua[a&3]();To(26149,b)}function _p(a){a=a|0;Vi(a);ds(a);return}function $p(a){a=a|0;hq(a);f[a>>2]=4520;f[a+48>>2]=0;return}function aq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Na[a&31](b|0,c|0,d|0)|0}function bq(a,b,c){a=a|0;b=b|0;c=c|0;wo(a,b,c);return}function cq(a){a=a|0;if(!a)return;is(a+24|0);ds(a);return}function dq(a,b){a=a|0;b=b|0;return f[(f[a+4>>2]|0)+(b<<2)>>2]|0}function eq(){var a=0;a=no(64)|0;Jm(a);return a|0}function fq(a,b){a=a|0;b=b|0;return $(lq(a,b))}function gq(a){a=a|0;return f[a+8>>2]|0}function hq(a){a=a|0;qn(a);f[a>>2]=4460;f[a+44>>2]=0;return}function iq(a){a=a|0;if(!a)return;Jj(a);ds(a);return}function jq(a,b){a=a|0;b=b|0;return Wq(a,b)|0}function kq(a){a=a|0;return b[(f[a+8>>2]|0)+24>>0]|0}function lq(a,b){a=a|0;b=b|0;return $(n[(f[a>>2]|0)+(b<<2)>>2])}function mq(a,b,c){a=a|0;b=b|0;c=c|0;if(!(f[a>>2]&32))pj(b,c,a)|0;return}function nq(a){a=a|0;return (f[a+8>>2]|0)-(f[a+4>>2]|0)>>2|0}function oq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ta[a&15](b|0,c|0,d|0)}function pq(){var a=0;a=no(96)|0;Yn(a);return a|0}function qq(a){a=a|0;var b=0;b=u;u=u+a|0;u=u+15&-16;return b|0}function rq(a){a=a|0;return ((f[a+100>>2]|0)-(f[a+96>>2]|0)|0)/12|0|0}function sq(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Dj(a,b,0)|0;return a|0}function tq(a){a=a|0;var b=0;b=($r()|0)+188|0;return al(a,f[b>>2]|0)|0}function uq(){var a=0;a=no(12)|0;Mq(a);return a|0}function vq(){var a=0;a=no(40)|0;Hn(a);return a|0}function wq(a,b){a=a|0;b=b|0;return Eq(a,b)|0}function xq(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(4);return 0}function yq(a){a=a|0;ck(a);ds(a);return}function zq(a){a=a|0;n[a>>2]=$(1.0);n[a+4>>2]=$(1.0);return}function Aq(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Bq(a){a=a|0;Un(a);f[a>>2]=1660;return}function Cq(a,b){a=a|0;b=b|0;var c=0;c=Rq(a|0)|0;return ((b|0)==0?a:c)|0}function Dq(a){a=a|0;return (f[a+12>>2]|0)-(f[a+8>>2]|0)>>2|0}function Eq(a,b){a=a|0;b=b|0;return f[(f[a>>2]|0)+(b<<2)>>2]|0}function Fq(a,b){a=a|0;b=b|0;f[a+4>>2]=b;return}function Gq(a,b){a=a|0;b=b|0;return 1}function Hq(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Bd(a,b,c,d,0)|0}function Iq(a){a=a|0;f[a+4>>2]=0;f[a+8>>2]=0;f[a>>2]=a+4;return}function Jq(){var a=0;a=no(84)|0;ap(a);return a|0}function Kq(a){a=a|0;Ga(25672,25550,1194,25701)}function Lq(a){a=a|0;Ga(25521,25550,1183,25651)}function Mq(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}function Nq(a){a=a|0;return (f[a+4>>2]|0)-(f[a>>2]|0)>>2|0}function Oq(a){a=a|0;Ga(25498,25397,315,25701)}function Pq(a){a=a|0;Ga(25374,25397,304,25651)}function Qq(a,b,c){a=a|0;b=b|0;c=c|0;return Wa[a&127](b|0,c|0)|0}function Rq(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Sq(a){a=a|0;hq(a);f[a>>2]=4860;return}function Tq(){var a=0;a=no(1)|0;is(a);return a|0}function Uq(a,c){a=a|0;c=c|0;b[a>>0]=b[c>>0]|0;return}function Vq(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(8)}function Wq(a,b){a=a|0;b=b|0;return f[b+4>>2]|0}function Xq(a){a=a|0;return $(n[a+20>>2])}function Yq(a){a=a|0;return f[a+4>>2]|0}function Zq(a){a=a|0;if(!a)return;ds(a);return}function _q(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function $q(a){a=a|0;return 3}function ar(a,b,c){a=a|0;b=b|0;c=c|0;return Rj(a,2147483647,b,c)|0}function br(a){a=a|0;return f[a+88>>2]|0}function cr(a,b,c){a=a|0;b=b|0;c=c|0;Qa[a&7](b|0,c|0)}function dr(){var a=0;a=no(40)|0;fo(a);return a|0}function er(){var a=0;a=no(108)|0;go(a);return a|0}function fr(a){a=a|0;return (b[a+32>>0]|0)!=0|0}function gr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;aa(1)}function hr(){var a=0;a=f[6714]|0;f[6714]=a+0;return a|0}function ir(a){a=a|0;return f[a+56>>2]|0}function jr(){var a=0;a=f[1545]|0;f[1545]=a+0;return a|0}function kr(a){a=a|0;lh(a);ds(a);return}function lr(a){a=a|0;return b[a+24>>0]|0}function mr(a,b){a=a|0;b=b|0;return 0}function nr(a){a=a|0;return f[a+40>>2]|0}function or(a){a=a|0;return f[a+48>>2]|0}function pr(a,b){a=a|0;b=b|0;return Sa[a&255](b|0)|0}function qr(a){a=a|0;return f[a+60>>2]|0}function rr(a){a=a|0;return f[a+28>>2]|0}function sr(a){a=a|0;xa(a|0)|0;zn()}function tr(a,b){a=a|0;b=b|0;u=a;v=b}function ur(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(10)}function vr(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function wr(a){a=a|0;return (f[a>>2]|0)==0|0}function xr(a){a=a|0;return f[a+80>>2]|0}function yr(a,b){a=a|0;b=b|0;Pa[a&255](b|0)}function zr(a,b){a=a|0;b=b|0;return ep(a,b)|0}function Ar(a){a=a|0;b[a+12>>0]=0;return}function Br(a){a=a|0;is(a);ds(a);return}function Cr(a){a=a|0;return a&255|0}function Dr(a){a=a|0;f[a>>2]=0;return}function Er(a,b,c){a=a|0;b=b|0;c=c|0;aa(0);return 0}function Fr(a){a=a|0;return f[a>>2]|0}function Gr(a){a=a|0;return 2}function Hr(a){a=a|0;f[a>>2]=6276;return}function Ir(a){a=a|0;return 1}function Jr(a,b){a=+a;b=b|0;return +(+Xk(a,b))}function Kr(){return 3}function Lr(a,b,c){a=a|0;b=b|0;c=c|0;aa(6)}function Mr(){return -4}function Nr(){return 4}function Or(){return -3}function Pr(){return 1}function Qr(){return 2}function Rr(){return ($r()|0)+64|0}function Sr(){return -5}function Tr(a,b){a=a|0;b=b|0;aa(9);return 0}function Ur(a){a=a|0;return 26189}function Vr(a){a=a|0;Ua[a&3]()}function Wr(){return -2}function Xr(){Ha()}function Yr(){return -1}function Zr(a,b){a=a|0;b=b|0;aa(3)}function _r(){return 0}function $r(){return ns()|0}function as(a){a=a|0;return no(a)|0}function bs(a){a=a|0;ds(a);return}function cs(a){a=a|0;u=a}function ds(a){a=a|0;cc(a);return}function es(a){a=a|0;I=a}function fs(){return 26784}function gs(a){a=a|0;return a|0}function hs(a){a=a|0;aa(5);return 0}function is(a){a=a|0;return}function js(a){a=a|0;return 0}function ks(){return I|0}function ls(){return u|0}function ms(a){a=a|0;aa(2)}function ns(){return 5300}function os(){aa(7)} +function $b(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+16|0;B=D+8|0;z=D;A=D+4|0;if(!(Hf(a,b)|0)){a=0;u=D;return a|0}C=b+96|0;o=b+100|0;d=f[o>>2]|0;b=f[C>>2]|0;if((d-b|0)<=0){a=1;u=D;return a|0}n=a+56|0;v=a+8|0;r=a+12|0;s=a+20|0;p=a+24|0;t=a+32|0;q=a+36|0;x=a+68|0;y=a+76|0;w=a+72|0;m=0;while(1){if(!(f[(f[n>>2]|0)+(m>>>5<<2)>>2]&1<<(m&31))){i=m*3|0;f[z>>2]=i;f[B>>2]=f[z>>2];Rb(a,0,B);l=(f[r>>2]|0)-(f[v>>2]|0)>>2;f[z>>2]=i+1;f[B>>2]=f[z>>2];Rb(a,1,B);j=(f[p>>2]|0)-(f[s>>2]|0)>>2;k=j>>>0>l>>>0;f[z>>2]=i+2;f[B>>2]=f[z>>2];Rb(a,2,B);l=(f[q>>2]|0)-(f[t>>2]|0)>>2>>>0>(k?j:l)>>>0?2:k?1:((l|0)==0)<<31>>31;if((f[x>>2]|0)>0){d=f[y>>2]|0;f[B>>2]=d;k=f[c>>2]|0;i=k+4|0;e=f[i>>2]|0;j=k+8|0;b=k;if(e>>>0<(f[j>>2]|0)>>>0){f[e>>2]=d;f[i>>2]=e+4}else hf(k,B);h=f[a+44+(l<<2)>>2]|0;d=f[a>>2]|0;if((h|0)==-1073741824)e=-1073741824;else{g=(h|0)/3|0;if((h|0)<=-3){d=12;break}e=f[d+96>>2]|0;if((g|0)>=(((f[d+100>>2]|0)-e|0)/12|0|0)){d=14;break}e=f[e+(g*12|0)+(((h|0)%3|0)<<2)>>2]|0}f[B>>2]=e;d=f[i>>2]|0;if(d>>>0<(f[j>>2]|0)>>>0){f[d>>2]=e;f[i>>2]=d+4}else hf(k,B);h=(f[w>>2]|0)+2|0;f[w>>2]=h;if(h&1){f[B>>2]=e;d=f[i>>2]|0;if(d>>>0<(f[j>>2]|0)>>>0){f[d>>2]=e;f[i>>2]=d+4}else hf(k,B);f[w>>2]=(f[w>>2]|0)+1}}else b=f[c>>2]|0;f[A>>2]=b;f[B>>2]=f[A>>2];Cb(a,l,B);b=f[C>>2]|0;d=f[o>>2]|0}m=m+1|0;if((m|0)>=((d-b|0)/12|0|0)){b=1;d=26;break}}if((d|0)==12)ra(12835,12860,63,12943);else if((d|0)==14)ra(12948,12860,64,12943);else if((d|0)==26){u=D;return b|0}return 0}function ac(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+176|0;h=t+136|0;s=t+64|0;o=t;j=t+32|0;i=f[(f[c+4>>2]|0)+44>>2]|0;n=Yi(88)|0;f[n+4>>2]=0;f[n>>2]=2424;k=n+12|0;f[k>>2]=2404;m=n+64|0;f[m>>2]=0;f[n+68>>2]=0;f[n+72>>2]=0;e=n+16|0;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[n+76>>2]=i;f[n+80>>2]=d;f[n+84>>2]=0;l=n;q=s+4|0;f[q>>2]=2404;p=s+56|0;f[p>>2]=0;r=s+60|0;f[r>>2]=0;f[s+64>>2]=0;e=s+8|0;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));e=f[c+8>>2]|0;f[o>>2]=2404;c=o+4|0;g=c+4|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[g+12>>2]=0;f[g+16>>2]=0;f[g+20>>2]=0;g=e;f[c>>2]=g;g=((f[g+4>>2]|0)-(f[e>>2]|0)>>2>>>0)/3|0;b[h>>0]=0;Wd(o+8|0,g,h);Ra[f[(f[o>>2]|0)+8>>2]&127](o);Xc(j,o);Xc(h,j);f[s>>2]=f[h+4>>2];g=s+4|0;nd(g,h)|0;f[h>>2]=2404;c=f[h+20>>2]|0;if(c|0)Em(c);c=f[h+8>>2]|0;if(c|0)Em(c);f[s+36>>2]=e;f[s+40>>2]=d;f[s+44>>2]=i;f[s+48>>2]=n;f[j>>2]=2404;c=f[j+20>>2]|0;if(c|0)Em(c);c=f[j+8>>2]|0;if(c|0)Em(c);f[n+8>>2]=f[s>>2];nd(k,g)|0;c=n+44|0;n=s+36|0;f[c>>2]=f[n>>2];f[c+4>>2]=f[n+4>>2];f[c+8>>2]=f[n+8>>2];f[c+12>>2]=f[n+12>>2];b[c+16>>0]=b[n+16>>0]|0;qd(m,f[p>>2]|0,f[r>>2]|0);f[a>>2]=l;f[o>>2]=2404;c=f[o+20>>2]|0;if(c|0)Em(c);c=f[o+8>>2]|0;if(c|0)Em(c);c=f[p>>2]|0;if(c|0){e=f[r>>2]|0;if((e|0)!=(c|0))f[r>>2]=e+(~((e+-4-c|0)>>>2)<<2);Em(c)}f[q>>2]=2404;c=f[s+24>>2]|0;if(c|0)Em(c);c=f[s+12>>2]|0;if(!c){u=t;return}Em(c);u=t;return}function bc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=u;u=u+16|0;r=s;ed(a+80|0,a)|0;if(!($e(a)|0)){r=0;u=s;return r|0}c=b;d=a;e=c+40|0;do{f[c>>2]=f[d>>2];c=c+4|0;d=d+4|0}while((c|0)<(e|0));h=a+176|0;f[h>>2]=2;k=a+180|0;f[k>>2]=7;c=f[a+152>>2]|0;if((c|0)<0){r=0;u=s;return r|0}j=a+156|0;f[r>>2]=0;g=a+160|0;e=f[g>>2]|0;d=f[j>>2]|0;i=e-d>>2;if(c>>>0<=i>>>0)if(c>>>0>>0?(l=d+(c<<2)|0,(e|0)!=(l|0)):0){f[g>>2]=e+(~((e+-4-l|0)>>>2)<<2);d=2;c=7}else{d=2;c=7}else{ee(j,c-i|0,r);d=f[h>>2]|0;c=f[k>>2]|0}g=c-d+1|0;o=a+184|0;n=a+188|0;d=f[n>>2]|0;e=f[o>>2]|0;h=(d-e|0)/12|0;c=d;if(g>>>0<=h>>>0){if(g>>>0>>0?(m=e+(g*12|0)|0,(c|0)!=(m|0)):0){do{d=c+-12|0;f[n>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);Em(e);c=f[n>>2]|0}}while((c|0)!=(m|0));d=c}}else{hd(o,g-h|0);d=f[n>>2]|0}l=a+196|0;c=f[o>>2]|0;j=(d-c|0)/12|0;h=a+200|0;g=f[h>>2]|0;e=f[l>>2]|0;i=g-e>>2;if(j>>>0<=i>>>0){if(j>>>0>>0?(p=e+(j<<2)|0,(g|0)!=(p|0)):0)f[h>>2]=g+(~((g+-4-p|0)>>>2)<<2)}else{Ve(l,j-i|0);d=f[n>>2]|0;c=f[o>>2]|0}if((d|0)==(c|0)){r=1;u=s;return r|0}k=0;do{Vf(r,b)|0;c=f[r>>2]|0;if(c|0){d=f[o>>2]|0;i=d+(k*12|0)|0;h=d+(k*12|0)+4|0;g=f[h>>2]|0;e=f[i>>2]|0;j=g-e>>2;if(c>>>0<=j>>>0){if(c>>>0>>0?(q=e+(c<<2)|0,(g|0)!=(q|0)):0)f[h>>2]=g+(~((g+-4-q|0)>>>2)<<2)}else{Ve(i,c-j|0);d=f[o>>2]|0;c=f[r>>2]|0}Ef(c,1,b,f[d+(k*12|0)>>2]|0)|0;f[(f[l>>2]|0)+(k<<2)>>2]=f[r>>2]}k=k+1|0}while(k>>>0<(((f[n>>2]|0)-(f[o>>2]|0)|0)/12|0)>>>0);c=1;u=s;return c|0}function cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;if(!b){c=f[a>>2]|0;f[a>>2]=0;if(c|0)Em(c);f[d>>2]=0;return}if(b>>>0>1073741823){a=sa(8)|0;Fk(a,12569);f[a>>2]=3708;wa(a|0,856,80)}m=Yi(b<<2)|0;c=f[a>>2]|0;f[a>>2]=m;if(c|0)Em(c);f[d>>2]=b;c=0;do{f[(f[a>>2]|0)+(c<<2)>>2]=0;c=c+1|0}while((c|0)!=(b|0));d=a+8|0;g=f[d>>2]|0;if(!g)return;c=f[g+4>>2]|0;l=b+-1|0;m=(l&b|0)==0;if(!m){if(c>>>0>=b>>>0)c=(c>>>0)%(b>>>0)|0}else c=c&l;f[(f[a>>2]|0)+(c<<2)>>2]=d;d=f[g>>2]|0;if(!d)return;else{i=g;e=d;h=g}a:while(1){b:do if(m){k=i;while(1){d=e;while(1){j=f[d+4>>2]&l;if((j|0)==(c|0))break;g=(f[a>>2]|0)+(j<<2)|0;if(!(f[g>>2]|0)){c=j;break b}i=d+8|0;g=d;while(1){e=f[g>>2]|0;if(!e)break;if((f[i>>2]|0)==(f[e+8>>2]|0))g=e;else break}f[h>>2]=e;f[g>>2]=f[f[(f[a>>2]|0)+(j<<2)>>2]>>2];f[f[(f[a>>2]|0)+(j<<2)>>2]>>2]=d;d=f[k>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{k=d;h=d}}}else{k=i;j=h;while(1){d=e;while(1){e=f[d+4>>2]|0;if(e>>>0>=b>>>0)e=(e>>>0)%(b>>>0)|0;if((e|0)==(c|0))break;g=(f[a>>2]|0)+(e<<2)|0;if(!(f[g>>2]|0)){h=j;c=e;break b}i=d+8|0;h=d;while(1){g=f[h>>2]|0;if(!g)break;if((f[i>>2]|0)==(f[g+8>>2]|0))h=g;else break}f[j>>2]=g;f[h>>2]=f[f[(f[a>>2]|0)+(e<<2)>>2]>>2];f[f[(f[a>>2]|0)+(e<<2)>>2]>>2]=d;d=f[k>>2]|0;if(!d){c=37;break a}}e=f[d>>2]|0;if(!e){c=37;break a}else{k=d;j=d}}}while(0);f[g>>2]=h;e=f[d>>2]|0;if(!e){c=37;break}else{i=d;h=d}}if((c|0)==37)return}function dc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;w=u;u=u+32|0;e=w+24|0;r=w+20|0;v=w+8|0;t=w+4|0;o=w;f[e>>2]=0;Vf(e,f[a>>2]|0)|0;a:do if(f[e>>2]|0){d=0;while(1){d=d+1|0;if(!(kc(a,c)|0)){d=0;break}if(d>>>0>=(f[e>>2]|0)>>>0)break a}u=w;return d|0}while(0);f[r>>2]=0;Vf(r,f[a>>2]|0)|0;b:do if(!(f[r>>2]|0))d=1;else{i=v+11|0;j=0;while(1){f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;g=f[a>>2]|0;x=g+8|0;y=f[x+4>>2]|0;h=g+16|0;e=h;d=f[e>>2]|0;e=f[e+4>>2]|0;if((y|0)>(e|0)|((y|0)==(e|0)?(f[x>>2]|0)>>>0>d>>>0:0)?(m=b[(f[g>>2]|0)+d>>0]|0,k=Ij(d|0,e|0,1,0)|0,q=h,f[q>>2]=k,f[q+4>>2]=I,q=m&255,Yf(v,q,0),k=f[a>>2]|0,p=Lh(v,0)|0,g=k+8|0,x=f[g>>2]|0,g=f[g+4>>2]|0,s=k+16|0,y=s,l=f[y>>2]|0,m=m&255,y=Ij(l|0,f[y+4>>2]|0,m|0,0)|0,h=I,!((g|0)<(h|0)|(g|0)==(h|0)&x>>>0>>0)):0){Od(p|0,(f[k>>2]|0)+l|0,q|0)|0;x=s;x=Ij(f[x>>2]|0,f[x+4>>2]|0,m|0,0)|0;y=s;f[y>>2]=x;f[y+4>>2]=I;y=Yi(40)|0;f[y>>2]=0;f[y+4>>2]=0;f[y+8>>2]=0;f[y+12>>2]=0;n[y+16>>2]=$(1.0);x=y+20|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;n[y+36>>2]=$(1.0);f[t>>2]=y;if(dc(a,y)|0){d=f[t>>2]|0;f[t>>2]=0;f[o>>2]=d;wd(c,v,o)|0;cf(o);d=0}else d=1;cf(t)}else d=1;if((b[i>>0]|0)<0)Em(f[v>>2]|0);j=j+1|0;if(d|0){d=0;break b}if(j>>>0>=(f[r>>2]|0)>>>0){d=1;break}}}while(0);y=d;u=w;return y|0}function ec(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+148|0;c=f[b>>2]|0;d=(c|0)<0;b=c+1|0;do if(!d){b=((b|0)%3|0|0)==0?c+-2|0:b;if(!((c>>>0)%3|0)){h=b;g=c+2|0;break}else{h=b;g=c+-1|0;break}}else{h=c;g=c}while(0);switch(f[a+168>>2]|0){case 1:case 0:{if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;c=f[a+156>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((g|0)<0){d=1;b=-1073741824;e=28}else{d=1;b=f[(f[f[i>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}case 5:{if(d)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(c<<2)>>2]|0;c=f[a+156>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((g|0)<0){d=2;b=-1073741824;e=28}else{d=2;b=f[(f[f[i>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}case 3:{if(d)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(c<<2)>>2]|0;c=f[a+156>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+1;if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+2;if((g|0)<0){d=1;b=-1073741824;e=28}else{d=1;b=f[(f[f[i>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}case 7:{if(d)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(c<<2)>>2]|0;c=f[a+156>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+2;if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;e=c+(b<<2)|0;f[e>>2]=(f[e>>2]|0)+2;if((g|0)<0){d=2;b=-1073741824;e=28}else{d=2;b=f[(f[f[i>>2]>>2]|0)+(g<<2)>>2]|0;e=28}break}default:{}}if((e|0)==28){g=c+(b<<2)|0;f[g>>2]=(f[g>>2]|0)+d}if((h|0)<0)b=-1073741824;else b=f[(f[f[i>>2]>>2]|0)+(h<<2)>>2]|0;b=f[(f[a+156>>2]|0)+(b<<2)>>2]|0;c=f[a+176>>2]|0;if((b|0)<(c|0)){i=c;i=i-c|0;a=a+172|0;f[a>>2]=i;return}i=f[a+180>>2]|0;i=(b|0)>(i|0)?i:b;i=i-c|0;a=a+172|0;f[a>>2]=i;return}function fc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=a+8|0;f[t>>2]=e;j=a+32|0;i=a+36|0;h=f[i>>2]|0;g=f[j>>2]|0;k=h-g>>2;if(k>>>0>=e>>>0)if(k>>>0>e>>>0?(l=g+(e<<2)|0,(h|0)!=(l|0)):0){f[i>>2]=h+(~((h+-4-l|0)>>>2)<<2);g=e}else g=e;else{Ve(j,e-k|0);g=f[t>>2]|0}r=e>>>0>1073741823?-1:e<<2;s=Bm(r)|0;Cf(s|0,0,r|0)|0;if((g|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;j=0;do{g=f[s+(j<<2)>>2]|0;h=f[l>>2]|0;if((g|0)>(h|0)){k=f[i>>2]|0;f[k+(j<<2)>>2]=h}else{r=f[m>>2]|0;k=f[i>>2]|0;f[k+(j<<2)>>2]=(g|0)<(r|0)?r:g}j=j+1|0;g=f[t>>2]|0}while((j|0)<(g|0));if((g|0)>0){j=a+20|0;i=0;do{g=(f[b+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=c+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[l>>2]|0)){if((g|0)<(f[m>>2]|0)){g=(f[j>>2]|0)+g|0;u=18}}else{g=g-(f[j>>2]|0)|0;u=18}if((u|0)==18){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}if((e|0)>=(d|0)){Cm(s);return 1}p=0-e|0;q=a+16|0;o=a+32|0;r=a+12|0;n=a+20|0;a=e;do{l=c+(a<<2)|0;j=l+(p<<2)|0;m=b+(a<<2)|0;if((g|0)>0){i=0;do{g=f[j+(i<<2)>>2]|0;h=f[q>>2]|0;if((g|0)>(h|0)){k=f[o>>2]|0;f[k+(i<<2)>>2]=h}else{h=f[r>>2]|0;k=f[o>>2]|0;f[k+(i<<2)>>2]=(g|0)<(h|0)?h:g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0));if((g|0)>0){i=0;do{g=(f[m+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=g;if((g|0)<=(f[q>>2]|0)){if((g|0)<(f[r>>2]|0)){g=(f[n>>2]|0)+g|0;u=33}}else{g=g-(f[n>>2]|0)|0;u=33}if((u|0)==33){u=0;f[h>>2]=g}i=i+1|0;g=f[t>>2]|0}while((i|0)<(g|0))}}a=a+e|0}while((a|0)<(d|0));Cm(s);return 1}function gc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;i=c+8|0;j=f[i+4>>2]|0;h=c+16|0;e=h;g=f[e>>2]|0;e=f[e+4>>2]|0;if(!((j|0)>(e|0)|((j|0)==(e|0)?(f[i>>2]|0)>>>0>g>>>0:0))){j=0;return j|0}j=b[(f[c>>2]|0)+g>>0]|0;g=Ij(g|0,e|0,1,0)|0;i=h;f[i>>2]=g;f[i+4>>2]=I;do switch(j<<24>>24){case 1:{j=Zb(a,c,d)|0;return j|0}case 2:{j=Zb(a,c,d)|0;return j|0}case 3:{j=Zb(a,c,d)|0;return j|0}case 4:{j=Zb(a,c,d)|0;return j|0}case 5:{j=Uc(a,c,d)|0;return j|0}case 6:{j=Zb(a,c,d)|0;return j|0}case 7:{j=Zb(a,c,d)|0;return j|0}case 8:{j=Zb(a,c,d)|0;return j|0}case 9:{j=Yb(a,c,d)|0;return j|0}case 10:{j=Xb(a,c,d)|0;return j|0}case 11:{j=Wb(a,c,d)|0;return j|0}case 12:{j=Ub(a,c,d)|0;return j|0}case 13:{j=Tb(a,c,d)|0;return j|0}case 14:{j=Sb(a,c,d)|0;return j|0}case 15:{j=Sb(a,c,d)|0;return j|0}case 16:{j=Sb(a,c,d)|0;return j|0}case 17:{j=Sb(a,c,d)|0;return j|0}case 18:{j=Sb(a,c,d)|0;return j|0}default:{j=0;return j|0}}while(0);return 0}function hc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;v=x+4|0;t=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else Ve(i,e-j|0);n=a+56|0;h=f[n>>2]|0;d=f[h+4>>2]|0;g=f[h>>2]|0;q=d-g|0;r=q>>2;if((q|0)<=0){u=x;return 1}p=a+16|0;m=a+32|0;q=a+12|0;o=a+20|0;if((d|0)==(g|0)){k=h;Wl(k)}else{l=g;y=0}while(1){f[t>>2]=f[l+(y<<2)>>2];f[v>>2]=f[t>>2];mb(w,v,c,y);k=X(y,e)|0;j=b+(k<<2)|0;k=c+(k<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[a+68+(h<<2)>>2]|0;g=f[p>>2]|0;if((d|0)>(g|0)){i=f[m>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[q>>2]|0;i=f[m>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[j+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[p>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[o>>2]|0)+d|0;z=20}}else{d=d-(f[o>>2]|0)|0;z=20}if((z|0)==20){z=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(r|0)){z=8;break}d=f[n>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=9;break}}if((z|0)==8){u=x;return 1}else if((z|0)==9)Wl(d);return 0}function ic(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=a+8|0;e=f[k>>2]|0;switch(f[e+28>>2]|0){case 2:{d=b[e+24>>0]|0;j=d<<24>>24;i=Bm((j|0)>-1?j:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;a:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Od(f[f[e+64>>2]>>2]|0,i|0,j|0)|0;if((c|0)==1)break;else{d=1;a=0}while(1){a=a+j|0;Od((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+a|0,i|0,j|0)|0;d=d+1|0;if((d|0)==(c|0))break a}}while(1){d=0;g=e;while(1){b[i+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(j|0))break;else g=g+1|0}Od((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+j|0}}while(0);Cm(i);c=1;return c|0}case 1:{d=b[e+24>>0]|0;j=d<<24>>24;i=Bm((j|0)>-1?j:-1)|0;h=f[a+16>>2]|0;h=(f[f[h>>2]>>2]|0)+(f[h+48>>2]|0)|0;b:do if(c|0){if(d<<24>>24>0){a=0;e=0}else{Od(f[f[e+64>>2]>>2]|0,i|0,j|0)|0;if((c|0)==1)break;else{d=1;a=0}while(1){a=a+j|0;Od((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+a|0,i|0,j|0)|0;d=d+1|0;if((d|0)==(c|0))break b}}while(1){d=0;g=e;while(1){b[i+d>>0]=f[h+(g<<2)>>2];d=d+1|0;if((d|0)==(j|0))break;else g=g+1|0}Od((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,i|0,j|0)|0;a=a+1|0;if((a|0)==(c|0))break;else e=e+j|0}}while(0);Cm(i);c=1;return c|0}case 4:{De(a,c);c=1;return c|0}case 3:{De(a,c);c=1;return c|0}case 6:{Ee(a,c);c=1;return c|0}case 5:{Ee(a,c);c=1;return c|0}default:{c=0;return c|0}}return 0}function jc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=u;u=u+16|0;v=x+4|0;t=x;w=a+60|0;f[a+64>>2]=g;s=a+8|0;f[s>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else Ve(i,e-j|0);n=a+56|0;h=f[n>>2]|0;d=f[h+4>>2]|0;g=f[h>>2]|0;q=d-g|0;r=q>>2;if((q|0)<=0){u=x;return 1}p=a+16|0;m=a+32|0;q=a+12|0;o=a+20|0;if((d|0)==(g|0)){k=h;Wl(k)}else{l=g;y=0}while(1){f[t>>2]=f[l+(y<<2)>>2];f[v>>2]=f[t>>2];lb(w,v,c,y);k=X(y,e)|0;j=b+(k<<2)|0;k=c+(k<<2)|0;if((f[s>>2]|0)>0){h=0;do{d=f[a+68+(h<<2)>>2]|0;g=f[p>>2]|0;if((d|0)>(g|0)){i=f[m>>2]|0;f[i+(h<<2)>>2]=g}else{l=f[q>>2]|0;i=f[m>>2]|0;f[i+(h<<2)>>2]=(d|0)<(l|0)?l:d}h=h+1|0;d=f[s>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[j+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[p>>2]|0)){if((d|0)<(f[q>>2]|0)){d=(f[o>>2]|0)+d|0;z=20}}else{d=d-(f[o>>2]|0)|0;z=20}if((z|0)==20){z=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[s>>2]|0))}}y=y+1|0;if((y|0)>=(r|0)){z=8;break}d=f[n>>2]|0;l=f[d>>2]|0;if((f[d+4>>2]|0)-l>>2>>>0<=y>>>0){z=9;break}}if((z|0)==8){u=x;return 1}else if((z|0)==9)Wl(d);return 0}function kc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+32|0;q=r+16|0;o=r+12|0;p=r;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;d=f[a>>2]|0;s=d+8|0;t=f[s+4>>2]|0;n=d+16|0;e=n;j=f[e>>2]|0;e=f[e+4>>2]|0;if((t|0)>(e|0)|((t|0)==(e|0)?(f[s>>2]|0)>>>0>j>>>0:0)?(i=b[(f[d>>2]|0)+j>>0]|0,g=Ij(j|0,e|0,1,0)|0,l=n,f[l>>2]=g,f[l+4>>2]=I,l=i&255,Yf(q,l,0),g=f[a>>2]|0,k=Lh(q,0)|0,j=g+8|0,s=f[j>>2]|0,j=f[j+4>>2]|0,m=g+16|0,t=m,h=f[t>>2]|0,i=i&255,t=Ij(h|0,f[t+4>>2]|0,i|0,0)|0,n=I,!((j|0)<(n|0)|(j|0)==(n|0)&s>>>0>>0)):0){Od(k|0,(f[g>>2]|0)+h|0,l|0)|0;d=m;d=Ij(f[d>>2]|0,f[d+4>>2]|0,i|0,0)|0;t=m;f[t>>2]=d;f[t+4>>2]=I;f[o>>2]=0;t=(Vf(o,f[a>>2]|0)|0)^1;d=f[o>>2]|0;if((d|0)==0|t)d=0;else{f[p>>2]=0;i=p+4|0;f[i>>2]=0;f[p+8>>2]=0;if((d|0)<0)Wl(p);e=Yi(d)|0;f[i>>2]=e;f[p>>2]=e;f[p+8>>2]=e+d;do{b[e>>0]=0;e=(f[i>>2]|0)+1|0;f[i>>2]=e;d=d+-1|0}while((d|0)!=0);h=f[o>>2]|0;d=f[a>>2]|0;o=d+8|0;s=f[o>>2]|0;o=f[o+4>>2]|0;g=d+16|0;t=g;e=f[t>>2]|0;t=Ij(e|0,f[t+4>>2]|0,h|0,0)|0;a=I;if((o|0)<(a|0)|(o|0)==(a|0)&s>>>0>>0)d=0;else{Od(f[p>>2]|0,(f[d>>2]|0)+e|0,h|0)|0;t=g;t=Ij(f[t>>2]|0,f[t+4>>2]|0,h|0,0)|0;d=g;f[d>>2]=t;f[d+4>>2]=I;yi(c,q,p);d=1}e=f[p>>2]|0;if(e|0){if((f[i>>2]|0)!=(e|0))f[i>>2]=e;Em(e)}}}else d=0;if((b[q+11>>0]|0)>=0){u=r;return d|0}Em(f[q>>2]|0);u=r;return d|0}function lc(a,b){a=a|0;b=b|0;var c=0,d=Ka,e=Ka,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=Ka;m=f[b>>2]|0;j=a+4|0;i=f[j>>2]|0;k=(i|0)==0;a:do if(!k){g=i+-1|0;c=(g&i|0)==0;if(!c)if(m>>>0>>0)h=m;else h=(m>>>0)%(i>>>0)|0;else h=g&m;b=f[(f[a>>2]|0)+(h<<2)>>2]|0;if(!b)b=h;else{if(c){do{b=f[b>>2]|0;if(!b){b=h;break a}l=f[b+4>>2]|0;if(!((l|0)==(m|0)|(l&g|0)==(h|0))){b=h;break a}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}do{b=f[b>>2]|0;if(!b){b=h;break a}c=f[b+4>>2]|0;if((c|0)!=(m|0)){if(c>>>0>=i>>>0)c=(c>>>0)%(i>>>0)|0;if((c|0)!=(h|0)){b=h;break a}}}while((f[b+8>>2]|0)!=(m|0));a=b+12|0;return a|0}}else b=0;while(0);l=Yi(16)|0;f[l+8>>2]=m;f[l+12>>2]=0;f[l+4>>2]=m;f[l>>2]=0;h=a+12|0;e=$(((f[h>>2]|0)+1|0)>>>0);p=$(i>>>0);d=$(n[a+16>>2]);do if(k|e>$(p*d)){b=(i>>>0<3|(i+-1&i|0)!=0)&1|i<<1;c=~~$(W($(e/d)))>>>0;Je(a,b>>>0>>0?c:b);b=f[j>>2]|0;c=b+-1|0;if(!(c&b)){g=b;b=c&m;break}if(m>>>0>>0){g=b;b=m}else{g=b;b=(m>>>0)%(b>>>0)|0}}else g=i;while(0);c=(f[a>>2]|0)+(b<<2)|0;b=f[c>>2]|0;if(!b){b=a+8|0;f[l>>2]=f[b>>2];f[b>>2]=l;f[c>>2]=b;b=f[l>>2]|0;if(b|0){b=f[b+4>>2]|0;c=g+-1|0;if(c&g){if(b>>>0>=g>>>0)b=(b>>>0)%(g>>>0)|0}else b=b&c;b=(f[a>>2]|0)+(b<<2)|0;o=30}}else{f[l>>2]=f[b>>2];o=30}if((o|0)==30)f[b>>2]=l;f[h>>2]=(f[h>>2]|0)+1;a=l;a=a+12|0;return a|0}function mc(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2280;d=a+360|0;c=f[d>>2]|0;f[d>>2]=0;if(c|0){d=c+-4|0;b=f[d>>2]|0;if(b|0){b=c+(b<<4)|0;do{b=b+-16|0;Jm(b)}while((b|0)!=(c|0))}Cm(d)}Jm(a+344|0);Jm(a+304|0);Jm(a+288|0);Jm(a+248|0);Ye(a+212|0);b=f[a+196>>2]|0;if(b|0){d=a+200|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+184>>2]|0;if(b|0){d=a+188|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+172>>2]|0;if(b|0){d=a+176|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+160>>2]|0;if(b|0){d=a+164|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+144>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Em(d)}while((b|0)!=0);d=a+136|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Em(b);b=f[a+120>>2]|0;if(b|0)Em(b);b=f[a+108>>2]|0;if(b|0)Em(b);b=f[a+96>>2]|0;if(b|0)Em(b);b=f[a+72>>2]|0;if(b|0){d=a+76|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+60>>2]|0;if(b|0)Em(b);b=f[a+48>>2]|0;if(b|0){d=a+52|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+36>>2]|0;if(b|0){d=a+40|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);Em(b)}b=f[a+24>>2]|0;if(b|0){d=a+28|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+12>>2]|0;if(b|0){d=a+16|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}a=a+8|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;Sf(b);Em(b);return}function nc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;o=r+16|0;n=r+4|0;m=r;if(!(Vf(o,c)|0)){c=-1;u=r;return c|0}d=f[o>>2]|0;if(d|0){q=f[a+8>>2]|0;if(d>>>0>(((f[q+4>>2]|0)-(f[q>>2]|0)>>2>>>0)/3|0)>>>0){c=-1;u=r;return c|0}k=n+4|0;e=a+40|0;g=a+44|0;l=a+36|0;i=0;j=0;do{Vf(m,c)|0;f[k>>2]=(f[m>>2]|0)+j;Vf(m,c)|0;d=f[m>>2]|0;j=f[k>>2]|0;if(j>>>0>>0){p=22;break}f[n>>2]=j-d;d=f[e>>2]|0;if((d|0)==(f[g>>2]|0))Re(l,n);else{f[d>>2]=f[n>>2];f[d+4>>2]=f[n+4>>2];f[d+8>>2]=f[n+8>>2];f[e>>2]=(f[e>>2]|0)+12}i=i+1|0}while(i>>>0<(f[o>>2]|0)>>>0);if((p|0)==22){c=-1;u=r;return c|0}Sg(c,0,0)|0;l=f[o>>2]|0;if(l|0){q=a+4|0;o=c+36|0;p=c+32|0;m=c+24|0;n=c+28|0;j=a+36|0;d=0;k=0;do{a=f[q>>2]|0;e=(b[o>>0]|0)==0;if(((h[a+36>>0]<<8|h[a+37>>0])&65535)<514){if(!e){d=f[p>>2]|0;g=f[m>>2]|0;i=f[n>>2]|0;e=g+(d>>>3)|0;if(e>>>0>>0){a=(h[e>>0]|0)>>>(d&7)&1;e=d+1|0;f[p>>2]=e;d=a}else{e=d;d=0}if((g+(e>>>3)|0)>>>0>>0)f[p>>2]=e+1}}else if(!e){d=f[p>>2]|0;e=(f[m>>2]|0)+(d>>>3)|0;if(e>>>0<(f[n>>2]|0)>>>0){a=(h[e>>0]|0)>>>(d&7)&1;f[p>>2]=d+1;d=a}else d=0}a=(f[j>>2]|0)+(k*12|0)+8|0;b[a>>0]=b[a>>0]&-2|d&1;k=k+1|0}while(k>>>0>>0)}Yh(c)}c=f[c+16>>2]|0;u=r;return c|0}function oc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=f[b>>2]|0;k=f[b+4>>2]|0;n=((f[c>>2]|0)-p<<3)+(f[c+4>>2]|0)-k|0;c=p;if((n|0)<=0){b=d+4|0;d=f[d>>2]|0;f[a>>2]=d;a=a+4|0;d=f[b>>2]|0;f[a>>2]=d;return}if(!k){l=d+4|0;e=f[l>>2]|0;g=n}else{i=32-k|0;m=(n|0)<(i|0)?n:i;i=-1>>>(i-m|0)&-1<>2];l=d+4|0;e=f[l>>2]|0;j=32-e|0;g=j>>>0>>0?j:m;h=f[d>>2]|0;e=f[h>>2]&~(-1>>>(j-g|0)&-1<>2]=e;j=f[l>>2]|0;f[h>>2]=(j>>>0>k>>>0?i<>>(k-j|0))|e;e=(f[l>>2]|0)+g|0;h=h+(e>>>5<<2)|0;f[d>>2]=h;e=e&31;f[l>>2]=e;j=m-g|0;if((j|0)>0){f[h>>2]=i>>>(k+g|0)|f[h>>2]&~(-1>>>(32-j|0));f[l>>2]=j;e=j}c=c+4|0;f[b>>2]=c;g=n-m|0}p=32-e|0;o=-1<31){n=~o;m=f[d>>2]|0;j=g+-32|0;h=j>>>5;i=h+1|0;h=j-(h<<5)|0;j=f[m>>2]|0;k=m;e=g;g=c;while(1){q=f[g>>2]|0;r=j&n;f[k>>2]=r;f[k>>2]=q<>2]|r;k=k+4|0;j=f[k>>2]&o|q>>>p;f[k>>2]=j;e=e+-32|0;if((e|0)<=31)break;else g=g+4|0}c=c+(i<<2)|0;f[b>>2]=c;f[d>>2]=m+(i<<2)}else h=g;if((h|0)<=0){q=l;r=f[d>>2]|0;f[a>>2]=r;r=a+4|0;q=f[q>>2]|0;f[r>>2]=q;return}i=f[c>>2]&-1>>>(32-h|0);g=(p|0)<(h|0)?p:h;e=f[d>>2]|0;c=f[e>>2]&~(-1<>2]&-1>>>(p-g|0));f[e>>2]=c;f[e>>2]=c|i<>2];c=(f[l>>2]|0)+g|0;e=e+(c>>>5<<2)|0;f[d>>2]=e;f[l>>2]=c&31;c=h-g|0;if((c|0)<=0){q=l;r=f[d>>2]|0;f[a>>2]=r;r=a+4|0;q=f[q>>2]|0;f[r>>2]=q;return}f[e>>2]=f[e>>2]&~(-1>>>(32-c|0))|i>>>g;f[l>>2]=c;q=l;r=f[d>>2]|0;f[a>>2]=r;r=a+4|0;q=f[q>>2]|0;f[r>>2]=q;return}function pc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+16|0;q=t;o=Ma[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((o|0)<=0){a=1;s=1;s=a|s;u=t;return s|0}k=a+36|0;p=a+48|0;l=q+8|0;m=q+4|0;n=q+11|0;c=0;while(1){j=(Ma[f[(f[a>>2]|0)+28>>2]&127](a)|0)+40|0;if(f[j>>2]|0){j=f[(f[(f[k>>2]|0)+(c<<2)>>2]|0)+8>>2]|0;i=(Ma[f[(f[a>>2]|0)+28>>2]&127](a)|0)+40|0;i=f[i>>2]|0;j=f[j+56>>2]|0;d=Yi(32)|0;f[q>>2]=d;f[l>>2]=-2147483616;f[m>>2]=24;e=d;g=10797;h=e+24|0;do{b[e>>0]=b[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));b[d+24>>0]=0;h=i+16|0;e=f[h>>2]|0;if(e){d=h;g=e;a:while(1){e=g;while(1){if((f[e+16>>2]|0)>=(j|0))break;e=f[e+4>>2]|0;if(!e)break a}g=f[e>>2]|0;if(!g){d=e;break}else d=e}if(((d|0)!=(h|0)?(j|0)>=(f[d+16>>2]|0):0)?(r=d+20|0,(ve(r,q)|0)!=0):0)d=ng(r,q,0)|0;else s=13}else s=13;if((s|0)==13){s=0;d=ng(i,q,0)|0}if((b[n>>0]|0)<0)Em(f[q>>2]|0);if(d){s=17;break}}j=f[(f[k>>2]|0)+(c<<2)>>2]|0;if(!(Na[f[(f[j>>2]|0)+24>>2]&127](j,p)|0)){c=0;d=0;s=20;break}c=c+1|0;if((c|0)>=(o|0)){c=1;d=1;s=20;break}}if((s|0)==17){a=f[(f[k>>2]|0)+(c<<2)>>2]|0;s=f[a+8>>2]|0;Kc(s,Ud(a)|0);a=0;s=1;s=a|s;u=t;return s|0}else if((s|0)==20){s=c|d;u=t;return s|0}return 0}function qc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;g=f[b+4>>2]|0;if((d|0)<=-1)ra(12658,12674,59,12771);h=f[g+8>>2]|0;if(((f[g+12>>2]|0)-h>>2|0)<=(d|0))ra(12781,12674,60,12771);j=f[h+(d<<2)>>2]|0;if(!((c+-1|0)>>>0<6&(Ma[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1)){e=0;f[a>>2]=e;return}k=Ma[f[(f[b>>2]|0)+36>>2]&127](b)|0;l=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((k|0)==0|(l|0)==0){e=0;f[a>>2]=e;return}i=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;h=f[b+44>>2]|0;d=l+12|0;g=(c|0)==6;if(!i){if(g){c=Yi(104)|0;f[c+4>>2]=j;b=c+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=k;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=2008;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=k;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=2064;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;cm(c+88|0);e=c;f[a>>2]=e;return}}else if(g){c=Yi(104)|0;f[c+4>>2]=j;b=c+8|0;f[b>>2]=f[e>>2];f[b+4>>2]=f[e+4>>2];f[b+8>>2]=f[e+8>>2];f[b+12>>2]=f[e+12>>2];f[c+24>>2]=h;f[c+28>>2]=i;f[c+32>>2]=d;f[c+36>>2]=l;f[c>>2]=1924;f[c+44>>2]=0;f[c+48>>2]=0;f[c+52>>2]=h;f[c+56>>2]=i;f[c+60>>2]=d;f[c+64>>2]=l;f[c+40>>2]=1980;f[c+68>>2]=1;e=c+72|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;cm(c+88|0);e=c;f[a>>2]=e;return}f[a>>2]=0;f[a>>2]=0;e=0;f[a>>2]=e;return}function rc(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=a+32|0;c=f[h>>2]|0;o=c+8|0;n=f[o+4>>2]|0;g=c+16|0;d=g;e=f[d>>2]|0;d=f[d+4>>2]|0;if(!((n|0)>(d|0)|((n|0)==(d|0)?(f[o>>2]|0)>>>0>e>>>0:0))){a=0;return a|0}n=b[(f[c>>2]|0)+e>>0]|0;m=Ij(e|0,d|0,1,0)|0;o=g;f[o>>2]=m;f[o+4>>2]=I;o=n&255;g=n<<24>>24==0;a:do if(!g){c=0;while(1){if(!(Na[f[(f[a>>2]|0)+16>>2]&127](a,c)|0)){c=0;break}c=c+1|0;if((c|0)>=(o|0))break a}return c|0}while(0);n=a+8|0;c=f[n>>2]|0;d=f[a+12>>2]|0;b:do if((c|0)!=(d|0)){e=a+4|0;while(1){m=f[c>>2]|0;c=c+4|0;if(!(Oa[f[(f[m>>2]|0)+8>>2]&31](m,a,f[e>>2]|0)|0)){c=0;break}if((c|0)==(d|0))break b}return c|0}while(0);if(!g){c=0;do{m=f[(f[n>>2]|0)+(c<<2)>>2]|0;c=c+1|0;if(!(Na[f[(f[m>>2]|0)+12>>2]&127](m,f[h>>2]|0)|0)){c=0;i=26;break}}while((c|0)<(o|0));if((i|0)==26)return c|0;if(!g){i=a+20|0;h=a+24|0;l=0;do{j=f[(f[n>>2]|0)+(l<<2)>>2]|0;j=Ma[f[(f[j>>2]|0)+24>>2]&127](j)|0;if((j|0)>0){m=0;do{k=f[(f[n>>2]|0)+(l<<2)>>2]|0;k=Na[f[(f[k>>2]|0)+20>>2]&127](k,m)|0;d=f[h>>2]|0;c=f[i>>2]|0;g=d-c>>2;do if(k>>>0>=g>>>0){e=k+1|0;if(e>>>0>g>>>0){Ve(i,e-g|0);c=f[i>>2]|0;break}if(e>>>0>>0?(p=c+(e<<2)|0,(d|0)!=(p|0)):0)f[h>>2]=d+(~((d+-4-p|0)>>>2)<<2)}while(0);f[c+(k<<2)>>2]=l;m=m+1|0}while((m|0)!=(j|0))}l=l+1|0}while((l|0)!=(o|0))}}if(!(Ma[f[(f[a>>2]|0)+28>>2]&127](a)|0)){a=0;return a|0}a=Ma[f[(f[a>>2]|0)+32>>2]&127](a)|0;return a|0}function sc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=f[b>>2]|0;k=b+4|0;e=f[k>>2]|0;h=((f[c>>2]|0)-m<<3)+(f[c+4>>2]|0)-e|0;c=m;if((h|0)<=0){b=d+4|0;d=f[d>>2]|0;f[a>>2]=d;a=a+4|0;d=f[b>>2]|0;f[a>>2]=d;return}if(!e){l=d+4|0;e=f[l>>2]|0}else{i=32-e|0;m=(h|0)<(i|0)?h:i;i=-1>>>(i-m|0)&-1<>2];l=d+4|0;c=f[l>>2]|0;j=32-c|0;e=j>>>0>>0?j:m;g=f[d>>2]|0;c=f[g>>2]&~(-1>>>(j-e|0)&-1<>2]=c;j=f[l>>2]|0;n=f[k>>2]|0;f[g>>2]=(j>>>0>n>>>0?i<>>(n-j|0))|c;c=(f[l>>2]|0)+e|0;g=g+(c>>>5<<2)|0;f[d>>2]=g;c=c&31;f[l>>2]=c;j=m-e|0;if((j|0)>0){c=f[g>>2]&~(-1>>>(32-j|0));f[g>>2]=c;f[g>>2]=i>>>((f[k>>2]|0)+e|0)|c;f[l>>2]=j;c=j}n=(f[b>>2]|0)+4|0;f[b>>2]=n;e=c;c=n;h=h-m|0}j=32-e|0;i=-1<31){g=~i;e=h;do{m=f[c>>2]|0;n=f[d>>2]|0;k=f[n>>2]&g;f[n>>2]=k;f[n>>2]=m<>2]|k;n=n+4|0;f[d>>2]=n;f[n>>2]=f[n>>2]&i|m>>>j;e=e+-32|0;c=(f[b>>2]|0)+4|0;f[b>>2]=c}while((e|0)>31);h=h&31}if((h|0)<=0){b=l;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;a=f[b>>2]|0;f[n>>2]=a;return}i=f[c>>2]&-1>>>(32-h|0);g=(j|0)<(h|0)?j:h;e=f[d>>2]|0;c=f[e>>2]&~(-1<>2]&-1>>>(j-g|0));f[e>>2]=c;f[e>>2]=c|i<>2];c=(f[l>>2]|0)+g|0;e=e+(c>>>5<<2)|0;f[d>>2]=e;f[l>>2]=c&31;c=h-g|0;if((c|0)<=0){b=l;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;a=f[b>>2]|0;f[n>>2]=a;return}f[e>>2]=f[e>>2]&~(-1>>>(32-c|0))|i>>>g;f[l>>2]=c;b=l;n=f[d>>2]|0;f[a>>2]=n;n=a+4|0;a=f[b>>2]|0;f[n>>2]=a;return}function tc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+12|0;n=f[l>>2]|0;i=(f[c>>2]|0)-n|0;j=c+4|0;g=(f[j>>2]|0)-n|0;e=c;f[e>>2]=i;f[e+4>>2]=g;e=f[l>>2]|0;if((e|0)<(i|0))ra(7633,6922,250,7656);if((e|0)<(g|0))ra(7668,6922,251,7656);h=0-e|0;if((i|0)<(h|0))ra(7691,6922,252,7656);if((g|0)<(h|0))ra(7715,6922,253,7656);m=(((g|0)>-1?g:0-g|0)+((i|0)>-1?i:0-i|0)|0)<=(e|0);if(!m){ye(b,c,j);i=f[c>>2]|0}if(!i){e=f[j>>2]|0;g=e;e=(e|0)==0}else{e=f[j>>2]|0;g=e;e=(i|0)<0&(e|0)<1}if(!i)k=(g|0)==0?0:(g|0)>0?3:1;else k=(i|0)>0?(g>>31)+2|0:(g|0)<1?0:3;if(e){e=i;i=1}else{switch(k|0){case 1:{e=g;g=0-i|0;break}case 2:{e=0-i|0;g=0-g|0;break}case 3:{e=0-g|0;g=i;break}default:e=i}i=c;f[i>>2]=e;f[i+4>>2]=g;i=0}e=(f[d>>2]|0)+e|0;f[a>>2]=e;g=(f[d+4>>2]|0)+g|0;j=a+4|0;f[j>>2]=g;h=f[l>>2]|0;if((h|0)>=(e|0)){if((e|0)<(0-h|0))e=(f[b+4>>2]|0)+e|0}else e=e-(f[b+4>>2]|0)|0;f[a>>2]=e;if((h|0)>=(g|0)){if((g|0)<(0-h|0))g=(f[b+4>>2]|0)+g|0}else g=g-(f[b+4>>2]|0)|0;f[j>>2]=g;if(!i){switch((4-k|0)%4|0|0){case 1:{h=g;e=0-e|0;break}case 2:{h=0-e|0;e=0-g|0;break}case 3:{h=0-g|0;break}default:{h=e;e=g}}g=a;f[g>>2]=h;f[g+4>>2]=e;g=e;e=h}if(m){m=e;b=g;m=m+n|0;n=b+n|0;b=a;a=b;f[a>>2]=m;b=b+4|0;f[b>>2]=n;return}ye(b,a,j);m=f[a>>2]|0;b=f[j>>2]|0;m=m+n|0;n=b+n|0;b=a;a=b;f[a>>2]=m;b=b+4|0;f[b>>2]=n;return}function uc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+32|0;o=p+8|0;j=p;n=a+4|0;g=f[n>>2]|0;if(g>>>0>=b>>>0){f[n>>2]=b;u=p;return}m=a+8|0;e=f[m>>2]|0;h=e<<5;d=b-g|0;if(h>>>0>>0|g>>>0>(h-d|0)>>>0){f[o>>2]=0;l=o+4|0;f[l>>2]=0;k=o+8|0;f[k>>2]=0;if((b|0)<0)Wl(a);e=e<<6;b=b+31&-32;Me(o,h>>>0<1073741823?(e>>>0>>0?b:e):2147483647);b=f[n>>2]|0;f[l>>2]=b+d;e=f[a>>2]|0;h=e;g=f[o>>2]|0;b=(h+(b>>>5<<2)-e<<3)+(b&31)|0;if((b|0)>0){i=b>>>5;hi(g|0,e|0,i<<2|0)|0;e=b-(i<<5)|0;b=g+(i<<2)|0;g=b;if((e|0)>0){q=-1>>>(32-e|0);f[b>>2]=f[b>>2]&~q|f[h+(i<<2)>>2]&q}else e=0}else e=0;f[j>>2]=g;f[j+4>>2]=e;b=j;e=f[b>>2]|0;b=f[b+4>>2]|0;g=f[a>>2]|0;f[a>>2]=f[o>>2];f[o>>2]=g;q=f[n>>2]|0;f[n>>2]=f[l>>2];f[l>>2]=q;q=f[m>>2]|0;f[m>>2]=f[k>>2];f[k>>2]=q;if(g|0)Em(g)}else{e=(f[a>>2]|0)+(g>>>5<<2)|0;f[n>>2]=b;b=g&31}if(!d){u=p;return}h=(b|0)==0;g=e;if(c){if(!h){e=32-b|0;q=e>>>0>d>>>0?d:e;f[g>>2]=f[g>>2]|-1>>>(e-q|0)&-1<>>5;Cf(e|0,-1,q<<2|0)|0;e=d-(q<<5)|0;d=g+(q<<2)|0;if(!e){u=p;return}f[d>>2]=f[d>>2]|-1>>>(32-e|0);u=p;return}else{if(!h){e=32-b|0;q=e>>>0>d>>>0?d:e;f[g>>2]=f[g>>2]&~(-1>>>(e-q|0)&-1<>>5;Cf(e|0,0,q<<2|0)|0;e=d-(q<<5)|0;d=g+(q<<2)|0;if(!e){u=p;return}f[d>>2]=f[d>>2]&~(-1>>>(32-e|0));u=p;return}}function vc(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2448;Pd(a+224|0);Ye(a+212|0);b=f[a+196>>2]|0;if(b|0){d=a+200|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+184>>2]|0;if(b|0){d=a+188|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+172>>2]|0;if(b|0){d=a+176|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+160>>2]|0;if(b|0){d=a+164|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+144>>2]|0;if(b|0)do{d=b;b=f[b>>2]|0;Em(d)}while((b|0)!=0);d=a+136|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0)Em(b);b=f[a+120>>2]|0;if(b|0)Em(b);b=f[a+108>>2]|0;if(b|0)Em(b);b=f[a+96>>2]|0;if(b|0)Em(b);b=f[a+72>>2]|0;if(b|0){d=a+76|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+60>>2]|0;if(b|0)Em(b);b=f[a+48>>2]|0;if(b|0){d=a+52|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+36>>2]|0;if(b|0){d=a+40|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);Em(b)}b=f[a+24>>2]|0;if(b|0){d=a+28|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+12>>2]|0;if(b|0){d=a+16|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}a=a+8|0;b=f[a>>2]|0;f[a>>2]=0;if(!b)return;Sf(b);Em(b);return}function wc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=(c|0)==(a|0);b[c+12>>0]=i&1;if(i)return;while(1){h=f[c+8>>2]|0;g=h+12|0;if(b[g>>0]|0){d=23;break}i=h+8|0;e=f[i>>2]|0;d=f[e>>2]|0;if((d|0)==(h|0)){d=f[e+4>>2]|0;if(!d){d=7;break}d=d+12|0;if(!(b[d>>0]|0))c=d;else{d=7;break}}else{if(!d){d=16;break}d=d+12|0;if(!(b[d>>0]|0))c=d;else{d=16;break}}b[g>>0]=1;i=(e|0)==(a|0);b[e+12>>0]=i&1;b[c>>0]=1;if(i){d=23;break}else c=e}if((d|0)==7){if((f[h>>2]|0)==(c|0))c=h;else{a=h+4|0;d=f[a>>2]|0;c=f[d>>2]|0;f[a>>2]=c;if(!c)c=e;else{f[c+8>>2]=h;c=f[i>>2]|0}f[d+8>>2]=c;c=f[i>>2]|0;f[((f[c>>2]|0)==(h|0)?c:c+4|0)>>2]=d;f[d>>2]=h;f[i>>2]=d;c=d;e=f[d+8>>2]|0}b[c+12>>0]=1;b[e+12>>0]=0;c=f[e>>2]|0;g=c+4|0;d=f[g>>2]|0;f[e>>2]=d;if(d|0)f[d+8>>2]=e;i=e+8|0;f[c+8>>2]=f[i>>2];h=f[i>>2]|0;f[((f[h>>2]|0)==(e|0)?h:h+4|0)>>2]=c;f[g>>2]=e;f[i>>2]=c;return}else if((d|0)==16){if((f[h>>2]|0)==(c|0)){g=f[h>>2]|0;d=g+4|0;c=f[d>>2]|0;f[h>>2]=c;if(c){f[c+8>>2]=h;e=f[i>>2]|0}f[g+8>>2]=e;c=f[i>>2]|0;f[((f[c>>2]|0)==(h|0)?c:c+4|0)>>2]=g;f[d>>2]=h;f[i>>2]=g;c=g;e=f[g+8>>2]|0}else c=h;b[c+12>>0]=1;b[e+12>>0]=0;i=e+4|0;c=f[i>>2]|0;d=f[c>>2]|0;f[i>>2]=d;if(d|0)f[d+8>>2]=e;i=e+8|0;f[c+8>>2]=f[i>>2];h=f[i>>2]|0;f[((f[h>>2]|0)==(e|0)?h:h+4|0)>>2]=c;f[c>>2]=e;f[i>>2]=c;return}else if((d|0)==23)return}function xc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=u;u=u+16|0;q=r;i=b+8|0;g=i;j=f[g>>2]|0;g=f[g+4>>2]|0;p=b+16|0;d=p;c=f[d>>2]|0;d=Ij(c|0,f[d+4>>2]|0,4,0)|0;e=I;if((g|0)<(e|0)|(g|0)==(e|0)&j>>>0>>0){q=0;u=r;return q|0}g=(f[b>>2]|0)+c|0;g=h[g>>0]|h[g+1>>0]<<8|h[g+2>>0]<<16|h[g+3>>0]<<24;j=p;f[j>>2]=d;f[j+4>>2]=e;if((g|0)<0){q=0;u=r;return q|0}uc(a+76|0,g,0);cm(q);if(ed(q,b)|0){if((g|0)>0){c=a+76|0;d=0;e=1;do{e=e^((Rg(q)|0)^1);j=(f[c>>2]|0)+(d>>>5<<2)|0;s=1<<(d&31);t=f[j>>2]|0;f[j>>2]=e?t|s:t&~s;d=d+1|0}while((d|0)<(g|0))}d=i;c=f[d>>2]|0;d=f[d+4>>2]|0;g=p;e=f[g>>2]|0;g=f[g+4>>2]|0;i=Ij(e|0,g|0,4,0)|0;j=I;if((!((d|0)<(j|0)|(d|0)==(j|0)&c>>>0>>0)?(k=f[b>>2]|0,l=k+e|0,l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24,m=p,f[m>>2]=i,f[m+4>>2]=j,m=Ij(e|0,g|0,8,0)|0,n=I,!((d|0)<(n|0)|(d|0)==(n|0)&c>>>0>>0)):0)?(o=k+i|0,o=h[o>>0]|h[o+1>>0]<<8|h[o+2>>0]<<16|h[o+3>>0]<<24,t=p,f[t>>2]=m,f[t+4>>2]=n,(l|0)<=(o|0)):0){f[a+12>>2]=l;f[a+16>>2]=o;t=o+(1-l)|0;f[a+20>>2]=t;c=(t|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(t&1)){f[d>>2]=c+-1;c=1}else c=1}else c=0}else c=0;Jm(q);t=c;u=r;return t|0}function yc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+16|0;k=m;if(!(Gb(a,c)|0)){a=0;u=m;return a|0}j=Ma[f[(f[a>>2]|0)+24>>2]&127](a)|0;l=a+36|0;h=a+40|0;d=f[h>>2]|0;e=f[l>>2]|0;g=d-e>>2;if(j>>>0<=g>>>0){if(j>>>0>>0?(i=e+(j<<2)|0,(d|0)!=(i|0)):0)do{g=d+-4|0;f[h>>2]=g;d=f[g>>2]|0;f[g>>2]=0;if(d|0)Ra[f[(f[d>>2]|0)+4>>2]&127](d);d=f[h>>2]|0}while((d|0)!=(i|0))}else Dd(l,j-g|0);g=c+8|0;if((j|0)<=0){a=1;u=m;return a|0}i=c+16|0;h=0;while(1){n=g;o=f[n+4>>2]|0;e=i;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((o|0)>(e|0)|((o|0)==(e|0)?(f[n>>2]|0)>>>0>d>>>0:0))){d=0;e=19;break}o=b[(f[c>>2]|0)+d>>0]|0;d=Ij(d|0,e|0,1,0)|0;n=i;f[n>>2]=d;f[n+4>>2]=I;Ta[f[(f[a>>2]|0)+48>>2]&7](k,a,o);o=(f[l>>2]|0)+(h<<2)|0;n=f[k>>2]|0;f[k>>2]=0;d=f[o>>2]|0;f[o>>2]=n;if(d|0)Ra[f[(f[d>>2]|0)+4>>2]&127](d);d=f[k>>2]|0;f[k>>2]=0;if(d|0)Ra[f[(f[d>>2]|0)+4>>2]&127](d);d=f[(f[l>>2]|0)+(h<<2)>>2]|0;if(!d){d=0;e=19;break}e=f[(f[d>>2]|0)+8>>2]|0;n=Ma[f[(f[a>>2]|0)+28>>2]&127](a)|0;o=Na[f[(f[a>>2]|0)+20>>2]&127](a,h)|0;h=h+1|0;if(!(Oa[e&31](d,n,o)|0)){d=0;e=19;break}if((h|0)>=(j|0)){d=1;e=19;break}}if((e|0)==19){u=m;return d|0}return 0}function zc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+144|0;i=n+136|0;m=n+32|0;l=n;e=f[(f[c+4>>2]|0)+44>>2]|0;h=Yi(124)|0;f[h+4>>2]=0;f[h>>2]=2380;f[h+12>>2]=2404;f[h+100>>2]=0;f[h+104>>2]=0;f[h+108>>2]=0;j=h+16|0;k=j+80|0;do{f[j>>2]=0;j=j+4|0}while((j|0)<(k|0));f[h+112>>2]=e;f[h+116>>2]=d;f[h+120>>2]=0;g=h;f[m+4>>2]=2404;f[m+92>>2]=0;f[m+96>>2]=0;f[m+100>>2]=0;j=m+8|0;k=j+80|0;do{f[j>>2]=0;j=j+4|0}while((j|0)<(k|0));k=f[c+8>>2]|0;f[l>>2]=2404;j=l+4|0;c=j+4|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;c=k;f[j>>2]=c;c=((f[c+4>>2]|0)-(f[k>>2]|0)>>2>>>0)/3|0;b[i>>0]=0;Wd(l+8|0,c,i);Ra[f[(f[l>>2]|0)+8>>2]&127](l);f[m>>2]=f[j>>2];nd(m+4|0,l)|0;f[m+36>>2]=k;f[m+40>>2]=d;f[m+44>>2]=e;f[m+48>>2]=h;Bd(h,m);f[a>>2]=g;f[l>>2]=2404;e=f[l+20>>2]|0;if(e|0)Em(e);e=f[l+8>>2]|0;if(!e){df(m);u=n;return}Em(e);df(m);u=n;return}function Ac(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;q=v+4|0;r=v;d=f[b>>2]|0;f[q>>2]=d;n=a+8|0;c=(d|0)<0;b=d+1|0;do if(!c){f[q+4>>2]=((b|0)%3|0|0)==0?d+-2|0:b;if(!((d>>>0)%3|0)){b=d+2|0;break}else{b=d+-1|0;break}}else{f[q+4>>2]=d;b=d}while(0);f[q+8>>2]=b;m=c?-1073741824:(d>>>0)/3|0;l=a+212|0;k=a+216|0;j=a+360|0;b=0;while(1){if((d|0)>=0?(s=f[(f[(f[n>>2]|0)+12>>2]|0)+(d<<2)>>2]|0,(s|0)>=0):0){if(((s>>>0)/3|0|0)>=(m|0)?(f[k>>2]|0)!=(f[l>>2]|0):0){g=0;do{if(Rg((f[j>>2]|0)+(g<<4)|0)|0){c=f[l>>2]|0;f[r>>2]=d;e=c+(g*116|0)+108|0;a=f[e>>2]|0;if(a>>>0<(f[c+(g*116|0)+112>>2]|0)>>>0){f[a>>2]=d;f[e>>2]=a+4}else hf(c+(g*116|0)+104|0,r)}g=g+1|0}while(g>>>0<(((f[k>>2]|0)-(f[l>>2]|0)|0)/116|0)>>>0)}}else t=10;if((t|0)==10?(t=0,o=f[k>>2]|0,p=f[l>>2]|0,(o|0)!=(p|0)):0){c=o;a=p;i=0;do{g=a;f[r>>2]=d;h=g+(i*116|0)+108|0;e=f[h>>2]|0;if(e>>>0<(f[g+(i*116|0)+112>>2]|0)>>>0){f[e>>2]=d;f[h>>2]=e+4}else{hf(g+(i*116|0)+104|0,r);a=f[l>>2]|0;c=f[k>>2]|0}i=i+1|0}while(i>>>0<((c-a|0)/116|0)>>>0)}b=b+1|0;if((b|0)==3)break;d=f[q+(b<<2)>>2]|0}u=v;return 1}function Bc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;q=v+4|0;r=v;d=f[b>>2]|0;f[q>>2]=d;n=a+8|0;c=(d|0)<0;b=d+1|0;do if(!c){f[q+4>>2]=((b|0)%3|0|0)==0?d+-2|0:b;if(!((d>>>0)%3|0)){b=d+2|0;break}else{b=d+-1|0;break}}else{f[q+4>>2]=d;b=d}while(0);f[q+8>>2]=b;m=c?-1073741824:(d>>>0)/3|0;l=a+212|0;k=a+216|0;j=a+360|0;b=0;while(1){if((d|0)>=0?(s=f[(f[(f[n>>2]|0)+12>>2]|0)+(d<<2)>>2]|0,(s|0)>=0):0){if(((s>>>0)/3|0|0)>=(m|0)?(f[k>>2]|0)!=(f[l>>2]|0):0){g=0;do{if(Rg((f[j>>2]|0)+(g<<4)|0)|0){c=f[l>>2]|0;f[r>>2]=d;e=c+(g*116|0)+108|0;a=f[e>>2]|0;if(a>>>0<(f[c+(g*116|0)+112>>2]|0)>>>0){f[a>>2]=d;f[e>>2]=a+4}else hf(c+(g*116|0)+104|0,r)}g=g+1|0}while(g>>>0<(((f[k>>2]|0)-(f[l>>2]|0)|0)/116|0)>>>0)}}else t=10;if((t|0)==10?(t=0,o=f[k>>2]|0,p=f[l>>2]|0,(o|0)!=(p|0)):0){c=o;a=p;i=0;do{e=a;f[r>>2]=d;h=e+(i*116|0)+108|0;g=f[h>>2]|0;if(g>>>0<(f[e+(i*116|0)+112>>2]|0)>>>0){f[g>>2]=d;f[h>>2]=g+4}else{hf(e+(i*116|0)+104|0,r);a=f[l>>2]|0;c=f[k>>2]|0}i=i+1|0}while(i>>>0<((c-a|0)/116|0)>>>0)}b=b+1|0;if((b|0)==3)break;d=f[q+(b<<2)>>2]|0}u=v;return 1}function Cc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j+12|0;h=j;i=Yi(52)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;n[i+16>>2]=$(1.0);e=i+20|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;n[i+36>>2]=$(1.0);f[i+40>>2]=0;f[i+44>>2]=0;f[i+48>>2]=0;em(g);if(Md(g,f[c+32>>2]|0,i)|0){g=(f[c+4>>2]|0)+4|0;h=f[g>>2]|0;f[g>>2]=i;if(h|0){e=h+40|0;c=f[e>>2]|0;if(c|0){g=h+44|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{i=d+-4|0;f[g>>2]=i;d=f[i>>2]|0;f[i>>2]=0;if(d|0){lf(d);Em(d)}d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Em(c)}lf(h);Em(h)}f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=j;return}else{f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;c=Yi(32)|0;f[h>>2]=c;f[h+8>>2]=-2147483616;f[h+4>>2]=26;d=c;e=12075;g=d+26|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+26>>0]=0;f[a>>2]=-1;Df(a+4|0,h);if((b[h+11>>0]|0)<0)Em(f[h>>2]|0);e=i+40|0;c=f[e>>2]|0;if(c|0){g=i+44|0;d=f[g>>2]|0;if((d|0)!=(c|0)){do{a=d+-4|0;f[g>>2]=a;d=f[a>>2]|0;f[a>>2]=0;if(d|0){lf(d);Em(d)}d=f[g>>2]|0}while((d|0)!=(c|0));c=f[e>>2]|0}Em(c)}lf(i);Em(i);u=j;return}}function Dc(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;if(!(d[c+38>>1]|0)){a=0;return a|0}s=a+12|0;if(!(Vf(s,c)|0)){a=0;return a|0}e=f[s>>2]|0;i=a+4|0;h=f[i>>2]|0;g=f[a>>2]|0;k=h-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(j=g+(e<<2)|0,(h|0)!=(j|0)):0)f[i>>2]=h+(~((h+-4-j|0)>>>2)<<2)}else{Ve(a,e-k|0);e=f[s>>2]|0}if(!e){a=1;return a|0}p=c+8|0;q=c+16|0;o=0;a:while(1){m=p;l=f[m>>2]|0;m=f[m+4>>2]|0;h=q;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((m|0)>(h|0)|(m|0)==(h|0)&l>>>0>g>>>0)){e=0;r=19;break}n=f[c>>2]|0;i=b[n+g>>0]|0;h=Ij(g|0,h|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;j=i&255;k=j&3;j=j>>>2;switch(i&3){case 3:{g=j+o|0;if(g>>>0>=e>>>0){e=0;r=19;break a}Cf((f[a>>2]|0)+(o<<2)|0,0,(j<<2)+4|0)|0;e=g;break}case 0:{e=j;r=16;break}default:{i=0;e=j;while(1){if(!((m|0)>(g|0)|(m|0)==(g|0)&l>>>0>h>>>0)){e=0;r=19;break a}r=b[n+h>>0]|0;h=Ij(h|0,g|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;e=(r&255)<<(i<<3|6)|e;i=i+1|0;if((i|0)>=(k|0)){r=16;break}}}}if((r|0)==16){r=0;f[(f[a>>2]|0)+(o<<2)>>2]=e;e=o}o=e+1|0;e=f[s>>2]|0;if(o>>>0>=e>>>0){r=18;break}}if((r|0)==18){a=de(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((r|0)==19)return e|0;return 0}function Ec(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;if(!(d[c+38>>1]|0)){a=0;return a|0}s=a+12|0;if(!(Vf(s,c)|0)){a=0;return a|0}e=f[s>>2]|0;i=a+4|0;h=f[i>>2]|0;g=f[a>>2]|0;k=h-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(j=g+(e<<2)|0,(h|0)!=(j|0)):0)f[i>>2]=h+(~((h+-4-j|0)>>>2)<<2)}else{Ve(a,e-k|0);e=f[s>>2]|0}if(!e){a=1;return a|0}p=c+8|0;q=c+16|0;o=0;a:while(1){m=p;l=f[m>>2]|0;m=f[m+4>>2]|0;h=q;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((m|0)>(h|0)|(m|0)==(h|0)&l>>>0>g>>>0)){e=0;r=19;break}n=f[c>>2]|0;i=b[n+g>>0]|0;h=Ij(g|0,h|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;j=i&255;k=j&3;j=j>>>2;switch(i&3){case 3:{g=j+o|0;if(g>>>0>=e>>>0){e=0;r=19;break a}Cf((f[a>>2]|0)+(o<<2)|0,0,(j<<2)+4|0)|0;e=g;break}case 0:{e=j;r=16;break}default:{i=0;e=j;while(1){if(!((m|0)>(g|0)|(m|0)==(g|0)&l>>>0>h>>>0)){e=0;r=19;break a}r=b[n+h>>0]|0;h=Ij(h|0,g|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;e=(r&255)<<(i<<3|6)|e;i=i+1|0;if((i|0)>=(k|0)){r=16;break}}}}if((r|0)==16){r=0;f[(f[a>>2]|0)+(o<<2)>>2]=e;e=o}o=e+1|0;e=f[s>>2]|0;if(o>>>0>=e>>>0){r=18;break}}if((r|0)==18){a=he(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((r|0)==19)return e|0;return 0}function Fc(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;if(!(d[c+38>>1]|0)){a=0;return a|0}s=a+12|0;if(!(Vf(s,c)|0)){a=0;return a|0}e=f[s>>2]|0;i=a+4|0;h=f[i>>2]|0;g=f[a>>2]|0;k=h-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(j=g+(e<<2)|0,(h|0)!=(j|0)):0)f[i>>2]=h+(~((h+-4-j|0)>>>2)<<2)}else{Ve(a,e-k|0);e=f[s>>2]|0}if(!e){a=1;return a|0}p=c+8|0;q=c+16|0;o=0;a:while(1){m=p;l=f[m>>2]|0;m=f[m+4>>2]|0;h=q;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((m|0)>(h|0)|(m|0)==(h|0)&l>>>0>g>>>0)){e=0;r=19;break}n=f[c>>2]|0;i=b[n+g>>0]|0;h=Ij(g|0,h|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;j=i&255;k=j&3;j=j>>>2;switch(i&3){case 3:{g=j+o|0;if(g>>>0>=e>>>0){e=0;r=19;break a}Cf((f[a>>2]|0)+(o<<2)|0,0,(j<<2)+4|0)|0;e=g;break}case 0:{e=j;r=16;break}default:{i=0;e=j;while(1){if(!((m|0)>(g|0)|(m|0)==(g|0)&l>>>0>h>>>0)){e=0;r=19;break a}r=b[n+h>>0]|0;h=Ij(h|0,g|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;e=(r&255)<<(i<<3|6)|e;i=i+1|0;if((i|0)>=(k|0)){r=16;break}}}}if((r|0)==16){r=0;f[(f[a>>2]|0)+(o<<2)>>2]=e;e=o}o=e+1|0;e=f[s>>2]|0;if(o>>>0>=e>>>0){r=18;break}}if((r|0)==18){a=ie(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((r|0)==19)return e|0;return 0}function Gc(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;if(!(d[c+38>>1]|0)){a=0;return a|0}s=a+12|0;if(!(Vf(s,c)|0)){a=0;return a|0}e=f[s>>2]|0;i=a+4|0;h=f[i>>2]|0;g=f[a>>2]|0;k=h-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(j=g+(e<<2)|0,(h|0)!=(j|0)):0)f[i>>2]=h+(~((h+-4-j|0)>>>2)<<2)}else{Ve(a,e-k|0);e=f[s>>2]|0}if(!e){a=1;return a|0}p=c+8|0;q=c+16|0;o=0;a:while(1){m=p;l=f[m>>2]|0;m=f[m+4>>2]|0;h=q;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((m|0)>(h|0)|(m|0)==(h|0)&l>>>0>g>>>0)){e=0;r=19;break}n=f[c>>2]|0;i=b[n+g>>0]|0;h=Ij(g|0,h|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;j=i&255;k=j&3;j=j>>>2;switch(i&3){case 3:{g=j+o|0;if(g>>>0>=e>>>0){e=0;r=19;break a}Cf((f[a>>2]|0)+(o<<2)|0,0,(j<<2)+4|0)|0;e=g;break}case 0:{e=j;r=16;break}default:{i=0;e=j;while(1){if(!((m|0)>(g|0)|(m|0)==(g|0)&l>>>0>h>>>0)){e=0;r=19;break a}r=b[n+h>>0]|0;h=Ij(h|0,g|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;e=(r&255)<<(i<<3|6)|e;i=i+1|0;if((i|0)>=(k|0)){r=16;break}}}}if((r|0)==16){r=0;f[(f[a>>2]|0)+(o<<2)>>2]=e;e=o}o=e+1|0;e=f[s>>2]|0;if(o>>>0>=e>>>0){r=18;break}}if((r|0)==18){a=je(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((r|0)==19)return e|0;return 0}function Hc(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;if(!(d[c+38>>1]|0)){a=0;return a|0}s=a+12|0;if(!(Vf(s,c)|0)){a=0;return a|0}e=f[s>>2]|0;i=a+4|0;h=f[i>>2]|0;g=f[a>>2]|0;k=h-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(j=g+(e<<2)|0,(h|0)!=(j|0)):0)f[i>>2]=h+(~((h+-4-j|0)>>>2)<<2)}else{Ve(a,e-k|0);e=f[s>>2]|0}if(!e){a=1;return a|0}p=c+8|0;q=c+16|0;o=0;a:while(1){m=p;l=f[m>>2]|0;m=f[m+4>>2]|0;h=q;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((m|0)>(h|0)|(m|0)==(h|0)&l>>>0>g>>>0)){e=0;r=19;break}n=f[c>>2]|0;i=b[n+g>>0]|0;h=Ij(g|0,h|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;j=i&255;k=j&3;j=j>>>2;switch(i&3){case 3:{g=j+o|0;if(g>>>0>=e>>>0){e=0;r=19;break a}Cf((f[a>>2]|0)+(o<<2)|0,0,(j<<2)+4|0)|0;e=g;break}case 0:{e=j;r=16;break}default:{i=0;e=j;while(1){if(!((m|0)>(g|0)|(m|0)==(g|0)&l>>>0>h>>>0)){e=0;r=19;break a}r=b[n+h>>0]|0;h=Ij(h|0,g|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;e=(r&255)<<(i<<3|6)|e;i=i+1|0;if((i|0)>=(k|0)){r=16;break}}}}if((r|0)==16){r=0;f[(f[a>>2]|0)+(o<<2)>>2]=e;e=o}o=e+1|0;e=f[s>>2]|0;if(o>>>0>=e>>>0){r=18;break}}if((r|0)==18){a=ke(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((r|0)==19)return e|0;return 0}function Ic(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;if(!(d[c+38>>1]|0)){a=0;return a|0}s=a+12|0;if(!(Vf(s,c)|0)){a=0;return a|0}e=f[s>>2]|0;i=a+4|0;h=f[i>>2]|0;g=f[a>>2]|0;k=h-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(j=g+(e<<2)|0,(h|0)!=(j|0)):0)f[i>>2]=h+(~((h+-4-j|0)>>>2)<<2)}else{Ve(a,e-k|0);e=f[s>>2]|0}if(!e){a=1;return a|0}p=c+8|0;q=c+16|0;o=0;a:while(1){m=p;l=f[m>>2]|0;m=f[m+4>>2]|0;h=q;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((m|0)>(h|0)|(m|0)==(h|0)&l>>>0>g>>>0)){e=0;r=19;break}n=f[c>>2]|0;i=b[n+g>>0]|0;h=Ij(g|0,h|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;j=i&255;k=j&3;j=j>>>2;switch(i&3){case 3:{g=j+o|0;if(g>>>0>=e>>>0){e=0;r=19;break a}Cf((f[a>>2]|0)+(o<<2)|0,0,(j<<2)+4|0)|0;e=g;break}case 0:{e=j;r=16;break}default:{i=0;e=j;while(1){if(!((m|0)>(g|0)|(m|0)==(g|0)&l>>>0>h>>>0)){e=0;r=19;break a}r=b[n+h>>0]|0;h=Ij(h|0,g|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;e=(r&255)<<(i<<3|6)|e;i=i+1|0;if((i|0)>=(k|0)){r=16;break}}}}if((r|0)==16){r=0;f[(f[a>>2]|0)+(o<<2)>>2]=e;e=o}o=e+1|0;e=f[s>>2]|0;if(o>>>0>=e>>>0){r=18;break}}if((r|0)==18){a=me(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((r|0)==19)return e|0;return 0}function Jc(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;if(!(d[c+38>>1]|0)){a=0;return a|0}s=a+12|0;if(!(Vf(s,c)|0)){a=0;return a|0}e=f[s>>2]|0;i=a+4|0;h=f[i>>2]|0;g=f[a>>2]|0;k=h-g>>2;if(e>>>0<=k>>>0){if(e>>>0>>0?(j=g+(e<<2)|0,(h|0)!=(j|0)):0)f[i>>2]=h+(~((h+-4-j|0)>>>2)<<2)}else{Ve(a,e-k|0);e=f[s>>2]|0}if(!e){a=1;return a|0}p=c+8|0;q=c+16|0;o=0;a:while(1){m=p;l=f[m>>2]|0;m=f[m+4>>2]|0;h=q;g=f[h>>2]|0;h=f[h+4>>2]|0;if(!((m|0)>(h|0)|(m|0)==(h|0)&l>>>0>g>>>0)){e=0;r=19;break}n=f[c>>2]|0;i=b[n+g>>0]|0;h=Ij(g|0,h|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;j=i&255;k=j&3;j=j>>>2;switch(i&3){case 3:{g=j+o|0;if(g>>>0>=e>>>0){e=0;r=19;break a}Cf((f[a>>2]|0)+(o<<2)|0,0,(j<<2)+4|0)|0;e=g;break}case 0:{e=j;r=16;break}default:{i=0;e=j;while(1){if(!((m|0)>(g|0)|(m|0)==(g|0)&l>>>0>h>>>0)){e=0;r=19;break a}r=b[n+h>>0]|0;h=Ij(h|0,g|0,1,0)|0;g=I;j=q;f[j>>2]=h;f[j+4>>2]=g;e=(r&255)<<(i<<3|6)|e;i=i+1|0;if((i|0)>=(k|0)){r=16;break}}}}if((r|0)==16){r=0;f[(f[a>>2]|0)+(o<<2)>>2]=e;e=o}o=e+1|0;e=f[s>>2]|0;if(o>>>0>=e>>>0){r=18;break}}if((r|0)==18){a=ne(a+16|0,f[a>>2]|0,e)|0;return a|0}else if((r|0)==19)return e|0;return 0}function Kc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!(f[a+64>>2]|0)){d=Yi(32)|0;gj(d);h=a+64|0;g=f[h>>2]|0;f[h>>2]=d;if(g){d=f[g>>2]|0;if(d|0){e=g+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}Em(g);d=f[h>>2]|0}Jg(a,d,0,0,0,0);d=a}else d=a;if(!(wf(d,c)|0))return;b[a+84>>0]=b[c+84>>0]|0;f[a+80>>2]=f[c+80>>2];if((a|0)!=(c|0))qd(a+68|0,f[c+68>>2]|0,f[c+72>>2]|0);i=f[c+88>>2]|0;if(!i){a=a+88|0;d=f[a>>2]|0;f[a>>2]=0;if(!d)return;e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Em(e)}Em(d);return}l=Yi(40)|0;f[l>>2]=f[i>>2];e=l+8|0;g=i+8|0;f[e>>2]=0;j=l+12|0;f[j>>2]=0;d=l+16|0;f[d>>2]=0;c=i+12|0;h=(f[c>>2]|0)-(f[g>>2]|0)|0;if(h|0){if((h|0)<0)Wl(e);k=Yi(h)|0;f[j>>2]=k;f[e>>2]=k;f[d>>2]=k+h;e=f[g>>2]|0;d=(f[c>>2]|0)-e|0;if((d|0)>0){Od(k|0,e|0,d|0)|0;f[j>>2]=k+d}}g=l+24|0;k=i+24|0;f[g>>2]=f[k>>2];f[g+4>>2]=f[k+4>>2];f[g+8>>2]=f[k+8>>2];f[g+12>>2]=f[k+12>>2];a=a+88|0;g=f[a>>2]|0;f[a>>2]=l;if(!g)return;d=f[g+8>>2]|0;if(d|0){e=g+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}Em(g);return}function Lc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;f[a>>2]=b;break a}case 10:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{d=(f[c>>2]|0)+(4-1)&~(4-1);b=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=b;f[d+4>>2]=0;break a}case 12:{d=(f[c>>2]|0)+(8-1)&~(8-1);b=d;e=f[b>>2]|0;b=f[b+4>>2]|0;f[c>>2]=d+8;d=a;f[d>>2]=e;f[d+4>>2]=b;break a}case 13:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&65535)<<16>>16;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 14:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&65535;f[e+4>>2]=0;break a}case 15:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;d=(d&255)<<24>>24;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a}case 16:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d&255;f[e+4>>2]=0;break a}case 17:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}case 18:{e=(f[c>>2]|0)+(8-1)&~(8-1);g=+p[e>>3];f[c>>2]=e+8;p[a>>3]=g;break a}default:break a}while(0);while(0);return}function Mc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+32|0;n=t+20|0;m=t+16|0;s=t;r=c+24|0;k=b[r>>0]|0;o=k<<24>>24;l=f[a+80>>2]|0;h=X(l,o)|0;f[s>>2]=f[674];f[s+4>>2]=f[675];f[s+8>>2]=f[676];f[s+12>>2]=f[677];g=d+4|0;e=f[g>>2]|0;a=f[d>>2]|0;i=e-a>>2;if(h>>>0<=i>>>0){if(h>>>0>>0?(j=a+(h<<2)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-4-j|0)>>>2)<<2)}else Ve(d,h-i|0);if((l|0)<=0){s=1;u=t;return s|0}i=c+84|0;h=c+68|0;if(k<<24>>24<=0){e=0;while(1){if(!(b[i>>0]|0))a=f[(f[h>>2]|0)+(e<<2)>>2]|0;else a=e;f[m>>2]=a;k=b[r>>0]|0;f[n>>2]=f[m>>2];if(!($a(c,n,k,s)|0)){a=0;e=18;break}e=e+1|0;if((e|0)>=(l|0)){a=1;e=18;break}}if((e|0)==18){u=t;return a|0}}else{p=0;q=0}while(1){if(!(b[i>>0]|0))a=f[(f[h>>2]|0)+(q<<2)>>2]|0;else a=q;f[m>>2]=a;k=b[r>>0]|0;f[n>>2]=f[m>>2];if(!($a(c,n,k,s)|0)){a=0;e=18;break}a=f[d>>2]|0;e=p;g=0;while(1){f[a+(e<<2)>>2]=f[s+(g<<2)>>2];g=g+1|0;if((g|0)==(o|0))break;else e=e+1|0}q=q+1|0;if((q|0)>=(l|0)){a=1;e=18;break}else p=o+p|0}if((e|0)==18){u=t;return a|0}return 0}function Nc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+32|0;i=m+16|0;e=m;g=0;do{Vf(i,b)|0;c=f[i>>2]|0;if(c|0){d=a+60+(g*12|0)|0;uc(d,c,0);cm(e);ed(e,b)|0;if(f[i>>2]|0){c=0;do{n=Rg(e)|0;l=(f[d>>2]|0)+(c>>>5<<2)|0;k=1<<(c&31);j=f[l>>2]|0;f[l>>2]=n?j|k:j&~k;c=c+1|0}while(c>>>0<(f[i>>2]|0)>>>0)}Jm(e)}g=g+1|0}while((g|0)<4);k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;c=l;e=f[c>>2]|0;c=f[c+4>>2]|0;i=Ij(e|0,c|0,4,0)|0;d=I;if((k|0)<(d|0)|(k|0)==(d|0)&j>>>0>>0){n=0;u=m;return n|0}g=f[b>>2]|0;b=g+e|0;b=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;n=l;f[n>>2]=i;f[n+4>>2]=d;d=Ij(e|0,c|0,8,0)|0;e=I;if((k|0)<(e|0)|(k|0)==(e|0)&j>>>0>>0){n=0;u=m;return n|0}c=g+i|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;n=l;f[n>>2]=d;f[n+4>>2]=e;if((b|0)>(c|0)){n=0;u=m;return n|0}f[a+12>>2]=b;f[a+16>>2]=c;n=c+(1-b)|0;f[a+20>>2]=n;c=(n|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(n&1|0){n=1;u=m;return n|0}f[d>>2]=c+-1;n=1;u=m;return n|0}function Oc(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+80|0;m=n;g=n+60|0;l=n+40|0;h=m;i=d;j=h+40|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));yb(a,m,g);if(f[a>>2]|0){m=m+24|0;Jm(m);u=n;return}k=a+4|0;h=k+11|0;if((b[h>>0]|0)<0)Em(f[k>>2]|0);if((b[g+7>>0]|0)!=1){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;g=Yi(32)|0;f[l>>2]=g;f[l+8>>2]=-2147483616;f[l+4>>2]=20;h=g;i=10776;j=h+20|0;do{b[h>>0]=b[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0));b[g+20>>0]=0;f[a>>2]=-1;Df(k,l);if((b[l+11>>0]|0)<0)Em(f[l>>2]|0);m=m+24|0;Jm(m);u=n;return}te(l,b[g+8>>0]|0);g=f[l>>2]|0;if(!g){j=l+16|0;g=f[j>>2]|0;f[j>>2]=0;bi(a,g,c,d,e);if(!(f[a>>2]|0)){if((b[h>>0]|0)<0)Em(f[k>>2]|0);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0}if(g|0)Ra[f[(f[g>>2]|0)+4>>2]&127](g)}else{f[a>>2]=g;Df(k,l+4|0)}k=l+16|0;g=f[k>>2]|0;f[k>>2]=0;if(g|0)Ra[f[(f[g>>2]|0)+4>>2]&127](g);g=l+4|0;if((b[g+11>>0]|0)<0)Em(f[g>>2]|0);m=m+24|0;Jm(m);u=n;return}function Pc(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;m=n+16|0;l=n;h=f[b+4>>2]|0;if((d|0)<=-1)ra(12658,12674,59,12771);i=f[h+8>>2]|0;if(((f[h+12>>2]|0)-i>>2|0)<=(d|0))ra(12781,12674,60,12771);i=f[i+(d<<2)>>2]|0;do if((c+-1|0)>>>0<6&(Ma[f[(f[b>>2]|0)+8>>2]&127](b)|0)==1){j=Ma[f[(f[b>>2]|0)+36>>2]&127](b)|0;k=Na[f[(f[b>>2]|0)+44>>2]&127](b,d)|0;if((j|0)==0|(k|0)==0){f[a>>2]=0;u=n;return}h=Na[f[(f[b>>2]|0)+40>>2]&127](b,d)|0;if(!h){f[l>>2]=f[b+44>>2];f[l+4>>2]=j;f[l+12>>2]=k;f[l+8>>2]=k+12;Vb(a,m,c,i,e,l,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}else{f[l>>2]=f[b+44>>2];f[l+4>>2]=h;f[l+12>>2]=k;f[l+8>>2]=k+12;Qb(a,m,c,i,e,l,g);if(!(f[a>>2]|0)){f[a>>2]=0;break}u=n;return}}while(0);f[a>>2]=0;u=n;return}function Qc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=f[a+8>>2]|0;k=a+76|0;d=f[k>>2]|0;m=f[d+80>>2]|0;r=c+84|0;b[r>>0]=0;j=c+68|0;h=c+72|0;g=f[h>>2]|0;e=f[j>>2]|0;l=g-e>>2;if(m>>>0<=l>>>0){if(m>>>0>>0?(i=e+(m<<2)|0,(g|0)!=(i|0)):0)f[h>>2]=g+(~((g+-4-i|0)>>>2)<<2)}else{ee(j,m-l|0,2368);m=f[k>>2]|0;d=m;m=f[m+80>>2]|0}p=(f[d+100>>2]|0)-(f[d+96>>2]|0)|0;q=(p|0)/12|0;if((p|0)<=0){r=1;return r|0}p=n+28|0;o=a+80|0;n=c+68|0;a=d+96|0;k=d+100|0;l=0;while(1){d=f[a>>2]|0;if((l|0)>=(((f[k>>2]|0)-d|0)/12|0|0)){e=9;break}i=l*3|0;g=f[p>>2]|0;h=f[(f[o>>2]|0)+12>>2]|0;e=f[h+(f[g+(i<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=14;break}if(b[r>>0]|0){e=12;break}j=f[n>>2]|0;f[j+(f[d+(l*12|0)>>2]<<2)>>2]=e;e=f[h+(f[g+(i+1<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=14;break}f[j+(f[d+(l*12|0)+4>>2]<<2)>>2]=e;e=f[h+(f[g+(i+2<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=14;break}f[j+(f[d+(l*12|0)+8>>2]<<2)>>2]=e;l=l+1|0;if((l|0)>=(q|0)){d=1;e=14;break}}if((e|0)==9)ra(12948,12860,64,12943);else if((e|0)==12)ra(10949,10968,89,11068);else if((e|0)==14)return d|0;return 0}function Rc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=u;u=u+32|0;m=o+12|0;l=o;d=b*3|0;f[m>>2]=0;n=m+4|0;f[n>>2]=0;f[m+8>>2]=0;do if(d)if(d>>>0>1073741823)Wl(m);else{j=b*12|0;c=Yi(j)|0;f[m>>2]=c;k=c+(d<<2)|0;f[m+8>>2]=k;Cf(c|0,0,j|0)|0;f[n>>2]=k;break}else c=0;while(0);if(Ef(d,1,f[a+32>>2]|0,c)|0)if(!b)a=1;else{h=a+44|0;i=l+4|0;j=l+8|0;e=0;g=0;k=0;while(1){f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;d=f[m>>2]|0;p=f[d+(k<<2)>>2]|0;c=p>>>1;c=((p&1|0)==0?c:0-c|0)+g|0;f[l>>2]=c;p=f[d+(k+1<<2)>>2]|0;a=p>>>1;c=((p&1|0)==0?a:0-a|0)+c|0;f[i>>2]=c;d=f[d+(k+2<<2)>>2]|0;a=d>>>1;g=((d&1|0)==0?a:0-a|0)+c|0;f[j>>2]=g;c=f[h>>2]|0;a=c+100|0;d=f[a>>2]|0;if((d|0)==(f[c+104>>2]|0))Re(c+96|0,l);else{f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];f[d+8>>2]=f[l+8>>2];f[a>>2]=(f[a>>2]|0)+12}e=e+1|0;if(e>>>0>=b>>>0){a=1;break}else k=k+3|0}}else a=0;c=f[m>>2]|0;if(!c){u=o;return a|0}d=f[n>>2]|0;if((d|0)!=(c|0))f[n>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c);u=o;return a|0}function Sc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;d=f[b>>2]|0;if((d|0)<0){j=-1073741824;return j|0}i=f[(f[(f[a+4>>2]|0)+12>>2]|0)+(d<<2)>>2]|0;if((i|0)<0){j=-1073741824;return j|0}c=d+1|0;c=((c|0)%3|0|0)==0?d+-2|0:c;h=f[a>>2]|0;do if((c|0)!=-1073741824){a=(c|0)/3|0;if((c|0)<=-3)ra(12835,12860,63,12943);b=f[h+96>>2]|0;if((a|0)<(((f[h+100>>2]|0)-b|0)/12|0|0)){g=f[b+(a*12|0)+(((c|0)%3|0)<<2)>>2]|0;break}else ra(12948,12860,64,12943)}else g=-1073741824;while(0);a=(((i>>>0)%3|0|0)==0?2:-1)+i|0;do if((a|0)!=-1073741824){c=(a|0)/3|0;if((a|0)<=-3)ra(12835,12860,63,12943);b=f[h+96>>2]|0;if((c|0)<(((f[h+100>>2]|0)-b|0)/12|0|0)){e=f[b+(c*12|0)+(((a|0)%3|0)<<2)>>2]|0;break}else ra(12948,12860,64,12943)}else e=-1073741824;while(0);if((g|0)!=(e|0)){j=-1073741824;return j|0}c=(((d>>>0)%3|0|0)==0?2:-1)+d|0;a=(c|0)/3|0;if((c|0)<=-3)ra(12835,12860,63,12943);b=f[h+96>>2]|0;if((a|0)>=(((f[h+100>>2]|0)-b|0)/12|0|0))ra(12948,12860,64,12943);c=f[b+(a*12|0)+(((c|0)%3|0)<<2)>>2]|0;d=i+1|0;d=((d|0)%3|0|0)==0?i+-2|0:d;do if((d|0)!=-1073741824){a=(d|0)/3|0;if((d|0)<=-3)ra(12835,12860,63,12943);b=f[h+96>>2]|0;if((a|0)<(((f[h+100>>2]|0)-b|0)/12|0|0)){j=f[b+(a*12|0)+(((d|0)%3|0)<<2)>>2]|0;break}else ra(12948,12860,64,12943)}else j=-1073741824;while(0);j=(c|0)!=(j|0)?-1073741824:i;return j|0}function Tc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=f[a+8>>2]|0;k=a+76|0;d=f[k>>2]|0;m=f[d+80>>2]|0;q=c+84|0;b[q>>0]=0;j=c+68|0;h=c+72|0;g=f[h>>2]|0;e=f[j>>2]|0;l=g-e>>2;if(m>>>0<=l>>>0){if(m>>>0>>0?(i=e+(m<<2)|0,(g|0)!=(i|0)):0)f[h>>2]=g+(~((g+-4-i|0)>>>2)<<2)}else{ee(j,m-l|0,2368);m=f[k>>2]|0;d=m;m=f[m+80>>2]|0}n=(f[d+100>>2]|0)-(f[d+96>>2]|0)|0;o=(n|0)/12|0;if((n|0)<=0){q=1;return q|0}n=a+80|0;l=c+68|0;a=d+96|0;j=d+100|0;k=0;while(1){d=f[a>>2]|0;if((k|0)>=(((f[j>>2]|0)-d|0)/12|0|0)){e=9;break}h=k*3|0;g=f[(f[n>>2]|0)+12>>2]|0;e=f[g+(f[(f[p>>2]|0)+(h<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}if(b[q>>0]|0){e=12;break}i=f[l>>2]|0;f[i+(f[d+(k*12|0)>>2]<<2)>>2]=e;e=f[g+(f[(f[p>>2]|0)+(h+1<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}f[i+(f[d+(k*12|0)+4>>2]<<2)>>2]=e;e=f[g+(f[(f[p>>2]|0)+(h+2<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}f[i+(f[d+(k*12|0)+8>>2]<<2)>>2]=e;k=k+1|0;if((k|0)>=(o|0)){d=1;e=13;break}}if((e|0)==9)ra(12948,12860,64,12943);else if((e|0)==12)ra(10949,10968,89,11068);else if((e|0)==13)return d|0;return 0}function Uc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=u;u=u+64|0;m=n;d=m;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));do if(Jc(m,b)|0){e=(a|0)==0;if(!e?(f[m+12>>2]|0)==0:0){g=0;break}d=md(m,b)|0;if(e|d^1)g=d;else{j=m+44|0;l=m+48|0;i=m+40|0;b=m+16|0;g=m+28|0;d=f[l>>2]|0;k=0;while(1){a:do if(d>>>0<16384){e=f[j>>2]|0;do{if((e|0)<=0)break a;o=f[i>>2]|0;e=e+-1|0;f[j>>2]=e;d=h[o+e>>0]|0|d<<8;f[l>>2]=d}while(d>>>0<16384)}while(0);p=d&4095;o=f[(f[b>>2]|0)+(p<<2)>>2]|0;e=f[g>>2]|0;d=(X(f[e+(o<<3)>>2]|0,d>>>12)|0)+p-(f[e+(o<<3)+4>>2]|0)|0;f[l>>2]=d;f[c+(k<<2)>>2]=o;k=k+1|0;if((k|0)==(a|0)){g=1;break}}}}else g=0;while(0);d=f[m+28>>2]|0;if(d|0){b=m+32|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-8-d|0)>>>3)<<3);Em(d)}d=f[m+16>>2]|0;if(d|0){b=m+20|0;e=f[b>>2]|0;if((e|0)!=(d|0))f[b>>2]=e+(~((e+-4-d|0)>>>2)<<2);Em(d)}b=f[m>>2]|0;if(!b){u=n;return g|0}e=m+4|0;d=f[e>>2]|0;if((d|0)!=(b|0))f[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);Em(b);u=n;return g|0}function Vc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=f[a+8>>2]|0;k=a+112|0;d=f[k>>2]|0;m=f[d+80>>2]|0;q=c+84|0;b[q>>0]=0;j=c+68|0;h=c+72|0;g=f[h>>2]|0;e=f[j>>2]|0;l=g-e>>2;if(m>>>0<=l>>>0){if(m>>>0>>0?(i=e+(m<<2)|0,(g|0)!=(i|0)):0)f[h>>2]=g+(~((g+-4-i|0)>>>2)<<2)}else{ee(j,m-l|0,2368);m=f[k>>2]|0;d=m;m=f[m+80>>2]|0}n=(f[d+100>>2]|0)-(f[d+96>>2]|0)|0;o=(n|0)/12|0;if((n|0)<=0){q=1;return q|0}n=a+116|0;l=c+68|0;a=d+96|0;j=d+100|0;k=0;while(1){d=f[a>>2]|0;if((k|0)>=(((f[j>>2]|0)-d|0)/12|0|0)){e=9;break}h=k*3|0;g=f[(f[n>>2]|0)+12>>2]|0;e=f[g+(f[(f[p>>2]|0)+(h<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}if(b[q>>0]|0){e=12;break}i=f[l>>2]|0;f[i+(f[d+(k*12|0)>>2]<<2)>>2]=e;e=f[g+(f[(f[p>>2]|0)+(h+1<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}f[i+(f[d+(k*12|0)+4>>2]<<2)>>2]=e;e=f[g+(f[(f[p>>2]|0)+(h+2<<2)>>2]<<2)>>2]|0;if(e>>>0>=m>>>0){d=0;e=13;break}f[i+(f[d+(k*12|0)+8>>2]<<2)>>2]=e;k=k+1|0;if((k|0)>=(o|0)){d=1;e=13;break}}if((e|0)==9)ra(12948,12860,64,12943);else if((e|0)==12)ra(10949,10968,89,11068);else if((e|0)==13)return d|0;return 0}function Wc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;m=n+24|0;k=n+16|0;j=n+8|0;l=n;f[a>>2]=2356;f[a+4>>2]=f[b+4>>2];h=a+8|0;i=b+8|0;f[h>>2]=0;e=a+12|0;f[e>>2]=0;d=a+16|0;f[d>>2]=0;g=b+12|0;c=f[g>>2]|0;do if(c|0)if((c|0)<0)Wl(h);else{c=((c+-1|0)>>>5)+1|0;o=Yi(c<<2)|0;f[h>>2]=o;f[e>>2]=0;f[d>>2]=c;e=f[i>>2]|0;f[j>>2]=e;f[j+4>>2]=0;i=f[g>>2]|0;f[l>>2]=e+(i>>>5<<2);f[l+4>>2]=i&31;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];rd(h,k,m);break}while(0);h=a+20|0;f[h>>2]=0;g=a+24|0;f[g>>2]=0;d=a+28|0;f[d>>2]=0;e=b+24|0;c=f[e>>2]|0;if(!c){u=n;return}if((c|0)<0)Wl(h);o=((c+-1|0)>>>5)+1|0;a=Yi(o<<2)|0;f[h>>2]=a;f[g>>2]=0;f[d>>2]=o;b=f[b+20>>2]|0;f[j>>2]=b;f[j+4>>2]=0;o=f[e>>2]|0;f[l>>2]=b+(o>>>5<<2);f[l+4>>2]=o&31;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];rd(h,k,m);u=n;return}function Xc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;m=n+24|0;k=n+16|0;j=n+8|0;l=n;f[a>>2]=2404;f[a+4>>2]=f[b+4>>2];h=a+8|0;i=b+8|0;f[h>>2]=0;e=a+12|0;f[e>>2]=0;d=a+16|0;f[d>>2]=0;g=b+12|0;c=f[g>>2]|0;do if(c|0)if((c|0)<0)Wl(h);else{c=((c+-1|0)>>>5)+1|0;o=Yi(c<<2)|0;f[h>>2]=o;f[e>>2]=0;f[d>>2]=c;e=f[i>>2]|0;f[j>>2]=e;f[j+4>>2]=0;i=f[g>>2]|0;f[l>>2]=e+(i>>>5<<2);f[l+4>>2]=i&31;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];rd(h,k,m);break}while(0);h=a+20|0;f[h>>2]=0;g=a+24|0;f[g>>2]=0;d=a+28|0;f[d>>2]=0;e=b+24|0;c=f[e>>2]|0;if(!c){u=n;return}if((c|0)<0)Wl(h);o=((c+-1|0)>>>5)+1|0;a=Yi(o<<2)|0;f[h>>2]=a;f[g>>2]=0;f[d>>2]=o;b=f[b+20>>2]|0;f[j>>2]=b;f[j+4>>2]=0;o=f[e>>2]|0;f[l>>2]=b+(o>>>5<<2);f[l+4>>2]=o&31;f[k>>2]=f[j>>2];f[k+4>>2]=f[j+4>>2];f[m>>2]=f[l>>2];f[m+4>>2]=f[l+4>>2];rd(h,k,m);u=n;return}function Yc(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0;v=u;u=u+16|0;t=v;e=f[a+40>>2]|0;o=f[a+44>>2]|0;if((e|0)==(o|0)){d=2;t=0;d=(d|0)==2;t=d?0:t;u=v;return t|0}p=t+11|0;r=t+4|0;q=d+11|0;s=d+4|0;a=0;a:while(1){f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=0;m=Af(f[e>>2]|0,c,t)|0;n=b[p>>0]|0;b:do if(m){m=n<<24>>24<0;h=n&255;k=m?f[r>>2]|0:h;l=b[q>>0]|0;g=l<<24>>24<0;if((k|0)==((g?f[s>>2]|0:l&255)|0)){j=f[t>>2]|0;l=m?j:t;g=g?f[d>>2]|0:d;i=(k|0)==0;c:do if(m){if(!i?sh(l,g,k)|0:0){g=0;break b}}else if(!i){if((j&255)<<24>>24==(b[g>>0]|0))i=t;else{g=0;break b}while(1){h=h+-1|0;i=i+1|0;if(!h)break c;g=g+1|0;if((b[i>>0]|0)!=(b[g>>0]|0)){g=0;break b}}}while(0);g=1;a=f[e>>2]|0}else g=0}else g=3;while(0);if(n<<24>>24<0)Em(f[t>>2]|0);switch(g&3){case 3:case 0:break;default:{e=17;break a}}e=e+4|0;if((e|0)==(o|0)){g=2;e=17;break}}if((e|0)==17){t=(g|0)==2;t=t?0:a;u=v;return t|0}return 0}function Zc(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=f[c>>2]|0;m=f[l>>2]|0;g=f[a+4>>2]|0;c=f[l+4>>2]|0;i=g+-1|0;j=(i&g|0)==0;if(!j)if(c>>>0>>0)h=c;else h=(c>>>0)%(g>>>0)|0;else h=i&c;d=(f[a>>2]|0)+(h<<2)|0;k=f[d>>2]|0;while(1){c=f[k>>2]|0;if((c|0)==(l|0))break;else k=c}if((k|0)!=(a+8|0)){c=f[k+4>>2]|0;if(!j){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&i;if((c|0)==(h|0)){d=m;e=21}else e=13}else e=13;do if((e|0)==13){if(m|0){c=f[m+4>>2]|0;if(!j){if(c>>>0>=g>>>0)c=(c>>>0)%(g>>>0)|0}else c=c&i;if((c|0)==(h|0)){d=m;c=m;e=22;break}}f[d>>2]=0;d=f[l>>2]|0;e=21}while(0);if((e|0)==21){c=d;if(d)e=22}if((e|0)==22){d=f[d+4>>2]|0;if(!j){if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0}else d=d&i;if((d|0)!=(h|0)){f[(f[a>>2]|0)+(d<<2)>>2]=k;c=f[l>>2]|0}}f[k>>2]=c;f[l>>2]=0;a=a+12|0;f[a>>2]=(f[a>>2]|0)+-1;if(!l)return m|0;d=l+8|0;c=f[l+20>>2]|0;if(c|0){e=l+24|0;if((f[e>>2]|0)!=(c|0))f[e>>2]=c;Em(c)}if((b[d+11>>0]|0)<0)Em(f[d>>2]|0);Em(l);return m|0}function _c(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+32|0;l=r+20|0;k=r+16|0;q=r;p=c+24|0;e=b[p>>0]|0;m=e<<24>>24;h=f[a+80>>2]|0;j=X(h,m)|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;f[q+12>>2]=0;jd(d,0,0+(j<<2)|0);if((h|0)<=0){q=1;u=r;return q|0}j=c+84|0;i=c+68|0;if(e<<24>>24<=0){e=0;while(1){if(!(b[j>>0]|0))a=f[(f[i>>2]|0)+(e<<2)>>2]|0;else a=e;f[k>>2]=a;g=b[p>>0]|0;f[l>>2]=f[k>>2];if(!(kb(c,l,g,q)|0)){a=0;e=13;break}e=e+1|0;if((e|0)>=(h|0)){a=1;e=13;break}}if((e|0)==13){u=r;return a|0}}else{n=0;o=0}while(1){if(!(b[j>>0]|0))a=f[(f[i>>2]|0)+(o<<2)>>2]|0;else a=o;f[k>>2]=a;g=b[p>>0]|0;f[l>>2]=f[k>>2];if(!(kb(c,l,g,q)|0)){a=0;e=13;break}a=f[d>>2]|0;e=n;g=0;while(1){f[a+(e<<2)>>2]=f[q+(g<<2)>>2];g=g+1|0;if((g|0)==(m|0))break;else e=e+1|0}o=o+1|0;if((o|0)>=(h|0)){a=1;e=13;break}else n=m+n|0}if((e|0)==13){u=r;return a|0}return 0}function $c(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;d=b[(f[a+8>>2]|0)+24>>0]|0;i=Bm(d>>>0>1073741823?-1:d<<2)|0;j=a+28|0;c=f[j>>2]|0;f[j>>2]=i;if(c|0)Cm(c);i=a+4|0;g=f[(f[i>>2]|0)+32>>2]|0;d=d<<2;n=g+8|0;l=f[n>>2]|0;n=f[n+4>>2]|0;e=g+16|0;k=e;c=f[k>>2]|0;k=Ij(c|0,f[k+4>>2]|0,d|0,0)|0;m=I;if((n|0)<(m|0)|(n|0)==(m|0)&l>>>0>>0){n=0;return n|0}Od(f[j>>2]|0,(f[g>>2]|0)+c|0,d|0)|0;c=e;c=Ij(f[c>>2]|0,f[c+4>>2]|0,d|0,0)|0;f[e>>2]=c;f[e+4>>2]=I;e=(f[i>>2]|0)+32|0;c=f[e>>2]|0;k=c+8|0;m=f[k>>2]|0;k=f[k+4>>2]|0;g=c+16|0;n=g;d=f[n>>2]|0;n=Ij(d|0,f[n+4>>2]|0,4,0)|0;l=I;if((k|0)<(l|0)|(k|0)==(l|0)&m>>>0>>0){n=0;return n|0}n=a+32|0;c=(f[c>>2]|0)+d|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;b[n>>0]=c;b[n+1>>0]=c>>8;b[n+2>>0]=c>>16;b[n+3>>0]=c>>24;n=g;n=Ij(f[n>>2]|0,f[n+4>>2]|0,4,0)|0;c=g;f[c>>2]=n;f[c+4>>2]=I;c=f[e>>2]|0;n=c+8|0;m=f[n+4>>2]|0;g=c+16|0;e=g;d=f[e>>2]|0;e=f[e+4>>2]|0;if(!((m|0)>(e|0)|((m|0)==(e|0)?(f[n>>2]|0)>>>0>d>>>0:0))){n=0;return n|0}c=b[(f[c>>2]|0)+d>>0]|0;m=Ij(d|0,e|0,1,0)|0;n=g;f[n>>2]=m;f[n+4>>2]=I;if((c&255)>31){n=0;return n|0}f[a+24>>2]=c&255;n=1;return n|0}function ad(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;i=j;g=f[a+8>>2]|0;h=a+4|0;d=f[h>>2]|0;if(((g-d|0)/116|0)>>>0>=c>>>0){do{f[d>>2]=-1;fi(d+4|0);b[d+72>>0]=1;d=d+76|0;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));d=(f[h>>2]|0)+116|0;f[h>>2]=d;c=c+-1|0}while((c|0)!=0);u=j;return}e=f[a>>2]|0;h=(d-e|0)/116|0;d=h+c|0;if(d>>>0>37025580)Wl(a);e=(g-e|0)/116|0;g=e<<1;d=e>>>0<18512790?(g>>>0>>0?d:g):37025580;f[i+12>>2]=0;f[i+16>>2]=a+8;do if(d)if(d>>>0>37025580){j=sa(8)|0;Fk(j,12569);f[j>>2]=3708;wa(j|0,856,80)}else{e=Yi(d*116|0)|0;break}else e=0;while(0);f[i>>2]=e;h=e+(h*116|0)|0;g=i+8|0;f[g>>2]=h;f[i+4>>2]=h;f[i+12>>2]=e+(d*116|0);d=h;do{f[d>>2]=-1;fi(d+4|0);b[d+72>>0]=1;d=d+76|0;e=d+40|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));d=(f[g>>2]|0)+116|0;f[g>>2]=d;c=c+-1|0}while((c|0)!=0);Ob(a,i);Xe(i);u=j;return}function bd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+32|0;n=q+12|0;o=q;e=qh(c,0)|0;if(!e){f[a>>2]=0;u=q;return}d=f[c+96>>2]|0;c=(f[c+100>>2]|0)-d|0;m=(c|0)/12|0;f[n>>2]=0;p=n+4|0;f[p>>2]=0;f[n+8>>2]=0;if(c){if(m>>>0>357913941)Wl(n);l=Yi(c)|0;f[n>>2]=l;f[n+8>>2]=l+(m*12|0);Cf(l|0,0,c|0)|0;f[p>>2]=l+c;f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;if((c|0)>0){i=e+68|0;j=o+4|0;k=o+8|0;h=(b[e+84>>0]|0)==0;g=0;do{c=f[d+(g*12|0)>>2]|0;if(h){e=f[i>>2]|0;c=f[e+(c<<2)>>2]|0;f[o>>2]=c;f[j>>2]=f[e+(f[d+(g*12|0)+4>>2]<<2)>>2];e=e+(f[d+(g*12|0)+8>>2]<<2)|0}else{f[o>>2]=c;f[j>>2]=f[d+(g*12|0)+4>>2];e=d+(g*12|0)+8|0}e=f[e>>2]|0;f[k>>2]=e;f[l+(g*12|0)>>2]=c;f[l+(g*12|0)+4>>2]=f[j>>2];f[l+(g*12|0)+8>>2]=e;g=g+1|0}while((g|0)<(m|0))}}else{f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0}Bg(a,n);d=f[n>>2]|0;if(d|0){c=f[p>>2]|0;if((c|0)!=(d|0))f[p>>2]=c+(~(((c+-12-d|0)>>>0)/12|0)*12|0);Em(d)}u=q;return}function cd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+16|0;j=m+4|0;k=m;l=a+8|0;g=f[l>>2]|0;fg(f[a+4>>2]|0,(f[g+28>>2]|0)-(f[g+24>>2]|0)>>2);g=a+100|0;h=f[l>>2]|0;h=(f[h+28>>2]|0)-(f[h+24>>2]|0)>>2;f[j>>2]=0;d=a+104|0;b=f[d>>2]|0;c=f[g>>2]|0;i=b-c>>2;if(h>>>0<=i>>>0){if(h>>>0>>0?(e=c+(h<<2)|0,(b|0)!=(e|0)):0)f[d>>2]=b+(~((b+-4-e|0)>>>2)<<2)}else ee(g,h-i|0,j);d=a+120|0;b=f[d>>2]|0;if(!b){a=f[l>>2]|0;a=(f[a+4>>2]|0)-(f[a>>2]|0)>>2;b=(a>>>0)/3|0;if(a>>>0<=2){u=m;return 1}c=0;do{f[k>>2]=c*3;f[j>>2]=f[k>>2];pb(l,j);c=c+1|0}while((c|0)<(b|0));u=m;return 1}else{c=f[b>>2]|0;if((f[b+4>>2]|0)==(c|0)){u=m;return 1}b=0;do{f[k>>2]=f[c+(b<<2)>>2];f[j>>2]=f[k>>2];pb(l,j);b=b+1|0;a=f[d>>2]|0;c=f[a>>2]|0}while(b>>>0<(f[a+4>>2]|0)-c>>2>>>0);u=m;return 1}return 0}function dd(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[(f[h>>2]|0)+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;return}e=c+1|0;if(!d)c=((e|0)%3|0|0)==0?c+-2|0:e;e=f[h>>2]|0;if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2]))if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=7}else g=7;else{c=-1073741824;g=7}if((g|0)==7)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);do if(!(1<<(c&31)&f[e+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[h+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}else c=-1073741824;while(0);f[j>>2]=c;b[i>>0]=0;return}function ed(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=u;u=u+16|0;g=n;e=c+8|0;o=e;q=f[o+4>>2]|0;m=c+16|0;p=m;d=f[p>>2]|0;p=f[p+4>>2]|0;if(!((q|0)>(p|0)|((q|0)==(p|0)?(f[o>>2]|0)>>>0>d>>>0:0))){q=0;u=n;return q|0}b[a+12>>0]=b[(f[c>>2]|0)+d>>0]|0;p=m;p=Ij(f[p>>2]|0,f[p+4>>2]|0,1,0)|0;q=m;f[q>>2]=p;f[q+4>>2]=I;a:do if((Vf(g,c)|0?(j=f[g>>2]|0,q=e,l=m,k=f[l>>2]|0,l=f[l+4>>2]|0,q=hk(f[q>>2]|0,f[q+4>>2]|0,k|0,l|0)|0,p=I,!(0>(p|0)|0==(p|0)&j>>>0>q>>>0)):0)?(i=(f[c>>2]|0)+k|0,(j|0)>=1):0){f[a>>2]=i;e=j+-1|0;d=i+e|0;switch((h[d>>0]|0)>>>6&3){case 0:{f[a+4>>2]=e;d=b[d>>0]&63;break}case 1:{if((j|0)<2){d=0;break a}f[a+4>>2]=j+-2;d=i+j+-2|0;d=(h[d+1>>0]|0)<<8&16128|(h[d>>0]|0);break}case 2:{if((j|0)<3){d=0;break a}f[a+4>>2]=j+-3;d=i+j+-3|0;d=(h[d+1>>0]|0)<<8|(h[d>>0]|0)|(h[d+2>>0]|0)<<16&4128768;break}default:{d=0;break a}}q=d+4096|0;f[a+8>>2]=q;if(q>>>0<=1048575){q=Ij(k|0,l|0,j|0,0)|0;d=m;f[d>>2]=q;f[d+4>>2]=I;d=1}else d=0}else d=0;while(0);q=d;u=n;return q|0}function fd(a,b,c,d){a=a|0;b=$(b);c=$(c);d=d|0;var e=Ka,f=Ka,g=0.0,h=Ka,i=Ka,j=0.0,k=0.0,l=0.0,m=0.0;if(!(b>=$(0.0)))ra(7075,6922,191,7089);if(!(c>=$(0.0)))ra(7118,6922,192,7089);if(!(b<=$(1.0)))ra(7132,6922,193,7089);if(!(c<=$(1.0)))ra(7146,6922,194,7089);f=$(b+c);e=$(b-c);if(!(e<=$(.5))|(!(e>=$(-.5))|(!(f>=$(.5))|!(f<=$(1.5))))){do if(!(f<=$(.5))){if(f>=$(1.5)){e=$($(1.5)-c);c=$($(1.5)-b);break}if(!(e<=$(-.5))){e=$(c+$(.5));c=$(b+$(-.5));break}else{e=$(c+$(-.5));c=$(b+$(.5));break}}else{e=$($(.5)-c);c=$($(.5)-b)}while(0);b=e;i=$(e-c);f=$(c+e);g=-1.0}else{i=e;g=1.0}h=$(+b*2.0+-1.0);b=$(+c*2.0+-1.0);l=+f*2.0;j=l+-1.0;l=3.0-l;m=+i*2.0;k=m+1.0;m=1.0-m;k=m>2]=$(0.0);h=$(0.0);i=$(0.0);a=d+4|0;n[a>>2]=h;d=d+8|0;n[d>>2]=i;return}else{i=$($(1.0)/$(L($(e))));f=$(c*i);n[d>>2]=f;h=$(h*i);i=$(b*i);a=d+4|0;n[a>>2]=h;d=d+8|0;n[d>>2]=i;return}}function gd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;m=n;l=a+8|0;d=f[l>>2]|0;k=a+4|0;c=f[k>>2]|0;if(d-c>>2>>>0>=b>>>0){Cf(c|0,0,b<<2|0)|0;f[k>>2]=c+(b<<2);u=n;return}e=f[a>>2]|0;g=c-e>>2;c=g+b|0;if(c>>>0>1073741823)Wl(a);i=d-e|0;j=i>>1;c=i>>2>>>0<536870911?(j>>>0>>0?c:j):1073741823;f[m+12>>2]=0;f[m+16>>2]=a+8;do if(c)if(c>>>0>1073741823){n=sa(8)|0;Fk(n,12569);f[n>>2]=3708;wa(n|0,856,80)}else{d=Yi(c<<2)|0;break}else d=0;while(0);f[m>>2]=d;g=d+(g<<2)|0;i=m+8|0;h=m+4|0;f[h>>2]=g;j=m+12|0;f[j>>2]=d+(c<<2);Cf(g|0,0,b<<2|0)|0;f[i>>2]=g+(b<<2);d=f[a>>2]|0;c=f[k>>2]|0;if((c|0)==(d|0)){g=h;e=f[h>>2]|0}else{e=f[h>>2]|0;do{c=c+-4|0;b=f[c>>2]|0;f[c>>2]=0;f[e+-4>>2]=b;e=(f[h>>2]|0)+-4|0;f[h>>2]=e}while((c|0)!=(d|0));g=h;d=f[a>>2]|0;c=f[k>>2]|0}f[a>>2]=e;f[g>>2]=d;f[k>>2]=f[i>>2];f[i>>2]=c;a=f[l>>2]|0;f[l>>2]=f[j>>2];f[j>>2]=a;f[m>>2]=f[g>>2];Ce(m);u=n;return}function hd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+8|0;d=f[m>>2]|0;l=a+4|0;c=f[l>>2]|0;e=c;if(((d-c|0)/12|0)>>>0>=b>>>0){Cf(c|0,0,b*12|0)|0;f[l>>2]=e+(b*12|0);return}j=f[a>>2]|0;i=(c-j|0)/12|0;c=i+b|0;k=j;if(c>>>0>357913941)Wl(a);h=(d-j|0)/12|0;g=h<<1;g=h>>>0<178956970?(g>>>0>>0?c:g):357913941;do if(g)if(g>>>0>357913941){a=sa(8)|0;Fk(a,12569);f[a>>2]=3708;wa(a|0,856,80)}else{h=Yi(g*12|0)|0;break}else h=0;while(0);d=h+(i*12|0)|0;c=d;h=h+(g*12|0)|0;Cf(d|0,0,b*12|0)|0;g=d+(b*12|0)|0;if((e|0)==(k|0))i=j;else{do{j=d+-12|0;b=e;e=e+-12|0;f[j>>2]=0;i=d+-8|0;f[i>>2]=0;f[d+-4>>2]=0;f[j>>2]=f[e>>2];j=b+-8|0;f[i>>2]=f[j>>2];b=b+-4|0;f[d+-4>>2]=f[b>>2];f[b>>2]=0;f[j>>2]=0;f[e>>2]=0;d=c+-12|0;c=d}while((e|0)!=(k|0));i=f[a>>2]|0;e=f[l>>2]|0}f[a>>2]=c;f[l>>2]=g;f[m>>2]=h;h=i;if((e|0)!=(h|0))do{c=e;e=e+-12|0;g=f[e>>2]|0;if(g|0){d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(g|0))f[d>>2]=c+(~((c+-4-g|0)>>>2)<<2);Em(g)}}while((e|0)!=(h|0));if(!i)return;Em(i);return}function id(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=b;h=c-m>>2;i=a+8|0;d=f[i>>2]|0;j=f[a>>2]|0;k=j;if(h>>>0<=d-j>>2>>>0){l=a+4|0;a=(f[l>>2]|0)-j>>2;h=h>>>0>a>>>0;a=b+(a<<2)|0;g=h?a:c;i=g;e=i-m|0;d=e>>2;if(d|0)hi(j|0,b|0,e|0)|0;d=k+(d<<2)|0;if(!h){b=f[l>>2]|0;if((b|0)==(d|0))return;f[l>>2]=b+(~((b+-4-d|0)>>>2)<<2);return}if((g|0)==(c|0))return;g=f[l>>2]|0;e=((c+-4-i|0)>>>2)+1|0;d=g;b=a;while(1){f[d>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else d=d+4|0}f[l>>2]=g+(e<<2);return}g=j;if(j){e=a+4|0;d=f[e>>2]|0;if((d|0)!=(k|0))f[e>>2]=d+(~((d+-4-j|0)>>>2)<<2);Em(g);f[i>>2]=0;f[e>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823)Wl(a);l=d>>1;d=d>>2>>>0<536870911?(l>>>0>>0?h:l):1073741823;if(d>>>0>1073741823)Wl(a);h=Yi(d<<2)|0;g=a+4|0;f[g>>2]=h;f[a>>2]=h;f[i>>2]=h+(d<<2);if((b|0)==(c|0))return;d=((c+-4-m|0)>>>2)+1|0;e=h;while(1){f[e>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else e=e+4|0}f[g>>2]=h+(d<<2);return}function jd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=b;h=c-m>>2;i=a+8|0;d=f[i>>2]|0;j=f[a>>2]|0;k=j;if(h>>>0<=d-j>>2>>>0){l=a+4|0;a=(f[l>>2]|0)-j>>2;h=h>>>0>a>>>0;a=b+(a<<2)|0;g=h?a:c;i=g;e=i-m|0;d=e>>2;if(d|0)hi(j|0,b|0,e|0)|0;d=k+(d<<2)|0;if(!h){b=f[l>>2]|0;if((b|0)==(d|0))return;f[l>>2]=b+(~((b+-4-d|0)>>>2)<<2);return}if((g|0)==(c|0))return;g=f[l>>2]|0;d=c+-4-i|0;e=g;b=a;while(1){f[e>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else e=e+4|0}f[l>>2]=g+((d>>>2)+1<<2);return}g=j;if(j){e=a+4|0;d=f[e>>2]|0;if((d|0)!=(k|0))f[e>>2]=d+(~((d+-4-j|0)>>>2)<<2);Em(g);f[i>>2]=0;f[e>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823)Wl(a);l=d>>1;d=d>>2>>>0<536870911?(l>>>0>>0?h:l):1073741823;if(d>>>0>1073741823)Wl(a);h=Yi(d<<2)|0;g=a+4|0;f[g>>2]=h;f[a>>2]=h;f[i>>2]=h+(d<<2);if((b|0)==(c|0))return;d=c+-4-m|0;e=h;while(1){f[e>>2]=f[b>>2];b=b+4|0;if((b|0)==(c|0))break;else e=e+4|0}f[g>>2]=h+((d>>>2)+1<<2);return}function kd(a,c){a=a|0;c=c|0;var d=0,e=Ka,g=Ka,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=Ka,x=Ka,y=0,z=0;v=u;u=u+16|0;p=v;q=f[a+24>>2]|0;r=a+8|0;d=b[(f[r>>2]|0)+24>>0]|0;o=d<<24>>24;s=o<<2;t=Bm(o>>>0>1073741823?-1:o<<2)|0;cl(p);if(!(Mi(p,$(n[a+32>>2]),(1<>2]|0;m=(f[f[m>>2]>>2]|0)+(f[m+48>>2]|0)|0;if(!c){c=1;Cm(t);u=v;return c|0}q=p+4|0;l=a+28|0;if(d<<24>>24>0){h=0;i=0;j=0}else{a=0;d=0;while(1){Od((f[f[(f[r>>2]|0)+64>>2]>>2]|0)+d|0,t|0,s|0)|0;a=a+1|0;if((a|0)==(c|0)){a=1;break}else d=d+s|0}Cm(t);u=v;return a|0}while(1){a=f[l>>2]|0;e=$(n[q>>2]);g=$(n[p>>2]);d=0;k=j;while(1){z=f[m+(k<<2)>>2]|0;y=(z|0)<0;w=$(e*$((y?0-z|0:z)|0));x=$(-w);w=$(g*(y?x:w));w=$($(n[a+(d<<2)>>2])+w);n[t+(d<<2)>>2]=w;d=d+1|0;if((d|0)==(o|0))break;else k=k+1|0}Od((f[f[(f[r>>2]|0)+64>>2]>>2]|0)+i|0,t|0,s|0)|0;h=h+1|0;if((h|0)==(c|0)){a=1;break}else{i=i+s|0;j=o+j|0}}Cm(t);u=v;return a|0}function ld(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+112|0;h=k+96|0;j=k+16|0;i=k+4|0;g=k;c=j+76|0;d=j;e=d+76|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f[c>>2]=-1073741824;f[i>>2]=0;e=i+4|0;f[e>>2]=0;f[i+8>>2]=0;f[g>>2]=i;f[h>>2]=f[g>>2];if($b(j,a,h)|0){g=f[i>>2]|0;jd(b,g,g+((f[e>>2]|0)-g>>2<<2)|0);g=f[j+68>>2]|0}else g=0;c=f[i>>2]|0;if(c|0){d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}c=f[j+56>>2]|0;if(c|0)Em(c);c=f[j+32>>2]|0;if(c|0){e=j+36|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}c=f[j+20>>2]|0;if(c|0){e=j+24|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}c=f[j+8>>2]|0;if(c|0){e=j+12|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}j=j+4|0;c=f[j>>2]|0;f[j>>2]=0;if(!c){u=k;return g|0}Sf(c);Em(c);u=k;return g|0}function md(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;l=u;u=u+16|0;d=l;if(!(tf(d,c)|0)){a=0;u=l;return a|0}g=d;j=f[g>>2]|0;g=f[g+4>>2]|0;m=c+8|0;i=c+16|0;e=i;d=f[e>>2]|0;e=f[e+4>>2]|0;m=hk(f[m>>2]|0,f[m+4>>2]|0,d|0,e|0)|0;n=I;if(g>>>0>n>>>0|(g|0)==(n|0)&j>>>0>m>>>0){n=0;u=l;return n|0}c=(f[c>>2]|0)+d|0;m=Ij(d|0,e|0,j|0,g|0)|0;n=i;f[n>>2]=m;f[n+4>>2]=I;if((j|0)<1){n=0;u=l;return n|0}f[a+40>>2]=c;e=j+-1|0;d=c+e|0;a:do switch((h[d>>0]|0)>>>6&3){case 0:{f[a+44>>2]=e;k=b[d>>0]&63;break}case 1:if((j|0)<2){n=0;u=l;return n|0}else{f[a+44>>2]=j+-2;k=c+j+-2|0;k=(h[k+1>>0]|0)<<8&16128|(h[k>>0]|0);break a}case 2:if((j|0)<3){n=0;u=l;return n|0}else{f[a+44>>2]=j+-3;k=c+j+-3|0;k=(h[k+1>>0]|0)<<8|(h[k>>0]|0)|(h[k+2>>0]|0)<<16&4128768;break a}case 3:{f[a+44>>2]=j+-4;k=c+j+-4|0;k=(h[k+2>>0]|0)<<16|(h[k+3>>0]|0)<<24&1056964608|(h[k+1>>0]|0)<<8|(h[k>>0]|0);break}default:{}}while(0);n=k+16384|0;f[a+48>>2]=n;n=n>>>0<4194304;u=l;return n|0}function nd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f[a+4>>2]=f[b+4>>2];j=a+8|0;k=b+8|0;if((a|0)==(b|0))return a|0;i=b+12|0;c=f[i>>2]|0;if(!c)c=0;else{h=a+16|0;do if(c>>>0>f[h>>2]<<5>>>0){d=f[j>>2]|0;if(d){Em(d);f[j>>2]=0;f[h>>2]=0;f[a+12>>2]=0;c=f[i>>2]|0}if((c|0)<0)Wl(j);else{e=((c+-1|0)>>>5)+1|0;g=Yi(e<<2)|0;f[j>>2]=g;f[a+12>>2]=0;f[h>>2]=e;e=f[i>>2]|0;break}}else{e=c;g=f[j>>2]|0}while(0);hi(g|0,f[k>>2]|0,((e+-1|0)>>>5<<2)+4|0)|0;c=f[i>>2]|0}f[a+12>>2]=c;h=a+20|0;i=b+20|0;g=b+24|0;c=f[g>>2]|0;if(!c)c=0;else{e=a+28|0;do if(c>>>0>f[e>>2]<<5>>>0){d=f[h>>2]|0;if(d){Em(d);f[h>>2]=0;f[e>>2]=0;f[a+24>>2]=0;c=f[g>>2]|0}if((c|0)<0)Wl(h);else{l=((c+-1|0)>>>5)+1|0;m=Yi(l<<2)|0;f[h>>2]=m;f[a+24>>2]=0;f[e>>2]=l;l=f[g>>2]|0;break}}else{l=c;m=f[h>>2]|0}while(0);hi(m|0,f[i>>2]|0,((l+-1|0)>>>5<<2)+4|0)|0;c=f[g>>2]|0}f[a+24>>2]=c;return a|0}function od(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;i=a+8|0;d=f[i>>2]|0;h=f[a>>2]|0;j=h;do if(d-h>>2>>>0>=b>>>0){a=a+4|0;i=f[a>>2]|0;h=i-h>>2;g=h>>>0>>0;d=g?h:b;if(d|0){e=j;while(1){f[e>>2]=f[c>>2];d=d+-1|0;if(!d)break;else e=e+4|0}}if(!g){d=j+(b<<2)|0;if((i|0)==(d|0))return;else{e=a;d=i+(~((i+-4-d|0)>>>2)<<2)|0;break}}else{g=b-h|0;d=i;e=g;while(1){f[d>>2]=f[c>>2];e=e+-1|0;if(!e)break;else d=d+4|0}e=a;d=i+(g<<2)|0;break}}else{g=h;if(h){e=a+4|0;d=f[e>>2]|0;if((d|0)!=(j|0))f[e>>2]=d+(~((d+-4-h|0)>>>2)<<2);Em(g);f[i>>2]=0;f[e>>2]=0;f[a>>2]=0;d=0}if(b>>>0>1073741823)Wl(a);j=d>>1;d=d>>2>>>0<536870911?(j>>>0>>0?b:j):1073741823;if(d>>>0>1073741823)Wl(a);h=Yi(d<<2)|0;g=a+4|0;f[g>>2]=h;f[a>>2]=h;f[i>>2]=h+(d<<2);d=h;e=b;while(1){f[d>>2]=f[c>>2];e=e+-1|0;if(!e)break;else d=d+4|0}e=g;d=h+(b<<2)|0}while(0);f[e>>2]=d;return}function pd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;f[c>>2]=1;e=a+4|0;l=c+8|0;k=c+12|0;c=f[l>>2]|0;d=(f[k>>2]|0)-c|0;if(d>>>0<4294967292){Pg(l,d+4|0,0);c=f[l>>2]|0}j=c+d|0;i=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[j>>0]=i;b[j+1>>0]=i>>8;b[j+2>>0]=i>>16;b[j+3>>0]=i>>24;j=a+8|0;i=a+12|0;c=f[j>>2]|0;if((f[i>>2]|0)!=(c|0)){g=0;do{d=c+(g<<2)|0;c=f[l>>2]|0;e=(f[k>>2]|0)-c|0;if(e>>>0<4294967292){Pg(l,e+4|0,0);c=f[l>>2]|0}c=c+e|0;e=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;b[c>>0]=e;b[c+1>>0]=e>>8;b[c+2>>0]=e>>16;b[c+3>>0]=e>>24;g=g+1|0;c=f[j>>2]|0}while(g>>>0<(f[i>>2]|0)-c>>2>>>0)}e=a+20|0;d=f[l>>2]|0;c=(f[k>>2]|0)-d|0;if(c>>>0<4294967292){Pg(l,c+4|0,0);l=f[l>>2]|0;l=l+c|0;k=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}else{l=d;l=l+c|0;k=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[l>>0]=k;b[l+1>>0]=k>>8;b[l+2>>0]=k>>16;b[l+3>>0]=k>>24;return}}function qd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=c;e=b;j=k-e|0;h=j>>2;i=a+8|0;d=f[i>>2]|0;g=f[a>>2]|0;l=g;if(h>>>0>d-g>>2>>>0){e=g;if(g){c=a+4|0;d=f[c>>2]|0;if((d|0)!=(l|0))f[c>>2]=d+(~((d+-4-g|0)>>>2)<<2);Em(e);f[i>>2]=0;f[c>>2]=0;f[a>>2]=0;d=0}if(h>>>0>1073741823)Wl(a);l=d>>1;d=d>>2>>>0<536870911?(l>>>0>>0?h:l):1073741823;if(d>>>0>1073741823)Wl(a);e=Yi(d<<2)|0;c=a+4|0;f[c>>2]=e;f[a>>2]=e;f[i>>2]=e+(d<<2);if((j|0)<=0)return;Od(e|0,b|0,j|0)|0;f[c>>2]=e+(j>>>2<<2);return}a=a+4|0;d=f[a>>2]|0;i=d-g>>2;j=h>>>0>i>>>0;i=j?b+(i<<2)|0:c;g=d;h=d;if((i|0)==(b|0))d=l;else{e=i+-4-e|0;d=b;c=l;while(1){f[c>>2]=f[d>>2];d=d+4|0;if((d|0)==(i|0))break;else c=c+4|0}d=l+((e>>>2)+1<<2)|0}if(j){d=k-i|0;if((d|0)<=0)return;Od(h|0,i|0,d|0)|0;f[a>>2]=(f[a>>2]|0)+(d>>>2<<2);return}else{if((g|0)==(d|0))return;f[a>>2]=g+(~((g+-4-d|0)>>>2)<<2);return}}function rd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=u;u=u+48|0;n=p+40|0;m=p+32|0;j=p+8|0;k=p;l=p+24|0;o=p+16|0;g=a+4|0;q=f[g>>2]|0;d=f[b>>2]|0;b=f[b+4>>2]|0;e=c;h=f[e>>2]|0;e=f[e+4>>2]|0;i=h-d<<3;f[g>>2]=q-b+e+i;g=(f[a>>2]|0)+(q>>>5<<2)|0;a=q&31;c=g;if((b|0)!=(a|0)){q=j;f[q>>2]=d;f[q+4>>2]=b;q=k;f[q>>2]=h;f[q+4>>2]=e;f[l>>2]=c;f[l+4>>2]=a;f[m>>2]=f[j>>2];f[m+4>>2]=f[j+4>>2];f[n>>2]=f[k>>2];f[n+4>>2]=f[k+4>>2];oc(o,m,n,l);u=p;return}e=e-b+i|0;a=d;if((e|0)>0){if(!b){h=a;c=e;b=0}else{h=32-b|0;c=(e|0)<(h|0)?e:h;h=-1>>>(h-c|0)&-1<>2]=f[g>>2]&~h|f[a>>2]&h;b=c+b|0;h=a+4|0;g=g+(b>>>5<<2)|0;d=h;c=e-c|0;b=b&31}e=(c|0)/32|0;hi(g|0,d|0,e<<2|0)|0;d=c-(e<<5)|0;a=g+(e<<2)|0;c=a;if((d|0)>0){b=-1>>>(32-d|0);f[a>>2]=f[a>>2]&~b|f[h+(e<<2)>>2]&b;b=d}}f[o>>2]=c;f[o+4>>2]=b;u=p;return}function sd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;f[h>>2]=b;if((b|0)<=-1)ra(12446,12458,110,12556);i=a+8|0;if(((f[a+12>>2]|0)-(f[i>>2]|0)>>2|0)<=(b|0))le(i,b+1|0);d=f[(f[c>>2]|0)+56>>2]|0;do if((d|0)<5){g=a+20+(d*12|0)+4|0;e=f[g>>2]|0;if((e|0)==(f[a+20+(d*12|0)+8>>2]|0)){hf(a+20+(d*12|0)|0,h);break}else{f[e>>2]=b;f[g>>2]=e+4;break}}while(0);g=f[c>>2]|0;a=f[h>>2]|0;f[g+60>>2]=a;a=(f[i>>2]|0)+(a<<2)|0;f[c>>2]=0;b=f[a>>2]|0;f[a>>2]=g;if(!b){u=j;return}a=b+88|0;d=f[a>>2]|0;f[a>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Em(e)}Em(d)}d=f[b+68>>2]|0;if(d|0){g=b+72|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);Em(d)}a=b+64|0;d=f[a>>2]|0;f[a>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Em(e)}Em(d)}Em(b);u=j;return}function td(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+16|0;m=n;j=d+8|0;i=f[j>>2]|0;j=f[j+4>>2]|0;k=d+16|0;e=k;g=f[e>>2]|0;e=f[e+4>>2]|0;if((j|0)>(e|0)|(j|0)==(e|0)&i>>>0>g>>>0){h=b[(f[d>>2]|0)+g>>0]|0;g=Ij(g|0,e|0,1,0)|0;e=I;o=k;f[o>>2]=g;f[o+4>>2]=e;if(h<<24>>24!=-2)l=3}else{h=0;l=3}if((l|0)==3){if((j|0)>(e|0)|(j|0)==(e|0)&i>>>0>g>>>0){o=b[(f[d>>2]|0)+g>>0]|0;l=Ij(g|0,e|0,1,0)|0;e=k;f[e>>2]=l;f[e+4>>2]=I;e=o}else e=0;Ua[f[(f[a>>2]|0)+40>>2]&7](m,a,h<<24>>24,e<<24>>24);o=a+20|0;l=f[m>>2]|0;f[m>>2]=0;e=f[o>>2]|0;f[o>>2]=l;if(e){Ra[f[(f[e>>2]|0)+4>>2]&127](e);e=f[m>>2]|0;f[m>>2]=0;if(e|0)Ra[f[(f[e>>2]|0)+4>>2]&127](e)}else f[m>>2]=0}e=f[a+20>>2]|0;if(e|0?!(Na[f[(f[a>>2]|0)+28>>2]&127](a,e)|0):0){o=0;u=n;return o|0}o=Oa[f[(f[a>>2]|0)+36>>2]&31](a,c,d)|0;u=n;return o|0}function ud(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+32|0;j=l+12|0;k=l;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;g=og(c)|0;if(g>>>0>4294967279)Wl(j);if(g>>>0<11){b[j+11>>0]=g;if(!g)e=j;else{e=j;h=6}}else{h=g+16&-16;e=Yi(h)|0;f[j>>2]=e;f[j+8>>2]=h|-2147483648;f[j+4>>2]=g;h=6}if((h|0)==6)Od(e|0,c|0,g|0)|0;b[e+g>>0]=0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;c=og(d)|0;if(c>>>0>4294967279)Wl(k);if(c>>>0<11){b[k+11>>0]=c;if(!c)e=k;else{e=k;h=12}}else{h=c+16&-16;e=Yi(h)|0;f[k>>2]=e;f[k+8>>2]=h|-2147483648;f[k+4>>2]=c;h=12}if((h|0)==12)Od(e|0,d|0,c|0)|0;b[e+c>>0]=0;e=f[a+4>>2]|0;if((e|0)!=0?(i=Yc(e,j,k)|0,(i|0)!=0):0)e=hh(a,f[i+40>>2]|0)|0;else e=-1;if((b[k+11>>0]|0)<0)Em(f[k>>2]|0);if((b[j+11>>0]|0)>=0){u=l;return e|0}Em(f[j>>2]|0);u=l;return e|0}function vd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=a+4|0;g=f[e>>2]|0;if(!g){f[c>>2]=e;o=e;return o|0}m=b[d+11>>0]|0;l=m<<24>>24<0;m=l?f[d+4>>2]|0:m&255;l=l?f[d>>2]|0:d;d=a+4|0;while(1){h=g+16|0;a=b[h+11>>0]|0;j=a<<24>>24<0;a=j?f[g+20>>2]|0:a&255;i=a>>>0>>0;e=i?a:m;if((e|0)!=0?(o=sh(l,j?f[h>>2]|0:h,e)|0,(o|0)!=0):0)if((o|0)<0)k=8;else k=10;else if(m>>>0>>0)k=8;else k=10;if((k|0)==8){e=f[g>>2]|0;if(!e){k=9;break}else d=g}else if((k|0)==10){k=0;e=m>>>0>>0?m:a;if((e|0)!=0?(n=sh(j?f[h>>2]|0:h,l,e)|0,(n|0)!=0):0){if((n|0)>=0){k=16;break}}else k=12;if((k|0)==12?(0,!i):0){k=16;break}d=g+4|0;e=f[d>>2]|0;if(!e){k=15;break}}g=e}if((k|0)==9){f[c>>2]=g;o=g;return o|0}else if((k|0)==15){f[c>>2]=g;o=d;return o|0}else if((k|0)==16){f[c>>2]=g;o=d;return o|0}return 0}function wd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a=a+20|0;if(Jb(a,c)|0){h=0;return h|0}g=vb(a,c)|0;e=f[d>>2]|0;f[d>>2]=0;h=f[g>>2]|0;f[g>>2]=e;if(!h){h=1;return h|0}a=f[h+28>>2]|0;if(a|0)do{g=a;a=f[a>>2]|0;Le(g+8|0);Em(g)}while((a|0)!=0);g=h+20|0;a=f[g>>2]|0;f[g>>2]=0;if(a|0)Em(a);a=f[h+8>>2]|0;if(a|0)do{e=a;a=f[a>>2]|0;g=e+8|0;c=f[e+20>>2]|0;if(c|0){d=e+24|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Em(c)}if((b[g+11>>0]|0)<0)Em(f[g>>2]|0);Em(e)}while((a|0)!=0);a=f[h>>2]|0;f[h>>2]=0;if(a|0)Em(a);Em(h);h=1;return h|0}function xd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+4|0;e=h;g=a+8|0;c=f[g>>2]|0;fg(f[a+4>>2]|0,(f[c+56>>2]|0)-(f[c+52>>2]|0)>>2);c=a+84|0;a=f[c>>2]|0;if(!a){c=f[(f[g>>2]|0)+64>>2]|0;c=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;a=(c>>>0)/3|0;if(c>>>0<=2){u=h;return 1}b=0;do{f[e>>2]=b*3;f[d>>2]=f[e>>2];rb(g,d);b=b+1|0}while((b|0)<(a|0));u=h;return 1}else{b=f[a>>2]|0;if((f[a+4>>2]|0)==(b|0)){u=h;return 1}a=0;do{f[e>>2]=f[b+(a<<2)>>2];f[d>>2]=f[e>>2];rb(g,d);a=a+1|0;i=f[c>>2]|0;b=f[i>>2]|0}while(a>>>0<(f[i+4>>2]|0)-b>>2>>>0);u=h;return 1}return 0}function yd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=c;i=b;j=k-i|0;g=j>>2;h=a+8|0;d=f[h>>2]|0;l=f[a>>2]|0;m=l;if(g>>>0<=d-l>>2>>>0){j=a+4|0;e=(f[j>>2]|0)-l>>2;h=g>>>0>e>>>0;g=h?b+(e<<2)|0:c;e=g;c=e-i|0;d=c>>2;if(d|0)hi(l|0,b|0,c|0)|0;c=m+(d<<2)|0;if(h){d=k-e|0;if((d|0)<=0)return;Od(f[j>>2]|0,g|0,d|0)|0;f[j>>2]=(f[j>>2]|0)+(d>>>2<<2);return}else{d=f[j>>2]|0;if((d|0)==(c|0))return;f[j>>2]=d+(~((d+-4-c|0)>>>2)<<2);return}}e=l;if(l){c=a+4|0;d=f[c>>2]|0;if((d|0)!=(m|0))f[c>>2]=d+(~((d+-4-l|0)>>>2)<<2);Em(e);f[h>>2]=0;f[c>>2]=0;f[a>>2]=0;d=0}if(g>>>0>1073741823)Wl(a);m=d>>1;d=d>>2>>>0<536870911?(m>>>0>>0?g:m):1073741823;if(d>>>0>1073741823)Wl(a);e=Yi(d<<2)|0;c=a+4|0;f[c>>2]=e;f[a>>2]=e;f[h>>2]=e+(d<<2);if((j|0)<=0)return;Od(e|0,b|0,j|0)|0;f[c>>2]=e+(j>>>2<<2);return}function zd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;j=c;h=d-j|0;i=a+8|0;e=f[i>>2]|0;g=f[a>>2]|0;k=g;if(h>>>0>(e-g|0)>>>0){if(g){e=a+4|0;if((f[e>>2]|0)!=(k|0))f[e>>2]=k;Em(k);f[i>>2]=0;f[e>>2]=0;f[a>>2]=0;e=0}if((h|0)<0)Wl(a);g=e<<1;g=e>>>0<1073741823?(g>>>0>>0?h:g):2147483647;if((g|0)<0)Wl(a);e=Yi(g)|0;h=a+4|0;f[h>>2]=e;f[a>>2]=e;f[i>>2]=e+g;if((c|0)==(d|0))return;do{b[e>>0]=b[c>>0]|0;c=c+1|0;e=(f[h>>2]|0)+1|0;f[h>>2]=e}while((c|0)!=(d|0));return}else{a=a+4|0;i=(f[a>>2]|0)-g|0;h=h>>>0>i>>>0;i=c+i|0;g=h?i:d;e=g-j|0;if(e|0)hi(k|0,c|0,e|0)|0;c=k+e|0;if(!h){if((f[a>>2]|0)==(c|0))return;f[a>>2]=c;return}if((g|0)==(d|0))return;e=f[a>>2]|0;c=i;do{b[e>>0]=b[c>>0]|0;c=c+1|0;e=(f[a>>2]|0)+1|0;f[a>>2]=e}while((c|0)!=(d|0));return}}function Ad(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;c=Yi(64)|0;j=Yi(12)|0;h=f[(f[a+4>>2]|0)+80>>2]|0;f[j+4>>2]=0;f[j>>2]=2576;f[j+8>>2]=h;f[k>>2]=j;rh(c,k);j=c;if((b|0)>=0){h=a+8|0;g=a+12|0;c=f[g>>2]|0;a=f[h>>2]|0;e=c-a>>2;do if((e|0)<=(b|0)){d=b+1|0;if(d>>>0>e>>>0){Dd(h,d-e|0);break}if(d>>>0>>0?(i=a+(d<<2)|0,(c|0)!=(i|0)):0)do{e=c+-4|0;f[g>>2]=e;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ra[f[(f[c>>2]|0)+4>>2]&127](c);c=f[g>>2]|0}while((c|0)!=(i|0))}while(0);b=(f[h>>2]|0)+(b<<2)|0;c=f[b>>2]|0;f[b>>2]=j;if(!c)a=1;else{Ra[f[(f[c>>2]|0)+4>>2]&127](c);a=1}}else{Ra[f[(f[c>>2]|0)+4>>2]&127](c);a=0}c=f[k>>2]|0;f[k>>2]=0;if(!c){u=l;return a|0}Ra[f[(f[c>>2]|0)+4>>2]&127](c);u=l;return a|0}function Bd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+8|0;f[c>>2]=f[b>>2];nd(a+12|0,b+4|0)|0;d=a+44|0;e=b+36|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];if((c|0)==(b|0)){f[a+96>>2]=f[b+88>>2];return}else{qd(a+60|0,f[b+52>>2]|0,f[b+56>>2]|0);qd(a+72|0,f[b+64>>2]|0,f[b+68>>2]|0);qd(a+84|0,f[b+76>>2]|0,f[b+80>>2]|0);f[a+96>>2]=f[b+88>>2];yd(a+100|0,f[b+92>>2]|0,f[b+96>>2]|0);return}}function Cd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+80|0;g=j;i=j+64|0;Eh(g);e=f[(f[a+8>>2]|0)+56>>2]|0;h=X(Uh(5)|0,d)|0;Uf(g,e,0,d&255,5,0,h,((h|0)<0)<<31>>31,0,0);h=Yi(96)|0;xh(h,g);b[h+84>>0]=1;d=f[h+68>>2]|0;g=h+72|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);Mf(h,c)|0;f[i>>2]=h;sf(a,i);h=f[i>>2]|0;f[i>>2]=0;if(!h){u=j;return}i=h+88|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Em(e)}Em(d)}d=f[h+68>>2]|0;if(d|0){g=h+72|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);Em(d)}i=h+64|0;d=f[i>>2]|0;f[i>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Em(e)}Em(d)}Em(h);u=j;return}function Dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+8|0;e=f[m>>2]|0;l=a+4|0;d=f[l>>2]|0;c=d;if(e-d>>2>>>0>=b>>>0){Cf(d|0,0,b<<2|0)|0;f[l>>2]=d+(b<<2);return}g=f[a>>2]|0;d=d-g>>2;j=d+b|0;k=g;if(j>>>0>1073741823)Wl(a);i=e-g|0;h=i>>1;h=i>>2>>>0<536870911?(h>>>0>>0?j:h):1073741823;do if(h)if(h>>>0>1073741823){a=sa(8)|0;Fk(a,12569);f[a>>2]=3708;wa(a|0,856,80)}else{i=Yi(h<<2)|0;break}else i=0;while(0);e=i+(d<<2)|0;Cf(e|0,0,b<<2|0)|0;d=e;b=i+(h<<2)|0;h=i+(j<<2)|0;if((c|0)!=(k|0)){do{c=c+-4|0;j=f[c>>2]|0;f[c>>2]=0;f[e+-4>>2]=j;e=d+-4|0;d=e}while((c|0)!=(k|0));g=f[a>>2]|0;c=f[l>>2]|0}f[a>>2]=d;f[l>>2]=h;f[m>>2]=b;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0)Ra[f[(f[d>>2]|0)+4>>2]&127](d)}while((c|0)!=(e|0));if(!g)return;Em(g);return}function Ed(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=2680;b=f[a+68>>2]|0;if(b|0){d=a+72|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}c=f[a+56>>2]|0;if(c|0){d=a+60|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c)}b=f[a+44>>2]|0;if(b|0){d=a+48|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+32>>2]|0;if(b|0){d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}Fe(a+8|0);a=a+4|0;e=f[a>>2]|0;f[a>>2]=0;if(!e)return;d=e+40|0;b=f[d>>2]|0;if(b|0){a=e+44|0;c=f[a>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[a>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0){lf(c);Em(c)}c=f[a>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Em(b)}lf(e);Em(e);return}function Fd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;d=f[a+8>>2]|0;e=f[c>>2]|0;h=(e|0)/3|0;if((e|0)<=-3)ra(12835,12860,63,12943);g=f[d+96>>2]|0;if((h|0)>=(((f[d+100>>2]|0)-g|0)/12|0|0))ra(12948,12860,64,12943);h=f[g+(h*12|0)+(((e|0)%3|0)<<2)>>2]|0;d=f[a+12>>2]|0;f[i>>2]=h;d=f[d+4>>2]|0;g=d+4|0;e=f[g>>2]|0;if((e|0)==(f[d+8>>2]|0))hf(d,i);else{f[e>>2]=h;f[g>>2]=e+4}h=a+4|0;e=f[h>>2]|0;g=e+4|0;d=f[g>>2]|0;if((d|0)==(f[e+8>>2]|0)){hf(e,c);i=f[h>>2]|0;c=i+24|0;a=f[c>>2]|0;b=f[b>>2]|0;i=i+12|0;i=f[i>>2]|0;b=i+(b<<2)|0;f[b>>2]=a;b=f[c>>2]|0;b=b+1|0;f[c>>2]=b;u=j;return}else{f[d>>2]=f[c>>2];f[g>>2]=d+4;i=e;c=i+24|0;a=f[c>>2]|0;b=f[b>>2]|0;i=i+12|0;i=f[i>>2]|0;b=i+(b<<2)|0;f[b>>2]=a;b=f[c>>2]|0;b=b+1|0;f[c>>2]=b;u=j;return}}function Gd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=u;u=u+32|0;i=n+24|0;j=n+16|0;k=n+8|0;m=n;l=a+4|0;o=f[l>>2]|0;e=f[b>>2]|0;b=f[b+4>>2]|0;h=f[c>>2]|0;d=f[c+4>>2]|0;g=h-e<<3;f[l>>2]=o-b+d+g;l=(f[a>>2]|0)+(o>>>5<<2)|0;a=o&31;c=l;if((b|0)!=(a|0)){f[i>>2]=e;f[i+4>>2]=b;f[j>>2]=h;f[j+4>>2]=d;f[k>>2]=c;f[k+4>>2]=a;sc(m,i,j,k);u=n;return}d=d-b+g|0;a=e;if((d|0)>0){if(!b){h=a;c=d;a=l;b=0}else{h=32-b|0;c=(d|0)<(h|0)?d:h;h=-1>>>(h-c|0)&-1<>2]=f[l>>2]&~h|f[a>>2]&h;b=c+b|0;h=a+4|0;e=h;c=d-c|0;a=l+(b>>>5<<2)|0;b=b&31}g=(c|0)/32|0;hi(a|0,e|0,g<<2|0)|0;d=c-(g<<5)|0;a=a+(g<<2)|0;c=a;if((d|0)>0){b=-1>>>(32-d|0);f[a>>2]=f[a>>2]&~b|f[h+(g<<2)>>2]&b;b=d}}f[m>>2]=c;f[m+4>>2]=b;u=n;return}function Hd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;d=h+4|0;e=h;g=a+8|0;c=f[g>>2]|0;fg(f[a+4>>2]|0,(f[c+28>>2]|0)-(f[c+24>>2]|0)>>2);c=a+84|0;a=f[c>>2]|0;if(!a){c=f[g>>2]|0;c=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;a=(c>>>0)/3|0;if(c>>>0<=2){u=h;return 1}b=0;do{f[e>>2]=b*3;f[d>>2]=f[e>>2];ub(g,d);b=b+1|0}while((b|0)<(a|0));u=h;return 1}else{b=f[a>>2]|0;if((f[a+4>>2]|0)==(b|0)){u=h;return 1}a=0;do{f[e>>2]=f[b+(a<<2)>>2];f[d>>2]=f[e>>2];ub(g,d);a=a+1|0;i=f[c>>2]|0;b=f[i>>2]|0}while(a>>>0<(f[i+4>>2]|0)-b>>2>>>0);u=h;return 1}return 0}function Id(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;e=f[j>>2]|0;k=a+4|0;d=f[k>>2]|0;if(((e-d|0)/12|0)>>>0>=b>>>0){do{f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=(f[k>>2]|0)+12|0;f[k>>2]=d;b=b+-1|0}while((b|0)!=0);return}g=f[a>>2]|0;h=(d-g|0)/12|0;d=h+b|0;if(d>>>0>357913941)Wl(a);g=(e-g|0)/12|0;i=g<<1;d=g>>>0<178956970?(i>>>0>>0?d:i):357913941;do if(d)if(d>>>0>357913941){k=sa(8)|0;Fk(k,12569);f[k>>2]=3708;wa(k|0,856,80)}else{e=Yi(d*12|0)|0;break}else e=0;while(0);i=e+(h*12|0)|0;h=e+(d*12|0)|0;d=i;g=i;do{f[d>>2]=f[c>>2];f[d+4>>2]=f[c+4>>2];f[d+8>>2]=f[c+8>>2];d=g+12|0;g=d;b=b+-1|0}while((b|0)!=0);d=f[a>>2]|0;e=(f[k>>2]|0)-d|0;b=i+(((e|0)/-12|0)*12|0)|0;if((e|0)>0)Od(b|0,d|0,e|0)|0;f[a>>2]=b;f[k>>2]=g;f[j>>2]=h;if(!d)return;Em(d);return}function Jd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;g=f[c>>2]|0;f[c>>2]=0;f[i>>2]=g;sd(a,b,i);g=f[i>>2]|0;f[i>>2]=0;if(g|0){i=g+88|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}Em(c)}c=f[g+68>>2]|0;if(c|0){e=g+72|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}i=g+64|0;c=f[i>>2]|0;f[i>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}Em(c)}Em(g)}i=a+84|0;h=a+88|0;c=f[h>>2]|0;g=f[i>>2]|0;a=c-g>>2;if((a|0)>(b|0)){u=j;return}e=b+1|0;d=c;if(e>>>0>a>>>0){pe(i,e-a|0);u=j;return}if(e>>>0>=a>>>0){u=j;return}c=g+(e<<2)|0;if((d|0)==(c|0)){u=j;return}f[h>>2]=d+(~((d+-4-c|0)>>>2)<<2);u=j;return}function Kd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=f[c>>2]|0;h=f[a>>2]|0;j=h+(e>>>5<<2)|0;f[j>>2]=f[j>>2]|1<<(e&31);j=f[a+64>>2]|0;g=(e|0)<0;c=e+1|0;if(!g?(d=((c|0)%3|0|0)==0?e+-2|0:c,(d|0)>=0):0)c=f[(f[j>>2]|0)+(d<<2)>>2]|0;else c=-1073741824;i=a+12|0;d=(f[i>>2]|0)+(c>>>5<<2)|0;f[d>>2]=f[d>>2]|1<<(c&31);if(g){j=(f[i>>2]|0)+402653184|0;f[j>>2]=f[j>>2]|1;return}c=(((e>>>0)%3|0|0)==0?2:-1)+e|0;if((c|0)<0)c=-1073741824;else c=f[(f[j>>2]|0)+(c<<2)>>2]|0;d=(f[i>>2]|0)+(c>>>5<<2)|0;f[d>>2]=f[d>>2]|1<<(c&31);if(g)return;d=f[(f[j+12>>2]|0)+(e<<2)>>2]|0;if((d|0)<=-1)return;b[a+24>>0]=0;c=h+(d>>>5<<2)|0;f[c>>2]=f[c>>2]|1<<(d&31);c=d+1|0;c=((c|0)%3|0|0)==0?d+-2|0:c;if((c|0)<0)c=-1073741824;else c=f[(f[j>>2]|0)+(c<<2)>>2]|0;a=(f[i>>2]|0)+(c>>>5<<2)|0;f[a>>2]=f[a>>2]|1<<(c&31);c=(((d>>>0)%3|0|0)==0?2:-1)+d|0;if((c|0)<0)c=-1073741824;else c=f[(f[j>>2]|0)+(c<<2)>>2]|0;j=(f[i>>2]|0)+(c>>>5<<2)|0;f[j>>2]=f[j>>2]|1<<(c&31);return}function Ld(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+4|0;c=f[a>>2]|0;g=(f[j>>2]|0)-c>>2;d=g+1|0;if(d>>>0>1073741823)Wl(a);k=a+8|0;i=(f[k>>2]|0)-c|0;c=i>>1;c=i>>2>>>0<536870911?(c>>>0>>0?d:c):1073741823;do if(c)if(c>>>0>1073741823){a=sa(8)|0;Fk(a,12569);f[a>>2]=3708;wa(a|0,856,80)}else{e=Yi(c<<2)|0;break}else e=0;while(0);g=e+(g<<2)|0;d=g;i=e+(c<<2)|0;h=f[b>>2]|0;f[b>>2]=0;f[g>>2]=h;h=g+4|0;b=f[a>>2]|0;c=f[j>>2]|0;if((c|0)==(b|0)){g=b;c=b}else{e=g;do{c=c+-4|0;g=f[c>>2]|0;f[c>>2]=0;f[e+-4>>2]=g;e=d+-4|0;d=e}while((c|0)!=(b|0));g=f[a>>2]|0;c=f[j>>2]|0}f[a>>2]=d;f[j>>2]=h;f[k>>2]=i;e=g;if((c|0)!=(e|0))do{c=c+-4|0;d=f[c>>2]|0;f[c>>2]=0;if(d|0){lf(d);Em(d)}}while((c|0)!=(e|0));if(!g)return;Em(g);return}function Md(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=u;u=u+16|0;h=j+8|0;g=j+4|0;e=j;if(!c){i=0;u=j;return i|0}f[a>>2]=b;f[h>>2]=0;Vf(h,b)|0;a:do if(!(f[h>>2]|0))i=8;else{d=0;while(1){Vf(g,f[a>>2]|0)|0;b=Yi(44)|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[b+16>>2]=$(1.0);k=b+20|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;n[b+36>>2]=$(1.0);f[b+40>>2]=f[g>>2];if(!(dc(a,b)|0))break;f[e>>2]=b;rg(c,e)|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0){lf(b);Em(b)}d=d+1|0;if(d>>>0>=(f[h>>2]|0)>>>0){i=8;break a}}lf(b);Em(b);b=0}while(0);if((i|0)==8)b=dc(a,c)|0;k=b;u=j;return k|0}function Nd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+4|0;d=f[l>>2]|0;do if(d|0){m=b[c+11>>0]|0;k=m<<24>>24<0;m=k?f[c+4>>2]|0:m&255;k=k?f[c>>2]|0:c;a=l;a:while(1){c=d;while(1){e=c+16|0;g=b[e+11>>0]|0;h=g<<24>>24<0;g=h?f[c+20>>2]|0:g&255;d=m>>>0>>0?m:g;if((d|0)!=0?(i=sh(h?f[e>>2]|0:e,k,d)|0,(i|0)!=0):0){if((i|0)>=0)break}else j=6;if((j|0)==6?(j=0,g>>>0>=m>>>0):0)break;c=f[c+4>>2]|0;if(!c)break a}d=f[c>>2]|0;if(!d){a=c;break}else a=c}if((a|0)!=(l|0)){d=a+16|0;e=b[d+11>>0]|0;g=e<<24>>24<0;e=g?f[a+20>>2]|0:e&255;c=e>>>0>>0?e:m;if(c|0?(n=sh(k,g?f[d>>2]|0:d,c)|0,n|0):0){if((n|0)<0)break;return a|0}if(m>>>0>=e>>>0){n=a;return n|0}}}while(0);n=l;return n|0}function Od(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return Ea(a|0,c|0,d|0)|0;h=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return h|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}d=g&-4|0;e=d-64|0;while((a|0)<=(e|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(d|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{d=g-4|0;while((a|0)<(d|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return h|0}function Pd(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a+196>>2]|0;if(b|0){d=a+200|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}g=a+184|0;b=f[g>>2]|0;if(b|0){h=a+188|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{d=c+-12|0;f[h>>2]=d;e=f[d>>2]|0;if(!e)c=d;else{d=c+-8|0;c=f[d>>2]|0;if((c|0)!=(e|0))f[d>>2]=c+(~((c+-4-e|0)>>>2)<<2);Em(e);c=f[h>>2]|0}}while((c|0)!=(b|0));b=f[g>>2]|0}Em(b)}b=f[a+156>>2]|0;if(b|0){d=a+160|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}h=a+136|0;c=f[h>>2]|0;f[h>>2]=0;if(!c){h=a+120|0;Jm(h);h=a+80|0;Jm(h);h=a+64|0;Jm(h);a=a+24|0;Jm(a);return}d=c+-4|0;b=f[d>>2]|0;if(b|0){b=c+(b<<4)|0;do{b=b+-16|0;Jm(b)}while((b|0)!=(c|0))}Cm(d);h=a+120|0;Jm(h);h=a+80|0;Jm(h);h=a+64|0;Jm(h);a=a+24|0;Jm(a);return}function Qd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{g=f[d+4>>2]|0;if((c|0)<=-1)ra(12658,12674,59,12771);i=f[g+8>>2]|0;if(((f[g+12>>2]|0)-i>>2|0)<=(c|0))ra(12781,12674,60,12771);g=f[i+(c<<2)>>2]|0;do if((Ma[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){Pc(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);b=Yi(44)|0;f[b>>2]=1192;f[b+4>>2]=g;g=b+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[g+16>>2]=f[e+16>>2];f[g+20>>2]=f[e+20>>2];mg(b+32|0,e+24|0);f[b>>2]=1248;g=b}f[a>>2]=g;return}function Rd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;i=a+60|0;c=f[i>>2]|0;if(!c){a=0;return a|0}f[c+4>>2]=a+48;if(!(Ma[f[(f[c>>2]|0)+12>>2]&127](c)|0)){a=0;return a|0}g=Ma[f[(f[a>>2]|0)+24>>2]&127](a)|0;a:do if((g|0)>0){h=0;while(1){c=(Ma[f[(f[a>>2]|0)+28>>2]&127](a)|0)+4|0;c=f[c>>2]|0;e=Na[f[(f[a>>2]|0)+20>>2]&127](a,h)|0;if((e|0)<=-1){d=7;break}d=f[c+8>>2]|0;if(((f[c+12>>2]|0)-d>>2|0)<=(e|0)){d=9;break}c=f[i>>2]|0;h=h+1|0;if(!(Na[f[(f[c>>2]|0)+8>>2]&127](c,f[d+(e<<2)>>2]|0)|0)){c=0;d=14;break}if((h|0)>=(g|0))break a}if((d|0)==7)ra(12658,12674,67,12771);else if((d|0)==9)ra(12781,12674,68,12771);else if((d|0)==14)return c|0}while(0);if(!(Na[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){a=0;return a|0}if(!(Na[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){a=0;return a|0}a=Ma[f[(f[a>>2]|0)+44>>2]&127](a)|0;return a|0}function Sd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=u;u=u+48|0;i=m+16|0;e=m;d=m+32|0;j=a+28|0;g=f[j>>2]|0;f[d>>2]=g;k=a+20|0;g=(f[k>>2]|0)-g|0;f[d+4>>2]=g;f[d+8>>2]=b;f[d+12>>2]=c;g=g+c|0;h=a+60|0;f[e>>2]=f[h>>2];f[e+4>>2]=d;f[e+8>>2]=2;b=vk(Ba(146,e|0)|0)|0;a:do if((g|0)!=(b|0)){e=2;while(1){if((b|0)<0)break;g=g-b|0;o=f[d+4>>2]|0;n=b>>>0>o>>>0;d=n?d+8|0:d;e=(n<<31>>31)+e|0;o=b-(n?o:0)|0;f[d>>2]=(f[d>>2]|0)+o;n=d+4|0;f[n>>2]=(f[n>>2]|0)-o;f[i>>2]=f[h>>2];f[i+4>>2]=d;f[i+8>>2]=e;b=vk(Ba(146,i|0)|0)|0;if((g|0)==(b|0)){l=3;break a}}f[a+16>>2]=0;f[j>>2]=0;f[k>>2]=0;f[a>>2]=f[a>>2]|32;if((e|0)==2)c=0;else c=c-(f[d+4>>2]|0)|0}else l=3;while(0);if((l|0)==3){o=f[a+44>>2]|0;f[a+16>>2]=o+(f[a+48>>2]|0);f[j>>2]=o;f[k>>2]=o}u=m;return c|0}function Td(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+12|0;h=f[a>>2]|0;j=a+8|0;c=f[j>>2]|0;d=(c|0)<0;if(!(b[i>>0]|0)){do if(!d){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;return}e=c+1|0;if(!d){c=((e|0)%3|0|0)==0?c+-2|0:e;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[j>>2]=c;if((c|0)>=0){if((c|0)!=(f[a+4>>2]|0))return;f[j>>2]=-1073741824;return}}else g=5}else g=5}else g=5;if((g|0)==5)f[j>>2]=c;c=f[a+4>>2]|0;do if((c|0)>=0){c=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((c|0)>=0){c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}}}while(0);f[j>>2]=c;b[i>>0]=0;return}function Ud(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;c=f[k>>2]|0;l=a+16|0;if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}d=f[l>>2]|0;if(!d){l=f[l>>2]|0;return l|0}a=d+84|0;if(!(b[a>>0]|0)){l=f[l>>2]|0;return l|0}i=(f[c+72>>2]|0)-(f[c+68>>2]|0)>>2;b[a>>0]=0;h=d+68|0;e=d+72|0;d=f[e>>2]|0;a=f[h>>2]|0;g=d-a>>2;if(i>>>0<=g>>>0){if(i>>>0>>0?(j=a+(i<<2)|0,(d|0)!=(j|0)):0)f[e>>2]=d+(~((d+-4-j|0)>>>2)<<2)}else{ee(h,i-g|0,1060);c=f[k>>2]|0}if(b[c+84>>0]|0){l=f[l>>2]|0;return l|0}k=f[c+68>>2]|0;g=k;k=(f[c+72>>2]|0)-k|0;d=k>>2;if((k|0)<=0){l=f[l>>2]|0;return l|0}c=f[l>>2]|0;e=(b[c+84>>0]|0)==0;c=c+68|0;a=0;while(1){if(!e){c=14;break}f[(f[c>>2]|0)+(a<<2)>>2]=f[g+(a<<2)>>2];a=a+1|0;if((a|0)>=(d|0)){c=15;break}}if((c|0)==14)ra(10949,10968,89,11068);else if((c|0)==15){l=f[l>>2]|0;return l|0}return 0}function Vd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+16|0;e=h+12|0;g=h+8|0;i=h;f[i>>2]=f[b>>2];f[e>>2]=f[i>>2];b=Lb(a,e,g,h+4|0,c)|0;c=f[b>>2]|0;if(c|0){i=c;u=h;return i|0}e=Yi(40)|0;Df(e+16|0,d);Df(e+28|0,d+12|0);c=f[g>>2]|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=c;f[b>>2]=e;c=f[f[a>>2]>>2]|0;if(!c)c=e;else{f[a>>2]=c;c=f[b>>2]|0}wc(f[a+4>>2]|0,c);i=a+8|0;f[i>>2]=(f[i>>2]|0)+1;i=e;u=h;return i|0}function Wd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=u;u=u+16|0;l=m;j=a+4|0;f[j>>2]=0;if(!c){u=m;return}i=a+8|0;e=f[i>>2]|0;g=e<<5;if(g>>>0>>0){f[l>>2]=0;k=l+4|0;f[k>>2]=0;h=l+8|0;f[h>>2]=0;if((c|0)<0)Wl(a);e=e<<6;n=c+31&-32;Me(l,g>>>0<1073741823?(e>>>0>>0?n:e):2147483647);e=f[a>>2]|0;f[a>>2]=f[l>>2];f[l>>2]=e;l=f[j>>2]|0;f[j>>2]=c;f[k>>2]=l;l=f[i>>2]|0;f[i>>2]=f[h>>2];f[h>>2]=l;if(e|0)Em(e)}else f[j>>2]=c;a=f[a>>2]|0;g=a;h=c>>>5;e=h<<2;if(!(b[d>>0]|0)){Cf(a|0,0,e|0)|0;e=c-(h<<5)|0;a=g+(h<<2)|0;if(!e){u=m;return}f[a>>2]=f[a>>2]&~(-1>>>(32-e|0));u=m;return}else{Cf(a|0,-1,e|0)|0;e=c-(h<<5)|0;a=g+(h<<2)|0;if(!e){u=m;return}f[a>>2]=f[a>>2]|-1>>>(32-e|0);u=m;return}}function Xd(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;do if(!(dl(a,f[c+8>>2]|0,g)|0)){h=a+8|0;if(!(dl(a,f[c>>2]|0,g)|0)){j=f[h>>2]|0;Va[f[(f[j>>2]|0)+24>>2]&3](j,c,d,e,g);break}a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(i=c+20|0,(f[i>>2]|0)!=(d|0)):0){f[a>>2]=e;e=c+44|0;if((f[e>>2]|0)==4)break;a=c+52|0;b[a>>0]=0;k=c+53|0;b[k>>0]=0;h=f[h>>2]|0;Wa[f[(f[h>>2]|0)+20>>2]&3](h,c,d,d,1,g);if(b[k>>0]|0)if(!(b[a>>0]|0)){a=3;j=11}else a=3;else{a=4;j=11}if((j|0)==11){f[i>>2]=d;k=c+40|0;f[k>>2]=(f[k>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1}f[e>>2]=a;break}if((e|0)==1)f[a>>2]=1}else Ai(0,c,d,e);while(0);return}function Yd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;m=b+16|0;c=m;e=f[c>>2]|0;c=f[c+4>>2]|0;g=Ij(e|0,c|0,4,0)|0;d=I;if((k|0)<(d|0)|(k|0)==(d|0)&j>>>0>>0){a=0;return a|0}i=f[b>>2]|0;l=i+e|0;l=h[l>>0]|h[l+1>>0]<<8|h[l+2>>0]<<16|h[l+3>>0]<<24;n=m;f[n>>2]=g;f[n+4>>2]=d;d=Ij(e|0,c|0,8,0)|0;e=I;if((k|0)<(e|0)|(k|0)==(e|0)&j>>>0>>0){n=0;return n|0}c=i+g|0;c=h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24;n=m;f[n>>2]=d;f[n+4>>2]=e;if((l|0)>(c|0)){n=0;return n|0}f[a+12>>2]=l;f[a+16>>2]=c;n=c+(1-l)|0;f[a+20>>2]=n;c=(n|0)/2|0;d=a+24|0;f[d>>2]=c;f[a+28>>2]=0-c;if(!(n&1))f[d>>2]=c+-1;n=ed(a+108|0,b)|0;return n|0}function Zd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,i=0;if((b|0)==-2)g=0;else{g=f[d+4>>2]|0;if((c|0)<=-1)ra(12658,12674,59,12771);i=f[g+8>>2]|0;if(((f[g+12>>2]|0)-i>>2|0)<=(c|0))ra(12781,12674,60,12771);g=f[i+(c<<2)>>2]|0;do if((Ma[f[(f[d>>2]|0)+8>>2]&127](d)|0)==1){qc(a,d,b,c,e,((h[d+36>>0]|0)<<8|(h[d+37>>0]|0))&65535);if(!(f[a>>2]|0)){f[a>>2]=0;break}else return}while(0);b=Yi(24)|0;f[b+4>>2]=g;g=b+8|0;f[g>>2]=f[e>>2];f[g+4>>2]=f[e+4>>2];f[g+8>>2]=f[e+8>>2];f[g+12>>2]=f[e+12>>2];f[b>>2]=1868;g=b}f[a>>2]=g;return}function _d(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=f[a+32>>2]|0;h=c+8|0;j=f[h+4>>2]|0;g=c+16|0;d=g;e=f[d>>2]|0;d=f[d+4>>2]|0;if(!((j|0)>(d|0)|((j|0)==(d|0)?(f[h>>2]|0)>>>0>e>>>0:0))){j=0;return j|0}h=b[(f[c>>2]|0)+e>>0]|0;c=Ij(e|0,d|0,1,0)|0;e=g;f[e>>2]=c;f[e+4>>2]=I;e=a+48|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0)Ra[f[(f[c>>2]|0)+4>>2]&127](c);switch(h<<24>>24){case 0:{c=Yi(376)|0;lg(c);d=f[e>>2]|0;f[e>>2]=c;if(d){Ra[f[(f[d>>2]|0)+4>>2]&127](d);i=9}break}case 2:{c=Yi(432)|0;gf(c);d=f[e>>2]|0;f[e>>2]=c;if(d){Ra[f[(f[d>>2]|0)+4>>2]&127](d);i=9}break}default:i=9}if((i|0)==9){c=f[e>>2]|0;if(!c){j=0;return j|0}}j=Na[f[(f[c>>2]|0)+8>>2]&127](c,a)|0;return j|0}function $d(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+8|0;d=f[i>>2]|0;j=a+4|0;c=f[j>>2]|0;if(d-c>>3>>>0>=b>>>0){do{a=c;f[a>>2]=0;f[a+4>>2]=0;c=(f[j>>2]|0)+8|0;f[j>>2]=c;b=b+-1|0}while((b|0)!=0);return}e=f[a>>2]|0;g=c-e>>3;c=g+b|0;if(c>>>0>536870911)Wl(a);e=d-e|0;h=e>>2;c=e>>3>>>0<268435455?(h>>>0>>0?c:h):536870911;do if(c)if(c>>>0>536870911){j=sa(8)|0;Fk(j,12569);f[j>>2]=3708;wa(j|0,856,80)}else{d=Yi(c<<3)|0;break}else d=0;while(0);h=d+(g<<3)|0;g=d+(c<<3)|0;c=h;e=h;do{d=c;f[d>>2]=0;f[d+4>>2]=0;c=e+8|0;e=c;b=b+-1|0}while((b|0)!=0);c=f[a>>2]|0;d=(f[j>>2]|0)-c|0;b=h+(0-(d>>3)<<3)|0;if((d|0)>0)Od(b|0,c|0,d|0)|0;f[a>>2]=b;f[j>>2]=e;f[i>>2]=g;if(!c)return;Em(c);return}function ae(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;h=u;u=u+16|0;c=h;i=f[(f[a>>2]|0)+8>>2]|0;g=a+8|0;e=a+12|0;d=(f[e>>2]|0)-(f[g>>2]|0)>>2;j=f[b>>2]|0;f[b>>2]=0;f[c>>2]=j;Ta[i&7](a,d,c);d=f[c>>2]|0;f[c>>2]=0;if(!d){i=f[e>>2]|0;j=f[g>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}j=d+88|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0){a=f[b+8>>2]|0;if(a|0){c=b+12|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;Em(a)}Em(b)}b=f[d+68>>2]|0;if(b|0){c=d+72|0;a=f[c>>2]|0;if((a|0)!=(b|0))f[c>>2]=a+(~((a+-4-b|0)>>>2)<<2);Em(b)}j=d+64|0;b=f[j>>2]|0;f[j>>2]=0;if(b|0){a=f[b>>2]|0;if(a|0){c=b+4|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;Em(a)}Em(b)}Em(d);i=f[e>>2]|0;j=f[g>>2]|0;j=i-j|0;j=j>>2;j=j+-1|0;u=h;return j|0}function be(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=u;u=u+224|0;m=r+120|0;q=r+80|0;p=r;o=r+136|0;e=q;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[m>>2]=f[d>>2];if((hb(0,c,m,p,q)|0)<0)d=-1;else{if((f[a+76>>2]|0)>-1)n=Km(a)|0;else n=0;d=f[a>>2]|0;l=d&32;if((b[a+74>>0]|0)<1)f[a>>2]=d&-33;h=a+48|0;if(!(f[h>>2]|0)){g=a+44|0;d=f[g>>2]|0;f[g>>2]=o;i=a+28|0;f[i>>2]=o;k=a+20|0;f[k>>2]=o;f[h>>2]=80;j=a+16|0;f[j>>2]=o+80;e=hb(a,c,m,p,q)|0;if(d){Oa[f[a+36>>2]&31](a,0,0)|0;e=(f[k>>2]|0)==0?-1:e;f[g>>2]=d;f[h>>2]=0;f[j>>2]=0;f[i>>2]=0;f[k>>2]=0}}else e=hb(a,c,m,p,q)|0;d=f[a>>2]|0;f[a>>2]=d|l;if(n|0)Jm(a);d=(d&32|0)==0?e:-1}u=r;return d|0}function ce(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;g=Yi(32)|0;f[a>>2]=g;f[a+4>>2]=c+8;i=a+8|0;b[i>>0]=0;j=g+8|0;f[j>>2]=f[e>>2];f[j+4>>2]=f[e+4>>2];f[j+8>>2]=f[e+8>>2];f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;j=g+20|0;k=e+12|0;f[j>>2]=0;f[g+24>>2]=0;f[g+28>>2]=0;g=e+16|0;c=f[g>>2]|0;e=f[k>>2]|0;h=c-e|0;if(!h){j=e;g=c;h=0;k=j;k=g-k|0;Od(h|0,j|0,k|0)|0;b[i>>0]=1;a=f[a>>2]|0;k=a+4|0;f[k>>2]=d;f[a>>2]=0;return}_e(j,h);h=f[k>>2]|0;g=f[g>>2]|0;j=f[j>>2]|0;k=h;k=g-k|0;Od(j|0,h|0,k|0)|0;b[i>>0]=1;a=f[a>>2]|0;k=a+4|0;f[k>>2]=d;f[a>>2]=0;return}function de(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=1048576){if((i|0)!=1048576?(h=d+4194304|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else Ve(a,1048576-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else $d(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>1048576){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==1048576;return k|0}function ee(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+8|0;e=f[l>>2]|0;m=a+4|0;d=f[m>>2]|0;g=d;if(e-d>>2>>>0>=b>>>0){d=g;e=b;while(1){f[d>>2]=f[c>>2];e=e+-1|0;if(!e)break;else d=d+4|0}f[m>>2]=g+(b<<2);return}k=f[a>>2]|0;j=d-k|0;i=j>>2;d=i+b|0;if(d>>>0>1073741823)Wl(a);g=e-k|0;h=g>>1;d=g>>2>>>0<536870911?(h>>>0>>0?d:h):1073741823;do if(d)if(d>>>0>1073741823){b=sa(8)|0;Fk(b,12569);f[b>>2]=3708;wa(b|0,856,80)}else{e=Yi(d<<2)|0;break}else e=0;while(0);h=e+(i<<2)|0;g=e+(d<<2)|0;d=h;e=b;while(1){f[d>>2]=f[c>>2];e=e+-1|0;if(!e)break;else d=d+4|0}d=h+(0-i<<2)|0;if((j|0)>0)Od(d|0,k|0,j|0)|0;f[a>>2]=d;f[m>>2]=h+(b<<2);f[l>>2]=g;if(!k)return;Em(k);return}function fe(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=u;u=u+64|0;o=p;m=f[a>>2]|0;n=a+(f[m+-8>>2]|0)|0;m=f[m+-4>>2]|0;f[o>>2]=e;f[o+4>>2]=a;f[o+8>>2]=c;f[o+12>>2]=g;g=o+16|0;a=o+20|0;h=o+24|0;j=o+28|0;i=o+32|0;c=o+40|0;k=g;l=k+36|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));d[g+36>>1]=0;b[g+38>>0]=0;a:do if(dl(m,e,0)|0){f[o+48>>2]=1;Wa[f[(f[m>>2]|0)+20>>2]&3](m,o,n,n,1,0);g=(f[h>>2]|0)==1?n:0}else{Va[f[(f[m>>2]|0)+24>>2]&3](m,o,n,1,0);switch(f[o+36>>2]|0){case 0:{g=(f[c>>2]|0)==1&(f[j>>2]|0)==1&(f[i>>2]|0)==1?f[a>>2]|0:0;break a}case 1:break;default:{g=0;break a}}if((f[h>>2]|0)!=1?!((f[c>>2]|0)==0&(f[j>>2]|0)==1&(f[i>>2]|0)==1):0){g=0;break}g=f[g>>2]|0}while(0);u=p;return g|0}function ge(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o;m=b+4|0;c=f[m>>2]|0;d=f[b>>2]|0;k=((c-d|0)/12|0)*3|0;i=a+4|0;h=f[i>>2]|0;e=f[a>>2]|0;l=h-e>>2;g=d;if(k>>>0<=l>>>0){if(k>>>0>>0?(j=e+(k<<2)|0,(h|0)!=(j|0)):0)f[i>>2]=h+(~((h+-4-j|0)>>>2)<<2)}else{Ve(a,k-l|0);g=f[b>>2]|0;d=g;c=f[m>>2]|0}if((c-d|0)>0){e=f[a>>2]|0;d=(c-g|0)/12|0;c=0;do{m=c*3|0;f[e+(m<<2)>>2]=f[g+(c*12|0)>>2];f[e+(m+1<<2)>>2]=f[g+(c*12|0)+4>>2];f[e+(m+2<<2)>>2]=f[g+(c*12|0)+8>>2];c=c+1|0}while((c|0)<(d|0))}f[n>>2]=-1;if(!(tb(a,n)|0)){a=0;u=o;return a|0}db(a,f[n>>2]|0)|0;a=1;u=o;return a|0}function he(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=524288){if((i|0)!=524288?(h=d+2097152|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else Ve(a,524288-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else $d(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>524288){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==524288;return k|0}function ie(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=262144){if((i|0)!=262144?(h=d+1048576|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else Ve(a,262144-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else $d(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>262144){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==262144;return k|0}function je(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=65536){if((i|0)!=65536?(h=d+262144|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else Ve(a,65536-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else $d(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>65536){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==65536;return k|0}function ke(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=32768){if((i|0)!=32768?(h=d+131072|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else Ve(a,32768-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else $d(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>32768){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==32768;return k|0}function le(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;c=f[g>>2]|0;d=f[a>>2]|0;e=c-d>>2;if(e>>>0>>0){gd(a,b-e|0);return}if(e>>>0<=b>>>0)return;a=d+(b<<2)|0;if((c|0)==(a|0))return;do{b=c+-4|0;f[g>>2]=b;e=f[b>>2]|0;f[b>>2]=0;if(e|0){b=e+88|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){b=c+12|0;if((f[b>>2]|0)!=(d|0))f[b>>2]=d;Em(d)}Em(c)}c=f[e+68>>2]|0;if(c|0){b=e+72|0;d=f[b>>2]|0;if((d|0)!=(c|0))f[b>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}b=e+64|0;c=f[b>>2]|0;f[b>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){b=c+4|0;if((f[b>>2]|0)!=(d|0))f[b>>2]=d;Em(d)}Em(c)}Em(e)}c=f[g>>2]|0}while((c|0)!=(a|0));return}function me(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=8192){if((i|0)!=8192?(h=d+32768|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else Ve(a,8192-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else $d(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>8192){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==8192;return k|0}function ne(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;g=a+4|0;e=f[g>>2]|0;d=f[a>>2]|0;i=e-d>>2;if(i>>>0>=4096){if((i|0)!=4096?(h=d+16384|0,(e|0)!=(h|0)):0)f[g>>2]=e+(~((e+-4-h|0)>>>2)<<2)}else Ve(a,4096-i|0);h=a+12|0;g=a+16|0;e=f[g>>2]|0;d=f[h>>2]|0;i=e-d>>3;if(i>>>0>=c>>>0){if(i>>>0>c>>>0?(j=d+(c<<3)|0,(e|0)!=(j|0)):0)f[g>>2]=e+(~((e+-8-j|0)>>>3)<<3);if(!c){k=0;return k|0}}else $d(h,c-i|0);e=f[h>>2]|0;h=0;i=0;do{j=b+(i<<2)|0;f[e+(i<<3)>>2]=f[j>>2];f[e+(i<<3)+4>>2]=h;d=h;h=(f[j>>2]|0)+h|0;if(h>>>0>4096){d=0;k=19;break}if(d>>>0>>0){g=f[a>>2]|0;do{f[g+(d<<2)>>2]=i;d=d+1|0}while((d|0)!=(h|0))}i=i+1|0}while(i>>>0>>0);if((k|0)==19)return d|0;k=(h|0)==4096;return k|0}function oe(a,c,d){a=a|0;c=c|0;d=d|0;a=Ib(a,c)|0;if(!a){d=0;return d|0}c=f[a+20>>2]|0;if(((f[a+24>>2]|0)-c|0)!=8){d=0;return d|0}a=c;b[s>>0]=b[a>>0];b[s+1>>0]=b[a+1>>0];b[s+2>>0]=b[a+2>>0];b[s+3>>0]=b[a+3>>0];b[s+4>>0]=b[a+4>>0];b[s+5>>0]=b[a+5>>0];b[s+6>>0]=b[a+6>>0];b[s+7>>0]=b[a+7>>0];p[s>>3]=+p[s>>3];b[d>>0]=b[s>>0];b[d+1>>0]=b[s+1>>0];b[d+2>>0]=b[s+2>>0];b[d+3>>0]=b[s+3>>0];b[d+4>>0]=b[s+4>>0];b[d+5>>0]=b[s+5>>0];b[d+6>>0]=b[s+6>>0];b[d+7>>0]=b[s+7>>0];d=1;return d|0}function pe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;d=f[k>>2]|0;l=a+4|0;c=f[l>>2]|0;e=c;if(d-c>>2>>>0>=b>>>0){c=e;d=b;while(1){f[c>>2]=1;d=d+-1|0;if(!d)break;else c=c+4|0}f[l>>2]=e+(b<<2);return}j=f[a>>2]|0;i=c-j|0;h=i>>2;c=h+b|0;if(c>>>0>1073741823)Wl(a);e=d-j|0;g=e>>1;c=e>>2>>>0<536870911?(g>>>0>>0?c:g):1073741823;do if(c)if(c>>>0>1073741823){b=sa(8)|0;Fk(b,12569);f[b>>2]=3708;wa(b|0,856,80)}else{d=Yi(c<<2)|0;break}else d=0;while(0);g=d+(h<<2)|0;e=d+(c<<2)|0;c=g;d=b;while(1){f[c>>2]=1;d=d+-1|0;if(!d)break;else c=c+4|0}c=g+(0-h<<2)|0;if((i|0)>0)Od(c|0,j|0,i|0)|0;f[a>>2]=c;f[l>>2]=g+(b<<2);f[k>>2]=e;if(!j)return;Em(j);return}function qe(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=f[c+88>>2]|0;if(!d){a=0;return a|0}if((f[d>>2]|0)!=1){a=0;return a|0}m=d+8|0;j=f[m>>2]|0;f[a+4>>2]=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;o=a+8|0;k=c+24|0;c=b[k>>0]|0;i=c<<24>>24;g=a+12|0;e=f[g>>2]|0;d=f[o>>2]|0;l=e-d>>2;if(i>>>0<=l>>>0){if(i>>>0>>0?(n=d+(i<<2)|0,(e|0)!=(n|0)):0)f[g>>2]=e+(~((e+-4-n|0)>>>2)<<2)}else{Ve(o,i-l|0);c=b[k>>0]|0;j=f[m>>2]|0}d=j+4|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;if(c<<24>>24>0){i=f[o>>2]|0;e=c<<24>>24;c=4;g=0;do{f[i+(g<<2)>>2]=d;c=c+4|0;g=g+1|0;d=j+c|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24}while((g|0)<(e|0))}f[a+20>>2]=d;a=1;return a|0}function re(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;if(c>>>0>4294967279)Wl(a);i=a+11|0;e=b[i>>0]|0;g=e<<24>>24<0;if(g){j=f[a+4>>2]|0;d=(f[a+8>>2]&2147483647)+-1|0}else{j=e&255;d=10}h=j>>>0>c>>>0?j:c;c=h>>>0<11;h=c?10:(h+16&-16)+-1|0;do if((h|0)!=(d|0)){do if(c){d=f[a>>2]|0;if(g){c=a;e=0;g=13}else{wk(a,d,(e&255)+1|0)|0;Em(d);g=15}}else{c=Yi(h+1|0)|0;if(g){e=1;d=f[a>>2]|0;g=13;break}else{wk(c,a,(e&255)+1|0)|0;g=14;break}}while(0);if((g|0)==13){wk(c,d,(f[a+4>>2]|0)+1|0)|0;Em(d);if(e)g=14;else g=15}if((g|0)==14){f[a+8>>2]=h+1|-2147483648;f[a+4>>2]=j;f[a>>2]=c;break}else if((g|0)==15){b[i>>0]=j;break}}while(0);return}function se(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(f[a>>2]|0)+1794895138|0;h=el(f[a+8>>2]|0,o)|0;e=el(f[a+12>>2]|0,o)|0;g=el(f[a+16>>2]|0,o)|0;a:do if((h>>>0>>2>>>0?(n=c-(h<<2)|0,e>>>0>>0&g>>>0>>0):0)?((g|e)&3|0)==0:0){n=e>>>2;m=g>>>2;l=0;while(1){k=h>>>1;j=l+k|0;i=j<<1;g=i+n|0;e=el(f[a+(g<<2)>>2]|0,o)|0;g=el(f[a+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0>>0&e>>>0<(c-g|0)>>>0)){e=0;break a}if(b[a+(g+e)>>0]|0){e=0;break a}e=Jh(d,a+g|0)|0;if(!e)break;e=(e|0)<0;if((h|0)==1){e=0;break a}else{l=e?l:j;h=e?k:h-k|0}}e=i+m|0;g=el(f[a+(e<<2)>>2]|0,o)|0;e=el(f[a+(e+1<<2)>>2]|0,o)|0;if(e>>>0>>0&g>>>0<(c-e|0)>>>0)e=(b[a+(e+g)>>0]|0)==0?a+e|0:0;else e=0}else e=0;while(0);return e|0}function te(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j+16|0;i=j;switch(c<<24>>24){case 0:{i=Yi(48)|0;rl(i);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=i;u=j;return}case 1:{i=Yi(52)|0;Ck(i);f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=i;u=j;return}default:{c=Yi(32)|0;f[i>>2]=c;f[i+8>>2]=-2147483616;f[i+4>>2]=28;d=c;e=10720;g=d+28|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+28>>0]=0;f[h>>2]=-1;c=h+4|0;Df(c,i);f[a>>2]=f[h>>2];Df(a+4|0,c);f[a+16>>2]=0;if((b[c+11>>0]|0)<0)Em(f[c>>2]|0);if((b[i+11>>0]|0)<0)Em(f[i>>2]|0);u=j;return}}}function ue(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;i=k+12|0;j=k;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;e=og(c)|0;if(e>>>0>4294967279)Wl(i);if(e>>>0<11){b[i+11>>0]=e;if(!e)d=i;else{d=i;g=6}}else{g=e+16&-16;d=Yi(g)|0;f[i>>2]=d;f[i+8>>2]=g|-2147483648;f[i+4>>2]=e;g=6}if((g|0)==6)Od(d|0,c|0,e|0)|0;b[d+e>>0]=0;f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;c=j+11|0;b[c>>0]=4;f[j>>2]=1701667182;b[j+4>>0]=0;d=f[a+4>>2]|0;if((d|0)!=0?(h=Yc(d,j,i)|0,(h|0)!=0):0)d=hh(a,f[h+40>>2]|0)|0;else d=-1;if((b[c>>0]|0)<0)Em(f[j>>2]|0);if((b[i+11>>0]|0)>=0){u=k;return d|0}Em(f[i>>2]|0);u=k;return d|0}function ve(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a=f[a+4>>2]|0;if(!a){m=0;return m|0}k=b[c+11>>0]|0;j=k<<24>>24<0;k=j?f[c+4>>2]|0:k&255;j=j?f[c>>2]|0:c;while(1){e=a+16|0;d=b[e+11>>0]|0;h=d<<24>>24<0;d=h?f[a+20>>2]|0:d&255;g=d>>>0>>0;c=g?d:k;if((c|0)!=0?(m=sh(j,h?f[e>>2]|0:e,c)|0,(m|0)!=0):0)if((m|0)<0)i=7;else i=8;else if(k>>>0>>0)i=7;else i=8;if((i|0)!=7)if((i|0)==8){i=0;c=k>>>0>>0?k:d;if((c|0)!=0?(l=sh(h?f[e>>2]|0:e,j,c)|0,(l|0)!=0):0){if((l|0)>=0){a=1;i=14;break}}else i=10;if((i|0)==10?(0,!g):0){a=1;i=14;break}a=a+4|0}a=f[a>>2]|0;if(!a){a=0;i=14;break}}if((i|0)==14)return a|0;return 0}function we(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;j=k+4|0;i=k;h=f[c+4>>2]|0;if(!h)ra(8295,8544,70,8714);g=f[c+8>>2]|0;if(!g)ra(8295,8544,70,8714);d=f[d>>2]|0;if((d|0)<0)e=-1073741824;else e=f[(f[f[c+16>>2]>>2]|0)+(d<<2)>>2]|0;d=f[c+20>>2]|0;c=f[d>>2]|0;if((f[d+4>>2]|0)-c>>2>>>0<=e>>>0)Wl(d);d=f[g+(f[c+(e<<2)>>2]<<2)>>2]|0;if(!(b[h+84>>0]|0))d=f[(f[h+68>>2]|0)+(d<<2)>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[i>>2]=d;g=b[h+24>>0]|0;f[j>>2]=f[i>>2];eb(h,j,g,a)|0;u=k;return}function xe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0;k=b+8|0;i=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;c=l;e=f[c>>2]|0;c=f[c+4>>2]|0;g=Ij(e|0,c|0,4,0)|0;d=I;if((k|0)<(d|0)|(k|0)==(d|0)&i>>>0>>0){a=0;return a|0}b=f[b>>2]|0;j=b+e|0;j=h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24;m=l;f[m>>2]=g;f[m+4>>2]=d;c=Ij(e|0,c|0,8,0)|0;d=I;if((k|0)<(d|0)|(k|0)==(d|0)&i>>>0>>0){m=0;return m|0}b=b+g|0;b=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;m=l;f[m>>2]=c;f[m+4>>2]=d;if((j|0)>(b|0)){m=0;return m|0}f[a+12>>2]=j;f[a+16>>2]=b;m=b+(1-j)|0;f[a+20>>2]=m;b=(m|0)/2|0;c=a+24|0;f[c>>2]=b;f[a+28>>2]=0-b;if(m&1|0){m=1;return m|0}f[c>>2]=b+-1;m=1;return m|0}function ye(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;i=f[b>>2]|0;e=f[a+12>>2]|0;if((i|0)>(e|0))ra(7739,6922,259,7763);d=f[c>>2]|0;if((d|0)>(e|0))ra(7777,6922,260,7763);a=0-e|0;if((i|0)<(a|0))ra(7801,6922,261,7763);if((d|0)<(a|0))ra(7826,6922,262,7763);if((d|i|0)>-1){h=1;a=1}else{a=(i|0)<1&(d|0)<1;h=a?-1:(i|0)>0?1:-1;a=a?-1:(d|0)>0?1:-1}g=X(e,h)|0;e=X(e,a)|0;f[b>>2]=(i<<1)-g;d=(f[c>>2]<<1)-e|0;f[c>>2]=d;i=(X(h,a)|0)>-1;a=f[b>>2]|0;if(i){f[b>>2]=0-d;i=0-a|0;f[c>>2]=i;i=f[b>>2]|0;i=i+g|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}else{f[b>>2]=d;i=a;f[c>>2]=i;i=f[b>>2]|0;i=i+g|0;i=(i|0)/2|0;f[b>>2]=i;b=f[c>>2]|0;b=b+e|0;b=(b|0)/2|0;f[c>>2]=b;return}}function ze(a,b){a=a|0;b=b|0;var c=0,d=0,e=Ka;if((b|0)!=1){if(b+-1&b)b=_a(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){Kb(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=_a(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;Kb(a,b);return}function Ae(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;g=a+4|0;e=f[g>>2]|0;c=f[a>>2]|0;d=(e-c|0)/116|0;if(d>>>0>>0){ad(a,b-d|0);return}if(d>>>0<=b>>>0)return;a=c+(b*116|0)|0;if((e|0)==(a|0))return;do{f[g>>2]=e+-116;c=f[e+-12>>2]|0;if(c|0){d=e+-8|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c)}c=f[e+-28>>2]|0;if(c|0){d=e+-24|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c)}c=f[e+-40>>2]|0;if(c|0){d=e+-36|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c)}_f(e+-112|0);e=f[g>>2]|0}while((e|0)!=(a|0));return}function Be(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=1072;e=a+60|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Ra[f[(f[b>>2]|0)+4>>2]&127](b);b=f[a+48>>2]|0;if(b|0){d=a+52|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}d=a+36|0;b=f[d>>2]|0;if(b|0){e=a+40|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ra[f[(f[c>>2]|0)+4>>2]&127](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Em(b)}f[a>>2]=968;b=f[a+16>>2]|0;if(b|0){d=a+20|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}d=f[a+4>>2]|0;if(!d)return;c=a+8|0;b=f[c>>2]|0;if((b|0)!=(d|0))f[c>>2]=b+(~((b+-4-d|0)>>>2)<<2);Em(d);return}function Ce(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{d=b+-4|0;f[h>>2]=d;e=f[d>>2]|0;f[d>>2]=0;if(e|0){d=e+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){d=b+12|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Em(c)}Em(b)}b=f[e+68>>2]|0;if(b|0){d=e+72|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}d=e+64|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b>>2]|0;if(c|0){d=b+4|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Em(c)}Em(b)}Em(e)}b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;Em(b);return}function De(a,c){a=a|0;c=c|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=a+8|0;e=f[l>>2]|0;g=b[e+24>>0]|0;k=g<<24>>24;n=k<<1;m=Bm(k>>>0>2147483647?-1:k<<1)|0;j=f[a+16>>2]|0;j=(f[f[j>>2]>>2]|0)+(f[j+48>>2]|0)|0;if(!c){Cm(m);return}if(g<<24>>24>0){e=0;g=0;h=0;while(1){a=0;i=h;while(1){d[m+(a<<1)>>1]=f[j+(i<<2)>>2];a=a+1|0;if((a|0)==(k|0))break;else i=i+1|0}Od((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+g|0,m|0,n|0)|0;e=e+1|0;if((e|0)==(c|0))break;else{g=g+n|0;h=k+h|0}}Cm(m);return}else{Od(f[f[e+64>>2]>>2]|0,m|0,n|0)|0;if((c|0)==1){Cm(m);return}else{a=1;e=0}do{e=e+n|0;Od((f[f[(f[l>>2]|0)+64>>2]>>2]|0)+e|0,m|0,n|0)|0;a=a+1|0}while((a|0)!=(c|0));Cm(m);return}}function Ee(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=a+8|0;d=f[k>>2]|0;e=b[d+24>>0]|0;j=e<<24>>24;m=j<<2;l=Bm(j>>>0>1073741823?-1:j<<2)|0;i=f[a+16>>2]|0;i=(f[f[i>>2]>>2]|0)+(f[i+48>>2]|0)|0;if(!c){Cm(l);return}if(e<<24>>24>0){d=0;e=0;g=0;while(1){a=0;h=g;while(1){f[l+(a<<2)>>2]=f[i+(h<<2)>>2];a=a+1|0;if((a|0)==(j|0))break;else h=h+1|0}Od((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,l|0,m|0)|0;d=d+1|0;if((d|0)==(c|0))break;else{e=e+m|0;g=j+g|0}}Cm(l);return}else{Od(f[f[d+64>>2]>>2]|0,l|0,m|0)|0;if((c|0)==1){Cm(l);return}else{a=1;d=0}do{d=d+m|0;Od((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+d|0,l|0,m|0)|0;a=a+1|0}while((a|0)!=(c|0));Cm(l);return}}function Fe(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{e=c+-4|0;f[h>>2]=e;g=f[e>>2]|0;f[e>>2]=0;if(g|0){e=g+88|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}Em(c)}c=f[g+68>>2]|0;if(c|0){e=g+72|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}e=g+64|0;c=f[e>>2]|0;f[e>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}Em(c)}Em(g)}c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Em(b);return}function Ge(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=Ka;n=u;u=u+32|0;j=n+16|0;m=n;k=a+8|0;l=b[(f[k>>2]|0)+24>>0]<<2;i=f[a+16>>2]|0;i=(f[f[i>>2]>>2]|0)+(f[i+48>>2]|0)|0;a=f[a+24>>2]|0;if((a|0)<=1)ra(6911,6922,60,7043);if((a|0)>=31)ra(7063,6922,61,7043);f[m>>2]=a;a=1<>2]=a+-1;a=a+-2|0;h=m+8|0;f[h>>2]=a;f[m+12>>2]=(a|0)/2|0;if(!c){u=n;return 1}d=0;e=0;g=0;while(1){o=$($(1.0)/$(a|0));fd(m,$($(f[i+(g<<2)>>2]|0)*o),$($(f[i+((g|1)<<2)>>2]|0)*o),j);Od((f[f[(f[k>>2]|0)+64>>2]>>2]|0)+e|0,j|0,l|0)|0;d=d+1|0;if((d|0)==(c|0))break;a=f[h>>2]|0;e=e+l|0;g=g+2|0}u=n;return 1}function He(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0;k=b+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;l=b+16|0;c=l;g=f[c>>2]|0;c=f[c+4>>2]|0;d=Ij(g|0,c|0,4,0)|0;e=I;if((k|0)<(e|0)|(k|0)==(e|0)&j>>>0>>0)return 0;i=(f[b>>2]|0)+g|0;i=h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24;b=l;f[b>>2]=d;f[b+4>>2]=e;b=Ij(g|0,c|0,8,0)|0;c=I;if((k|0)<(c|0)|(k|0)==(c|0)&j>>>0>>0)return 0;f[l>>2]=b;f[l+4>>2]=c;if(((i|0)%2|0|0)!=1)ra(7851,7884,68,8050);c=(_(i|0)|0)^31;b=c+1|0;if(!c)ra(6911,6922,60,7043);if(b>>>0<31){f[a>>2]=b;l=2<>2]=l+-1;l=l+-2|0;f[a+8>>2]=l;f[a+12>>2]=(l|0)/2|0;return (c+-1|0)>>>0<29|0}else ra(7063,6922,61,7043);return 0}function Ie(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+32|0;l=m+16|0;i=m+8|0;j=m;h=f[b>>2]|0;k=f[a+12>>2]<<1;if((h|0)>(k|0))ra(7160,7205,69,7389);e=f[b+4>>2]|0;if((e|0)>(k|0))ra(7410,7205,70,7389);g=f[c>>2]|0;if((g|0)>(k|0))ra(7455,7205,71,7389);b=f[c+4>>2]|0;if((b|0)>(k|0))ra(7500,7205,72,7389);if((h|0)<=-1)ra(7545,7205,74,7389);if((e|0)<=-1)ra(7567,7205,75,7389);if((g|0)<=-1)ra(7589,7205,76,7389);if((b|0)>-1){f[i>>2]=h;f[i+4>>2]=e;f[j>>2]=g;f[j+4>>2]=b;tc(l,a,i,j);f[d>>2]=f[l>>2];f[d+4>>2]=f[l+4>>2];u=m;return}else ra(7611,7205,77,7389)}function Je(a,b){a=a|0;b=b|0;var c=0,d=0,e=Ka;if((b|0)!=1){if(b+-1&b)b=_a(b)|0}else b=2;d=f[a+4>>2]|0;if(b>>>0>d>>>0){cc(a,b);return}if(b>>>0>=d>>>0)return;e=$((f[a+12>>2]|0)>>>0);c=~~$(W($(e/$(n[a+16>>2]))))>>>0;if(d>>>0>2&(d+-1&d|0)==0)c=1<<32-(_(c+-1|0)|0);else c=_a(c)|0;b=b>>>0>>0?c:b;if(b>>>0>=d>>>0)return;cc(a,b);return}function Ke(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=c&255;e=(d|0)!=0;a:do if(e&(a&3|0)!=0){g=c&255;while(1){if((b[a>>0]|0)==g<<24>>24){i=6;break a}a=a+1|0;d=d+-1|0;e=(d|0)!=0;if(!(e&(a&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(e)i=6;else d=0;b:do if((i|0)==6){g=c&255;if((b[a>>0]|0)!=g<<24>>24){e=X(h,16843009)|0;c:do if(d>>>0>3)while(1){h=f[a>>2]^e;if((h&-2139062144^-2139062144)&h+-16843009|0)break;a=a+4|0;d=d+-4|0;if(d>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!d){d=0;break}while(1){if((b[a>>0]|0)==g<<24>>24)break b;a=a+1|0;d=d+-1|0;if(!d){d=0;break}}}}while(0);return (d|0?a:0)|0}function Le(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;h=a+12|0;i=f[h>>2]|0;f[h>>2]=0;if(i|0){c=f[i+28>>2]|0;if(c|0)do{h=c;c=f[c>>2]|0;Le(h+8|0);Em(h)}while((c|0)!=0);h=i+20|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0)Em(c);c=f[i+8>>2]|0;if(c|0)do{g=c;c=f[c>>2]|0;h=g+8|0;d=f[g+20>>2]|0;if(d|0){e=g+24|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}if((b[h+11>>0]|0)<0)Em(f[h>>2]|0);Em(g)}while((c|0)!=0);c=f[i>>2]|0;f[i>>2]=0;if(c|0)Em(c);Em(i)}if((b[a+11>>0]|0)>=0)return;Em(f[a>>2]|0);return}function Me(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=u;u=u+32|0;i=j+16|0;c=j+8|0;d=j;g=a+8|0;if(f[g>>2]<<5>>>0>=b>>>0){u=j;return}f[i>>2]=0;h=i+4|0;f[h>>2]=0;e=i+8|0;f[e>>2]=0;if((b|0)<0)Wl(i);l=((b+-1|0)>>>5)+1|0;k=Yi(l<<2)|0;f[i>>2]=k;f[h>>2]=0;f[e>>2]=l;l=f[a>>2]|0;f[c>>2]=l;f[c+4>>2]=0;k=a+4|0;b=f[k>>2]|0;f[d>>2]=l+(b>>>5<<2);f[d+4>>2]=b&31;Gd(i,c,d);b=f[a>>2]|0;f[a>>2]=f[i>>2];f[i>>2]=b;a=f[k>>2]|0;f[k>>2]=f[h>>2];f[h>>2]=a;a=f[g>>2]|0;f[g>>2]=f[e>>2];f[e>>2]=a;if(b|0)Em(b);u=j;return}function Ne(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+212|0;j=a+216|0;d=f[k>>2]|0;if((f[j>>2]|0)==(d|0)){l=0;return l|0}g=a+4|0;e=0;a:while(1){a=f[d+(e*116|0)>>2]|0;if(((a|0)>=0?(d=f[g>>2]|0,h=f[d+8>>2]|0,(a|0)<((f[d+12>>2]|0)-h>>2|0)):0)?(i=f[h+(a<<2)>>2]|0,(Ma[f[(f[i>>2]|0)+24>>2]&127](i)|0)>0):0){a=0;do{if((Na[f[(f[i>>2]|0)+20>>2]&127](i,a)|0)==(c|0))break a;a=a+1|0}while((a|0)<(Ma[f[(f[i>>2]|0)+24>>2]&127](i)|0))}a=e+1|0;d=f[k>>2]|0;if(a>>>0>=(((f[j>>2]|0)-d|0)/116|0)>>>0){a=0;l=11;break}else e=a}if((l|0)==11)return a|0;l=f[k>>2]|0;l=(b[l+(e*116|0)+72>>0]|0)==0?0:l+(e*116|0)+4|0;return l|0}function Oe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=(f[b+4>>2]|0)-(f[b>>2]|0)|0;l=k>>2;g=a+8|0;e=f[(f[g>>2]|0)+40>>2]|0;m=Bm((e|0)>-1?e:-1)|0;h=c+8|0;if((k|0)<=0){c=1;Cm(m);return c|0}k=c+16|0;i=0;j=0;while(1){o=h;n=f[o>>2]|0;o=f[o+4>>2]|0;a=k;b=f[a>>2]|0;a=Ij(b|0,f[a+4>>2]|0,e|0,0)|0;d=I;if((o|0)<(d|0)|(o|0)==(d|0)&n>>>0>>0){b=0;a=5;break}Od(m|0,(f[c>>2]|0)+b|0,e|0)|0;o=k;f[o>>2]=a;f[o+4>>2]=d;Od((f[f[(f[g>>2]|0)+64>>2]>>2]|0)+j|0,m|0,e|0)|0;i=i+1|0;if((i|0)>=(l|0)){b=1;a=5;break}else j=j+e|0}if((a|0)==5){Cm(m);return b|0}return 0}function Pe(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;h=u;u=u+16|0;d=h;e=vd(a,d,b)|0;c=f[e>>2]|0;if(c|0){a=c;a=a+28|0;u=h;return a|0}g=Yi(40)|0;Df(g+16|0,b);c=g+28|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;c=f[d>>2]|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=c;f[e>>2]=g;c=f[f[a>>2]>>2]|0;if(!c)c=g;else{f[a>>2]=c;c=f[e>>2]|0}wc(f[a+4>>2]|0,c);a=a+8|0;f[a>>2]=(f[a>>2]|0)+1;a=g;a=a+28|0;u=h;return a|0}function Qe(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;i=j+12|0;h=j;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;e=og(d)|0;if(e>>>0>4294967279)Wl(h);if(e>>>0<11){b[h+11>>0]=e;if(!e)a=h;else{a=h;g=6}}else{g=e+16&-16;a=Yi(g)|0;f[h>>2]=a;f[h+8>>2]=g|-2147483648;f[h+4>>2]=e;g=6}if((g|0)==6)Od(a|0,d|0,e|0)|0;b[a+e>>0]=0;Af(c,h,i)|0;e=i+11|0;a=b[e>>0]|0;d=a<<24>>24<0?f[i>>2]|0:i;if((b[h+11>>0]|0)<0){Em(f[h>>2]|0);a=b[e>>0]|0}if(a<<24>>24>=0){u=j;return d|0}Em(f[i>>2]|0);u=j;return d|0}function Re(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=a+4|0;h=f[a>>2]|0;k=(f[i>>2]|0)-h|0;d=(k|0)/12|0;c=d+1|0;if(c>>>0>357913941)Wl(a);j=a+8|0;g=((f[j>>2]|0)-h|0)/12|0;e=g<<1;e=g>>>0<178956970?(e>>>0>>0?c:e):357913941;do if(e)if(e>>>0>357913941){a=sa(8)|0;Fk(a,12569);f[a>>2]=3708;wa(a|0,856,80)}else{g=Yi(e*12|0)|0;break}else g=0;while(0);d=g+(d*12|0)|0;f[d>>2]=f[b>>2];f[d+4>>2]=f[b+4>>2];f[d+8>>2]=f[b+8>>2];c=d+(((k|0)/-12|0)*12|0)|0;if((k|0)>0)Od(c|0,h|0,k|0)|0;f[a>>2]=c;f[i>>2]=d+12;f[j>>2]=g+(e*12|0);if(!h)return;Em(h);return}function Se(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;o=u;u=u+16|0;n=o;if((-18-c|0)>>>0>>0)Wl(a);if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){l=d+c|0;k=c<<1;l=l>>>0>>0?k:l;l=l>>>0<11?11:l+16&-16}else l=-17;k=Yi(l)|0;if(g|0)wk(k,m,g)|0;if(i|0)wk(k+g|0,j,i)|0;d=e-h|0;e=d-g|0;if(e|0)wk(k+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)Em(m);f[a>>2]=k;f[a+8>>2]=l|-2147483648;m=d+i|0;f[a+4>>2]=m;b[n>>0]=0;tl(k+m|0,n);u=o;return}function Te(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;g=d+16|0;e=f[g>>2]|0;if(!e)if(!(wh(d)|0)){e=f[g>>2]|0;h=5}else e=0;else h=5;a:do if((h|0)==5){j=d+20|0;i=f[j>>2]|0;g=i;if((e-i|0)>>>0>>0){e=Oa[f[d+36>>2]&31](d,a,c)|0;break}b:do if((b[d+75>>0]|0)>-1){i=c;while(1){if(!i){h=g;d=0;g=c;e=a;break b}e=i+-1|0;if((b[a+e>>0]|0)==10)break;else i=e}e=Oa[f[d+36>>2]&31](d,a,i)|0;if(e>>>0>>0)break a;h=f[j>>2]|0;d=i;g=c-i|0;e=a+i|0}else{h=g;d=0;g=c;e=a}while(0);Od(h|0,e|0,g|0)|0;f[j>>2]=(f[j>>2]|0)+g;e=d+g|0}while(0);return e|0}function Ue(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0;j=u;u=u+16|0;i=j;do if(((h[(f[a+4>>2]|0)+36>>0]|0)<<8&65535)>511){k=d+8|0;l=f[k+4>>2]|0;g=d+16|0;e=g;c=f[e>>2]|0;e=f[e+4>>2]|0;if((l|0)>(e|0)|((l|0)==(e|0)?(f[k>>2]|0)>>>0>c>>>0:0)){l=b[(f[d>>2]|0)+c>>0]|0;k=Ij(c|0,e|0,1,0)|0;c=g;f[c>>2]=k;f[c+4>>2]=I;c=l&255;f[a+24>>2]=c;break}else{l=0;u=j;return l|0}}else c=f[a+24>>2]|0;while(0);f[i>>2]=912;f[i+4>>2]=-1;hl(i,c);l=Ug(i,f[a+16>>2]|0)|0;u=j;return l|0}function Ve(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=a+8|0;d=f[l>>2]|0;k=a+4|0;c=f[k>>2]|0;if(d-c>>2>>>0>=b>>>0){Cf(c|0,0,b<<2|0)|0;f[k>>2]=c+(b<<2);return}j=f[a>>2]|0;i=c-j|0;h=i>>2;c=h+b|0;if(c>>>0>1073741823)Wl(a);g=d-j|0;d=g>>1;d=g>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(d)if(d>>>0>1073741823){a=sa(8)|0;Fk(a,12569);f[a>>2]=3708;wa(a|0,856,80)}else{g=Yi(d<<2)|0;break}else g=0;while(0);e=g+(h<<2)|0;Cf(e|0,0,b<<2|0)|0;c=e+(0-h<<2)|0;if((i|0)>0)Od(c|0,j|0,i|0)|0;f[a>>2]=c;f[k>>2]=e+(b<<2);f[l>>2]=g+(d<<2);if(!j)return;Em(j);return}function We(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;i=a+212|0;h=a+216|0;c=f[i>>2]|0;a:do if((f[h>>2]|0)!=(c|0)){j=a+4|0;d=0;b:while(1){c=f[c+(d*116|0)>>2]|0;if(((c|0)>=0?(k=f[j>>2]|0,e=f[k+8>>2]|0,(c|0)<((f[k+12>>2]|0)-e>>2|0)):0)?(g=f[e+(c<<2)>>2]|0,(Ma[f[(f[g>>2]|0)+24>>2]&127](g)|0)>0):0){c=0;do{if((Na[f[(f[g>>2]|0)+20>>2]&127](g,c)|0)==(b|0))break b;c=c+1|0}while((c|0)<(Ma[f[(f[g>>2]|0)+24>>2]&127](g)|0))}d=d+1|0;c=f[i>>2]|0;if(d>>>0>=(((f[h>>2]|0)-c|0)/116|0)>>>0)break a}k=(f[i>>2]|0)+(d*116|0)+76|0;return k|0}while(0);k=a+184|0;return k|0}function Xe(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;g=f[a+4>>2]|0;h=a+8|0;b=f[h>>2]|0;if((b|0)!=(g|0))do{f[h>>2]=b+-116;c=f[b+-12>>2]|0;if(c|0){e=b+-8|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}c=f[b+-28>>2]|0;if(c|0){e=b+-24|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}c=f[b+-40>>2]|0;if(c|0){e=b+-36|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}_f(b+-112|0);b=f[h>>2]|0}while((b|0)!=(g|0));b=f[a>>2]|0;if(!b)return;Em(b);return}function Ye(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=f[a>>2]|0;if(!b)return;h=a+4|0;c=f[h>>2]|0;if((c|0)!=(b|0)){do{f[h>>2]=c+-116;d=f[c+-12>>2]|0;if(d|0){g=c+-8|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);Em(d)}d=f[c+-28>>2]|0;if(d|0){g=c+-24|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);Em(d)}d=f[c+-40>>2]|0;if(d|0){g=c+-36|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);Em(d)}_f(c+-112|0);c=f[h>>2]|0}while((c|0)!=(b|0));b=f[a>>2]|0}Em(b);return}function Ze(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+32|0;d=g;if((h[(f[a+4>>2]|0)+36>>0]<<8&65535)>511?!(Ma[f[(f[a>>2]|0)+52>>2]&127](a)|0):0){e=0;u=g;return e|0}f[d>>2]=940;f[d+4>>2]=-1;c=d+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;Ah(d,f[a+24>>2]|0,f[a+28>>2]|0,b[(f[a+8>>2]|0)+24>>0]|0,$(n[a+32>>2]));e=Ug(d,f[a+16>>2]|0)|0;f[d>>2]=940;a=f[c>>2]|0;if(a|0){c=d+12|0;d=f[c>>2]|0;if((d|0)!=(a|0))f[c>>2]=d+(~((d+-4-a|0)>>>2)<<2);Em(a)}u=g;return e|0}function _e(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;j=a+8|0;e=f[j>>2]|0;k=a+4|0;d=f[k>>2]|0;if((e-d|0)>>>0>=c>>>0){do{b[d>>0]=0;d=(f[k>>2]|0)+1|0;f[k>>2]=d;c=c+-1|0}while((c|0)!=0);return}g=f[a>>2]|0;h=d-g|0;d=h+c|0;if((d|0)<0)Wl(a);g=e-g|0;i=g<<1;d=g>>>0<1073741823?(i>>>0>>0?d:i):2147483647;if(!d)e=0;else e=Yi(d)|0;i=e+h|0;h=e+d|0;d=i;g=i;do{b[d>>0]=0;d=g+1|0;g=d;c=c+-1|0}while((c|0)!=0);d=f[a>>2]|0;e=(f[k>>2]|0)-d|0;c=i+(0-e)|0;if((e|0)>0)Od(c|0,d|0,e|0)|0;f[a>>2]=c;f[k>>2]=g;f[j>>2]=h;if(!d)return;Em(d);return}function $e(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;h=a+140|0;b=f[h>>2]|0;if((b|0)<=0){a=1;return a|0}d=b<<4;d=Bm(b>>>0>268435455|d>>>0>4294967291?-1:d+4|0)|0;f[d>>2]=b;d=d+4|0;c=d+(b<<4)|0;b=d;do{cm(b);b=b+16|0}while((b|0)!=(c|0));g=a+136|0;e=f[g>>2]|0;f[g>>2]=d;if(e|0){c=e+-4|0;b=f[c>>2]|0;if(b|0){b=e+(b<<4)|0;do{b=b+-16|0;Jm(b)}while((b|0)!=(e|0))}Cm(c)}if((f[h>>2]|0)<=0){a=1;return a|0}b=0;while(1){if(!(ed((f[g>>2]|0)+(b<<4)|0,a)|0)){b=0;c=13;break}b=b+1|0;if((b|0)>=(f[h>>2]|0)){b=1;c=13;break}}if((c|0)==13)return b|0;return 0}function af(){var a=0,b=0,c=0,d=0,e=0,g=0,h=0,i=0;e=u;u=u+48|0;h=e+32|0;c=e+24|0;i=e+16|0;g=e;e=e+36|0;a=Vi()|0;if(a|0?(d=f[a>>2]|0,d|0):0){b=d+48|0;a=f[b>>2]|0;b=f[b+4>>2]|0;if(!((a&-256|0)==1126902528&(b|0)==1129074247)){f[c>>2]=f[899];xj(15517,c)}if((a|0)==1126902529&(b|0)==1129074247)a=f[d+44>>2]|0;else a=d+80|0;f[e>>2]=a;d=f[d>>2]|0;a=f[d+4>>2]|0;d=Oa[f[(f[194]|0)+16>>2]&31](776,d,e)|0;b=f[899]|0;if(d){i=f[e>>2]|0;i=Ma[f[(f[i>>2]|0)+8>>2]&127](i)|0;f[g>>2]=b;f[g+4>>2]=a;f[g+8>>2]=i;xj(15431,g)}else{f[i>>2]=b;f[i+4>>2]=a;xj(15476,i)}}xj(15555,h)}function bf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;h=j+12|0;g=j;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;e=og(d)|0;if(e>>>0>4294967279)Wl(g);if(e>>>0<11){b[g+11>>0]=e;if(!e)a=g;else{a=g;i=6}}else{i=e+16&-16;a=Yi(i)|0;f[g>>2]=a;f[g+8>>2]=i|-2147483648;f[g+4>>2]=e;i=6}if((i|0)==6)Od(a|0,d|0,e|0)|0;b[a+e>>0]=0;a=Af(c,g,h)|0;if((b[g+11>>0]|0)<0)Em(f[g>>2]|0);if((b[h+11>>0]|0)>=0){u=j;return a|0}Em(f[h>>2]|0);u=j;return a|0}function cf(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;h=f[a>>2]|0;f[a>>2]=0;if(!h)return;a=f[h+28>>2]|0;if(a|0)do{c=a;a=f[a>>2]|0;d=c+8|0;cf(c+20|0);if((b[d+11>>0]|0)<0)Em(f[d>>2]|0);Em(c)}while((a|0)!=0);g=h+20|0;a=f[g>>2]|0;f[g>>2]=0;if(a|0)Em(a);a=f[h+8>>2]|0;if(a|0)do{e=a;a=f[a>>2]|0;g=e+8|0;c=f[e+20>>2]|0;if(c|0){d=e+24|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Em(c)}if((b[g+11>>0]|0)<0)Em(f[g>>2]|0);Em(e)}while((a|0)!=0);a=f[h>>2]|0;f[h>>2]=0;if(a|0)Em(a);Em(h);return}function df(a){a=a|0;var b=0,c=0,d=0;b=f[a+92>>2]|0;if(b|0){d=a+96|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+76>>2]|0;if(b|0){d=a+80|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+52>>2]|0;if(b|0){d=a+56|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}f[a+4>>2]=2404;b=f[a+24>>2]|0;if(b|0)Em(b);b=f[a+12>>2]|0;if(!b)return;Em(b);return}function ef(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;i=j;h=c+11|0;e=b[h>>0]|0;if(e<<24>>24<0)g=f[c+4>>2]|0;else g=e&255;while(1){if(e<<24>>24<0)e=f[c>>2]|0;else e=c;f[i>>2]=d;e=fj(e,g+1|0,15428,i)|0;if((e|0)>-1)if(e>>>0>g>>>0)g=e;else break;else g=g<<1|1;Yf(c,g,0);e=b[h>>0]|0}Yf(c,e,0);f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];e=0;while(1){if((e|0)==3)break;f[c+(e<<2)>>2]=0;e=e+1|0}u=j;return}function ff(a,c,d){a=a|0;c=c|0;d=d|0;do if(a){if(c>>>0<128){b[a>>0]=c;a=1;break}d=(Am()|0)+188|0;if(!(f[f[d>>2]>>2]|0))if((c&-128|0)==57216){b[a>>0]=c;a=1;break}else{a=rm()|0;f[a>>2]=84;a=-1;break}if(c>>>0<2048){b[a>>0]=c>>>6|192;b[a+1>>0]=c&63|128;a=2;break}if(c>>>0<55296|(c&-8192|0)==57344){b[a>>0]=c>>>12|224;b[a+1>>0]=c>>>6&63|128;b[a+2>>0]=c&63|128;a=3;break}if((c+-65536|0)>>>0<1048576){b[a>>0]=c>>>18|240;b[a+1>>0]=c>>>12&63|128;b[a+2>>0]=c>>>6&63|128;b[a+3>>0]=c&63|128;a=4;break}else{a=rm()|0;f[a>>2]=84;a=-1;break}}else a=1;while(0);return a|0}function gf(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2448;b=a+84|0;c=a+4|0;d=c+80|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[b>>2]=-1;f[a+88>>2]=-1;f[a+92>>2]=-1;b=a+152|0;c=a+96|0;d=c+56|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));n[b>>2]=$(1.0);b=a+224|0;c=a+156|0;d=c+68|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));zi(b);d=a+372|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[a+392>>2]=-1;f[a+396>>2]=-1;f[a+400>>2]=2;f[a+404>>2]=7;d=a+408|0;f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;f[d+12>>2]=0;f[d+16>>2]=0;f[d+20>>2]=0;return}function hf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+4|0;i=f[a>>2]|0;l=(f[j>>2]|0)-i|0;h=l>>2;c=h+1|0;if(c>>>0>1073741823)Wl(a);k=a+8|0;g=(f[k>>2]|0)-i|0;d=g>>1;d=g>>2>>>0<536870911?(d>>>0>>0?c:d):1073741823;do if(d)if(d>>>0>1073741823){a=sa(8)|0;Fk(a,12569);f[a>>2]=3708;wa(a|0,856,80)}else{g=Yi(d<<2)|0;break}else g=0;while(0);e=g+(h<<2)|0;f[e>>2]=f[b>>2];c=e+(0-h<<2)|0;if((l|0)>0)Od(c|0,i|0,l|0)|0;f[a>>2]=c;f[j>>2]=e+4;f[k>>2]=g+(d<<2);if(!i)return;Em(i);return}function jf(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0;i=a+8|0;d=f[i>>2]|0;if((d|0)<0){j=0;return j|0}j=a+4|0;a=f[j>>2]|0;e=a+4|0;c=f[e>>2]|0;b=f[a>>2]|0;g=c-b>>2;if(d>>>0<=g>>>0){if(d>>>0>>0?(h=b+(d<<2)|0,(c|0)!=(h|0)):0)f[e>>2]=c+(~((c+-4-h|0)>>>2)<<2)}else{Ve(a,d-g|0);d=f[i>>2]|0}if((d|0)<=0){j=1;return j|0}e=f[j>>2]|0;a=f[e>>2]|0;c=(f[e+4>>2]|0)-a>>2;b=0;while(1){if(c>>>0<=b>>>0){b=10;break}f[a+(b<<2)>>2]=b;b=b+1|0;if((b|0)>=(d|0)){a=1;b=12;break}}if((b|0)==10)Wl(e);else if((b|0)==12)return a|0;return 0}function kf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0;k=u;u=u+80|0;j=k;i=k+56|0;g=k+40|0;e=j;d=e+40|0;do{f[e>>2]=f[c>>2];e=e+4|0;c=c+4|0}while((e|0)<(d|0));yb(g,j,i);c=f[g>>2]|0;if(!c){c=g+4|0;if((b[c+11>>0]|0)<0)Em(f[c>>2]|0);i=h[i+7>>0]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=i;j=j+24|0;Jm(j);u=k;return}else{f[a>>2]=c;c=g+4|0;Df(a+4|0,c);if((b[c+11>>0]|0)<0)Em(f[c>>2]|0);j=j+24|0;Jm(j);u=k;return}}function lf(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;c=f[a+28>>2]|0;if(c|0)do{d=c;c=f[c>>2]|0;g=d+8|0;h=d+20|0;e=f[h>>2]|0;f[h>>2]=0;if(e|0){lf(e);Em(e)}if((b[g+11>>0]|0)<0)Em(f[g>>2]|0);Em(d)}while((c|0)!=0);h=a+20|0;c=f[h>>2]|0;f[h>>2]=0;if(c|0)Em(c);c=f[a+8>>2]|0;if(c|0)do{g=c;c=f[c>>2]|0;h=g+8|0;d=f[g+20>>2]|0;if(d|0){e=g+24|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}if((b[h+11>>0]|0)<0)Em(f[h>>2]|0);Em(g)}while((c|0)!=0);c=f[a>>2]|0;f[a>>2]=0;if(!c)return;Em(c);return}function mf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;e=u;u=u+16|0;d=e;if(!c){a=0;u=e;return a|0}i=c+4|0;g=(f[i>>2]|0)-(f[c>>2]|0)>>2;b[d>>0]=0;Wd(a,g,d);g=c+24|0;h=c+28|0;j=(f[h>>2]|0)-(f[g>>2]|0)>>2;b[d>>0]=0;Wd(a+12|0,j,d);od(a+28|0,(f[i>>2]|0)-(f[c>>2]|0)>>2,2668);fg(a+52|0,(f[h>>2]|0)-(f[g>>2]|0)>>2);fg(a+40|0,(f[h>>2]|0)-(f[g>>2]|0)>>2);f[a+64>>2]=c;b[a+24>>0]=1;a=1;u=e;return a|0}function nf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0.0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+32|0;h=k;i=k+8|0;p[h>>3]=0.0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;g=og(d)|0;if(g>>>0>4294967279)Wl(i);if(g>>>0<11){b[i+11>>0]=g;if(!g)a=i;else{a=i;j=6}}else{j=g+16&-16;a=Yi(j)|0;f[i>>2]=a;f[i+8>>2]=j|-2147483648;f[i+4>>2]=g;j=6}if((j|0)==6)Od(a|0,d|0,g|0)|0;b[a+g>>0]=0;oe(c,i,h)|0;e=+p[h>>3];if((b[i+11>>0]|0)>=0){u=k;return +e}Em(f[i>>2]|0);u=k;return +e}function of(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j+12|0;h=j;f[g>>2]=0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;e=og(d)|0;if(e>>>0>4294967279)Wl(h);if(e>>>0<11){b[h+11>>0]=e;if(!e)a=h;else{a=h;i=6}}else{i=e+16&-16;a=Yi(i)|0;f[h>>2]=a;f[h+8>>2]=i|-2147483648;f[h+4>>2]=e;i=6}if((i|0)==6)Od(a|0,d|0,e|0)|0;b[a+e>>0]=0;Tf(c,h,g)|0;a=f[g>>2]|0;if((b[h+11>>0]|0)>=0){u=j;return a|0}Em(f[h>>2]|0);u=j;return a|0}function pf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+48|0;h=j+4|0;i=j;if((d|0)!=1){f[a>>2]=0;u=j;return}g=f[b+12>>2]|0;d=f[b+4>>2]|0;b=h;e=b+36|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(e|0));Qd(i,c,g,d,h);e=f[h+24>>2]|0;if(e|0){b=h+28|0;d=f[b>>2]|0;if((d|0)!=(e|0))f[b>>2]=d+(~((d+-4-e|0)>>>2)<<2);Em(e)}f[a>>2]=f[i>>2];u=j;return}function qf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+32|0;g=j;h=j+8|0;p[g>>3]=0.0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;e=og(d)|0;if(e>>>0>4294967279)Wl(h);if(e>>>0<11){b[h+11>>0]=e;if(!e)a=h;else{a=h;i=6}}else{i=e+16&-16;a=Yi(i)|0;f[h>>2]=a;f[h+8>>2]=i|-2147483648;f[h+4>>2]=e;i=6}if((i|0)==6)Od(a|0,d|0,e|0)|0;b[a+e>>0]=0;a=oe(c,h,g)|0;if((b[h+11>>0]|0)>=0){u=j;return a|0}Em(f[h>>2]|0);u=j;return a|0}function rf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;g=j+12|0;h=j;f[g>>2]=0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;e=og(d)|0;if(e>>>0>4294967279)Wl(h);if(e>>>0<11){b[h+11>>0]=e;if(!e)a=h;else{a=h;i=6}}else{i=e+16&-16;a=Yi(i)|0;f[h>>2]=a;f[h+8>>2]=i|-2147483648;f[h+4>>2]=e;i=6}if((i|0)==6)Od(a|0,d|0,e|0)|0;b[a+e>>0]=0;a=Tf(c,h,g)|0;if((b[h+11>>0]|0)>=0){u=j;return a|0}Em(f[h>>2]|0);u=j;return a|0}function sf(a,b){a=a|0;b=b|0;var c=0,d=0;c=a+16|0;a=f[b>>2]|0;f[b>>2]=0;d=f[c>>2]|0;f[c>>2]=a;if(!d)return;c=d+88|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){a=f[b+8>>2]|0;if(a|0){c=b+12|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;Em(a)}Em(b)}b=f[d+68>>2]|0;if(b|0){c=d+72|0;a=f[c>>2]|0;if((a|0)!=(b|0))f[c>>2]=a+(~((a+-4-b|0)>>>2)<<2);Em(b)}c=d+64|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0){a=f[b>>2]|0;if(a|0){c=b+4|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;Em(a)}Em(b)}Em(d);return}function tf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;e=c+8|0;i=f[e+4>>2]|0;h=c+16|0;d=h;g=f[d>>2]|0;d=f[d+4>>2]|0;if(!((i|0)>(d|0)|((i|0)==(d|0)?(f[e>>2]|0)>>>0>g>>>0:0))){i=0;return i|0}e=b[(f[c>>2]|0)+g>>0]|0;g=Ij(g|0,d|0,1,0)|0;i=h;f[i>>2]=g;f[i+4>>2]=I;do if(e<<24>>24<0)if(tf(a,c)|0){d=a;d=tj(f[d>>2]|0,f[d+4>>2]|0,7)|0;i=I;h=a;f[h>>2]=d;f[h+4>>2]=i;d=d|e&127;e=i;break}else{i=0;return i|0}else{d=e&255;e=0}while(0);i=a;f[i>>2]=d;f[i+4>>2]=e;i=1;return i|0}function uf(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=u;u=u+128|0;g=m+124|0;l=m;h=l;i=3084;j=h+124|0;do{f[h>>2]=f[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((c+-1|0)>>>0>2147483646)if(!c){c=1;k=4}else{g=rm()|0;f[g>>2]=75;g=-1}else{g=a;k=4}if((k|0)==4){k=-2-g|0;k=c>>>0>k>>>0?k:c;f[l+48>>2]=k;h=l+20|0;f[h>>2]=g;f[l+44>>2]=g;g=g+k|0;c=l+16|0;f[c>>2]=g;f[l+28>>2]=g;g=be(l,d,e)|0;if(k){d=f[h>>2]|0;b[d+(((d|0)==(f[c>>2]|0))<<31>>31)>>0]=0}}u=m;return g|0}function vf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;k=u;u=u+16|0;j=k;h=a+11|0;e=b[h>>0]|0;g=e<<24>>24<0;if(g)i=(f[a+8>>2]&2147483647)+-1|0;else i=10;do if(i>>>0>=d>>>0){if(g)e=f[a>>2]|0;else e=a;sk(e,c,d)|0;b[j>>0]=0;tl(e+d|0,j);if((b[h>>0]|0)<0){f[a+4>>2]=d;break}else{b[h>>0]=d;break}}else{if(g)e=f[a+4>>2]|0;else e=e&255;Se(a,i,d-i|0,e,0,e,d,c)}while(0);u=k;return a|0}function wf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0;d=f[a>>2]|0;if(!d){a=0;return a|0}e=f[c>>2]|0;if(!e){a=0;return a|0}g=f[e>>2]|0;Lf(d,g,(f[e+4>>2]|0)-g|0,0)|0;b[a+24>>0]=b[c+24>>0]|0;f[a+28>>2]=f[c+28>>2];b[a+32>>0]=b[c+32>>0]|0;e=c+40|0;d=f[e+4>>2]|0;g=a+40|0;f[g>>2]=f[e>>2];f[g+4>>2]=d;g=c+48|0;d=f[g+4>>2]|0;e=a+48|0;f[e>>2]=f[g>>2];f[e+4>>2]=d;f[a+56>>2]=f[c+56>>2];c=c+8|0;a=a+8|0;f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];a=1;return a|0}function xf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;k=l;if(c|0){h=a+11|0;e=b[h>>0]|0;if(e<<24>>24<0){j=f[a+4>>2]|0;g=(f[a+8>>2]&2147483647)+-1|0}else{j=e&255;g=10}i=j+c|0;if((g-j|0)>>>0>>0){Kf(a,g,i-g|0,j,j,0,0);e=b[h>>0]|0}if(e<<24>>24<0)e=f[a>>2]|0;else e=a;rj(e+j|0,c,d)|0;if((b[h>>0]|0)<0)f[a+4>>2]=i;else b[h>>0]=i;b[k>>0]=0;tl(e+i|0,k)}u=l;return a|0}function yf(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=2220;e=a+48|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Ra[f[(f[b>>2]|0)+4>>2]&127](b);f[a>>2]=2600;b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}d=a+8|0;b=f[d>>2]|0;if(!b){Em(a);return}e=a+12|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ra[f[(f[c>>2]|0)+4>>2]&127](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Em(b);Em(a);return}function zf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=a+4|0;if((Ma[f[(f[b>>2]|0)+20>>2]&127](b)|0)<=0){b=1;return b|0}d=0;while(1){a=f[(f[c>>2]|0)+4>>2]|0;a=ci(a,Na[f[(f[b>>2]|0)+24>>2]&127](b,d)|0)|0;if((a|0)==-1){a=0;c=6;break}e=f[(f[b>>2]|0)+28>>2]|0;a=lh(f[c>>2]|0,a)|0;d=d+1|0;if(!(Na[e&127](b,a)|0)){a=0;c=6;break}if((d|0)>=(Ma[f[(f[b>>2]|0)+20>>2]&127](b)|0)){a=1;c=6;break}}if((c|0)==6)return a|0;return 0}function Af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;b=Ib(a,b)|0;if(!b){c=0;return c|0}e=b+20|0;d=f[e>>2]|0;a=b+24|0;b=f[a>>2]|0;if((d|0)==(b|0)){c=0;return c|0}Yf(c,b-d|0,0);d=Lh(c,0)|0;c=f[e>>2]|0;Od(d|0,c|0,(f[a>>2]|0)-c|0)|0;c=1;return c|0}function Bf(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;do if(!(dl(a,f[c+8>>2]|0,g)|0)){if(dl(a,f[c>>2]|0,g)|0){a=c+32|0;if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[a>>2]=e;f[h>>2]=d;e=c+40|0;f[e>>2]=(f[e>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1;f[c+44>>2]=4;break}if((e|0)==1)f[a>>2]=1}}else Ai(0,c,d,e);while(0);return}function Cf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}e=h&-4|0;g=e-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(g|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(e|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(h|0)){b[a>>0]=c;a=a+1|0}return h-d|0}function Df(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;g=u;u=u+16|0;e=g;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0){d=f[c>>2]|0;c=f[c+4>>2]|0;if(c>>>0>4294967279)Wl(a);if(c>>>0<11)b[a+11>>0]=c;else{i=c+16&-16;h=Yi(i)|0;f[a>>2]=h;f[a+8>>2]=i|-2147483648;f[a+4>>2]=c;a=h}wk(a,d,c)|0;b[e>>0]=0;tl(a+c|0,e)}else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}u=g;return}function Ef(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;if(!a){d=1;return d|0}j=d+8|0;k=f[j+4>>2]|0;i=d+16|0;g=i;h=f[g>>2]|0;g=f[g+4>>2]|0;if(!((k|0)>(g|0)|((k|0)==(g|0)?(f[j>>2]|0)>>>0>h>>>0:0))){k=0;return k|0}k=b[(f[d>>2]|0)+h>>0]|0;h=Ij(h|0,g|0,1,0)|0;j=i;f[j>>2]=h;f[j+4>>2]=I;switch(k<<24>>24){case 0:{k=Nb(a,c,d,e)|0;return k|0}case 1:{k=gc(a,d,e)|0;return k|0}default:{k=0;return k|0}}return 0}function Ff(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;b[c+53>>0]=1;do if((f[c+4>>2]|0)==(e|0)){b[c+52>>0]=1;h=c+16|0;a=f[h>>2]|0;k=c+54|0;j=c+48|0;i=c+24|0;e=c+36|0;if(!a){f[h>>2]=d;f[i>>2]=g;f[e>>2]=1;if(!((f[j>>2]|0)==1&(g|0)==1))break;b[k>>0]=1;break}if((a|0)!=(d|0)){f[e>>2]=(f[e>>2]|0)+1;b[k>>0]=1;break}e=f[i>>2]|0;if((e|0)==2){f[i>>2]=g;e=g}if((f[j>>2]|0)==1&(e|0)==1)b[k>>0]=1}while(0);return}function Gf(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=2220;e=a+48|0;b=f[e>>2]|0;f[e>>2]=0;if(b|0)Ra[f[(f[b>>2]|0)+4>>2]&127](b);f[a>>2]=2600;b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}e=a+8|0;b=f[e>>2]|0;if(!b)return;d=a+12|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{a=c+-4|0;f[d>>2]=a;c=f[a>>2]|0;f[a>>2]=0;if(c|0)Ra[f[(f[c>>2]|0)+4>>2]&127](c);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}Em(b);return}function Hf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=u;u=u+16|0;g=h;f[a>>2]=c;f[a+68>>2]=0;f[a+72>>2]=0;bd(g,c);e=a+4|0;i=f[g>>2]|0;f[g>>2]=0;d=f[e>>2]|0;f[e>>2]=i;if(d){Sf(d);Em(d);d=f[g>>2]|0;f[g>>2]=0;if(d|0){Sf(d);Em(d)}}else f[g>>2]=0;if(!(f[e>>2]|0)){i=0;u=h;return i|0}i=((f[c+100>>2]|0)-(f[c+96>>2]|0)|0)/12|0;b[g>>0]=0;Wd(a+56|0,i,g);i=1;u=h;return i|0}function If(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1024;c=a+16|0;d=f[c>>2]|0;f[c>>2]=0;if(!d)return;c=d+88|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a+8>>2]|0;if(b|0){c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Em(b)}Em(a)}a=f[d+68>>2]|0;if(a|0){c=d+72|0;b=f[c>>2]|0;if((b|0)!=(a|0))f[c>>2]=b+(~((b+-4-a|0)>>>2)<<2);Em(a)}c=d+64|0;a=f[c>>2]|0;f[c>>2]=0;if(a|0){b=f[a>>2]|0;if(b|0){c=a+4|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Em(b)}Em(a)}Em(d);return}function Jf(a,b){a=a|0;b=b|0;if(!b)return;else{Jf(a,f[b>>2]|0);Jf(a,f[b+4>>2]|0);Pf(b+20|0,f[b+24>>2]|0);Em(b);return}}function Kf(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-c|0)>>>0>>0)Wl(a);if((b[a+11>>0]|0)<0)l=f[a>>2]|0;else l=a;if(c>>>0<2147483623){k=d+c|0;j=c<<1;k=k>>>0>>0?j:k;k=k>>>0<11?11:k+16&-16}else k=-17;j=Yi(k)|0;if(g|0)wk(j,l,g)|0;d=e-h-g|0;if(d|0)wk(j+g+i|0,l+g+h|0,d)|0;if((c|0)!=10)Em(l);f[a>>2]=j;f[a+8>>2]=k|-2147483648;return}function Lf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)<0){a=0;return a|0}do if(!b){e=a+4|0;d=f[e>>2]|0;b=f[a>>2]|0;g=d-b|0;if(c>>>0>g>>>0){_e(a,c-g|0);break}if(c>>>0>>0?(h=b+c|0,(d|0)!=(h|0)):0)f[e>>2]=h}else zd(a,b,b+c|0);while(0);a=a+24|0;h=a;h=Ij(f[h>>2]|0,f[h+4>>2]|0,1,0)|0;f[a>>2]=h;f[a+4>>2]=I;a=1;return a|0}function Mf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=a+64|0;if((f[h>>2]|0)==0?(g=Yi(32)|0,gj(g),d=f[h>>2]|0,f[h>>2]=g,d|0):0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Em(e)}Em(d)}e=Uh(f[a+28>>2]|0)|0;e=X(b[a+24>>0]|0,e)|0;d=((e|0)<0)<<31>>31;i=f[h>>2]|0;g=Xi(e|0,d|0,c|0,0)|0;if(!(Lf(i,0,g,I)|0)){i=0;return i|0}Jg(a,f[h>>2]|0,e,d,0,0);f[a+80>>2]=c;i=1;return i|0}function Nf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;h=u;u=u+32|0;i=h+20|0;j=h+16|0;g=h;e=b[a+24>>0]|0;f[g>>2]=f[674];f[g+4>>2]=f[675];f[g+8>>2]=f[676];f[g+12>>2]=f[677];f[j>>2]=c;f[i>>2]=f[j>>2];if(!($a(a,i,e,g)|0)){j=0;u=h;return j|0}id(d,g,g+(e<<24>>24<<2)|0);j=1;u=h;return j|0}function Of(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;g=e>>>0>1073741823?-1:e<<2;h=Bm(g)|0;Cf(h|0,0,g|0)|0;g=a+8|0;Ie(g,h,b,c);if((e|0)>=(d|0)){Cm(h);return 1}a=0-e|0;f=e;do{i=c+(f<<2)|0;Ie(g,i+(a<<2)|0,b+(f<<2)|0,i);f=f+e|0}while((f|0)<(d|0));Cm(h);return 1}function Pf(a,c){a=a|0;c=c|0;var d=0;if(!c)return;Pf(a,f[c>>2]|0);Pf(a,f[c+4>>2]|0);a=c+16|0;d=c+28|0;if((b[d+11>>0]|0)<0)Em(f[d>>2]|0);if((b[a+11>>0]|0)<0)Em(f[a>>2]|0);Em(c);return}function Qf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;h=u;u=u+64|0;g=h;if(!(dl(a,b,0)|0))if((b|0)!=0?(e=fe(b,800,784,0)|0,(e|0)!=0):0){b=g+4|0;d=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(d|0));f[g>>2]=e;f[g+8>>2]=a;f[g+12>>2]=-1;f[g+48>>2]=1;Ua[f[(f[e>>2]|0)+28>>2]&7](e,g,f[c>>2]|0,1);if((f[g+24>>2]|0)==1){f[c>>2]=f[g+16>>2];b=1}else b=0}else b=0;else b=1;u=h;return b|0}function Rf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;h=u;u=u+32|0;g=h+8|0;e=h;if((d|0)==3){i=f[b+12>>2]|0;d=f[b+4>>2]|0;f[g>>2]=-1;f[g+4>>2]=-1;f[g+8>>2]=-1;f[g+12>>2]=-1;Zd(e,c,i,d,g);f[a>>2]=f[e>>2];u=h;return}else{f[a>>2]=0;u=h;return}}function Sf(a){a=a|0;var b=0,c=0,d=0;b=f[a+48>>2]|0;if(b|0){d=a+52|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+24>>2]|0;if(b|0){d=a+28|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+12>>2]|0;if(b|0){d=a+16|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}d=f[a>>2]|0;if(!d)return;c=a+4|0;b=f[c>>2]|0;if((b|0)!=(d|0))f[c>>2]=b+(~((b+-4-d|0)>>>2)<<2);Em(d);return}function Tf(a,c,d){a=a|0;c=c|0;d=d|0;a=Ib(a,c)|0;if(!a){d=0;return d|0}c=f[a+20>>2]|0;if(((f[a+24>>2]|0)-c|0)!=4){d=0;return d|0}a=c;a=h[a>>0]|h[a+1>>0]<<8|h[a+2>>0]<<16|h[a+3>>0]<<24;b[d>>0]=a;b[d+1>>0]=a>>8;b[d+2>>0]=a>>16;b[d+3>>0]=a>>24;d=1;return d|0}function Uf(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;f[a>>2]=d;if(d|0){o=d+16|0;m=f[o+4>>2]|0;n=a+8|0;f[n>>2]=f[o>>2];f[n+4>>2]=m;n=d+24|0;m=f[n+4>>2]|0;d=a+16|0;f[d>>2]=f[n>>2];f[d+4>>2]=m}b[a+24>>0]=e;f[a+28>>2]=g;b[a+32>>0]=h&1;o=a+40|0;f[o>>2]=i;f[o+4>>2]=j;o=a+48|0;f[o>>2]=k;f[o+4>>2]=l;f[a+56>>2]=c;return}function Vf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;h=c+8|0;i=f[h+4>>2]|0;g=c+16|0;d=g;e=f[d>>2]|0;d=f[d+4>>2]|0;if(!((i|0)>(d|0)|((i|0)==(d|0)?(f[h>>2]|0)>>>0>e>>>0:0))){i=0;return i|0}h=b[(f[c>>2]|0)+e>>0]|0;i=Ij(e|0,d|0,1,0)|0;d=g;f[d>>2]=i;f[d+4>>2]=I;d=h&255;do if(d&128)if(Vf(a,c)|0){d=f[a>>2]<<7;f[a>>2]=d;d=d|h&127;break}else{i=0;return i|0}while(0);f[a>>2]=d;i=1;return i|0}function Wf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=f[b+4>>2]|0;if(!d){e=0;return e|0}if((c|0)<=-1)ra(12658,12674,59,12771);a=f[b+8>>2]|0;if(((f[b+12>>2]|0)-a>>2|0)<=(c|0))ra(12781,12674,60,12771);e=f[(f[a+(c<<2)>>2]|0)+60>>2]|0;a=f[d+40>>2]|0;b=f[d+44>>2]|0;if((a|0)==(b|0)){e=0;return e|0}else c=a;while(1){a=f[c>>2]|0;c=c+4|0;if((f[a+40>>2]|0)==(e|0)){c=9;break}if((c|0)==(b|0)){a=0;c=9;break}}if((c|0)==9)return a|0;return 0}function Xf(a){a=a|0;var b=0,c=0,d=0;if(!a)return;d=a+88|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b+8>>2]|0;if(c|0){d=b+12|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Em(c)}Em(b)}b=f[a+68>>2]|0;if(b|0){d=a+72|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}d=a+64|0;b=f[d>>2]|0;f[d>>2]=0;if(b|0){c=f[b>>2]|0;if(c|0){d=b+4|0;if((f[d>>2]|0)!=(c|0))f[d>>2]=c;Em(c)}Em(b)}Em(a);return}function Yf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;g=a+11|0;e=b[g>>0]|0;i=e<<24>>24<0;if(i)e=f[a+4>>2]|0;else e=e&255;do if(e>>>0>=c>>>0)if(i){i=(f[a>>2]|0)+c|0;b[h>>0]=0;tl(i,h);f[a+4>>2]=c;break}else{b[h>>0]=0;tl(a+c|0,h);b[g>>0]=c;break}else xf(a,c-e|0,d)|0;while(0);u=j;return}function Zf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;j=u;u=u+16|0;h=j;i=j+4|0;f[h>>2]=c;c=Yi(32)|0;f[i>>2]=c;f[i+8>>2]=-2147483616;f[i+4>>2]=24;d=c;e=10797;g=d+24|0;do{b[d>>0]=b[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(g|0));b[c+24>>0]=0;cg(Pb(a,h)|0,i,1);if((b[i+11>>0]|0)>=0){u=j;return}Em(f[i>>2]|0);u=j;return}function _f(a){a=a|0;var b=0,c=0,d=0;b=f[a+52>>2]|0;if(b|0){d=a+56|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+40>>2]|0;if(b|0){d=a+44|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+28>>2]|0;if(b|0){d=a+32|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+12>>2]|0;if(b|0)Em(b);b=f[a>>2]|0;if(!b)return;Em(b);return}function $f(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=2600;b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}d=a+8|0;b=f[d>>2]|0;if(!b){Em(a);return}e=a+12|0;c=f[e>>2]|0;if((c|0)!=(b|0)){do{g=c+-4|0;f[e>>2]=g;c=f[g>>2]|0;f[g>>2]=0;if(c|0)Ra[f[(f[c>>2]|0)+4>>2]&127](c);c=f[e>>2]|0}while((c|0)!=(b|0));b=f[d>>2]|0}Em(b);Em(a);return}function ag(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0;l=u;u=u+16|0;j=l;k=c&255;b[j>>0]=k;g=a+16|0;e=f[g>>2]|0;if(!e)if(!(wh(a)|0)){e=f[g>>2]|0;i=4}else d=-1;else i=4;do if((i|0)==4){i=a+20|0;g=f[i>>2]|0;if(g>>>0>>0?(d=c&255,(d|0)!=(b[a+75>>0]|0)):0){f[i>>2]=g+1;b[g>>0]=k;break}if((Oa[f[a+36>>2]&31](a,j,1)|0)==1)d=h[j>>0]|0;else d=-1}while(0);u=l;return d|0}function bg(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=2600;b=f[a+20>>2]|0;if(b|0){d=a+24|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}e=a+8|0;b=f[e>>2]|0;if(!b)return;d=a+12|0;c=f[d>>2]|0;if((c|0)!=(b|0)){do{a=c+-4|0;f[d>>2]=a;c=f[a>>2]|0;f[a>>2]=0;if(c|0)Ra[f[(f[c>>2]|0)+4>>2]&127](c);c=f[d>>2]|0}while((c|0)!=(b|0));b=f[e>>2]|0}Em(b);return}function cg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g;nh(e,d&1);a=Pe(a,c)|0;c=a+11|0;if((b[c>>0]|0)<0){b[f[a>>2]>>0]=0;f[a+4>>2]=0}else{b[a>>0]=0;b[c>>0]=0}re(a,0);f[a>>2]=f[e>>2];f[a+4>>2]=f[e+4>>2];f[a+8>>2]=f[e+8>>2];u=g;return}function dg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;h=a&255;d=a&255;if((f[c+76>>2]|0)>=0?(Km(c)|0)!=0:0){if((d|0)!=(b[c+75>>0]|0)?(j=c+20|0,g=f[j>>2]|0,g>>>0<(f[c+16>>2]|0)>>>0):0){f[j>>2]=g+1;b[g>>0]=h}else d=ag(c,a)|0;Jm(c)}else k=3;do if((k|0)==3){if((d|0)!=(b[c+75>>0]|0)?(i=c+20|0,e=f[i>>2]|0,e>>>0<(f[c+16>>2]|0)>>>0):0){f[i>>2]=e+1;b[e>>0]=h;break}d=ag(c,a)|0}while(0);return d|0}function eg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1612;b=f[a+96>>2]|0;if(b|0)Em(b);b=f[a+84>>2]|0;if(b|0)Em(b);b=f[a+72>>2]|0;if(b|0)Em(b);b=f[a+60>>2]|0;if(b|0)Em(b);f[a>>2]=1192;c=f[a+32>>2]|0;if(!c){Em(a);return}d=a+36|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c);Em(a);return}function fg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;e=a+8|0;c=f[a>>2]|0;if((f[e>>2]|0)-c>>2>>>0>=b>>>0)return;d=a+4|0;if(b>>>0>1073741823){a=sa(8)|0;Fk(a,12569);f[a>>2]=3708;wa(a|0,856,80)}j=(f[d>>2]|0)-c|0;h=j>>2;i=Yi(b<<2)|0;g=i+(h<<2)|0;h=g+(0-h<<2)|0;if((j|0)>0)Od(h|0,c|0,j|0)|0;f[a>>2]=h;f[d>>2]=g;f[e>>2]=i+(b<<2);if(!c)return;Em(c);return}function gg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1360;b=f[a+96>>2]|0;if(b|0)Em(b);b=f[a+84>>2]|0;if(b|0)Em(b);b=f[a+72>>2]|0;if(b|0)Em(b);b=f[a+60>>2]|0;if(b|0)Em(b);f[a>>2]=1192;c=f[a+32>>2]|0;if(!c){Em(a);return}d=a+36|0;b=f[d>>2]|0;if((b|0)!=(c|0))f[d>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c);Em(a);return}function hg(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=u;u=u+16|0;e=g;d=Yi(32)|0;f[e>>2]=d;f[e+8>>2]=-2147483616;f[e+4>>2]=26;c=d;h=10749;i=c+26|0;do{b[c>>0]=b[h>>0]|0;c=c+1|0;h=h+1|0}while((c|0)<(i|0));b[d+26>>0]=0;f[a>>2]=-1;Df(a+4|0,e);if((b[e+11>>0]|0)>=0){u=g;return}Em(f[e>>2]|0);u=g;return}function ig(a){a=a|0;var b=0,c=0;f[a>>2]=1612;b=f[a+96>>2]|0;if(b|0)Em(b);b=f[a+84>>2]|0;if(b|0)Em(b);b=f[a+72>>2]|0;if(b|0)Em(b);b=f[a+60>>2]|0;if(b|0)Em(b);f[a>>2]=1192;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c);return}function jg(a){a=a|0;var c=0,d=0,e=0,f=0,g=0;while(1){c=b[a>>0]|0;d=c<<24>>24;e=a+1|0;if(!(Yl(d)|0))break;else a=e}switch(d|0){case 45:{a=1;f=5;break}case 43:{a=0;f=5;break}default:{g=0;e=a}}if((f|0)==5){c=b[e>>0]|0;g=a}a=(c<<24>>24)+-48|0;if(a>>>0<10){d=a;a=0;c=e;do{c=c+1|0;a=(a*10|0)-d|0;d=(b[c>>0]|0)+-48|0}while(d>>>0<10)}else a=0;return (g|0?a:0-a|0)|0}function kg(a){a=a|0;var b=0,c=0;f[a>>2]=1360;b=f[a+96>>2]|0;if(b|0)Em(b);b=f[a+84>>2]|0;if(b|0)Em(b);b=f[a+72>>2]|0;if(b|0)Em(b);b=f[a+60>>2]|0;if(b|0)Em(b);f[a>>2]=1192;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c);return}function lg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2280;b=a+84|0;c=a+4|0;d=c+80|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));f[b>>2]=-1;f[a+88>>2]=-1;f[a+92>>2]=-1;b=a+152|0;c=a+96|0;d=c+56|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));n[b>>2]=$(1.0);b=a+224|0;c=a+156|0;d=c+68|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(d|0));zi(b);return}function mg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;f[a>>2]=0;h=a+4|0;f[h>>2]=0;f[a+8>>2]=0;e=b+4|0;c=(f[e>>2]|0)-(f[b>>2]|0)|0;d=c>>2;if(!d)return;if(d>>>0>1073741823)Wl(a);g=Yi(c)|0;f[h>>2]=g;f[a>>2]=g;f[a+8>>2]=g+(d<<2);b=f[b>>2]|0;c=(f[e>>2]|0)-b|0;if((c|0)<=0)return;Od(g|0,b|0,c|0)|0;f[h>>2]=g+(c>>>2<<2);return}function ng(a,c,d){a=a|0;c=c|0;d=d|0;c=Nd(a,c)|0;if((c|0)==(a+4|0)){a=-1;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}c=c+28|0;if((b[c+11>>0]|0)<0)c=f[c>>2]|0;a=jg(c)|0;c=(a|0)==-1;a=(a|0)!=0;d=c?d:a;return d|0}function og(a){a=a|0;var c=0,d=0,e=0;e=a;a:do if(!(e&3)){c=a;d=4}else{c=e;while(1){if(!(b[a>>0]|0))break a;a=a+1|0;c=a;if(!(c&3)){c=a;d=4;break}}}while(0);if((d|0)==4){while(1){a=f[c>>2]|0;if(!((a&-2139062144^-2139062144)&a+-16843009))c=c+4|0;else break}if((a&255)<<24>>24)do c=c+1|0;while((b[c>>0]|0)!=0)}return c-e|0}function pg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=Ma[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((e|0)<=0){b=1;return b|0}d=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[d>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Oa[f[(f[g>>2]|0)+20>>2]&31](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(e|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function qg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2332;b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}f[a+12>>2]=2356;b=f[a+32>>2]|0;if(b|0)Em(b);b=f[a+20>>2]|0;if(!b){Em(a);return}Em(b);Em(a);return}function rg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[b>>2]|0;if(!c){a=0;return a|0}e=a+44|0;d=f[e>>2]|0;if(d>>>0<(f[a+48>>2]|0)>>>0){f[b>>2]=0;f[d>>2]=c;f[e>>2]=(f[e>>2]|0)+4;a=1;return a|0}else{Ld(a+40|0,b);a=1;return a|0}return 0}function sg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;e=Ma[f[(f[a>>2]|0)+24>>2]&127](a)|0;if((e|0)<=0){b=1;return b|0}d=a+36|0;c=a+48|0;a=0;while(1){g=f[(f[d>>2]|0)+(a<<2)>>2]|0;a=a+1|0;if(!(Oa[f[(f[g>>2]|0)+16>>2]&31](g,c,b)|0)){a=0;c=5;break}if((a|0)>=(e|0)){a=1;c=5;break}}if((c|0)==5)return a|0;return 0}function tg(a,b){a=+a;b=b|0;var c=0,d=0,e=0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;e=zj(c|0,d|0,52)|0;switch(e&2047){case 0:{if(a!=0.0){a=+tg(a*18446744073709551616.0,b);c=(f[b>>2]|0)+-64|0}else c=0;f[b>>2]=c;break}case 2047:break;default:{f[b>>2]=(e&2047)+-1022;f[s>>2]=c;f[s+4>>2]=d&-2146435073|1071644672;a=+p[s>>3]}}return +a}function ug(a){a=a|0;if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+24>>2]|0)){a=0;return a|0}if(!(f[a+28>>2]|0)){a=0;return a|0}if(!(f[a+32>>2]|0)){a=0;return a|0}if(!(f[a+36>>2]|0)){a=0;return a|0}a=(f[a+72>>2]|0)!=-1;return a|0}function vg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2424;b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}f[a+12>>2]=2404;b=f[a+32>>2]|0;if(b|0)Em(b);b=f[a+20>>2]|0;if(!b){Em(a);return}Em(b);Em(a);return}function wg(a){a=a|0;var c=0;if(!a)return;c=a+28|0;if((b[c+11>>0]|0)<0)Em(f[c>>2]|0);Jf(a+12|0,f[a+16>>2]|0);Pf(a,f[a+4>>2]|0);Em(a);return}function xg(a,c){a=a|0;c=c|0;var d=0,e=0;d=0;while(1){if((h[13536+d>>0]|0)==(a|0)){e=2;break}d=d+1|0;if((d|0)==87){d=87;a=13624;e=5;break}}if((e|0)==2)if(!d)d=13624;else{a=13624;e=5}if((e|0)==5)while(1){do{e=a;a=a+1|0}while((b[e>>0]|0)!=0);d=d+-1|0;if(!d){d=a;break}else e=5}return bm(d,f[c+20>>2]|0)|0}function yg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2332;b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}f[a+12>>2]=2356;b=f[a+32>>2]|0;if(b|0)Em(b);b=f[a+20>>2]|0;if(!b)return;Em(b);return}function zg(a){a=a|0;if(!(f[a+64>>2]|0)){a=0;return a|0}if(!(f[a+68>>2]|0)){a=0;return a|0}if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}if(!(f[a+56>>2]|0)){a=0;return a|0}a=(f[a+92>>2]|0)!=-1;return a|0}function Ag(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2424;b=f[a+64>>2]|0;if(b|0){d=a+68|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}f[a+12>>2]=2404;b=f[a+32>>2]|0;if(b|0)Em(b);b=f[a+20>>2]|0;if(!b)return;Em(b);return}function Bg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=Yi(60)|0;d=c;e=d+60|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(e|0));e=ge(c,b)|0;f[a>>2]=e?c:0;a=e?0:c;if(e)return;Sf(a);Em(a);return}function Cg(a,b,c){a=a|0;b=b|0;c=c|0;switch(c<<24>>24){case 0:{c=Yi(20)|0;Mj(c);break}case 1:{c=Yi(24)|0;kk(c);break}case 2:{c=Yi(36)|0;cj(c);break}case 3:{c=Yi(28)|0;dk(c);break}default:c=0}f[a>>2]=c;return}function Dg(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=hk(j^a|0,i^b|0,j|0,i|0)|0;g=I;a=f^j;b=e^i;return hk((_b(h,g,hk(f^c|0,e^d|0,f|0,e|0)|0,I,0)|0)^a|0,I^b|0,a|0,b|0)|0}function Eg(a,c){a=a|0;c=c|0;var d=0,e=0;f[c>>2]=2;e=a+4|0;d=c+8|0;a=f[d>>2]|0;c=(f[c+12>>2]|0)-a|0;if(c>>>0<4294967292){Pg(d,c+4|0,0);a=f[d>>2]|0}c=a+c|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;b[c>>0]=e;b[c+1>>0]=e>>8;b[c+2>>0]=e>>16;b[c+3>>0]=e>>24;return}function Fg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&a>>>0>4294967295)while(1){e=Oi(a|0,c|0,10,0)|0;d=d+-1|0;b[d>>0]=e&255|48;e=a;a=il(a|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=I}if(a)while(1){d=d+-1|0;b[d>>0]=(a>>>0)%10|0|48;if(a>>>0<10)break;else a=(a>>>0)/10|0}return d|0}function Gg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2652;b=f[a+96>>2]|0;if(b|0){d=a+100|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);Em(b)}b=f[a+84>>2]|0;if(!b){Ed(a);Em(a);return}d=a+88|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b);Ed(a);Em(a);return}function Hg(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=c+16|0;a=f[g>>2]|0;h=c+36|0;i=c+24|0;do if(a){if((a|0)!=(d|0)){f[h>>2]=(f[h>>2]|0)+1;f[i>>2]=2;b[c+54>>0]=1;break}if((f[i>>2]|0)==2)f[i>>2]=e}else{f[g>>2]=d;f[i>>2]=e;f[h>>2]=1}while(0);return}function Ig(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;Bb(a,b);if((b|0)<=-1)return;g=a+88|0;c=f[g>>2]|0;a=f[a+84>>2]|0;if((c-a>>2|0)<=(b|0))return;d=a+(b<<2)|0;a=d+4|0;b=c-a|0;e=b>>2;if(e){hi(d|0,a|0,b|0)|0;c=f[g>>2]|0}a=d+(e<<2)|0;if((c|0)==(a|0))return;f[g>>2]=c+(~((c+-4-a|0)>>>2)<<2);return}function Jg(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;f[a>>2]=b;j=b+16|0;h=f[j+4>>2]|0;i=a+8|0;f[i>>2]=f[j>>2];f[i+4>>2]=h;i=b+24|0;h=f[i+4>>2]|0;b=a+16|0;f[b>>2]=f[i>>2];f[b+4>>2]=h;b=a+40|0;f[b>>2]=c;f[b+4>>2]=d;a=a+48|0;f[a>>2]=e;f[a+4>>2]=g;return}function Kg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)<=-1)ra(12835,12860,63,12943);d=f[a+96>>2]|0;if((((f[a+100>>2]|0)-d|0)/12|0|0)>(b|0)){a=d+(b*12|0)|0;jd(c,a,a+12|0);return 1}else ra(12948,12860,64,12943);return 0}function Lg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;hg(g,a,c,d);d=a+24|0;f[d>>2]=f[g>>2];c=g+4|0;Wh(a+28|0,c)|0;if((b[c+11>>0]|0)>=0){u=e;return d|0}Em(f[c>>2]|0);u=e;return d|0}function Mg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=2652;b=f[a+96>>2]|0;if(b|0){d=a+100|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~(((c+-12-b|0)>>>0)/12|0)*12|0);Em(b)}b=f[a+84>>2]|0;if(!b){Ed(a);return}d=a+88|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b);Ed(a);return}function Ng(a,b,c){a=a|0;b=b|0;c=c|0;if(!(ij(a,b,c)|0)){c=0;return c|0}b=f[b+4>>2]|0;if((c|0)<=-1)ra(12658,12674,67,12771);a=f[b+8>>2]|0;if(((f[b+12>>2]|0)-a>>2|0)<=(c|0))ra(12781,12674,68,12771);c=(f[(f[a+(c<<2)>>2]|0)+28>>2]|0)==9;return c|0}function Og(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;Oc(g,a,c,d);d=a+24|0;f[d>>2]=f[g>>2];c=g+4|0;Wh(a+28|0,c)|0;if((b[c+11>>0]|0)>=0){u=e;return d|0}Em(f[c>>2]|0);u=e;return d|0}function Pg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;e=a+4|0;d=f[e>>2]|0;c=f[a>>2]|0;g=d-c|0;if(b>>>0<=g>>>0){if(b>>>0>>0?(h=c+b|0,(d|0)!=(h|0)):0)f[e>>2]=h}else _e(a,b-g|0);a=a+24|0;h=a;h=Ij(f[h>>2]|0,f[h+4>>2]|0,1,0)|0;f[a>>2]=h;f[a+4>>2]=I;return}function Qg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1668;b=f[a+76>>2]|0;if(b|0)Em(b);f[a>>2]=1192;b=f[a+32>>2]|0;if(!b){Em(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b);Em(a);return}function Rg(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0;e=h[a+12>>0]|0;g=a+8|0;b=f[g>>2]|0;if(b>>>0<4096?(d=a+4|0,c=f[d>>2]|0,(c|0)>0):0){i=f[a>>2]|0;a=c+-1|0;f[d>>2]=a;b=h[i+a>>0]|0|b<<8;f[g>>2]=b}d=b&255;a=0-e&255;e=X(b>>>8,a)|0;i=d>>>0>>0;f[g>>2]=i?e+d|0:b-a-e|0;return i|0}function Sg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;if(c?!(tf(d,a)|0):0){a=0;return a|0}b[a+36>>0]=1;d=a+16|0;e=f[d>>2]|0;c=(f[a>>2]|0)+e|0;g=a+8|0;d=hk(f[g>>2]|0,f[g+4>>2]|0,e|0,f[d+4>>2]|0)|0;f[a+32>>2]=0;f[a+24>>2]=c;f[a+28>>2]=c+d;a=1;return a|0}function Tg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1416;b=f[a+76>>2]|0;if(b|0)Em(b);f[a>>2]=1192;b=f[a+32>>2]|0;if(!b){Em(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b);Em(a);return}function Ug(a,b){a=a|0;b=b|0;var c=0,d=0;d=Yi(40)|0;f[d>>2]=-1;gj(d+8|0);Sa[f[(f[a>>2]|0)+16>>2]&7](a,d);c=b+88|0;b=f[c>>2]|0;f[c>>2]=d;if(!b)return 1;a=f[b+8>>2]|0;if(a|0){c=b+12|0;if((f[c>>2]|0)!=(a|0))f[c>>2]=a;Em(a)}Em(b);return 1}function Vg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=968;b=f[a+16>>2]|0;if(b|0){d=a+20|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}b=f[a+4>>2]|0;if(!b){Em(a);return}d=a+8|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b);Em(a);return}function Wg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((c|b|0)<0){a=0;return a|0}d=b*3|0;if((b|0)>715827882){a=0;return a|0}od(a,d,2640);od(a+12|0,d,2636);fg(a+24|0,c);a=1;return a|0}function Xg(a){a=a|0;var b=0,c=0,d=0;b=f[a+8>>2]|0;c=f[a+12>>2]|0;if((b|0)==(c|0)){c=1;return c|0}a=a+32|0;while(1){d=f[b>>2]|0;b=b+4|0;if(!(Na[f[(f[d>>2]|0)+16>>2]&127](d,f[a>>2]|0)|0)){b=0;a=5;break}if((b|0)==(c|0)){b=1;a=5;break}}if((a|0)==5)return b|0;return 0}function Yg(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(dl(a,f[b+8>>2]|0,g)|0)Ff(0,b,c,d,e);else{a=f[a+8>>2]|0;Wa[f[(f[a>>2]|0)+20>>2]&3](a,b,c,d,e,g)}return}function Zg(a){a=a|0;var b=0,c=0;f[a>>2]=1668;b=f[a+76>>2]|0;if(b|0)Em(b);f[a>>2]=1192;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c);return}function _g(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1724;Jm(a+108|0);f[a>>2]=1192;b=f[a+32>>2]|0;if(!b){Em(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b);Em(a);return}function $g(a){a=a|0;var b=0,c=0;f[a>>2]=2092;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Cm(b);f[a>>2]=1132;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){If(a);Em(a);return}Ra[f[(f[b>>2]|0)+4>>2]&127](b);If(a);Em(a);return}function ah(a,b){a=a|0;b=b|0;if(!(He(a+8|0,b)|0)){a=0;return a|0}a=ed(a+88|0,b)|0;return a|0}function bh(a){a=a|0;var c=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}if((b[a+11>>0]|0)<0)c=(f[a+8>>2]&2147483647)+-1|0;else c=10;Yf(a,c,0);return}function ch(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[a+12>>2]|0;a=f[a+8>>2]|0;e=a;if((c|0)==(a|0)){b=0;return b|0}d=c-a>>2;c=0;while(1){a=f[e+(c<<2)>>2]|0;if((f[a+60>>2]|0)==(b|0)){c=5;break}c=c+1|0;if(c>>>0>=d>>>0){a=0;c=5;break}}if((c|0)==5)return a|0;return 0}function dh(a){a=a|0;var b=0,c=0;f[a>>2]=1416;b=f[a+76>>2]|0;if(b|0)Em(b);f[a>>2]=1192;c=f[a+32>>2]|0;if(!c)return;a=a+36|0;b=f[a>>2]|0;if((b|0)!=(c|0))f[a>>2]=b+(~((b+-4-c|0)>>>2)<<2);Em(c);return}function eh(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1472;Jm(a+108|0);f[a>>2]=1192;b=f[a+32>>2]|0;if(!b){Em(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b);Em(a);return}function fh(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=968;b=f[a+16>>2]|0;if(b|0){d=a+20|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}d=f[a+4>>2]|0;if(!d)return;c=a+8|0;b=f[c>>2]|0;if((b|0)!=(d|0))f[c>>2]=b+(~((b+-4-d|0)>>>2)<<2);Em(d);return}function gh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=u;u=u+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;Cf(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Qk(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Qk(a,f,e)}u=g;return}function hh(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a+12>>2]|0;a=f[a+8>>2]|0;d=a;if((c|0)==(a|0)){b=-1;return b|0}c=c-a>>2;a=0;while(1){if((f[(f[d+(a<<2)>>2]|0)+60>>2]|0)==(b|0)){c=5;break}a=a+1|0;if(a>>>0>=c>>>0){a=-1;c=5;break}}if((c|0)==5)return a|0;return 0}function ih(a){a=a|0;var b=0,c=0;f[a>>2]=2092;c=a+28|0;b=f[c>>2]|0;f[c>>2]=0;if(b|0)Cm(b);f[a>>2]=1132;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){If(a);return}Ra[f[(f[b>>2]|0)+4>>2]&127](b);If(a);return}function jh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;f[a+4>>2]=b;b=f[b+4>>2]|0;if((c|0)<=-1)ra(12658,12674,67,12771);d=f[b+8>>2]|0;if(((f[b+12>>2]|0)-d>>2|0)>(c|0)){f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=c;return 1}else ra(12781,12674,68,12771);return 0}function kh(a){a=a|0;var b=0,c=0;f[a>>2]=1724;Jm(a+108|0);f[a>>2]=1192;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Em(c);return}function lh(a,b){a=a|0;b=b|0;var c=0;if((b|0)<0){a=0;return a|0}c=f[a+4>>2]|0;if(((f[c+12>>2]|0)-(f[c+8>>2]|0)>>2|0)<=(b|0)){c=0;return c|0}c=f[(f[a+8>>2]|0)+(f[(f[a+20>>2]|0)+(b<<2)>>2]<<2)>>2]|0;c=Na[f[(f[c>>2]|0)+32>>2]&127](c,b)|0;return c|0}function mh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(dl(a,f[b+8>>2]|0,0)|0)Hg(0,b,c,d);else{a=f[a+8>>2]|0;Ua[f[(f[a>>2]|0)+28>>2]&7](a,b,c,d)}return}function nh(a,b){a=a|0;b=b|0;var c=0,d=0;c=u;u=u+16|0;d=c;bh(d);ef(a,d,b);ok(d);u=c;return}function oh(a){a=a|0;var b=0,c=0;f[a>>2]=1472;Jm(a+108|0);f[a>>2]=1192;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Em(c);return}function ph(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;e=u;u=u+32|0;g=e;d=e+20|0;f[g>>2]=f[a+60>>2];f[g+4>>2]=0;f[g+8>>2]=b;f[g+12>>2]=d;f[g+16>>2]=c;if((vk(Aa(140,g|0)|0)|0)<0){f[d>>2]=-1;a=-1}else a=f[d>>2]|0;u=e;return a|0}function qh(a,b){a=a|0;b=b|0;var c=0;if((b|0)==-1|(b|0)>4){a=0;return a|0}c=f[a+20+(b*12|0)>>2]|0;if(((f[a+20+(b*12|0)+4>>2]|0)-c|0)<=0){a=0;return a|0}c=f[c>>2]|0;if((c|0)==-1){a=0;return a|0}a=f[(f[a+8>>2]|0)+(c<<2)>>2]|0;return a|0}function rh(a,b){a=a|0;b=b|0;var c=0;Hi(a);f[a>>2]=1072;c=a+36|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;c=f[b>>2]|0;f[b>>2]=0;f[a+60>>2]=c;return}function sh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)a=0;else{while(1){e=b[a>>0]|0;f=b[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){a=0;break a}else{a=a+1|0;c=c+1|0}}a=(e&255)-(f&255)|0}while(0);return a|0}function th(a,b,c){a=a|0;b=b|0;c=c|0;if(!(Mf(f[a+8>>2]|0,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0)){a=0;return a|0}a=Oa[f[(f[a>>2]|0)+32>>2]&31](a,b,c)|0;return a|0}function uh(a,b){a=a|0;b=b|0;var c=0;c=f[a+16>>2]|0;if(((f[a+20>>2]|0)-c>>2|0)<=(b|0)){a=0;return a|0}c=f[c+(b<<2)>>2]|0;if((c|0)<0){a=0;return a|0}a=Ud(f[(f[a+36>>2]|0)+(c<<2)>>2]|0)|0;return a|0}function vh(a){a=a|0;if(!(f[a+60>>2]|0))return 0;if(!(f[a+44>>2]|0))return 0;if(!(f[a+48>>2]|0))return 0;if(!(f[a+52>>2]|0))return 0;else return (f[a+56>>2]|0)!=0|0;return 0}function wh(a){a=a|0;var c=0,d=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;c=f[a>>2]|0;if(!(c&8)){f[a+8>>2]=0;f[a+4>>2]=0;c=f[a+44>>2]|0;f[a+28>>2]=c;f[a+20>>2]=c;f[a+16>>2]=c+(f[a+48>>2]|0);c=0}else{f[a>>2]=c|32;c=-1}return c|0}function xh(a,c){a=a|0;c=c|0;var d=0,e=0;e=a;d=e+64|0;do{f[e>>2]=f[c>>2];e=e+4|0;c=c+4|0}while((e|0)<(d|0));e=a+64|0;f[a+88>>2]=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;f[e+12>>2]=0;f[e+16>>2]=0;b[e+20>>0]=0;return}function yh(a){a=a|0;if(!(f[a+44>>2]|0)){a=0;return a|0}if(!(f[a+48>>2]|0)){a=0;return a|0}if(!(f[a+52>>2]|0)){a=0;return a|0}a=(f[a+56>>2]|0)!=0;return a|0}function zh(a,b,c){a=a|0;b=b|0;c=c|0;if((b|0)!=0&(c|0)!=0){xb(a,b,c);return}else{Fb(a,0,0);return}}function Ah(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=$(e);f[a+4>>2]=b;id(a+8|0,c,c+(d<<2)|0);n[a+20>>2]=e;return}function Bh(a){a=a|0;var b=0,c=0;c=a+15&-16|0;b=f[r>>2]|0;a=b+c|0;if((c|0)>0&(a|0)<(b|0)|(a|0)<0){ea()|0;za(12);return -1}f[r>>2]=a;if((a|0)>(da()|0)?(ca()|0)==0:0){f[r>>2]=b;za(12);return -1}return b|0}function Ch(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;c=f[c>>2]|0;e=a;d=b-a>>2;while(1){if(!d)break;b=(d|0)/2|0;g=e+(b<<2)|0;a=(f[g>>2]|0)>>>0>>0;e=a?g+4|0:e;d=a?d+-1-b|0:b}return e|0}function Dh(a,b){a=a|0;b=b|0;b=f[b+88>>2]|0;if(!b){a=0;return a|0}if((f[b>>2]|0)!=2){a=0;return a|0}b=f[b+8>>2]|0;f[a+4>>2]=h[b>>0]|h[b+1>>0]<<8|h[b+2>>0]<<16|h[b+3>>0]<<24;a=1;return a|0}function Eh(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;b[a+24>>0]=1;f[a+28>>2]=9;c=a+40|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[a+56>>2]=-1;f[a+60>>2]=0;return}function Fh(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){a=0;return a|0}if((b[c+24>>0]|0)!=3){a=0;return a|0}f[a+44>>2]=c;a=1;return a|0}function Gh(a,c){a=a|0;c=c|0;var d=0,e=0;d=u;u=u+32|0;e=d;kf(e,c);a=f[e+16>>2]|0;c=e+4|0;if((b[c+11>>0]|0)>=0){u=d;return a|0}Em(f[c>>2]|0);u=d;return a|0}function Hh(a,b){a=a|0;b=b|0;if(!(Na[f[(f[a>>2]|0)+36>>2]&127](a,b)|0)){a=0;return a|0}if(!(Na[f[(f[a>>2]|0)+40>>2]&127](a,b)|0)){a=0;return a|0}a=Ma[f[(f[a>>2]|0)+44>>2]&127](a)|0;return a|0}function Ih(a,c,d){a=a|0;c=c|0;d=d|0;if(!(ij(a,c,d)|0)){a=0;return a|0}d=f[a+8>>2]|0;if((b[d+24>>0]|0)!=3){a=0;return a|0}a=(f[d+28>>2]|0)==9;return a|0}function Jh(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a>>0]|0;e=b[c>>0]|0;if(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24))do{a=a+1|0;c=c+1|0;d=b[a>>0]|0;e=b[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));return (d&255)-(e&255)|0}function Kh(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(dl(a,f[b+8>>2]|0,g)|0)Ff(0,b,c,d,e);return}function Lh(a,c){a=a|0;c=c|0;var d=0,e=0;d=b[a+11>>0]|0;e=d<<24>>24<0;if(e)d=f[a+4>>2]|0;else d=d&255;if(d>>>0<=c>>>0)Wl(a);if(e)a=f[a>>2]|0;return a+c|0}function Mh(a){a=a|0;var b=0,c=0;f[a>>2]=1132;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){If(a);Em(a);return}Ra[f[(f[b>>2]|0)+4>>2]&127](b);If(a);Em(a);return}function Nh(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=1192;b=f[a+32>>2]|0;if(!b){Em(a);return}d=a+36|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b);Em(a);return}function Oh(a,c){a=a|0;c=c|0;if(f[c+56>>2]|0){a=0;return a|0}if((b[c+24>>0]|0)!=3){a=0;return a|0}f[a+64>>2]=c;a=1;return a|0}function Ph(a,b,c){a=a|0;b=b|0;c=c|0;return Mb(a,b,c)|0}function Qh(a){a=a|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=f[a+4>>2]|0;e=(f[e+56>>2]|0)-(f[e+52>>2]|0)>>2;b[d>>0]=0;Wd(a+20|0,e,d);u=c;return}function Rh(a,c){a=a|0;c=c|0;if(((c|0)!=0?(f[c+56>>2]|0)==0:0)?(b[c+24>>0]|0)==3:0){f[a+60>>2]=c;c=1}else c=0;return c|0}function Sh(){var a=0,b=0;a=Yi(40)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;n[a+16>>2]=$(1.0);b=a+20|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;n[a+36>>2]=$(1.0);return a|0}function Th(a){a=a|0;var c=0,d=0,e=0;c=u;u=u+16|0;d=c;e=f[a+4>>2]|0;e=(f[e+28>>2]|0)-(f[e+24>>2]|0)>>2;b[d>>0]=0;Wd(a+20|0,e,d);u=c;return}function Uh(a){a=a|0;switch(a|0){case 11:case 2:case 1:{a=1;break}case 4:case 3:{a=2;break}case 6:case 5:{a=4;break}case 8:case 7:{a=8;break}case 9:{a=4;break}case 10:{a=8;break}default:a=-1}return a|0}function Vh(a){a=a|0;f[a>>2]=2380;df(a+8|0);Em(a);return}function Wh(a,c){a=a|0;c=c|0;var d=0,e=0;if((a|0)!=(c|0)){d=b[c+11>>0]|0;e=d<<24>>24<0;vf(a,e?f[c>>2]|0:c,e?f[c+4>>2]|0:d&255)|0}return a|0}function Xh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=X(e,f)|0;d=a>>>16;a=(c>>>16)+(X(e,d)|0)|0;e=b>>>16;b=X(e,f)|0;return (I=(a>>>16)+(X(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Yh(a){a=a|0;var c=0,d=0;b[a+36>>0]=0;d=Ij(f[a+32>>2]|0,0,7,0)|0;d=zj(d|0,I|0,3)|0;a=a+16|0;c=a;c=Ij(d|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;f[a>>2]=c;f[a+4>>2]=I;return}function Zh(a){a=a|0;var b=0,c=0;f[a>>2]=1132;c=a+20|0;b=f[c>>2]|0;f[c>>2]=0;if(!b){If(a);return}Ra[f[(f[b>>2]|0)+4>>2]&127](b);If(a);return}function _h(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ra(4599,4605,76,4758);return 0}function $h(a,b){a=a|0;b=b|0;var c=0,d=0;d=og(b)|0;c=Yi(d+13|0)|0;f[c>>2]=d;f[c+4>>2]=d;f[c+8>>2]=0;c=zl(c)|0;Od(c|0,b|0,d+1|0)|0;f[a>>2]=c;return}function ai(a){a=a|0;f[a>>2]=2380;df(a+8|0);return}function bi(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[b+44>>2]=e;Hb(a,b,c,d,e);return}function ci(a,b){a=a|0;b=b|0;var c=0;if((b|0)==-1|(b|0)>4){b=-1;return b|0}c=f[a+20+(b*12|0)>>2]|0;if(((f[a+20+(b*12|0)+4>>2]|0)-c|0)<=0){b=-1;return b|0}b=f[c>>2]|0;return b|0}function di(a){a=a|0;var b=0,c=0;f[a>>2]=1192;c=f[a+32>>2]|0;if(!c)return;b=a+36|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Em(c);return}function ei(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(dl(a,f[b+8>>2]|0,0)|0)Hg(0,b,c,d);return}function fi(a){a=a|0;var c=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;b[a+24>>0]=1;a=a+28|0;c=a+40|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(c|0));return}function gi(a){a=a|0;var b=0;f[a>>2]=2600;b=a+4|0;f[a+40>>2]=0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;f[b+24>>2]=0;f[b+28>>2]=0;d[b+32>>1]=0;return}function hi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else Od(a,c,d)|0;return a|0}function ii(a){a=a|0;var c=0,d=0,e=0;c=f[a>>2]|0;d=(b[c>>0]|0)+-48|0;if(d>>>0<10){e=c;c=0;do{c=d+(c*10|0)|0;e=e+1|0;f[a>>2]=e;d=(b[e>>0]|0)+-48|0}while(d>>>0<10)}else c=0;return c|0}function ji(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=940;b=f[a+8>>2]|0;if(!b){Em(a);return}d=a+12|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b);Em(a);return}function ki(a,b){a=a|0;b=b|0;var c=0;if((b|0)<=-1)ra(12658,12674,59,12771);c=f[a+8>>2]|0;if(((f[a+12>>2]|0)-c>>2|0)>(b|0))return f[c+(b<<2)>>2]|0;else ra(12781,12674,60,12771);return 0}function li(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;if((b|0)>0)d=0;else return;do{e=f[a+(d<<2)>>2]|0;f[c+(d<<2)>>2]=e<<31>>31^e>>>1;d=d+1|0}while((d|0)!=(b|0));return}function mi(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=h[13518+(a&15)>>0]|0|e;a=zj(a|0,c|0,4)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function ni(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;e=u;u=u+16|0;d=e;f[d>>2]=f[c>>2];a=Oa[f[(f[a>>2]|0)+16>>2]&31](a,b,d)|0;if(a)f[c>>2]=f[d>>2];u=e;return a&1|0}function oi(){var a=0,b=0;b=Vi()|0;if((b|0?(a=f[b>>2]|0,a|0):0)?(b=a+48|0,(f[b>>2]&-256|0)==1126902528?(f[b+4>>2]|0)==1129074247:0):0)zk(f[a+12>>2]|0);zk(Nl()|0)}function pi(a){a=a|0;var c=0;c=b[w+(a&255)>>0]|0;if((c|0)<8)return c|0;c=b[w+(a>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=b[w+(a>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (b[w+(a>>>24)>>0]|0)+24|0}function qi(a){a=a|0;var b=0,c=0,d=0;if(!a)return;b=f[a>>2]|0;if(b|0){d=a+4|0;c=f[d>>2]|0;if((c|0)!=(b|0))f[d>>2]=c+(~((c+-4-b|0)>>>2)<<2);Em(b)}Em(a);return}function ri(a,c){a=a|0;c=c|0;var d=0;b[c+84>>0]=1;d=f[c+68>>2]|0;c=c+72|0;a=f[c>>2]|0;if((a|0)==(d|0))return 1;f[c>>2]=a+(~((a+-4-d|0)>>>2)<<2);return 1}function si(a){a=a|0;var b=0,c=0;if(im(a)|0?(b=Fl(f[a>>2]|0)|0,c=b+8|0,a=f[c>>2]|0,f[c>>2]=a+-1,(a+-1|0)<0):0)Em(b);return}function ti(a,b){a=a|0;b=b|0;if(b>>>0>=2){a=0;return a|0}f[a+28>>2]=b;a=1;return a|0}function ui(a){a=a|0;var c=0;f[a>>2]=0;c=a+8|0;d[a+38>>1]=0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;f[c+20>>2]=0;f[c+24>>2]=0;b[c+28>>0]=0;return}function vi(a,b){a=a|0;b=b|0;return Na[f[(f[a>>2]|0)+48>>2]&127](a,(f[b+4>>2]|0)-(f[b>>2]|0)>>2)|0}function wi(a){a=a|0;var b=0,c=0;f[a>>2]=940;c=f[a+8>>2]|0;if(!c)return;b=a+12|0;a=f[b>>2]|0;if((a|0)!=(c|0))f[b>>2]=a+(~((a+-4-c|0)>>>2)<<2);Em(c);return}function xi(a,b){a=a|0;b=b|0;return He(a+8|0,b)|0}function yi(a,b,c){a=a|0;b=b|0;c=c|0;ob(a,b,c);return}function zi(a){a=a|0;ui(a);ui(a+40|0);cm(a+80|0);ui(a+96|0);f[a+136>>2]=0;f[a+140>>2]=0;f[a+144>>2]=0;return}function Ai(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if((f[b+4>>2]|0)==(c|0)?(e=b+28|0,(f[e>>2]|0)!=1):0)f[e>>2]=d;return}function Bi(a,b){a=a|0;b=b|0;if(!b)return 0;else ra(9504,5065,61,9515);return 0}function Ci(a){a=a|0;var b=0;f[a>>2]=2356;b=f[a+20>>2]|0;if(b|0)Em(b);b=f[a+8>>2]|0;if(!b){Em(a);return}Em(b);Em(a);return}function Di(a,c,d){a=a|0;c=c|0;d=d|0;if(!((a|0)==0&(c|0)==0))do{d=d+-1|0;b[d>>0]=a&7|48;a=zj(a|0,c|0,3)|0;c=I}while(!((a|0)==0&(c|0)==0));return d|0}function Ei(a,b){a=a|0;b=b|0;if(!b)return 0;else ra(9504,9099,65,9515);return 0}function Fi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=a+20|0;e=f[d>>2]|0;a=(f[a+16>>2]|0)-e|0;a=a>>>0>c>>>0?c:a;Od(e|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+a;return c|0}function Gi(){var a=0,b=0;a=Yi(24)|0;f[a>>2]=940;f[a+4>>2]=-1;b=a+8|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;return a|0}function Hi(a){a=a|0;f[a>>2]=968;a=a+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[a+24>>2]=0;f[a+28>>2]=0;return}function Ii(a){a=a|0;var c=0;Eh(a);c=a+64|0;f[a+88>>2]=0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;f[c+12>>2]=0;f[c+16>>2]=0;b[c+20>>0]=0;return}function Ji(a){a=a|0;var b=0,c=0;if(!a)return;b=f[a+8>>2]|0;if(b|0){c=a+12|0;if((f[c>>2]|0)!=(b|0))f[c>>2]=b;Em(b)}Em(a);return}function Ki(a){a=a|0;var b=0;f[a>>2]=2404;b=f[a+20>>2]|0;if(b|0)Em(b);b=f[a+8>>2]|0;if(!b){Em(a);return}Em(b);Em(a);return}function Li(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;f[a>>2]=b;b=a+8|0;f[b>>2]=c;f[b+4>>2]=0;d[a+38>>1]=e;e=a+16|0;f[e>>2]=0;f[e+4>>2]=0;return}function Mi(a,b,c){a=a|0;b=$(b);c=c|0;var d=Ka;if((c|0)<1){a=0;return a|0}d=$($(1.0)/$(c|0));n[a+4>>2]=d;n[a>>2]=b;a=1;return a|0}function Ni(a,b,c){a=a|0;b=b|0;c=c|0;return _c(a,b,c)|0}function Oi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;g=u;u=u+16|0;e=g|0;_b(a,b,c,d,e)|0;u=g;return (I=f[e+4>>2]|0,f[e>>2]|0)|0}function Pi(a){a=a|0;f[a>>2]=1924;Jm(a+88|0);Em(a);return}function Qi(a){a=a|0;var b=0;f[a>>2]=2356;b=f[a+20>>2]|0;if(b|0)Em(b);b=f[a+8>>2]|0;if(!b)return;Em(b);return}function Ri(a){a=a|0;jl(a);f[a+16>>2]=0;f[a+20>>2]=0;f[a+12>>2]=a+16;a=a+24|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function Si(a){a=a|0;Dj(a);f[a>>2]=2652;a=a+84|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;return}function Ti(a){a=a|0;f[a>>2]=2008;Jm(a+88|0);Em(a);return}function Ui(a){a=a|0;f[a>>2]=1924;Jm(a+88|0);return}function Vi(){var a=0,b=0;a=u;u=u+16|0;if(!(Ha(16568,3)|0)){b=Fa(f[4143]|0)|0;u=a;return b|0}else xj(15706,a);return 0}function Wi(a){a=a|0;var b=0;f[a>>2]=2404;b=f[a+20>>2]|0;if(b|0)Em(b);b=f[a+8>>2]|0;if(!b)return;Em(b);return}function Xi(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=Xh(e,f)|0;a=I;return (I=(X(b,f)|0)+(X(d,e)|0)+a|a&0,c|0|0)|0}function Yi(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=Xa(b)|0;if(a|0)break;a=Hl()|0;if(!a){a=0;break}Qa[a&3]()}return a|0}function Zi(a){a=a|0;var b=0,c=0;b=u;u=u+16|0;c=b;a=Hm(f[a+60>>2]|0)|0;f[c>>2]=a;a=vk(Ca(6,c|0)|0)|0;u=b;return a|0}function _i(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Mc(b,c,d)|0}function $i(a){a=a|0;var b=0;b=u;u=u+16|0;sb(a);if(!(Ia(f[4143]|0,0)|0)){u=b;return}else xj(15805,b)}function aj(a){a=a|0;f[a>>2]=2008;Jm(a+88|0);return}function bj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _c(b,c,d)|0}function cj(a){a=a|0;kk(a);f[a>>2]=2092;f[a+24>>2]=-1;f[a+28>>2]=0;n[a+32>>2]=$(0.0);return}function dj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ni(b,c,d)|0}function ej(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=b;b=a+8|0;f[b>>2]=c;f[b+4>>2]=0;a=a+16|0;f[a>>2]=0;f[a+4>>2]=0;return}function fj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=u;u=u+16|0;g=e;f[g>>2]=d;d=uf(a,b,c,g)|0;u=e;return d|0}function gj(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;a=a+16|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;return}function hj(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function ij(a,b,c){a=a|0;b=b|0;c=c|0;return jh(a,b,c)|0}function jj(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 Pa[a&15](b|0,c|0,d|0,e|0,f|0,g|0)|0}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return ci(b,c)|0}function lj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ud(b,c,d)|0}function mj(){var a=0;a=u;u=u+16|0;if(!(Ga(16572,83)|0)){u=a;return}else xj(15755,a)}function nj(a){a=a|0;vc(a);Em(a);return}function oj(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;Wa[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function pj(a){a=a|0;if(!(f[a+44>>2]|0))return 0;else return Ma[f[(f[a>>2]|0)+48>>2]&127](a)|0;return 0}function qj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Nf(b,c,d)|0}function rj(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)Cf(a|0,(dm(c)|0)&255|0,b|0)|0;return a|0}function sj(a){a=a|0;return 4}function tj(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b<>>32-c;return a<>2]|0;return Na[f[(f[a>>2]|0)+16>>2]&127](a,b)|0}function vj(a){a=a|0;var c=0;if(!a)return;c=a+4|0;if((b[c+11>>0]|0)<0)Em(f[c>>2]|0);Em(a);return}function wj(a,b){a=a|0;b=b|0;a=f[a+48>>2]|0;return Na[f[(f[a>>2]|0)+12>>2]&127](a,b)|0}function xj(a,b){a=a|0;b=b|0;var c=0;c=u;u=u+16|0;f[c>>2]=b;b=f[678]|0;be(b,a,c)|0;dg(10,b)|0;Da()}function yj(a,b){a=a|0;b=b|0;a=f[a+48>>2]|0;return Na[f[(f[a>>2]|0)+20>>2]&127](a,b)|0}function zj(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){I=b>>>c;return a>>>c|(b&(1<>>c-32|0}function Aj(a,b,c){a=a|0;b=b|0;c=c|0;return Lg(a,b,c)|0}function Bj(a){a=a|0;mc(a);Em(a);return}function Cj(a){a=a|0;return 5}function Dj(a){a=a|0;var b=0;f[a>>2]=2680;a=a+4|0;b=a+80|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function Ej(a){a=a|0;return 6}function Fj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Kg(b,c,d)|0}function Gj(a,b,c){a=a|0;b=b|0;c=c|0;f[a+28>>2]=b;f[a+32>>2]=c;return 1}function Hj(){}function Ij(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (I=b+d+(c>>>0>>0|0)>>>0,c|0)|0}function Jj(a,b){a=a|0;b=b|0;if(!b)b=0;else b=se(f[b>>2]|0,f[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Kj(a,b,c){a=a|0;b=b|0;c=c|0;return kj(a,b,c)|0}function Lj(a,b,c){a=a|0;b=b|0;c=c|0;return ld(b,c)|0}function Mj(a){a=a|0;f[a>>2]=1024;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=-1;f[a+16>>2]=0;return}function Nj(a,b){a=a|0;b=b|0;Zf(a,b);return}function Oj(a){a=a|0;a=a+4|0;if((b[a+11>>0]|0)<0){a=f[a>>2]|0;return a|0}else return a|0;return 0}function Pj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Va[a&3](b|0,c|0,d|0,e|0,f|0)}function Qj(a,b,c){a=a|0;b=b|0;c=c|0;return Og(a,b,c)|0}function Rj(a,b,c){a=a|0;b=b|0;c=c|0;return bf(a,b,c)|0}function Sj(a,b,c){a=a|0;b=b|0;c=c|0;return qf(a,b,c)|0}function Tj(a,b,c){a=a|0;b=b|0;c=c|0;return Qe(a,b,c)|0}function Uj(a,b,c){a=a|0;b=b|0;c=c|0;return +(+nf(a,b,c))}function Vj(a){a=a|0;a=f[a+48>>2]|0;return Ma[f[(f[a>>2]|0)+28>>2]&127](a)|0}function Wj(a,b){a=a|0;b=b|0;return Na[f[(f[a>>2]|0)+12>>2]&127](a,b)|0}function Xj(a,b){a=a|0;b=b|0;return Na[f[(f[a>>2]|0)+56>>2]&127](a,b)|0}function Yj(a){a=a|0;a=f[a+48>>2]|0;return Ma[f[(f[a>>2]|0)+24>>2]&127](a)|0}function Zj(a,b,c){a=a|0;b=b|0;c=c|0;return Wf(a,b,c)|0}function _j(a,b){a=a|0;b=b|0;f[a+4>>2]=b;return 1}function $j(a,b,c){a=a|0;b=b|0;c=c|0;return qk(b,c)|0}function ak(a){a=a|0;a=f[a+48>>2]|0;return Ma[f[(f[a>>2]|0)+36>>2]&127](a)|0}function bk(a,b,c){a=a|0;b=b|0;c=c|0;return rf(a,b,c)|0}function ck(a,b,c){a=a|0;b=b|0;c=c|0;return of(a,b,c)|0}function dk(a){a=a|0;kk(a);f[a>>2]=1808;f[a+24>>2]=-1;return}function ek(a,b){a=a|0;b=b|0;f[a+8>>2]=b;f[a+12>>2]=-1;return 1}function fk(a,b,c){a=a|0;b=b|0;c=c|0;return ue(b,c)|0}function gk(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;I=f[s+4>>2]|0;return b|0}function hk(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 (I=d,a-c>>>0|0)|0}function ik(){var a=0;a=Yi(40)|0;f[a>>2]=-1;gj(a+8|0);return a|0}function jk(){var a=0;a=Yi(8)|0;f[a>>2]=912;f[a+4>>2]=-1;return a|0}function kk(a){a=a|0;Mj(a);f[a>>2]=1132;f[a+20>>2]=0;return}function lk(a,b){a=a|0;b=b|0;Nj(a,b);return}function mk(a,b){a=a|0;b=b|0;return $(n[(f[a+8>>2]|0)+(b<<2)>>2])}function nk(a,b){a=a|0;b=b|0;return Gh(a,b)|0}function ok(a){a=a|0;if((b[a+11>>0]|0)<0)Em(f[a>>2]|0);return}function pk(a){a=a|0;if(!a)return;Ra[f[(f[a>>2]|0)+4>>2]&127](a);return}function qk(a,b){a=a|0;b=b|0;return ch(a,b)|0}function rk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Ua[a&7](b|0,c|0,d|0,e|0)}function sk(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)hi(a|0,b|0,c|0)|0;return a|0}function tk(a){a=a|0;var b=0;b=a+60|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function uk(a,b,c){a=a|0;b=b|0;c=c|0;return ki(b,c)|0}function vk(a){a=a|0;var b=0;if(a>>>0>4294963200){b=rm()|0;f[b>>2]=0-a;a=-1}return a|0}function wk(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Od(a|0,b|0,c|0)|0;return a|0}function xk(a,b){a=a|0;b=b|0;return -1}function yk(a){a=a|0;return 3}function zk(a){a=a|0;var b=0;b=u;u=u+16|0;Qa[a&3]();xj(15858,b)}function Ak(a){a=a|0;if(!a)a=0;else a=(fe(a,800,888,0)|0)!=0;return a&1|0}function Bk(a){a=a|0;Be(a);Em(a);return}function Ck(a){a=a|0;Lk(a);f[a>>2]=2220;f[a+48>>2]=0;return}function Dk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&31](b|0,c|0,d|0)|0}function Ek(a,b,c){a=a|0;b=b|0;c=c|0;ej(a,b,c);return}function Fk(a,b){a=a|0;b=b|0;f[a>>2]=3688;$h(a+4|0,b);return}function Gk(a){a=a|0;if(!a)return;Jm(a+24|0);Em(a);return}function Hk(a,b){a=a|0;b=b|0;return f[(f[a+4>>2]|0)+(b<<2)>>2]|0}function Ik(){var a=0;a=Yi(64)|0;Eh(a);return a|0}function Jk(a,b){a=a|0;b=b|0;return $(Pk(a,b))}function Kk(a){a=a|0;return f[a+8>>2]|0}function Lk(a){a=a|0;gi(a);f[a>>2]=2160;f[a+44>>2]=0;return}function Mk(a){a=a|0;if(!a)return;lf(a);Em(a);return}function Nk(a,b){a=a|0;b=b|0;return ul(a,b)|0}function Ok(a){a=a|0;return b[(f[a+8>>2]|0)+24>>0]|0}function Pk(a,b){a=a|0;b=b|0;return $(n[(f[a>>2]|0)+(b<<2)>>2])}function Qk(a,b,c){a=a|0;b=b|0;c=c|0;if(!(f[a>>2]&32))Te(b,c,a)|0;return}function Rk(a){a=a|0;return (f[a+8>>2]|0)-(f[a+4>>2]|0)>>2|0}function Sk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ta[a&7](b|0,c|0,d|0)}function Tk(){var a=0;a=Yi(96)|0;Ii(a);return a|0}function Uk(a){a=a|0;var b=0;b=u;u=u+a|0;u=u+15&-16;return b|0}function Vk(a){a=a|0;return ((f[a+100>>2]|0)-(f[a+96>>2]|0)|0)/12|0|0}function Wk(a,b){a=a|0;b=b|0;if(!a)a=0;else a=ff(a,b,0)|0;return a|0}function Xk(a){a=a|0;var b=0;b=(Am()|0)+188|0;return xg(a,f[b>>2]|0)|0}function Yk(){var a=0;a=Yi(12)|0;ll(a);return a|0}function Zk(){var a=0;a=Yi(40)|0;ui(a);return a|0}function _k(a,b){a=a|0;b=b|0;return 1}function $k(a,b){a=a|0;b=b|0;return gl(a,b)|0}function al(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(3);return 0}function bl(a){a=a|0;If(a);Em(a);return}function cl(a){a=a|0;n[a>>2]=$(1.0);n[a+4>>2]=$(1.0);return}function dl(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function el(a,b){a=a|0;b=b|0;var c=0;c=ql(a|0)|0;return ((b|0)==0?a:c)|0}function fl(a){a=a|0;return (f[a+12>>2]|0)-(f[a+8>>2]|0)>>2|0}function gl(a,b){a=a|0;b=b|0;return f[(f[a>>2]|0)+(b<<2)>>2]|0}function hl(a,b){a=a|0;b=b|0;f[a+4>>2]=b;return}function il(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return _b(a,b,c,d,0)|0}function jl(a){a=a|0;f[a+4>>2]=0;f[a+8>>2]=0;f[a>>2]=a+4;return}function kl(){var a=0;a=Yi(84)|0;Dj(a);return a|0}function ll(a){a=a|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}function ml(a){a=a|0;return (f[a+4>>2]|0)-(f[a>>2]|0)>>2|0}function nl(a){a=a|0;f[a>>2]=3688;si(a+4|0);return}function ol(a,b,c){a=a|0;b=b|0;c=c|0;return Na[a&127](b|0,c|0)|0}function pl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;aa(10)}function ql(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function rl(a){a=a|0;Lk(a);f[a>>2]=2516;return}function sl(){var a=0;a=Yi(1)|0;Jm(a);return a|0}function tl(a,c){a=a|0;c=c|0;b[a>>0]=b[c>>0]|0;return}function ul(a,b){a=a|0;b=b|0;return f[b+4>>2]|0}function vl(a){a=a|0;return $(n[a+20>>2])}function wl(a){a=a|0;return f[a+4>>2]|0}function xl(a){a=a|0;if(!a)return;Em(a);return}function yl(a,b){a=a|0;b=b|0;if(!x){x=a;y=b}}function zl(a){a=a|0;return a+12|0}function Al(a){a=a|0;return f[a+88>>2]|0}function Bl(a,b,c){a=a|0;b=b|0;c=c|0;Sa[a&7](b|0,c|0)}function Cl(){var a=0;a=Yi(40)|0;Ri(a);return a|0}function Dl(){var a=0;a=Yi(108)|0;Si(a);return a|0}function El(a){a=a|0;return (b[a+32>>0]|0)!=0|0}function Fl(a){a=a|0;return a+-12|0}function Gl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;aa(9)}function Hl(){var a=0;a=f[4144]|0;f[4144]=a+0;return a|0}function Il(a){a=a|0;return gm(a+4|0)|0}function Jl(a){a=a|0;return f[a+56>>2]|0}function Kl(a){a=a|0;Ed(a);Em(a);return}function Ll(a){a=a|0;Jm(a);Em(a);return}function Ml(a){a=a|0;return b[a+24>>0]|0}function Nl(){var a=0;a=f[898]|0;f[898]=a+0;return a|0}function Ol(a,b){a=a|0;b=b|0;return 0}function Pl(a){a=a|0;return f[a+40>>2]|0}function Ql(a){a=a|0;return f[a+48>>2]|0}function Rl(a,b){a=a|0;b=b|0;return Ma[a&127](b|0)|0}function Sl(a){a=a|0;return f[a+60>>2]|0}function Tl(a){a=a|0;return f[a+28>>2]|0}function Ul(a){a=a|0;ta(a|0)|0;oi()}function Vl(a){a=a|0;nl(a);Em(a);return}function Wl(a){a=a|0;Da()}function Xl(a,b){a=a|0;b=b|0;u=a;v=b}function Yl(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Zl(a){a=a|0;return (f[a>>2]|0)==0|0}function _l(a){a=a|0;return f[a+80>>2]|0}function $l(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aa(8)}function am(a,b){a=a|0;b=b|0;Ra[a&127](b|0)}function bm(a,b){a=a|0;b=b|0;return Jj(a,b)|0}function cm(a){a=a|0;b[a+12>>0]=0;return}function dm(a){a=a|0;return a&255|0}function em(a){a=a|0;f[a>>2]=0;return}function fm(a,b,c){a=a|0;b=b|0;c=c|0;aa(2);return 0}function gm(a){a=a|0;return f[a>>2]|0}function hm(a){a=a|0;return 2}function im(a){a=a|0;return 1}function jm(a,b){a=+a;b=b|0;return +(+tg(a,b))}function km(){return 3}function lm(a,b,c){a=a|0;b=b|0;c=c|0;aa(7)}function mm(){return -4}function nm(){return 4}function om(){return -3}function pm(){return 1}function qm(){return 2}function rm(){return (Am()|0)+64|0}function sm(){return -5}function tm(a,b){a=a|0;b=b|0;aa(1);return 0}function um(a){a=a|0;Qa[a&3]()}function vm(){return -2}function wm(){va()}function xm(){return -1}function ym(a,b){a=a|0;b=b|0;aa(6)}function zm(){return 0}function Am(){return Om()|0}function Bm(a){a=a|0;return Yi(a)|0}function Cm(a){a=a|0;Em(a);return}function Dm(a){a=a|0;u=a}function Em(a){a=a|0;sb(a);return}function Fm(a){a=a|0;I=a}function Gm(){return 16504}function Hm(a){a=a|0;return a|0}function Im(a){a=a|0;aa(0);return 0}function Jm(a){a=a|0;return}function Km(a){a=a|0;return 0}function Lm(){return I|0}function Mm(){return u|0}function Nm(a){a=a|0;aa(5)}function Om(){return 2840}function Pm(){aa(4)} +function Xa(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+16|0;n=x;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=f[4002]|0;c=m>>>a;if(c&3|0){d=(c&1^1)+a|0;e=16048+(d<<1<<2)|0;b=e+8|0;a=f[b>>2]|0;g=a+8|0;c=f[g>>2]|0;if((e|0)==(c|0))f[4002]=m&~(1<>2]=e;f[b>>2]=c}w=d<<3;f[a+4>>2]=w|3;w=a+w+4|0;f[w>>2]=f[w>>2]|1;w=g;u=x;return w|0}l=f[4004]|0;if(k>>>0>l>>>0){if(c|0){h=2<>>12&16;c=c>>>h;a=c>>>5&8;c=c>>>a;e=c>>>2&4;c=c>>>e;b=c>>>1&2;c=c>>>b;d=c>>>1&1;d=(a|h|e|b|d)+(c>>>d)|0;c=16048+(d<<1<<2)|0;b=c+8|0;e=f[b>>2]|0;h=e+8|0;a=f[h>>2]|0;if((c|0)==(a|0)){a=m&~(1<>2]=c;f[b>>2]=a;a=m}g=(d<<3)-k|0;f[e+4>>2]=k|3;e=e+k|0;f[e+4>>2]=g|1;f[e+g>>2]=g;if(l|0){d=f[4007]|0;b=l>>>3;c=16048+(b<<1<<2)|0;b=1<>2]|0}f[b>>2]=d;f[a+12>>2]=d;f[d+8>>2]=a;f[d+12>>2]=c}f[4004]=g;f[4007]=e;w=h;u=x;return w|0}i=f[4003]|0;if(i){c=(i&0-i)+-1|0;h=c>>>12&16;c=c>>>h;g=c>>>5&8;c=c>>>g;j=c>>>2&4;c=c>>>j;a=c>>>1&2;c=c>>>a;d=c>>>1&1;d=f[16312+((g|h|j|a|d)+(c>>>d)<<2)>>2]|0;c=(f[d+4>>2]&-8)-k|0;a=f[d+16+(((f[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!a){j=c;h=d}else{do{h=(f[a+4>>2]&-8)-k|0;j=h>>>0>>0;c=j?h:c;d=j?a:d;a=f[a+16+(((f[a+16>>2]|0)==0&1)<<2)>>2]|0}while((a|0)!=0);j=c;h=d}g=h+k|0;if(h>>>0>>0){e=f[h+24>>2]|0;b=f[h+12>>2]|0;do if((b|0)==(h|0)){a=h+20|0;b=f[a>>2]|0;if(!b){a=h+16|0;b=f[a>>2]|0;if(!b){c=0;break}}while(1){d=b+20|0;c=f[d>>2]|0;if(c|0){b=c;a=d;continue}d=b+16|0;c=f[d>>2]|0;if(!c)break;else{b=c;a=d}}f[a>>2]=0;c=b}else{c=f[h+8>>2]|0;f[c+12>>2]=b;f[b+8>>2]=c;c=b}while(0);do if(e|0){b=f[h+28>>2]|0;a=16312+(b<<2)|0;if((h|0)==(f[a>>2]|0)){f[a>>2]=c;if(!c){f[4003]=i&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=e;b=f[h+16>>2]|0;if(b|0){f[c+16>>2]=b;f[b+24>>2]=c}b=f[h+20>>2]|0;if(b|0){f[c+20>>2]=b;f[b+24>>2]=c}}while(0);if(j>>>0<16){w=j+k|0;f[h+4>>2]=w|3;w=h+w+4|0;f[w>>2]=f[w>>2]|1}else{f[h+4>>2]=k|3;f[g+4>>2]=j|1;f[g+j>>2]=j;if(l|0){d=f[4007]|0;b=l>>>3;c=16048+(b<<1<<2)|0;b=1<>2]|0}f[b>>2]=d;f[a+12>>2]=d;f[d+8>>2]=a;f[d+12>>2]=c}f[4004]=j;f[4007]=g}w=h+8|0;u=x;return w|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;d=f[4003]|0;if(d){c=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{m=(a+1048320|0)>>>16&8;v=a<>>16&4;v=v<>>16&2;j=14-(l|m|j)+(v<>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;a=f[16312+(j<<2)>>2]|0;a:do if(!a){e=0;a=0;v=57}else{e=0;h=k<<((j|0)==31?0:25-(j>>>1)|0);i=a;a=0;while(1){g=(f[i+4>>2]&-8)-k|0;if(g>>>0>>0)if(!g){c=0;e=i;a=i;v=61;break a}else{c=g;a=i}g=f[i+20>>2]|0;i=f[i+16+(h>>>31<<2)>>2]|0;e=(g|0)==0|(g|0)==(i|0)?e:g;g=(i|0)==0;if(g){v=57;break}else h=h<<((g^1)&1)}}while(0);if((v|0)==57){if((e|0)==0&(a|0)==0){a=2<>>12&16;a=a>>>j;i=a>>>5&8;a=a>>>i;l=a>>>2&4;a=a>>>l;m=a>>>1&2;a=a>>>m;e=a>>>1&1;e=f[16312+((i|j|l|m|e)+(a>>>e)<<2)>>2]|0;a=0}if(!e){i=c;j=a}else v=61}if((v|0)==61)while(1){v=0;l=(f[e+4>>2]&-8)-k|0;m=l>>>0>>0;c=m?l:c;a=m?e:a;e=f[e+16+(((f[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){i=c;j=a;break}else v=61}if((j|0)!=0?i>>>0<((f[4004]|0)-k|0)>>>0:0){h=j+k|0;if(j>>>0>=h>>>0){w=0;u=x;return w|0}g=f[j+24>>2]|0;b=f[j+12>>2]|0;do if((b|0)==(j|0)){a=j+20|0;b=f[a>>2]|0;if(!b){a=j+16|0;b=f[a>>2]|0;if(!b){b=0;break}}while(1){e=b+20|0;c=f[e>>2]|0;if(c|0){b=c;a=e;continue}e=b+16|0;c=f[e>>2]|0;if(!c)break;else{b=c;a=e}}f[a>>2]=0}else{w=f[j+8>>2]|0;f[w+12>>2]=b;f[b+8>>2]=w}while(0);do if(g){a=f[j+28>>2]|0;c=16312+(a<<2)|0;if((j|0)==(f[c>>2]|0)){f[c>>2]=b;if(!b){d=d&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=b;if(!b)break}f[b+24>>2]=g;a=f[j+16>>2]|0;if(a|0){f[b+16>>2]=a;f[a+24>>2]=b}a=f[j+20>>2]|0;if(a){f[b+20>>2]=a;f[a+24>>2]=b}}while(0);do if(i>>>0>=16){f[j+4>>2]=k|3;f[h+4>>2]=i|1;f[h+i>>2]=i;b=i>>>3;if(i>>>0<256){c=16048+(b<<1<<2)|0;a=f[4002]|0;b=1<>2]|0}f[b>>2]=h;f[a+12>>2]=h;f[h+8>>2]=a;f[h+12>>2]=c;break}b=i>>>8;if(b)if(i>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;b=14-(t|v|b)+(w<>>15)|0;b=i>>>(b+7|0)&1|b<<1}else b=0;c=16312+(b<<2)|0;f[h+28>>2]=b;a=h+16|0;f[a+4>>2]=0;f[a>>2]=0;a=1<>2]=h;f[h+24>>2]=c;f[h+12>>2]=h;f[h+8>>2]=h;break}a=i<<((b|0)==31?0:25-(b>>>1)|0);c=f[c>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(i|0)){v=97;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=96;break}else{a=a<<1;c=b}}if((v|0)==96){f[d>>2]=h;f[h+24>>2]=c;f[h+12>>2]=h;f[h+8>>2]=h;break}else if((v|0)==97){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=h;f[v>>2]=h;f[h+8>>2]=w;f[h+12>>2]=c;f[h+24>>2]=0;break}}else{w=i+k|0;f[j+4>>2]=w|3;w=j+w+4|0;f[w>>2]=f[w>>2]|1}while(0);w=j+8|0;u=x;return w|0}else m=k}else m=k}else m=-1;while(0);c=f[4004]|0;if(c>>>0>=m>>>0){a=c-m|0;b=f[4007]|0;if(a>>>0>15){w=b+m|0;f[4007]=w;f[4004]=a;f[w+4>>2]=a|1;f[w+a>>2]=a;f[b+4>>2]=m|3}else{f[4004]=0;f[4007]=0;f[b+4>>2]=c|3;w=b+c+4|0;f[w>>2]=f[w>>2]|1}w=b+8|0;u=x;return w|0}h=f[4005]|0;if(h>>>0>m>>>0){t=h-m|0;f[4005]=t;w=f[4008]|0;v=w+m|0;f[4008]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}if(!(f[4120]|0)){f[4122]=4096;f[4121]=4096;f[4123]=-1;f[4124]=-1;f[4125]=0;f[4113]=0;a=n&-16^1431655768;f[n>>2]=a;f[4120]=a;a=4096}else a=f[4122]|0;i=m+48|0;j=m+47|0;g=a+j|0;d=0-a|0;k=g&d;if(k>>>0<=m>>>0){w=0;u=x;return w|0}a=f[4112]|0;if(a|0?(l=f[4110]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){w=0;u=x;return w|0}b:do if(!(f[4113]&4)){c=f[4008]|0;c:do if(c){e=16456;while(1){a=f[e>>2]|0;if(a>>>0<=c>>>0?(q=e+4|0,(a+(f[q>>2]|0)|0)>>>0>c>>>0):0)break;a=f[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=g-h&d;if(b>>>0<2147483647){a=Bh(b|0)|0;if((a|0)==((f[e>>2]|0)+(f[q>>2]|0)|0)){if((a|0)!=(-1|0)){h=a;g=b;v=135;break b}}else{d=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){c=Bh(0)|0;if((c|0)!=(-1|0)?(b=c,o=f[4121]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=f[4110]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){q=f[4112]|0;if(q|0?p>>>0<=o>>>0|p>>>0>q>>>0:0){b=0;break}a=Bh(b|0)|0;if((a|0)==(c|0)){h=c;g=b;v=135;break b}else{d=a;v=126}}else b=0}while(0);do if((v|0)==126){c=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(d|0)!=(-1|0))))if((d|0)==(-1|0)){b=0;break}else{h=d;g=b;v=135;break b}a=f[4122]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=d;g=b;v=135;break b}if((Bh(a|0)|0)==(-1|0)){Bh(c|0)|0;b=0;break}else{h=d;g=a+b|0;v=135;break b}}while(0);f[4113]=f[4113]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?k>>>0<2147483647:0)?(r=Bh(k|0)|0,q=Bh(0)|0,t=q-r|0,s=t>>>0>(m+40|0)>>>0,!((r|0)==(-1|0)|s^1|r>>>0>>0&((r|0)!=(-1|0)&(q|0)!=(-1|0))^1)):0){h=r;g=s?t:b;v=135}if((v|0)==135){b=(f[4110]|0)+g|0;f[4110]=b;if(b>>>0>(f[4111]|0)>>>0)f[4111]=b;j=f[4008]|0;do if(j){e=16456;while(1){b=f[e>>2]|0;d=e+4|0;a=f[d>>2]|0;if((h|0)==(b+a|0)){v=145;break}c=f[e+8>>2]|0;if(!c)break;else e=c}if(((v|0)==145?(f[e+12>>2]&8|0)==0:0)?j>>>0>>0&j>>>0>=b>>>0:0){f[d>>2]=a+g;w=j+8|0;w=(w&7|0)==0?0:0-w&7;v=j+w|0;w=(f[4005]|0)+(g-w)|0;f[4008]=v;f[4005]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[4009]=f[4124];break}if(h>>>0<(f[4006]|0)>>>0)f[4006]=h;c=h+g|0;a=16456;while(1){if((f[a>>2]|0)==(c|0)){v=153;break}b=f[a+8>>2]|0;if(!b)break;else a=b}if((v|0)==153?(f[a+12>>2]&8|0)==0:0){f[a>>2]=h;l=a+4|0;f[l>>2]=(f[l>>2]|0)+g;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;b=c+8|0;b=c+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;f[l+4>>2]=m|3;do if((b|0)!=(j|0)){if((b|0)==(f[4007]|0)){w=(f[4004]|0)+i|0;f[4004]=w;f[4007]=k;f[k+4>>2]=w|1;f[k+w>>2]=w;break}a=f[b+4>>2]|0;if((a&3|0)==1){h=a&-8;d=a>>>3;d:do if(a>>>0<256){a=f[b+8>>2]|0;c=f[b+12>>2]|0;if((c|0)==(a|0)){f[4002]=f[4002]&~(1<>2]=c;f[c+8>>2]=a;break}}else{g=f[b+24>>2]|0;a=f[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;c=d+4|0;a=f[c>>2]|0;if(!a){a=f[d>>2]|0;if(!a){a=0;break}else e=d}else e=c;while(1){d=a+20|0;c=f[d>>2]|0;if(c|0){a=c;e=d;continue}d=a+16|0;c=f[d>>2]|0;if(!c)break;else{a=c;e=d}}f[e>>2]=0}else{w=f[b+8>>2]|0;f[w+12>>2]=a;f[a+8>>2]=w}while(0);if(!g)break;c=f[b+28>>2]|0;d=16312+(c<<2)|0;do if((b|0)!=(f[d>>2]|0)){f[g+16+(((f[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{f[d>>2]=a;if(a|0)break;f[4003]=f[4003]&~(1<>2]=g;d=b+16|0;c=f[d>>2]|0;if(c|0){f[a+16>>2]=c;f[c+24>>2]=a}c=f[d+4>>2]|0;if(!c)break;f[a+20>>2]=c;f[c+24>>2]=a}while(0);b=b+h|0;e=h+i|0}else e=i;b=b+4|0;f[b>>2]=f[b>>2]&-2;f[k+4>>2]=e|1;f[k+e>>2]=e;b=e>>>3;if(e>>>0<256){c=16048+(b<<1<<2)|0;a=f[4002]|0;b=1<>2]|0}f[b>>2]=k;f[a+12>>2]=k;f[k+8>>2]=a;f[k+12>>2]=c;break}b=e>>>8;do if(!b)a=0;else{if(e>>>0>16777215){a=31;break}v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;a=14-(t|v|a)+(w<>>15)|0;a=e>>>(a+7|0)&1|a<<1}while(0);d=16312+(a<<2)|0;f[k+28>>2]=a;b=k+16|0;f[b+4>>2]=0;f[b>>2]=0;b=f[4003]|0;c=1<>2]=k;f[k+24>>2]=d;f[k+12>>2]=k;f[k+8>>2]=k;break}a=e<<((a|0)==31?0:25-(a>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){v=194;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=193;break}else{a=a<<1;c=b}}if((v|0)==193){f[d>>2]=k;f[k+24>>2]=c;f[k+12>>2]=k;f[k+8>>2]=k;break}else if((v|0)==194){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=k;f[v>>2]=k;f[k+8>>2]=w;f[k+12>>2]=c;f[k+24>>2]=0;break}}else{w=(f[4005]|0)+i|0;f[4005]=w;f[4008]=k;f[k+4>>2]=w|1}while(0);w=l+8|0;u=x;return w|0}a=16456;while(1){b=f[a>>2]|0;if(b>>>0<=j>>>0?(w=b+(f[a+4>>2]|0)|0,w>>>0>j>>>0):0)break;a=f[a+8>>2]|0}e=w+-47|0;a=e+8|0;a=e+((a&7|0)==0?0:0-a&7)|0;e=j+16|0;a=a>>>0>>0?j:a;b=a+8|0;c=h+8|0;c=(c&7|0)==0?0:0-c&7;v=h+c|0;c=g+-40-c|0;f[4008]=v;f[4005]=c;f[v+4>>2]=c|1;f[v+c+4>>2]=40;f[4009]=f[4124];c=a+4|0;f[c>>2]=27;f[b>>2]=f[4114];f[b+4>>2]=f[4115];f[b+8>>2]=f[4116];f[b+12>>2]=f[4117];f[4114]=h;f[4115]=g;f[4117]=0;f[4116]=b;b=a+24|0;do{v=b;b=b+4|0;f[b>>2]=7}while((v+8|0)>>>0>>0);if((a|0)!=(j|0)){g=a-j|0;f[c>>2]=f[c>>2]&-2;f[j+4>>2]=g|1;f[a>>2]=g;b=g>>>3;if(g>>>0<256){c=16048+(b<<1<<2)|0;a=f[4002]|0;b=1<>2]|0}f[b>>2]=j;f[a+12>>2]=j;f[j+8>>2]=a;f[j+12>>2]=c;break}b=g>>>8;if(b)if(g>>>0>16777215)c=31;else{v=(b+1048320|0)>>>16&8;w=b<>>16&4;w=w<>>16&2;c=14-(t|v|c)+(w<>>15)|0;c=g>>>(c+7|0)&1|c<<1}else c=0;d=16312+(c<<2)|0;f[j+28>>2]=c;f[j+20>>2]=0;f[e>>2]=0;b=f[4003]|0;a=1<>2]=j;f[j+24>>2]=d;f[j+12>>2]=j;f[j+8>>2]=j;break}a=g<<((c|0)==31?0:25-(c>>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(g|0)){v=216;break}d=c+16+(a>>>31<<2)|0;b=f[d>>2]|0;if(!b){v=215;break}else{a=a<<1;c=b}}if((v|0)==215){f[d>>2]=j;f[j+24>>2]=c;f[j+12>>2]=j;f[j+8>>2]=j;break}else if((v|0)==216){v=c+8|0;w=f[v>>2]|0;f[w+12>>2]=j;f[v>>2]=j;f[j+8>>2]=w;f[j+12>>2]=c;f[j+24>>2]=0;break}}}else{w=f[4006]|0;if((w|0)==0|h>>>0>>0)f[4006]=h;f[4114]=h;f[4115]=g;f[4117]=0;f[4011]=f[4120];f[4010]=-1;b=0;do{w=16048+(b<<1<<2)|0;f[w+12>>2]=w;f[w+8>>2]=w;b=b+1|0}while((b|0)!=32);w=h+8|0;w=(w&7|0)==0?0:0-w&7;v=h+w|0;w=g+-40-w|0;f[4008]=v;f[4005]=w;f[v+4>>2]=w|1;f[v+w+4>>2]=40;f[4009]=f[4124]}while(0);b=f[4005]|0;if(b>>>0>m>>>0){t=b-m|0;f[4005]=t;w=f[4008]|0;v=w+m|0;f[4008]=v;f[v+4>>2]=t|1;f[w+4>>2]=m|3;w=w+8|0;u=x;return w|0}}w=rm()|0;f[w>>2]=12;w=0;u=x;return w|0}function Ya(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0;fa=u;u=u+80|0;Z=fa+56|0;ca=fa+40|0;da=fa+16|0;aa=fa+4|0;I=fa+36|0;U=fa;f[ca>>2]=0;ea=ca+4|0;f[ea>>2]=0;f[ca+8>>2]=0;f[da>>2]=0;f[da+4>>2]=0;f[da+8>>2]=0;f[da+12>>2]=0;n[da+16>>2]=$(1.0);f[aa>>2]=0;ba=aa+4|0;f[ba>>2]=0;f[aa+8>>2]=0;J=(f[a+212>>2]|0)==(f[a+216>>2]|0);_=a+120|0;S=f[a+124>>2]|0;a:do if((c|0)>0){R=a+224|0;H=a+396|0;K=a+392|0;x=a+8|0;E=ca+8|0;Q=a+36|0;C=a+40|0;P=c+-1|0;A=a+420|0;B=a+408|0;D=da+4|0;z=a+380|0;F=aa+8|0;w=0;while(1){h=w+1|0;d=f[H>>2]|0;b:do if((d|0)==-1){f[K>>2]=7;T=92}else{t=(f[A>>2]|0)+(d<<2)|0;v=f[t>>2]|0;d=v+-1|0;f[t>>2]=d;if((v|0)<1){d=-1;T=172;break a}d=f[(f[(f[B>>2]|0)+((f[H>>2]|0)*12|0)>>2]|0)+(d<<2)>>2]|0;e=f[2488+(d<<2)>>2]|0;f[K>>2]=e;if(!d){d=f[ea>>2]|0;if((f[ca>>2]|0)==(d|0)){d=-1;T=172;break a}v=d+-4|0;o=f[v>>2]|0;t=f[x>>2]|0;m=(o|0)<0;e=o+1|0;if(!m?(M=((e|0)%3|0|0)==0?o+-2|0:e,(M|0)>=0):0)s=f[(f[t>>2]|0)+(M<<2)>>2]|0;else s=-1073741824;q=f[t+24>>2]|0;i=f[q+(s<<2)>>2]|0;e=i+1|0;r=q;if((i|0)>=0)i=((e|0)%3|0|0)==0?i+-2|0:e;p=w*3|0;j=p+1|0;k=f[t+12>>2]|0;f[k+(o<<2)>>2]=j;f[k+(j<<2)>>2]=o;l=p+2|0;f[k+(i<<2)>>2]=l;f[k+(l<<2)>>2]=i;k=f[t>>2]|0;f[k+(p<<2)>>2]=s;e=i+1|0;if((i|0)>=0?(N=((e|0)%3|0|0)==0?i+-2|0:e,(N|0)>=0):0)e=f[k+(N<<2)>>2]|0;else e=-1073741824;f[k+(j<<2)>>2]=e;if(!m?(L=(((o>>>0)%3|0|0)==0?2:-1)+o|0,(L|0)>=0):0){e=f[k+(L<<2)>>2]|0;f[k+(l<<2)>>2]=e;if((e|0)!=-1073741824){i=l;e=q+(e<<2)|0;T=22}}else{i=-1073741824;e=k+(l<<2)|0;T=22}if((T|0)==22){T=0;f[e>>2]=i}if(((f[t+28>>2]|0)-r>>2|0)>(S|0)){d=-1;T=172;break a}t=(f[_>>2]|0)+(s>>>5<<2)|0;f[t>>2]=f[t>>2]&~(1<<(s&31));f[v>>2]=p}else{i=(d|0)==3;switch(e|0){case 7:{T=92;break b}case 3:case 5:{d=f[ea>>2]|0;if((f[ca>>2]|0)==(d|0)){d=-1;T=172;break a}m=f[d+-4>>2]|0;p=w*3|0;l=i?p:p+2|0;o=(i&1)+p|0;j=(i?2:1)+p|0;v=f[x>>2]|0;i=f[v+12>>2]|0;f[i+(j<<2)>>2]=m;f[i+(m<<2)>>2]=j;i=v+24|0;e=v+28|0;d=f[e>>2]|0;if((d|0)==(f[v+32>>2]|0)){hf(i,2320);d=f[e>>2]|0}else{f[d>>2]=-1073741824;d=d+4|0;f[e>>2]=d}d=(d-(f[i>>2]|0)>>2)+-1|0;i=f[x>>2]|0;k=f[i>>2]|0;f[k+(j<<2)>>2]=d;if((d|0)!=-1073741824)f[(f[i+24>>2]|0)+(d<<2)>>2]=j;if((m|0)>=0){d=(((m>>>0)%3|0|0)==0?2:-1)+m|0;if((d|0)>=0){d=f[k+(d<<2)>>2]|0;f[k+(l<<2)>>2]=d;if((d|0)!=-1073741824){e=l;d=(f[i+24>>2]|0)+(d<<2)|0;T=38}}else{e=-1073741824;d=k+(l<<2)|0;T=38}if((T|0)==38)f[d>>2]=e;d=m+1|0;d=((d|0)%3|0|0)==0?m+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[k+(d<<2)>>2]|0}else{f[k+(l<<2)>>2]=-1073741824;d=-1073741824}f[k+(o<<2)>>2]=d;T=f[ea>>2]|0;f[T+-4>>2]=p;f[I>>2]=f[T+-4>>2];f[Z>>2]=f[I>>2];ec(R,Z);T=110;break b}case 1:break;default:{d=-1;T=172;break a}}e=f[ca>>2]|0;d=f[ea>>2]|0;if((e|0)==(d|0)){d=-1;T=172;break a}o=d+-4|0;v=f[o>>2]|0;f[ea>>2]=o;l=f[D>>2]|0;c:do if(l){k=l+-1|0;j=(k&l|0)==0;if(!j)if(w>>>0>>0)m=w;else m=(w>>>0)%(l>>>0)|0;else m=k&w;i=f[(f[da>>2]|0)+(m<<2)>>2]|0;if((i|0)!=0?(G=f[i>>2]|0,(G|0)!=0):0){d:do if(j){i=G;while(1){t=f[i+4>>2]|0;j=(t|0)==(w|0);if(!(j|(t&k|0)==(m|0))){d=o;break c}if(j?(f[i+8>>2]|0)==(w|0):0)break d;i=f[i>>2]|0;if(!i){d=o;break c}}}else{i=G;while(1){j=f[i+4>>2]|0;if((j|0)==(w|0)){if((f[i+8>>2]|0)==(w|0))break d}else{if(j>>>0>=l>>>0)j=(j>>>0)%(l>>>0)|0;if((j|0)!=(m|0)){d=o;break c}}i=f[i>>2]|0;if(!i){d=o;break c}}}while(0);i=i+12|0;if((o|0)==(f[E>>2]|0)){hf(ca,i);e=f[ca>>2]|0;d=f[ea>>2]|0;break}else{f[o>>2]=f[i>>2];f[ea>>2]=d;break}}else d=o}else d=o;while(0);if((e|0)==(d|0)){d=-1;T=172;break a}i=f[d+-4>>2]|0;t=w*3|0;m=t+2|0;q=f[x>>2]|0;s=f[q+12>>2]|0;f[s+(i<<2)>>2]=m;f[s+(m<<2)>>2]=i;l=t+1|0;f[s+(v<<2)>>2]=l;f[s+(l<<2)>>2]=v;if((i|0)>=0){e=(((i>>>0)%3|0|0)==0?2:-1)+i|0;if((e|0)<0)k=-1073741824;else k=f[(f[q>>2]|0)+(e<<2)>>2]|0;j=f[q>>2]|0;f[j+(t<<2)>>2]=k;e=i+1|0;e=((e|0)%3|0|0)==0?i+-2|0:e;if((e|0)<0){o=j;p=q;e=-1073741824;r=k}else{o=j;p=q;e=f[j+(e<<2)>>2]|0;r=k}}else{o=f[q>>2]|0;f[o+(t<<2)>>2]=-1073741824;p=q;e=-1073741824;r=-1073741824}f[o+(l<<2)>>2]=e;if((v|0)>=0){e=(((v>>>0)%3|0|0)==0?2:-1)+v|0;if((e|0)>=0){e=f[o+(e<<2)>>2]|0;f[o+(m<<2)>>2]=e;if((e|0)!=-1073741824){i=m;e=(f[q+24>>2]|0)+(e<<2)|0;T=77}}else{i=-1073741824;e=o+(m<<2)|0;T=77}if((T|0)==77){T=0;f[e>>2]=i}i=v+1|0;i=((i|0)%3|0|0)==0?v+-2|0:i;if((i|0)<0){e=i;i=-1073741824}else{e=i;i=f[o+(i<<2)>>2]|0}}else{f[o+(m<<2)>>2]=-1073741824;e=v;i=-1073741824}f[Z>>2]=i;v=f[z>>2]|0;k=v+(r<<2)|0;f[k>>2]=(f[k>>2]|0)+(f[v+(i<<2)>>2]|0);k=f[q+24>>2]|0;if((r|0)!=-1073741824)f[k+(r<<2)>>2]=f[k+(f[Z>>2]<<2)>>2];e:do if((e|0)>-1){j=f[p>>2]|0;do{f[j+(e<<2)>>2]=r;v=e+1|0;e=((v|0)%3|0|0)==0?e+-2|0:v;if((e|0)<0)break e;i=f[s+(e<<2)>>2]|0;e=i+1|0;if((i|0)<0)break e;e=((e|0)%3|0|0)==0?i+-2|0:e}while((e|0)>-1)}while(0);f[k+(f[Z>>2]<<2)>>2]=-1073741824;do if(J){e=f[ba>>2]|0;if((e|0)==(f[F>>2]|0)){hf(aa,Z);d=f[ea>>2]|0;break}else{f[e>>2]=f[Z>>2];f[ba>>2]=e+4;break}}while(0);f[d+-4>>2]=t}f[I>>2]=f[d+-4>>2];f[Z>>2]=f[I>>2];ec(R,Z)}while(0);if((T|0)==92){T=0;f[Z>>2]=w*3;v=f[x>>2]|0;i=v+24|0;e=v+28|0;d=f[e>>2]|0;if((d|0)==(f[v+32>>2]|0)){hf(i,2320);d=f[e>>2]|0}else{f[d>>2]=-1073741824;d=d+4|0;f[e>>2]=d}o=d-(f[i>>2]|0)>>2;m=o+-1|0;j=f[x>>2]|0;k=f[Z>>2]|0;d=f[j>>2]|0;f[d+(k<<2)>>2]=m;l=j+24|0;i=j+28|0;e=f[i>>2]|0;if((e|0)==(f[j+32>>2]|0)){hf(l,2320);e=f[i>>2]|0;d=f[j>>2]|0}else{f[e>>2]=-1073741824;e=e+4|0;f[i>>2]=e}f[d+(k+1<<2)>>2]=(e-(f[l>>2]|0)>>2)+-1;i=f[x>>2]|0;j=(f[Z>>2]|0)+2|0;k=i+24|0;e=i+28|0;d=f[e>>2]|0;if((d|0)==(f[i+32>>2]|0)){hf(k,2320);d=f[e>>2]|0}else{f[d>>2]=-1073741824;d=d+4|0;f[e>>2]=d}f[(f[i>>2]|0)+(j<<2)>>2]=(d-(f[k>>2]|0)>>2)+-1;if((m|0)!=-1073741824){e=f[(f[x>>2]|0)+24>>2]|0;f[e+(m<<2)>>2]=f[Z>>2];f[e+(o<<2)>>2]=(f[Z>>2]|0)+1;d=o+1|0;if((d|0)!=-1073741824)T=104}else{e=f[(f[x>>2]|0)+24>>2]|0;f[e+(o<<2)>>2]=(f[Z>>2]|0)+1;d=-1073741822;T=104}if((T|0)==104)f[e+(d<<2)>>2]=(f[Z>>2]|0)+2;d=f[ea>>2]|0;if((d|0)==(f[E>>2]|0)){hf(ca,Z);d=f[ea>>2]|0}else{f[d>>2]=f[Z>>2];d=d+4|0;f[ea>>2]=d}f[I>>2]=f[d+-4>>2];f[Z>>2]=f[I>>2];ec(R,Z);T=110}f:do if((T|0)==110?(T=0,O=c-w+-1|0,y=f[C>>2]|0,(y|0)!=(f[Q>>2]|0)):0){d=y;do{e=f[d+-8>>2]|0;if(e>>>0>O>>>0){d=-1;T=172;break a}if((e|0)!=(O|0))break f;e=b[d+-4>>0]|0;j=f[d+-12>>2]|0;f[C>>2]=d+-12;if((j|0)<0){d=-1;T=172;break a}d=f[(f[ea>>2]|0)+-4>>2]|0;i=(d|0)<0;do if(!(e&1)){if(!i)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}else{e=d+1|0;if(!i)d=((e|0)%3|0|0)==0?d+-2|0:e}while(0);f[Z>>2]=P-j;w=lc(da,Z)|0;f[w>>2]=d;d=f[C>>2]|0}while((d|0)!=(f[Q>>2]|0))}while(0);if((h|0)<(c|0))w=h;else{T=123;break}}}else{x=a+8|0;h=0;T=123}while(0);g:do if((T|0)==123){d=f[x>>2]|0;if(((f[d+28>>2]|0)-(f[d+24>>2]|0)>>2|0)<=(S|0)){e=f[ea>>2]|0;do if((e|0)!=(f[ca>>2]|0)){q=a+304|0;w=a+60|0;v=a+64|0;s=a+68|0;r=a+76|0;t=a+80|0;p=a+72|0;h:while(1){a=e;f[Z>>2]=f[a+-4>>2];f[ea>>2]=a+-4;do if(!(Rg(q)|0)){d=f[v>>2]|0;e=f[s>>2]|0;if((d|0)==(e<<5|0)){if((d+1|0)<0){T=151;break h}a=e<<6;T=d+32&-32;Me(w,d>>>0<1073741823?(a>>>0>>0?T:a):2147483647);d=f[v>>2]|0}f[v>>2]=d+1;a=(f[w>>2]|0)+(d>>>5<<2)|0;f[a>>2]=f[a>>2]&~(1<<(d&31));d=f[r>>2]|0;if((d|0)==(f[t>>2]|0)){hf(p,Z);d=h;break}else{f[d>>2]=f[Z>>2];f[r>>2]=d+4;d=h;break}}else{k=f[x>>2]|0;a=f[k>>2]|0;o=a;if((h|0)>=(((f[k+4>>2]|0)-a>>2>>>0)/3|0|0)){T=157;break h}l=f[Z>>2]|0;d=l+1|0;if((l|0)>=0?(Y=((d|0)%3|0|0)==0?l+-2|0:d,(Y|0)>=0):0)m=f[o+(Y<<2)>>2]|0;else m=-1073741824;i=f[k+24>>2]|0;e=f[i+(m<<2)>>2]|0;d=e+1|0;if((e|0)>=0){e=((d|0)%3|0|0)==0?e+-2|0:d;d=e+1|0;if((e|0)>=0?(X=((d|0)%3|0|0)==0?e+-2|0:d,(X|0)>=0):0)j=f[o+(X<<2)>>2]|0;else j=-1073741824}else j=-1073741824;d=f[i+(j<<2)>>2]|0;i=d+1|0;if((d|0)>=0){d=((i|0)%3|0|0)==0?d+-2|0:i;i=d+1|0;if((d|0)>=0?(W=((i|0)%3|0|0)==0?d+-2|0:i,(W|0)>=0):0)i=f[o+(W<<2)>>2]|0;else i=-1073741824}else i=-1073741824;T=h*3|0;f[U>>2]=T;a=f[k+12>>2]|0;f[a+(T<<2)>>2]=l;f[a+(l<<2)>>2]=T;T=(f[U>>2]|0)+1|0;f[a+(T<<2)>>2]=e;f[a+(e<<2)>>2]=T;T=(f[U>>2]|0)+2|0;f[a+(T<<2)>>2]=d;f[a+(d<<2)>>2]=T;a=f[U>>2]|0;d=o+(a<<2)|0;f[d>>2]=j;f[o+(a+1<<2)>>2]=i;f[o+(a+2<<2)>>2]=m;if((a|0)<0)d=-1073741824;else d=f[d>>2]|0;e=f[_>>2]|0;a=e+(d>>>5<<2)|0;f[a>>2]=f[a>>2]&~(1<<(d&31));d=f[U>>2]|0;if((d|0)<-1)d=-1073741824;else d=f[o+(d+1<<2)>>2]|0;a=e+(d>>>5<<2)|0;f[a>>2]=f[a>>2]&~(1<<(d&31));d=f[U>>2]|0;if((d|0)<-2)d=-1073741824;else d=f[o+(d+2<<2)>>2]|0;e=e+(d>>>5<<2)|0;f[e>>2]=f[e>>2]&~(1<<(d&31));h=h+1|0;d=f[v>>2]|0;e=f[s>>2]|0;if((d|0)==(e<<5|0)){if((d+1|0)<0){T=141;break h}a=e<<6;T=d+32&-32;Me(w,d>>>0<1073741823?(a>>>0>>0?T:a):2147483647);d=f[v>>2]|0}f[v>>2]=d+1;a=(f[w>>2]|0)+(d>>>5<<2)|0;f[a>>2]=f[a>>2]|1<<(d&31);d=f[r>>2]|0;if((d|0)==(f[t>>2]|0))hf(p,U);else{f[d>>2]=f[U>>2];f[r>>2]=d+4}d=h}while(0);e=f[ea>>2]|0;if((e|0)==(f[ca>>2]|0)){T=158;break}else h=d}if((T|0)==141)Wl(w);else if((T|0)==151)Wl(w);else if((T|0)==157){d=-1;T=172;break g}else if((T|0)==158){g=f[x>>2]|0;V=d;break}}else{g=d;V=h}while(0);if((V|0)==(((f[g+4>>2]|0)-(f[g>>2]|0)>>2>>>0)/3|0|0)){d=(f[g+28>>2]|0)-(f[g+24>>2]|0)>>2;e=f[aa>>2]|0;p=f[ba>>2]|0;if((e|0)==(p|0))g=d;else{m=Z+4|0;l=Z+8|0;o=Z+12|0;do{k=f[e>>2]|0;h=d+-1|0;i=f[g+24>>2]|0;if((f[i+(h<<2)>>2]|0)<0){h=d;while(1){d=h+-1|0;h=h+-2|0;if((f[i+(h<<2)>>2]|0)<0)h=d;else{j=h;break}}}else j=h;if((j|0)>=(k|0)){f[Z>>2]=g;h=f[i+(j<<2)>>2]|0;f[m>>2]=h;f[l>>2]=h;b[o>>0]=1;if((h|0)>=0)do{f[(f[g>>2]|0)+(h<<2)>>2]=k;Td(Z);h=f[l>>2]|0;g=f[x>>2]|0}while((h|0)>=0);h=f[g+24>>2]|0;if((k|0)==-1073741824)h=h+(j<<2)|0;else{Y=h+(j<<2)|0;f[h+(k<<2)>>2]=f[Y>>2];h=Y}f[h>>2]=-1073741824;W=f[_>>2]|0;Y=W+(j>>>5<<2)|0;X=1<<(j&31);W=W+(k>>>5<<2)|0;V=1<<(k&31);U=f[W>>2]|0;f[W>>2]=f[Y>>2]&X|0?U|V:U&~V;f[Y>>2]=f[Y>>2]&~X;d=d+-1|0}e=e+4|0}while((e|0)!=(p|0));T=172}}else{d=-1;T=172}}else{d=-1;T=172}}while(0);if((T|0)==172){e=f[aa>>2]|0;g=d}if(e|0){d=f[ba>>2]|0;if((d|0)!=(e|0))f[ba>>2]=d+(~((d+-4-e|0)>>>2)<<2);Em(e)}d=f[da+8>>2]|0;if(d|0)do{ba=d;d=f[d>>2]|0;Em(ba)}while((d|0)!=0);d=f[da>>2]|0;f[da>>2]=0;if(d|0)Em(d);d=f[ca>>2]|0;if(!d){u=fa;return g|0}e=f[ea>>2]|0;if((e|0)!=(d|0))f[ea>>2]=e+(~((e+-4-d|0)>>>2)<<2);Em(d);u=fa;return g|0}function Za(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,aa=0,ba=0,ca=0,da=0,ea=0;ea=u;u=u+80|0;ba=ea+56|0;ca=ea+36|0;_=ea+24|0;Z=ea+8|0;T=ea;f[ba>>2]=0;da=ba+4|0;f[da>>2]=0;f[ba+8>>2]=0;f[ca>>2]=0;f[ca+4>>2]=0;f[ca+8>>2]=0;f[ca+12>>2]=0;n[ca+16>>2]=$(1.0);f[_>>2]=0;aa=_+4|0;f[aa>>2]=0;f[_+8>>2]=0;K=(f[a+212>>2]|0)==(f[a+216>>2]|0);Y=a+120|0;Q=f[a+124>>2]|0;a:do if((c|0)>0){I=a+300|0;B=ca+4|0;y=a+8|0;C=_+8|0;D=ba+8|0;J=a+296|0;G=a+288|0;H=a+292|0;P=a+36|0;A=a+40|0;O=c+-1|0;z=0;b:while(1){i=z+1|0;c:do if(!(b[I>>0]|0))S=44;else{j=f[J>>2]|0;l=f[G>>2]|0;m=f[H>>2]|0;d=l+(j>>>3)|0;if(d>>>0>>0?(x=h[d>>0]|0,F=j+1|0,f[J>>2]=F,x&1<<(j&7)|0):0){d=l+(F>>>3)|0;if(d>>>0>>0){k=(h[d>>0]|0)>>>(F&7)&1;j=j+2|0;f[J>>2]=j}else{j=F;k=0}d=l+(j>>>3)|0;if(d>>>0>>0){d=(h[d>>0]|0)>>>(j&7);f[J>>2]=j+1;d=d<<1&2}else d=0;x=(d|k)<<1|1;j=(x|0)==5;switch(x&7){case 1:{S=44;break c}case 3:case 5:{d=f[da>>2]|0;if((f[ba>>2]|0)==(d|0)){d=-1;S=175;break a}p=f[d+-4>>2]|0;r=z*3|0;o=j?r:r+2|0;q=(j&1)+r|0;l=(j?2:1)+r|0;x=f[y>>2]|0;k=f[x+12>>2]|0;f[k+(l<<2)>>2]=p;f[k+(p<<2)>>2]=l;k=x+24|0;j=x+28|0;d=f[j>>2]|0;if((d|0)==(f[x+32>>2]|0)){hf(k,2320);d=f[j>>2]|0}else{f[d>>2]=-1073741824;d=d+4|0;f[j>>2]=d}d=(d-(f[k>>2]|0)>>2)+-1|0;k=f[y>>2]|0;m=f[k>>2]|0;f[m+(l<<2)>>2]=d;if((d|0)!=-1073741824)f[(f[k+24>>2]|0)+(d<<2)>>2]=l;if((p|0)>=0){d=(((p>>>0)%3|0|0)==0?2:-1)+p|0;if((d|0)>=0){d=f[m+(d<<2)>>2]|0;f[m+(o<<2)>>2]=d;if((d|0)!=-1073741824){j=o;d=(f[k+24>>2]|0)+(d<<2)|0;S=40}}else{j=-1073741824;d=m+(o<<2)|0;S=40}if((S|0)==40){S=0;f[d>>2]=j}d=p+1|0;d=((d|0)%3|0|0)==0?p+-2|0:d;if((d|0)<0)d=-1073741824;else d=f[m+(d<<2)>>2]|0}else{f[m+(o<<2)>>2]=-1073741824;d=-1073741824}f[m+(q<<2)>>2]=d;f[(f[da>>2]|0)+-4>>2]=r;break}case 7:{f[Z>>2]=z*3;x=f[y>>2]|0;k=x+24|0;j=x+28|0;d=f[j>>2]|0;if((d|0)==(f[x+32>>2]|0)){hf(k,2320);d=f[j>>2]|0}else{f[d>>2]=-1073741824;d=d+4|0;f[j>>2]=d}q=d-(f[k>>2]|0)>>2;p=q+-1|0;l=f[y>>2]|0;m=f[Z>>2]|0;d=f[l>>2]|0;f[d+(m<<2)>>2]=p;o=l+24|0;k=l+28|0;j=f[k>>2]|0;if((j|0)==(f[l+32>>2]|0)){hf(o,2320);j=f[k>>2]|0;d=f[l>>2]|0}else{f[j>>2]=-1073741824;j=j+4|0;f[k>>2]=j}f[d+(m+1<<2)>>2]=(j-(f[o>>2]|0)>>2)+-1;k=f[y>>2]|0;l=(f[Z>>2]|0)+2|0;m=k+24|0;j=k+28|0;d=f[j>>2]|0;if((d|0)==(f[k+32>>2]|0)){hf(m,2320);d=f[j>>2]|0}else{f[d>>2]=-1073741824;d=d+4|0;f[j>>2]=d}f[(f[k>>2]|0)+(l<<2)>>2]=(d-(f[m>>2]|0)>>2)+-1;if((p|0)!=-1073741824){j=f[(f[y>>2]|0)+24>>2]|0;f[j+(p<<2)>>2]=f[Z>>2];f[j+(q<<2)>>2]=(f[Z>>2]|0)+1;d=q+1|0;if((d|0)!=-1073741824)S=105}else{j=f[(f[y>>2]|0)+24>>2]|0;f[j+(q<<2)>>2]=(f[Z>>2]|0)+1;d=-1073741822;S=105}if((S|0)==105){S=0;f[j+(d<<2)>>2]=(f[Z>>2]|0)+2}d=f[da>>2]|0;if((d|0)==(f[D>>2]|0))hf(ba,Z);else{f[d>>2]=f[Z>>2];f[da>>2]=d+4}break}default:break b}m=c-z+-1|0;d=f[A>>2]|0;if((d|0)==(f[P>>2]|0))break;while(1){j=f[d+-8>>2]|0;if(j>>>0>m>>>0){d=-1;S=175;break a}if((j|0)!=(m|0))break c;j=b[d+-4>>0]|0;l=f[d+-12>>2]|0;f[A>>2]=d+-12;if((l|0)<0){d=-1;S=175;break a}d=f[(f[da>>2]|0)+-4>>2]|0;k=(d|0)<0;do if(!(j&1)){if(!k)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}else{j=d+1|0;if(!k)d=((j|0)%3|0|0)==0?d+-2|0:j}while(0);f[Z>>2]=O-l;z=lc(ca,Z)|0;f[z>>2]=d;d=f[A>>2]|0;if((d|0)==(f[P>>2]|0))break c}}d=f[da>>2]|0;if((f[ba>>2]|0)==(d|0)){d=-1;S=175;break a}w=d+-4|0;q=f[w>>2]|0;v=f[y>>2]|0;p=(q|0)<0;d=q+1|0;if(!p?(M=((d|0)%3|0|0)==0?q+-2|0:d,(M|0)>=0):0)t=f[(f[v>>2]|0)+(M<<2)>>2]|0;else t=-1073741824;r=f[v+24>>2]|0;j=f[r+(t<<2)>>2]|0;d=j+1|0;s=r;if((j|0)>=0)j=((d|0)%3|0|0)==0?j+-2|0:d;o=z*3|0;k=o+1|0;l=f[v+12>>2]|0;f[l+(q<<2)>>2]=k;f[l+(k<<2)>>2]=q;m=o+2|0;f[l+(j<<2)>>2]=m;f[l+(m<<2)>>2]=j;l=f[v>>2]|0;f[l+(o<<2)>>2]=t;d=j+1|0;if((j|0)>=0?(N=((d|0)%3|0|0)==0?j+-2|0:d,(N|0)>=0):0)d=f[l+(N<<2)>>2]|0;else d=-1073741824;f[l+(k<<2)>>2]=d;if(!p?(L=(((q>>>0)%3|0|0)==0?2:-1)+q|0,(L|0)>=0):0){d=f[l+(L<<2)>>2]|0;f[l+(m<<2)>>2]=d;if((d|0)!=-1073741824){j=m;d=r+(d<<2)|0;S=25}}else{j=-1073741824;d=l+(m<<2)|0;S=25}if((S|0)==25){S=0;f[d>>2]=j}if(((f[v+28>>2]|0)-s>>2|0)>(Q|0)){d=-1;S=175;break a}z=(f[Y>>2]|0)+(t>>>5<<2)|0;f[z>>2]=f[z>>2]&~(1<<(t&31));f[w>>2]=o}while(0);if((S|0)==44){S=0;j=f[ba>>2]|0;d=f[da>>2]|0;if((j|0)==(d|0)){d=-1;S=175;break a}q=d+-4|0;x=f[q>>2]|0;f[da>>2]=q;o=f[B>>2]|0;d:do if(o){m=o+-1|0;l=(m&o|0)==0;if(!l)if(z>>>0>>0)p=z;else p=(z>>>0)%(o>>>0)|0;else p=m&z;k=f[(f[ca>>2]|0)+(p<<2)>>2]|0;if((k|0)!=0?(E=f[k>>2]|0,(E|0)!=0):0){e:do if(l){k=E;while(1){w=f[k+4>>2]|0;l=(w|0)==(z|0);if(!(l|(w&m|0)==(p|0))){d=q;break d}if(l?(f[k+8>>2]|0)==(z|0):0)break e;k=f[k>>2]|0;if(!k){d=q;break d}}}else{k=E;while(1){l=f[k+4>>2]|0;if((l|0)==(z|0)){if((f[k+8>>2]|0)==(z|0))break e}else{if(l>>>0>=o>>>0)l=(l>>>0)%(o>>>0)|0;if((l|0)!=(p|0)){d=q;break d}}k=f[k>>2]|0;if(!k){d=q;break d}}}while(0);k=k+12|0;if((q|0)==(f[D>>2]|0)){hf(ba,k);j=f[ba>>2]|0;d=f[da>>2]|0;break}else{f[q>>2]=f[k>>2];f[da>>2]=d;break}}else d=q}else d=q;while(0);if((j|0)==(d|0)){d=-1;S=175;break a}k=f[d+-4>>2]|0;w=z*3|0;p=w+2|0;s=f[y>>2]|0;v=f[s+12>>2]|0;f[v+(k<<2)>>2]=p;f[v+(p<<2)>>2]=k;o=w+1|0;f[v+(x<<2)>>2]=o;f[v+(o<<2)>>2]=x;if((k|0)>=0){j=(((k>>>0)%3|0|0)==0?2:-1)+k|0;if((j|0)<0)m=-1073741824;else m=f[(f[s>>2]|0)+(j<<2)>>2]|0;l=f[s>>2]|0;f[l+(w<<2)>>2]=m;j=k+1|0;j=((j|0)%3|0|0)==0?k+-2|0:j;if((j|0)<0){q=l;r=s;j=-1073741824;t=m}else{q=l;r=s;j=f[l+(j<<2)>>2]|0;t=m}}else{q=f[s>>2]|0;f[q+(w<<2)>>2]=-1073741824;r=s;j=-1073741824;t=-1073741824}f[q+(o<<2)>>2]=j;if((x|0)>=0){j=(((x>>>0)%3|0|0)==0?2:-1)+x|0;if((j|0)>=0){j=f[q+(j<<2)>>2]|0;f[q+(p<<2)>>2]=j;if((j|0)!=-1073741824){k=p;j=(f[s+24>>2]|0)+(j<<2)|0;S=79}}else{k=-1073741824;j=q+(p<<2)|0;S=79}if((S|0)==79){S=0;f[j>>2]=k}k=x+1|0;k=((k|0)%3|0|0)==0?x+-2|0:k;if((k|0)<0){j=k;k=-1073741824}else{j=k;k=f[q+(k<<2)>>2]|0}}else{f[q+(p<<2)>>2]=-1073741824;j=x;k=-1073741824}f[Z>>2]=k;m=f[s+24>>2]|0;if((t|0)!=-1073741824)f[m+(t<<2)>>2]=f[m+(k<<2)>>2];f:do if((j|0)>-1){l=f[r>>2]|0;do{f[l+(j<<2)>>2]=t;z=j+1|0;j=((z|0)%3|0|0)==0?j+-2|0:z;if((j|0)<0)break f;k=f[v+(j<<2)>>2]|0;j=k+1|0;if((k|0)<0)break f;j=((j|0)%3|0|0)==0?k+-2|0:j}while((j|0)>-1)}while(0);f[m+(f[Z>>2]<<2)>>2]=-1073741824;do if(K){j=f[aa>>2]|0;if((j|0)==(f[C>>2]|0)){hf(_,Z);d=f[da>>2]|0;break}else{f[j>>2]=f[Z>>2];f[aa>>2]=j+4;break}}while(0);f[d+-4>>2]=w}if((i|0)<(c|0))z=i;else{S=125;break a}}}else{y=a+8|0;i=0;S=125}while(0);g:do if((S|0)==125){d=f[y>>2]|0;if(((f[d+28>>2]|0)-(f[d+24>>2]|0)>>2|0)<=(Q|0)){g=f[da>>2]|0;do if((g|0)!=(f[ba>>2]|0)){w=a+304|0;x=a+60|0;v=a+64|0;s=a+68|0;r=a+76|0;t=a+80|0;q=a+72|0;h:while(1){S=g;f[Z>>2]=f[S+-4>>2];f[da>>2]=S+-4;do if(!(Rg(w)|0)){d=f[v>>2]|0;g=f[s>>2]|0;if((d|0)==(g<<5|0)){if((d+1|0)<0){S=153;break h}S=g<<6;a=d+32&-32;Me(x,d>>>0<1073741823?(S>>>0>>0?a:S):2147483647);d=f[v>>2]|0}f[v>>2]=d+1;S=(f[x>>2]|0)+(d>>>5<<2)|0;f[S>>2]=f[S>>2]&~(1<<(d&31));d=f[r>>2]|0;if((d|0)==(f[t>>2]|0)){hf(q,Z);d=i;break}else{f[d>>2]=f[Z>>2];f[r>>2]=d+4;d=i;break}}else{l=f[y>>2]|0;S=f[l>>2]|0;p=S;if((i|0)>=(((f[l+4>>2]|0)-S>>2>>>0)/3|0|0)){S=159;break h}m=f[Z>>2]|0;d=m+1|0;if((m|0)>=0?(X=((d|0)%3|0|0)==0?m+-2|0:d,(X|0)>=0):0)o=f[p+(X<<2)>>2]|0;else o=-1073741824;j=f[l+24>>2]|0;g=f[j+(o<<2)>>2]|0;d=g+1|0;if((g|0)>=0){g=((d|0)%3|0|0)==0?g+-2|0:d;d=g+1|0;if((g|0)>=0?(W=((d|0)%3|0|0)==0?g+-2|0:d,(W|0)>=0):0)k=f[p+(W<<2)>>2]|0;else k=-1073741824}else k=-1073741824;d=f[j+(k<<2)>>2]|0;j=d+1|0;if((d|0)>=0){d=((j|0)%3|0|0)==0?d+-2|0:j;j=d+1|0;if((d|0)>=0?(V=((j|0)%3|0|0)==0?d+-2|0:j,(V|0)>=0):0)j=f[p+(V<<2)>>2]|0;else j=-1073741824}else j=-1073741824;a=i*3|0;f[T>>2]=a;S=f[l+12>>2]|0;f[S+(a<<2)>>2]=m;f[S+(m<<2)>>2]=a;a=(f[T>>2]|0)+1|0;f[S+(a<<2)>>2]=g;f[S+(g<<2)>>2]=a;a=(f[T>>2]|0)+2|0;f[S+(a<<2)>>2]=d;f[S+(d<<2)>>2]=a;S=f[T>>2]|0;d=p+(S<<2)|0;f[d>>2]=k;f[p+(S+1<<2)>>2]=j;f[p+(S+2<<2)>>2]=o;if((S|0)<0)d=-1073741824;else d=f[d>>2]|0;g=f[Y>>2]|0;S=g+(d>>>5<<2)|0;f[S>>2]=f[S>>2]&~(1<<(d&31));d=f[T>>2]|0;if((d|0)<-1)d=-1073741824;else d=f[p+(d+1<<2)>>2]|0;S=g+(d>>>5<<2)|0;f[S>>2]=f[S>>2]&~(1<<(d&31));d=f[T>>2]|0;if((d|0)<-2)d=-1073741824;else d=f[p+(d+2<<2)>>2]|0;g=g+(d>>>5<<2)|0;f[g>>2]=f[g>>2]&~(1<<(d&31));i=i+1|0;d=f[v>>2]|0;g=f[s>>2]|0;if((d|0)==(g<<5|0)){if((d+1|0)<0){S=143;break h}S=g<<6;a=d+32&-32;Me(x,d>>>0<1073741823?(S>>>0>>0?a:S):2147483647);d=f[v>>2]|0}f[v>>2]=d+1;S=(f[x>>2]|0)+(d>>>5<<2)|0;f[S>>2]=f[S>>2]|1<<(d&31);d=f[r>>2]|0;if((d|0)==(f[t>>2]|0))hf(q,T);else{f[d>>2]=f[T>>2];f[r>>2]=d+4}d=i}while(0);g=f[da>>2]|0;if((g|0)==(f[ba>>2]|0)){S=160;break}else i=d}if((S|0)==143)Wl(x);else if((S|0)==153)Wl(x);else if((S|0)==159){d=-1;S=175;break g}else if((S|0)==160){e=f[y>>2]|0;U=d;break}}else{e=d;U=i}while(0);if((U|0)==(((f[e+4>>2]|0)-(f[e>>2]|0)>>2>>>0)/3|0|0)){d=(f[e+28>>2]|0)-(f[e+24>>2]|0)>>2;g=f[_>>2]|0;q=f[aa>>2]|0;if((g|0)==(q|0))R=d;else{o=Z+4|0;m=Z+8|0;p=Z+12|0;do{l=f[g>>2]|0;i=d+-1|0;j=f[e+24>>2]|0;if((f[j+(i<<2)>>2]|0)<0){i=d;while(1){d=i+-1|0;i=i+-2|0;if((f[j+(i<<2)>>2]|0)<0)i=d;else{k=i;break}}}else k=i;if((k|0)>=(l|0)){f[Z>>2]=e;i=f[j+(k<<2)>>2]|0;f[o>>2]=i;f[m>>2]=i;b[p>>0]=1;if((i|0)>=0)do{f[(f[e>>2]|0)+(i<<2)>>2]=l;Td(Z);i=f[m>>2]|0;e=f[y>>2]|0}while((i|0)>=0);i=f[e+24>>2]|0;if((l|0)==-1073741824)i=i+(k<<2)|0;else{X=i+(k<<2)|0;f[i+(l<<2)>>2]=f[X>>2];i=X}f[i>>2]=-1073741824;V=f[Y>>2]|0;X=V+(k>>>5<<2)|0;W=1<<(k&31);V=V+(l>>>5<<2)|0;U=1<<(l&31);T=f[V>>2]|0;f[V>>2]=f[X>>2]&W|0?T|U:T&~U;f[X>>2]=f[X>>2]&~W;d=d+-1|0}g=g+4|0}while((g|0)!=(q|0));S=175}}else{d=-1;S=175}}else{d=-1;S=175}}while(0);if((S|0)==175){g=f[_>>2]|0;R=d}if(g|0){d=f[aa>>2]|0;if((d|0)!=(g|0))f[aa>>2]=d+(~((d+-4-g|0)>>>2)<<2);Em(g)}d=f[ca+8>>2]|0;if(d|0)do{aa=d;d=f[d>>2]|0;Em(aa)}while((d|0)!=0);d=f[ca>>2]|0;f[ca>>2]=0;if(d|0)Em(d);d=f[ba>>2]|0;if(!d){u=ea;return R|0}e=f[da>>2]|0;if((e|0)!=(d|0))f[da>>2]=e+(~((e+-4-d|0)>>>2)<<2);Em(d);u=ea;return R|0}function _a(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=u;u=u+16|0;b=l;j=l+8|0;c=l+4|0;f[j>>2]=a;do if(a>>>0>=212){i=(a>>>0)/210|0;e=i*210|0;f[c>>2]=a-e;h=(Ch(3400,3592,c,b)|0)-3400>>2;a=e;e=0;a:while(1){b=(f[3400+(h<<2)>>2]|0)+a|0;d=5;while(1){if(d>>>0>=47){g=211;c=e;k=8;break}a=f[3208+(d<<2)>>2]|0;c=(b>>>0)/(a>>>0)|0;if(c>>>0>>0){k=106;break a}if((b|0)==(X(c,a)|0)){b=e;break}else d=d+1|0}b:do if((k|0)==8){c:while(1){k=0;a=(b>>>0)/(g>>>0)|0;do if(a>>>0>=g>>>0)if((b|0)!=(X(a,g)|0)){d=g+10|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+12|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+16|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+18|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+22|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)!=(X(a,d)|0)){d=g+28|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>=d>>>0)if((b|0)==(X(a,d)|0)){e=9;a=d}else{d=g+30|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+36|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+40|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+42|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+46|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+52|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+58|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+60|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+66|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+70|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+72|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+78|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+82|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+88|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+96|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+100|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+102|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+106|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+108|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+112|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+120|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+126|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+130|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+136|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+138|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+142|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+148|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+150|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+156|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+162|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+166|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+168|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+172|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+178|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+180|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+186|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+190|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+192|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+196|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}d=g+198|0;a=(b>>>0)/(d>>>0)|0;if(a>>>0>>0){e=1;a=d;c=b;break}if((b|0)==(X(a,d)|0)){e=9;a=d;break}a=g+208|0;m=(b>>>0)/(a>>>0)|0;d=m>>>0>>0;m=(b|0)==(X(m,a)|0);e=d?1:m?9:0;a=d|m?a:g+210|0;c=d?b:c}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=d}else{e=1;a=d;c=b}}else{e=9;a=g}else{e=1;a=g;c=b}while(0);switch(e&15){case 9:{b=c;break b}case 0:{g=a;k=8;break}default:break c}}if(!e)b=c;else{k=107;break a}}while(0);e=h+1|0;m=(e|0)==48;a=(m&1)+i|0;h=m?0:e;i=a;a=a*210|0;e=b}if((k|0)==106){f[j>>2]=b;break}else if((k|0)==107){f[j>>2]=b;b=c;break}}else{b=Ch(3208,3400,j,b)|0;b=f[b>>2]|0}while(0);u=l;return b|0}function $a(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=Ka;if(!g){g=0;return g|0}do switch(f[a+28>>2]|0){case 1:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){l=f[c>>2]|0;i=f[f[a>>2]>>2]|0;c=a+40|0;l=Xi(f[c>>2]|0,f[c+4>>2]|0,l|0,((l|0)<0)<<31>>31|0)|0;c=a+48|0;c=Ij(l|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=i+c|0;if(!(b[a+32>>0]|0)){a=0;while(1){m=$(b[c>>0]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}else{a=0;while(1){m=$($(b[c>>0]|0)/$(127.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 2:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){i=f[c>>2]|0;l=f[f[a>>2]>>2]|0;c=a+40|0;i=Xi(f[c>>2]|0,f[c+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0;c=a+48|0;c=Ij(i|0,I|0,f[c>>2]|0,f[c+4>>2]|0)|0;c=l+c|0;if(!(b[a+32>>0]|0)){a=0;while(1){m=$(h[c>>0]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}else{a=0;while(1){m=$($(h[c>>0]|0)/$(255.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+1|0}}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 3:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Ij(Xi(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(d[c>>1]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}else{a=0;while(1){m=$($(d[c>>1]|0)/$(32767.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 4:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Ij(Xi(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(j[c>>1]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}else{a=0;while(1){m=$($(j[c>>1]|0)/$(65535.0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 5:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Ij(Xi(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$(f[c>>2]|0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}else{a=0;while(1){m=$($(f[c>>2]|0)*$(4.65661287e-10));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 6:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Ij(Xi(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){m=$((f[c>>2]|0)>>>0);n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}else{a=0;while(1){m=$($((f[c>>2]|0)>>>0)*$(2.32830644e-10));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 7:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Ij(Xi(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){i=c;m=$(+((f[i>>2]|0)>>>0)+4294967296.0*+(f[i+4>>2]|0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}else{a=0;while(1){i=c;m=$($(+((f[i>>2]|0)>>>0)+4294967296.0*+(f[i+4>>2]|0))*$(1.08420217e-19));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 8:{i=f[c>>2]|0;c=a+48|0;k=f[c>>2]|0;c=f[c+4>>2]|0;l=a+40|0;c=(Ij(Xi(f[l>>2]|0,f[l+4>>2]|0,i|0,((i|0)<0)<<31>>31|0)|0,I|0,k|0,c|0)|0)+(f[f[a>>2]>>2]|0)|0;k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0)if(!(b[a+32>>0]|0)){a=0;while(1){i=c;m=$(+((f[i>>2]|0)>>>0)+4294967296.0*+((f[i+4>>2]|0)>>>0));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}else{a=0;while(1){i=c;m=$($(+((f[i>>2]|0)>>>0)+4294967296.0*+((f[i+4>>2]|0)>>>0))*$(5.42101086e-20));n[g+(a<<2)>>2]=m;a=a+1|0;i=b[k>>0]|0;if((a|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else c=c+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 9:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=f[a>>2];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 10:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){m=$(+p[a>>3]);n[g+(c<<2)>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 11:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){m=$((b[a>>0]|0)!=0&1);n[g+(c<<2)>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}default:{l=0;return l|0}}while(0);return 0}function ab(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=u;u=u+64|0;U=V+16|0;I=V;H=a+8|0;f[H>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else Ve(i,e-j|0);d=U;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[I>>2]=0;if(!e){d=0;g=0}else{ee(U,e,I);d=f[U+12>>2]|0;g=f[U+16>>2]|0}f[I>>2]=0;h=U+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else ee(U+12|0,e-i|0,I);i=U+24|0;f[I>>2]=0;h=U+28|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(m=d+(e<<2)|0,(g|0)!=(m|0)):0)f[h>>2]=g+(~((g+-4-m|0)>>>2)<<2)}else ee(i,e-j|0,I);i=U+36|0;f[I>>2]=0;h=U+40|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(n=d+(e<<2)|0,(g|0)!=(n|0)):0)f[h>>2]=g+(~((g+-4-n|0)>>>2)<<2)}else ee(i,e-j|0,I);h=f[U>>2]|0;if((f[H>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;j=0;do{d=f[h+(j<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(j<<2)>>2]=g}else{G=f[m>>2]|0;k=f[i>>2]|0;f[k+(j<<2)>>2]=(d|0)<(G|0)?G:d}j=j+1|0;d=f[H>>2]|0}while((j|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[k+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[i>>2]|0)+d|0;r=18}}else{d=d-(f[i>>2]|0)|0;r=18}if((r|0)==18){r=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[H>>2]|0))}}B=f[a+48>>2]|0;C=f[a+52>>2]|0;G=Yi(16)|0;f[G>>2]=0;f[G+4>>2]=0;f[G+8>>2]=0;f[G+12>>2]=0;f[I>>2]=0;F=I+4|0;f[F>>2]=0;f[I+8>>2]=0;do if(e)if(e>>>0>1073741823)Wl(I);else{E=e<<2;p=Yi(E)|0;f[I>>2]=p;o=p+(e<<2)|0;f[I+8>>2]=o;Cf(p|0,0,E|0)|0;f[F>>2]=o;o=p;break}else{o=0;p=0}while(0);D=a+56|0;d=f[D>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;A=g-h|0;E=A>>2;do if((A|0)>4){x=B+64|0;t=B+28|0;w=(e|0)>0;z=a+16|0;v=a+32|0;A=a+12|0;y=a+20|0;s=e<<2;if(g-h>>2>>>0>1){q=h;Q=1}else{r=d;Wl(r)}while(1){n=f[q+(Q<<2)>>2]|0;q=n+((n|0)<0?0:((n>>>0)%3|0|0)==0?2:-1)|0;p=q>>>5;r=1<<(q&31);o=(q|0)<0;g=n;m=1;d=0;a:while(1){do{if((g|0)<=-1){r=63;break a}h=f[U+(d*12|0)>>2]|0;if(((f[(f[B>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)|0)==0?(R=f[(f[(f[x>>2]|0)+12>>2]|0)+(g<<2)>>2]|0,(R|0)>=0):0)?(L=f[t>>2]|0,l=f[C>>2]|0,J=f[l+(f[L+(R<<2)>>2]<<2)>>2]|0,K=R+1|0,K=f[l+(f[L+((((K|0)%3|0|0)==0?R+-2|0:K)<<2)>>2]<<2)>>2]|0,L=f[l+(f[L+((((R>>>0)%3|0|0)==0?2:-1)+R<<2)>>2]<<2)>>2]|0,(J|0)<(Q|0)&(K|0)<(Q|0)&(L|0)<(Q|0)):0){j=X(J,e)|0;k=X(K,e)|0;l=X(L,e)|0;if(w){i=0;do{f[h+(i<<2)>>2]=(f[c+(i+l<<2)>>2]|0)+(f[c+(i+k<<2)>>2]|0)-(f[c+(i+j<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;r=44;break a}}do if(m){h=g+1|0;g=((h|0)%3|0|0)==0?g+-2|0:h;h=f[B>>2]|0;if(!(f[h+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[x>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;i=g+1|0;if((g|0)>=0)g=((i|0)%3|0|0)==0?g+-2|0:i}}else g=-1073741824}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;h=f[B>>2]|0;if(!(f[h+(g>>>5<<2)>>2]&1<<(g&31))){if((g|0)>=0){g=f[(f[(f[x>>2]|0)+12>>2]|0)+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}else g=-1073741824}while(0);if((g|0)==(n|0)){r=63;break a}}while(!(m&(g|0)<0));g=(r&f[h+(p<<2)>>2]|0)!=0;if(g|o){g=g?-1073741824:q;m=0;continue}g=f[(f[(f[x>>2]|0)+12>>2]|0)+(q<<2)>>2]|0;if((g|0)<0){m=0;continue}if(!((g>>>0)%3|0)){g=g+2|0;m=0;continue}else{g=g+-1|0;m=0;continue}}if((r|0)==63)if((d|0)>0)r=44;else{P=X(Q,e)|0;r=75}if((r|0)==44){r=0;if(w){Cf(f[I>>2]|0,0,s|0)|0;j=d+-1|0;l=G+(j<<2)|0;j=f[a+60+(j*12|0)>>2]|0;k=f[I>>2]|0;m=0;g=0;do{q=f[l>>2]|0;f[l>>2]=q+1;if(!(f[j+(q>>>5<<2)>>2]&1<<(q&31))){h=f[U+(m*12|0)>>2]|0;i=0;do{q=k+(i<<2)|0;f[q>>2]=(f[q>>2]|0)+(f[h+(i<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0));g=g+1|0}m=m+1|0}while((m|0)!=(d|0))}else{h=d+-1|0;j=G+(h<<2)|0;h=f[a+60+(h*12|0)>>2]|0;i=f[j>>2]|0;k=0;g=0;do{q=i;i=i+1|0;f[j>>2]=i;g=g+((f[h+(q>>>5<<2)>>2]&1<<(q&31)|0)==0&1)|0;k=k+1|0}while((k|0)!=(d|0))}h=X(Q,e)|0;if(g){j=f[I>>2]|0;if(w){d=0;do{q=j+(d<<2)|0;f[q>>2]=(f[q>>2]|0)/(g|0)|0;d=d+1|0}while((d|0)!=(e|0))}l=b+(h<<2)|0;k=c+(h<<2)|0;if((f[H>>2]|0)>0){h=0;do{d=f[j+(h<<2)>>2]|0;g=f[z>>2]|0;if((d|0)>(g|0)){i=f[v>>2]|0;f[i+(h<<2)>>2]=g}else{q=f[A>>2]|0;i=f[v>>2]|0;f[i+(h<<2)>>2]=(d|0)<(q|0)?q:d}h=h+1|0;d=f[H>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[l+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;do if((d|0)>(f[z>>2]|0)){d=d-(f[y>>2]|0)|0;r=97}else{if((d|0)>=(f[A>>2]|0))break;d=(f[y>>2]|0)+d|0;r=97}while(0);if((r|0)==97){r=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[H>>2]|0))}}}else{P=h;r=75}}if((r|0)==75?(r=0,M=c+((X(Q+-1|0,e)|0)<<2)|0,N=b+(P<<2)|0,O=c+(P<<2)|0,(f[H>>2]|0)>0):0){h=0;do{d=f[M+(h<<2)>>2]|0;g=f[z>>2]|0;if((d|0)>(g|0)){i=f[v>>2]|0;f[i+(h<<2)>>2]=g}else{q=f[A>>2]|0;i=f[v>>2]|0;f[i+(h<<2)>>2]=(d|0)<(q|0)?q:d}h=h+1|0;d=f[H>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[N+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=O+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[z>>2]|0)){if((d|0)<(f[A>>2]|0)){d=(f[y>>2]|0)+d|0;r=85}}else{d=d-(f[y>>2]|0)|0;r=85}if((r|0)==85){r=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[H>>2]|0))}}Q=Q+1|0;if((Q|0)>=(E|0)){r=28;break}d=f[D>>2]|0;q=f[d>>2]|0;if((f[d+4>>2]|0)-q>>2>>>0<=Q>>>0){r=34;break}}if((r|0)==28){T=f[I>>2]|0;S=T;break}else if((r|0)==34)Wl(d)}else{S=p;T=o}while(0);if(S|0){d=f[F>>2]|0;if((d|0)!=(S|0))f[F>>2]=d+(~((d+-4-S|0)>>>2)<<2);Em(T)}Em(G);g=f[U+36>>2]|0;if(g|0){h=U+40|0;d=f[h>>2]|0;if((d|0)!=(g|0))f[h>>2]=d+(~((d+-4-g|0)>>>2)<<2);Em(g)}d=f[U+24>>2]|0;if(d|0){h=U+28|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);Em(d)}d=f[U+12>>2]|0;if(d|0){h=U+16|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);Em(d)}h=f[U>>2]|0;if(!h){u=V;return 1}g=U+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);Em(h);u=V;return 1}function bb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;S=u;u=u+64|0;R=S+16|0;J=S;I=a+8|0;f[I>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0)f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2)}else Ve(i,e-j|0);d=R;g=d+48|0;do{f[d>>2]=0;d=d+4|0}while((d|0)<(g|0));f[J>>2]=0;if(!e){d=0;g=0}else{ee(R,e,J);d=f[R+12>>2]|0;g=f[R+16>>2]|0}f[J>>2]=0;h=R+16|0;i=g-d>>2;if(i>>>0>=e>>>0){if(i>>>0>e>>>0?(l=d+(e<<2)|0,(g|0)!=(l|0)):0)f[h>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else ee(R+12|0,e-i|0,J);i=R+24|0;f[J>>2]=0;h=R+28|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(m=d+(e<<2)|0,(g|0)!=(m|0)):0)f[h>>2]=g+(~((g+-4-m|0)>>>2)<<2)}else ee(i,e-j|0,J);i=R+36|0;f[J>>2]=0;h=R+40|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0){if(j>>>0>e>>>0?(n=d+(e<<2)|0,(g|0)!=(n|0)):0)f[h>>2]=g+(~((g+-4-n|0)>>>2)<<2)}else ee(i,e-j|0,J);h=f[R>>2]|0;if((f[I>>2]|0)>0){l=a+16|0;i=a+32|0;m=a+12|0;j=0;do{d=f[h+(j<<2)>>2]|0;g=f[l>>2]|0;if((d|0)>(g|0)){k=f[i>>2]|0;f[k+(j<<2)>>2]=g}else{H=f[m>>2]|0;k=f[i>>2]|0;f[k+(j<<2)>>2]=(d|0)<(H|0)?H:d}j=j+1|0;d=f[I>>2]|0}while((j|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[k+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[l>>2]|0)){if((d|0)<(f[m>>2]|0)){d=(f[i>>2]|0)+d|0;r=18}}else{d=d-(f[i>>2]|0)|0;r=18}if((r|0)==18){r=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[I>>2]|0))}}C=f[a+48>>2]|0;D=f[a+52>>2]|0;H=Yi(16)|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;f[H+12>>2]=0;f[J>>2]=0;G=J+4|0;f[G>>2]=0;f[J+8>>2]=0;do if(e)if(e>>>0>1073741823)Wl(J);else{F=e<<2;p=Yi(F)|0;f[J>>2]=p;o=p+(e<<2)|0;f[J+8>>2]=o;Cf(p|0,0,F|0)|0;f[G>>2]=o;o=p;break}else{o=0;p=0}while(0);E=a+56|0;d=f[E>>2]|0;g=f[d+4>>2]|0;h=f[d>>2]|0;B=g-h|0;F=B>>2;do if((B|0)>4){w=C+12|0;y=(e|0)>0;A=a+16|0;x=a+32|0;B=a+12|0;z=a+20|0;v=e<<2;if(g-h>>2>>>0>1){q=h;O=1}else{t=d;Wl(t)}while(1){r=f[q+(O<<2)>>2]|0;t=(((r>>>0)%3|0|0)==0?2:-1)+r|0;s=(r|t|0)<0;q=(r|0)<0?r:t;g=r;p=1;d=0;a:while(1){do{if((g|0)<=-1){r=64;break a}n=f[R+(d*12|0)>>2]|0;o=f[w>>2]|0;i=f[o+(g<<2)>>2]|0;if((i|0)>=0){j=f[C>>2]|0;k=f[D>>2]|0;m=f[k+(f[j+(i<<2)>>2]<<2)>>2]|0;h=i+1|0;h=((h|0)%3|0|0)==0?i+-2|0:h;if((h|0)<0)h=-1073741824;else h=f[j+(h<<2)>>2]|0;l=f[k+(h<<2)>>2]|0;h=(((i>>>0)%3|0|0)==0?2:-1)+i|0;if((h|0)<0)h=-1073741824;else h=f[j+(h<<2)>>2]|0;h=f[k+(h<<2)>>2]|0;if((m|0)<(O|0)&(l|0)<(O|0)&(h|0)<(O|0)){k=X(m,e)|0;j=X(l,e)|0;i=X(h,e)|0;if(y){h=0;do{f[n+(h<<2)>>2]=(f[c+(h+i<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+k<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}d=d+1|0;if((d|0)==4){d=4;r=47;break a}}}do if(p){n=g+1|0;g=((n|0)%3|0|0)==0?g+-2|0:n;if((g|0)>=0){g=f[o+(g<<2)>>2]|0;h=g+1|0;if((g|0)>=0)g=((h|0)%3|0|0)==0?g+-2|0:h}}else{g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((g|0)>=0){g=f[o+(g<<2)>>2]|0;if((g|0)>=0)if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}}while(0);if((g|0)==(r|0)){r=64;break a}}while(!(p&(g|0)<0));if(s){g=q;p=0;continue}g=f[o+(t<<2)>>2]|0;if((g|0)<0){p=0;continue}if(!((g>>>0)%3|0)){g=g+2|0;p=0;continue}else{g=g+-1|0;p=0;continue}}if((r|0)==64)if((d|0)>0)r=47;else{N=X(O,e)|0;r=76}if((r|0)==47){r=0;if(y){Cf(f[J>>2]|0,0,v|0)|0;j=d+-1|0;l=H+(j<<2)|0;j=f[a+60+(j*12|0)>>2]|0;k=f[J>>2]|0;m=0;g=0;do{t=f[l>>2]|0;f[l>>2]=t+1;if(!(f[j+(t>>>5<<2)>>2]&1<<(t&31))){h=f[R+(m*12|0)>>2]|0;i=0;do{t=k+(i<<2)|0;f[t>>2]=(f[t>>2]|0)+(f[h+(i<<2)>>2]|0);i=i+1|0}while((i|0)!=(e|0));g=g+1|0}m=m+1|0}while((m|0)!=(d|0))}else{h=d+-1|0;j=H+(h<<2)|0;h=f[a+60+(h*12|0)>>2]|0;i=f[j>>2]|0;k=0;g=0;do{t=i;i=i+1|0;f[j>>2]=i;g=g+((f[h+(t>>>5<<2)>>2]&1<<(t&31)|0)==0&1)|0;k=k+1|0}while((k|0)!=(d|0))}h=X(O,e)|0;if(g){j=f[J>>2]|0;if(y){d=0;do{t=j+(d<<2)|0;f[t>>2]=(f[t>>2]|0)/(g|0)|0;d=d+1|0}while((d|0)!=(e|0))}l=b+(h<<2)|0;k=c+(h<<2)|0;if((f[I>>2]|0)>0){h=0;do{d=f[j+(h<<2)>>2]|0;g=f[A>>2]|0;if((d|0)>(g|0)){i=f[x>>2]|0;f[i+(h<<2)>>2]=g}else{t=f[B>>2]|0;i=f[x>>2]|0;f[i+(h<<2)>>2]=(d|0)<(t|0)?t:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[l+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=k+(h<<2)|0;f[g>>2]=d;do if((d|0)>(f[A>>2]|0)){d=d-(f[z>>2]|0)|0;r=98}else{if((d|0)>=(f[B>>2]|0))break;d=(f[z>>2]|0)+d|0;r=98}while(0);if((r|0)==98){r=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[I>>2]|0))}}}else{N=h;r=76}}if((r|0)==76?(r=0,K=c+((X(O+-1|0,e)|0)<<2)|0,L=b+(N<<2)|0,M=c+(N<<2)|0,(f[I>>2]|0)>0):0){h=0;do{d=f[K+(h<<2)>>2]|0;g=f[A>>2]|0;if((d|0)>(g|0)){i=f[x>>2]|0;f[i+(h<<2)>>2]=g}else{t=f[B>>2]|0;i=f[x>>2]|0;f[i+(h<<2)>>2]=(d|0)<(t|0)?t:d}h=h+1|0;d=f[I>>2]|0}while((h|0)<(d|0));if((d|0)>0){h=0;do{d=(f[L+(h<<2)>>2]|0)+(f[i+(h<<2)>>2]|0)|0;g=M+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[A>>2]|0)){if((d|0)<(f[B>>2]|0)){d=(f[z>>2]|0)+d|0;r=86}}else{d=d-(f[z>>2]|0)|0;r=86}if((r|0)==86){r=0;f[g>>2]=d}h=h+1|0}while((h|0)<(f[I>>2]|0))}}O=O+1|0;if((O|0)>=(F|0)){r=28;break}d=f[E>>2]|0;q=f[d>>2]|0;if((f[d+4>>2]|0)-q>>2>>>0<=O>>>0){r=34;break}}if((r|0)==28){Q=f[J>>2]|0;P=Q;break}else if((r|0)==34)Wl(d)}else{P=p;Q=o}while(0);if(P|0){d=f[G>>2]|0;if((d|0)!=(P|0))f[G>>2]=d+(~((d+-4-P|0)>>>2)<<2);Em(Q)}Em(H);g=f[R+36>>2]|0;if(g|0){h=R+40|0;d=f[h>>2]|0;if((d|0)!=(g|0))f[h>>2]=d+(~((d+-4-g|0)>>>2)<<2);Em(g)}d=f[R+24>>2]|0;if(d|0){h=R+28|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);Em(d)}d=f[R+12>>2]|0;if(d|0){h=R+16|0;g=f[h>>2]|0;if((g|0)!=(d|0))f[h>>2]=g+(~((g+-4-d|0)>>>2)<<2);Em(d)}h=f[R>>2]|0;if(!h){u=S;return 1}g=R+4|0;d=f[g>>2]|0;if((d|0)!=(h|0))f[g>>2]=d+(~((d+-4-h|0)>>>2)<<2);Em(h);u=S;return 1}function cb(a){a=a|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+80|0;t=y+40|0;i=y+68|0;m=y+64|0;q=y+60|0;l=y+52|0;w=y;r=y+56|0;s=y+48|0;f[a+132>>2]=0;h=a+148|0;if(f[h>>2]|0){e=a+144|0;c=f[e>>2]|0;if(c|0)do{v=c;c=f[c>>2]|0;Em(v)}while((c|0)!=0);f[e>>2]=0;c=f[a+140>>2]|0;if(c|0){e=a+136|0;g=0;do{f[(f[e>>2]|0)+(g<<2)>>2]=0;g=g+1|0}while((g|0)!=(c|0))}f[h>>2]=0}n=a+4|0;if(!(Vf(i,f[(f[n>>2]|0)+32>>2]|0)|0)){x=0;u=y;return x|0}k=a+156|0;f[k>>2]=f[i>>2];v=(Vf(m,f[(f[n>>2]|0)+32>>2]|0)|0)^1;do if(!((f[m>>2]|0)>>>0>715827882|v)){c=f[a+24>>2]|0;g=a+28|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);p=Yi(60)|0;tk(p);v=a+8|0;c=f[v>>2]|0;f[v>>2]=p;if(c|0?(Sf(c),Em(c),(f[v>>2]|0)==0):0){c=0;break}h=a+160|0;c=f[h>>2]|0;g=a+164|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);fg(h,f[m>>2]|0);h=a+172|0;c=f[h>>2]|0;g=a+176|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);fg(h,f[m>>2]|0);c=f[a+36>>2]|0;g=a+40|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~(((e+-12-c|0)>>>0)/12|0)*12|0);c=f[a+48>>2]|0;g=a+52|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+64>>2]=0;c=f[a+72>>2]|0;g=a+76|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+84>>2]=-1;f[a+92>>2]=-1;f[a+88>>2]=-1;c=f[(f[n>>2]|0)+32>>2]|0;p=c+8|0;o=f[p+4>>2]|0;h=c+16|0;g=h;e=f[g>>2]|0;g=f[g+4>>2]|0;if((o|0)>(g|0)|((o|0)==(g|0)?(f[p>>2]|0)>>>0>e>>>0:0)){j=b[(f[c>>2]|0)+e>>0]|0;i=Ij(e|0,g|0,1,0)|0;p=h;f[p>>2]=i;f[p+4>>2]=I;p=a+212|0;i=f[p>>2]|0;o=a+216|0;c=f[o>>2]|0;if((c|0)!=(i|0))do{f[o>>2]=c+-116;e=f[c+-12>>2]|0;if(e|0){h=c+-8|0;g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}e=f[c+-28>>2]|0;if(e|0){h=c+-24|0;g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}e=f[c+-40>>2]|0;if(e|0){h=c+-36|0;g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}_f(c+-112|0);c=f[o>>2]|0}while((c|0)!=(i|0));c=j&255;Ae(p,c);if(Vf(q,f[(f[n>>2]|0)+32>>2]|0)|0?(f[m>>2]|0)>>>0>=(f[q>>2]|0)>>>0:0)if((Vf(l,f[(f[n>>2]|0)+32>>2]|0)|0?Wg(f[v>>2]|0,f[m>>2]|0,(f[l>>2]|0)+(f[k>>2]|0)|0)|0:0)?(m=(f[l>>2]|0)+(f[k>>2]|0)|0,b[t>>0]=1,Wd(a+120|0,m,t),(nc(a,f[(f[n>>2]|0)+32>>2]|0)|0)!=-1):0){j=a+224|0;f[a+368>>2]=a;g=(Ma[f[(f[a>>2]|0)+32>>2]&127](a)|0)+32|0;g=f[g>>2]|0;g=(f[g>>2]|0)+(f[g+16>>2]|0)|0;e=(Ma[f[(f[a>>2]|0)+32>>2]&127](a)|0)+32|0;e=f[e>>2]|0;k=e+8|0;e=e+16|0;e=hk(f[k>>2]|0,f[k+4>>2]|0,f[e>>2]|0,f[e+4>>2]|0)|0;k=(Ma[f[(f[a>>2]|0)+32>>2]&127](a)|0)+32|0;Li(j,g,e,d[(f[k>>2]|0)+38>>1]|0);f[a+364>>2]=c;ui(w);k=a+264|0;c=k;e=j;g=c+40|0;do{f[c>>2]=f[e>>2];c=c+4|0;e=e+4|0}while((c|0)<(g|0));a:do if(Sg(k,1,t)|0){c=j;e=k;g=c+40|0;do{f[c>>2]=f[e>>2];c=c+4|0;e=e+4|0}while((c|0)<(g|0));e=t;c=f[e>>2]|0;e=f[e+4>>2]|0;m=a+232|0;i=a+240|0;h=i;g=f[h>>2]|0;h=f[h+4>>2]|0;m=hk(f[m>>2]|0,f[m+4>>2]|0,g|0,h|0)|0;l=I;if(e>>>0>l>>>0|(e|0)==(l|0)&c>>>0>m>>>0){x=46;break}l=Ij(g|0,h|0,c|0,e|0)|0;m=i;f[m>>2]=l;f[m+4>>2]=I;ed(a+304|0,j)|0;if(!($e(j)|0)){c=0;break}c=w;e=j;g=c+40|0;do{f[c>>2]=f[e>>2];c=c+4|0;e=e+4|0}while((c|0)<(g|0));m=Za(a,f[q>>2]|0)|0;if((m|0)==-1){c=0;break}q=f[(f[n>>2]|0)+32>>2]|0;n=w+16|0;j=f[n>>2]|0;l=(f[w>>2]|0)+j|0;i=w+8|0;n=hk(f[i>>2]|0,f[i+4>>2]|0,j|0,f[n+4>>2]|0)|0;Li(q,l,n,d[q+38>>1]|0);do if((f[o>>2]|0)!=(f[p>>2]|0)){q=f[v>>2]|0;if(((f[q+4>>2]|0)-(f[q>>2]|0)|0)<=0)break;c=0;do{f[r>>2]=c;f[t>>2]=f[r>>2];c=c+3|0;if(!(Bc(a,t)|0)){c=0;break a}q=f[v>>2]|0}while((c|0)<((f[q+4>>2]|0)-(f[q>>2]|0)>>2|0))}while(0);if(b[a+300>>0]|0)Yh(k);c=f[p>>2]|0;if((f[o>>2]|0)!=(c|0)){h=0;do{mf(c+(h*116|0)+4|0,f[v>>2]|0)|0;c=f[p>>2]|0;e=f[c+(h*116|0)+104>>2]|0;g=f[c+(h*116|0)+108>>2]|0;if((e|0)!=(g|0))do{f[s>>2]=f[e>>2];f[t>>2]=f[s>>2];Kd(c+(h*116|0)+4|0,t);e=e+4|0;c=f[p>>2]|0}while((e|0)!=(g|0));zh(c+(h*116|0)+4|0,0,0);h=h+1|0;c=f[p>>2]|0}while(h>>>0<(((f[o>>2]|0)-c|0)/116|0)>>>0)}j=f[v>>2]|0;j=(f[j+28>>2]|0)-(f[j+24>>2]|0)>>2;g=a+196|0;i=a+200|0;h=f[i>>2]|0;c=f[g>>2]|0;e=h-c>>2;do if(j>>>0>e>>>0)Ve(g,j-e|0);else{if(j>>>0>=e>>>0)break;c=c+(j<<2)|0;if((h|0)==(c|0))break;f[i>>2]=h+(~((h+-4-c|0)>>>2)<<2)}while(0);fg(a+184|0,j);c=f[p>>2]|0;if((f[o>>2]|0)!=(c|0)){l=0;do{k=(f[c+(l*116|0)+60>>2]|0)-(f[c+(l*116|0)+56>>2]|0)>>2;h=f[v>>2]|0;h=(f[h+28>>2]|0)-(f[h+24>>2]|0)>>2;k=(k|0)<(h|0)?h:k;h=c+(l*116|0)+88|0;j=c+(l*116|0)+92|0;i=f[j>>2]|0;e=f[h>>2]|0;g=i-e>>2;do if(k>>>0>g>>>0)Ve(h,k-g|0);else{if(k>>>0>=g>>>0)break;e=e+(k<<2)|0;if((i|0)==(e|0))break;f[j>>2]=i+(~((i+-4-e|0)>>>2)<<2)}while(0);fg(c+(l*116|0)+76|0,k);l=l+1|0;c=f[p>>2]|0}while(l>>>0<(((f[o>>2]|0)-c|0)/116|0)>>>0)}c=jb(a,m)|0}else x=46;while(0);if((x|0)==46)c=0;Jm(w+24|0)}else c=0;else c=0}else c=0}else c=0;while(0);x=c;u=y;return x|0}function db(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+32|0;E=F+16|0;D=F+4|0;A=F;f[a+36>>2]=b;B=a+24|0;z=a+28|0;e=f[z>>2]|0;d=f[B>>2]|0;h=e-d>>2;if(h>>>0>=b>>>0){if(h>>>0>b>>>0?(g=d+(b<<2)|0,(e|0)!=(g|0)):0)f[z>>2]=e+(~((e+-4-g|0)>>>2)<<2)}else ee(B,b-h|0,2636);f[E>>2]=0;y=E+4|0;f[y>>2]=0;x=E+8|0;f[x>>2]=0;if(b){if((b|0)<0)Wl(E);d=((b+-1|0)>>>5)+1|0;h=Yi(d<<2)|0;f[E>>2]=h;f[x>>2]=d;f[y>>2]=b;d=b>>>5;Cf(h|0,0,d<<2|0)|0;e=b-(d<<5)|0;d=h+(d<<2)|0;g=h;if(!e)k=b;else{f[d>>2]=f[d>>2]&~(-1>>>(32-e|0));k=b}}else{k=0;g=0;h=0}w=a+4|0;l=f[a>>2]|0;d=(f[w>>2]|0)-l|0;j=d>>2;f[D>>2]=0;i=D+4|0;f[i>>2]=0;e=D+8|0;f[e>>2]=0;do if(j){if((d|0)<0)Wl(D);d=((j+-1|0)>>>5)+1|0;m=Yi(d<<2)|0;f[D>>2]=m;f[e>>2]=d;f[i>>2]=j;d=j>>>5;Cf(m|0,0,d<<2|0)|0;e=j-(d<<5)|0;d=m+(d<<2)|0;if(e|0)f[d>>2]=f[d>>2]&~(-1>>>(32-e|0));if(j>>>0>2){q=a+12|0;t=a+32|0;r=a+52|0;s=a+56|0;v=a+48|0;j=l;e=m;p=0;d=b;a:while(1){o=p*3|0;if((p|0)>=0){l=f[j+(o<<2)>>2]|0;i=o+1|0;i=((i|0)%3|0|0)==0?o+-2|0:i;if((i|0)<0)k=-1073741824;else k=f[j+(i<<2)>>2]|0;i=(((o>>>0)%3|0|0)==0?2:-1)+o|0;if((i|0)<0)i=-1073741824;else i=f[j+(i<<2)>>2]|0;if((l|0)!=(k|0)?!((l|0)==(i|0)|(k|0)==(i|0)):0){i=d;n=0;while(1){j=n+o|0;if(!(f[e+(j>>>5<<2)>>2]&1<<(j&31))){d=f[(f[a>>2]|0)+(j<<2)>>2]|0;f[A>>2]=d;if(!(f[h+(d>>>5<<2)>>2]&1<<(d&31))){k=0;b=i}else{d=f[z>>2]|0;if((d|0)==(f[t>>2]|0))hf(B,2636);else{f[d>>2]=-1073741824;f[z>>2]=d+4}d=f[r>>2]|0;if((d|0)==(f[s>>2]|0))hf(v,A);else{f[d>>2]=f[A>>2];f[r>>2]=d+4}d=f[y>>2]|0;e=f[x>>2]|0;if((d|0)==(e<<5|0)){if((d+1|0)<0){i=52;break a}b=e<<6;m=d+32&-32;Me(E,d>>>0<1073741823?(b>>>0>>0?m:b):2147483647);d=f[y>>2]|0}f[y>>2]=d+1;k=(f[E>>2]|0)+(d>>>5<<2)|0;f[k>>2]=f[k>>2]&~(1<<(d&31));f[A>>2]=i;d=i;k=1;b=i+1|0}h=f[E>>2]|0;g=h+(d>>>5<<2)|0;f[g>>2]=f[g>>2]|1<<(d&31);g=h;b:do if(k){d=j;while(1){if((d|0)==-1073741824){i=69;break b}e=f[D>>2]|0;i=e+(d>>>5<<2)|0;f[i>>2]=f[i>>2]|1<<(d&31);i=f[A>>2]|0;f[(f[B>>2]|0)+(i<<2)>>2]=d;f[(f[a>>2]|0)+(d<<2)>>2]=i;i=d+1|0;do if((d|0)>=0){d=((i|0)%3|0|0)==0?d+-2|0:i;if((d|0)<0)break;d=f[(f[q>>2]|0)+(d<<2)>>2]|0;i=d+1|0;if((d|0)<0)break;d=((i|0)%3|0|0)==0?d+-2|0:i}while(0);if((d|0)==(j|0)){i=68;break}}}else{d=j;while(1){if((d|0)==-1073741824){i=69;break b}e=f[D>>2]|0;i=e+(d>>>5<<2)|0;f[i>>2]=f[i>>2]|1<<(d&31);f[(f[B>>2]|0)+(f[A>>2]<<2)>>2]=d;i=d+1|0;do if((d|0)>=0){d=((i|0)%3|0|0)==0?d+-2|0:i;if((d|0)<0)break;d=f[(f[q>>2]|0)+(d<<2)>>2]|0;i=d+1|0;if((d|0)<0)break;d=((i|0)%3|0|0)==0?d+-2|0:i}while(0);if((d|0)==(j|0)){i=68;break}}}while(0);do if((i|0)==68){i=0;if((j|0)==-1073741824){d=-1073741824;i=75}}else if((i|0)==69){if((j|0)<0){d=j;i=75;break}d=(((j>>>0)%3|0|0)==0?2:-1)+j|0;if((d|0)<0){i=75;break}d=f[(f[q>>2]|0)+(d<<2)>>2]|0;if((d|0)<0){i=75;break}if(!((d>>>0)%3|0)){d=d+2|0;i=75;break}else{d=d+-1|0;i=75;break}}while(0);c:do if((i|0)==75){e=f[D>>2]|0;i=e+(d>>>5<<2)|0;l=1<<(d&31);j=(d|0)<0;if((d|0)==-1073741824)break;if(!k){k=d;e=j;d=l;while(1){if(e){i=87;break a}f[i>>2]=f[i>>2]|d;d=(((k>>>0)%3|0|0)==0?2:-1)+k|0;do if((d|0)>=0){d=f[(f[q>>2]|0)+(d<<2)>>2]|0;if((d|0)<0)break;if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}while(0);e=f[D>>2]|0;if((d|0)==-1073741824)break c;else{k=d;i=e+(d>>>5<<2)|0;e=(d|0)<0;d=1<<(d&31)}}}m=f[a>>2]|0;k=i;e=l;while(1){i=m+(d<<2)|0;do{f[k>>2]=f[k>>2]|e;f[i>>2]=f[A>>2]}while(j);d=(((d>>>0)%3|0|0)==0?2:-1)+d|0;do if((d|0)>=0){d=f[(f[q>>2]|0)+(d<<2)>>2]|0;if((d|0)<0){i=d;break}if(!((d>>>0)%3|0)){i=d+2|0;break}else{i=d+-1|0;break}}else i=d;while(0);e=f[D>>2]|0;if((i|0)==-1073741824)break;else{d=i;k=e+(i>>>5<<2)|0;j=(i|0)<0;e=1<<(i&31)}}}while(0);d=b}else d=i;n=n+1|0;if((n|0)>=3)break;else i=d}}}p=p+1|0;j=f[a>>2]|0;if((p|0)>=(((f[w>>2]|0)-j>>2>>>0)/3|0|0)){i=18;break}}if((i|0)==18){c=g;C=f[y>>2]|0;break}else if((i|0)==52)Wl(E);else if((i|0)==87)while(1)i=87}else{c=g;C=k}}else{c=g;C=k}while(0);j=a+44|0;f[j>>2]=0;B=C>>>5;i=c+(B<<2)|0;h=C&31;d=(B|0)!=0;d:do if(B|h|0){if(!h){e=c;c=0;while(1){e:do if(d){d=0;while(1){if(!(f[e>>2]&1<>2]=c}if((d|0)==31)break;else d=d+1|0}}else{d=0;while(1){if(!(f[e>>2]&1<>2]=c}if((d|0)==31)break e;d=d+1|0;if(!d)break d}}while(0);e=e+4|0;if((e|0)==(i|0))break d;else d=1}}if(d){e=c;c=0;d=0;do{g=0;while(1){if(!(f[e>>2]&1<>2]=d;c=d}if((g|0)==31)break;else g=g+1|0}e=e+4|0}while((e|0)!=(i|0))}else{e=c;c=0}d=0;do{if(!(f[e>>2]&1<>2]=c}d=d+1|0}while((d|0)!=(h|0))}while(0);c=f[D>>2]|0;if(c|0)Em(c);c=f[E>>2]|0;if(!c){u=F;return 1}Em(c);u=F;return 1}function eb(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0,m=0,o=Ka,q=0.0;if(!g){g=0;return g|0}do switch(f[a+28>>2]|0){case 1:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;i=f[f[a>>2]>>2]|0;l=a+40|0;c=Xi(f[l>>2]|0,f[l+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=i+a|0;while(1){l=b[a>>0]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;l=1;return l|0}case 2:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){i=g+(c<<3)|0;f[i>>2]=h[a>>0];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;l=1;return l|0}case 3:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){l=d[a>>1]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;l=1;return l|0}case 4:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){i=g+(c<<3)|0;f[i>>2]=j[a>>1];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;l=1;return l|0}case 5:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){l=f[a>>2]|0;i=g+(c<<3)|0;f[i>>2]=l;f[i+4>>2]=((l|0)<0)<<31>>31;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;l=1;return l|0}case 6:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){i=g+(c<<3)|0;f[i>>2]=f[a>>2];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;l=1;return l|0}case 7:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){m=a;l=f[m+4>>2]|0;i=g+(c<<3)|0;f[i>>2]=f[m>>2];f[i+4>>2]=l;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;m=1;return m|0}case 8:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;m=f[f[a>>2]>>2]|0;l=a+40|0;c=Xi(f[l>>2]|0,f[l+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=m+a|0;while(1){l=a;m=f[l+4>>2]|0;i=g+(c<<3)|0;f[i>>2]=f[l>>2];f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;m=1;return m|0}case 9:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;m=f[f[a>>2]>>2]|0;l=a+40|0;c=Xi(f[l>>2]|0,f[l+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=m+a|0;while(1){o=$(n[a>>2]);m=+K(+o)>=1.0?(+o>0.0?~~+Y(+J(+o/4294967296.0),4294967295.0)>>>0:~~+W((+o-+(~~+o>>>0))/4294967296.0)>>>0):0;i=g+(c<<3)|0;f[i>>2]=~~+o>>>0;f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;m=1;return m|0}case 10:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;m=f[f[a>>2]>>2]|0;l=a+40|0;c=Xi(f[l>>2]|0,f[l+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=m+a|0;while(1){q=+p[a>>3];m=+K(q)>=1.0?(q>0.0?~~+Y(+J(q/4294967296.0),4294967295.0)>>>0:~~+W((q-+(~~q>>>0))/4294967296.0)>>>0):0;i=g+(c<<3)|0;f[i>>2]=~~q>>>0;f[i+4>>2]=m;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;m=1;return m|0}case 11:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;m=f[f[a>>2]>>2]|0;l=a+40|0;c=Xi(f[l>>2]|0,f[l+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=m+a|0;while(1){i=g+(c<<3)|0;f[i>>2]=h[a>>0];f[i+4>>2]=0;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){m=1;return m|0}Cf(g+(c<<3)|0,0,(e<<24>>24)-c<<3|0)|0;m=1;return m|0}default:{m=0;return m|0}}while(0);return 0}function fb(a,c,d,e,g,i){a=a|0;c=+c;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=u;u=u+560|0;l=G+8|0;t=G;F=G+524|0;E=F;m=G+512|0;f[t>>2]=0;D=m+12|0;gk(c)|0;if((I|0)<0){C=1;A=13483;c=-c}else{C=(g&2049|0)!=0&1;A=(g&2048|0)==0?((g&1|0)==0?13484:13489):13486}gk(c)|0;B=I&2146435072;do if(B>>>0<2146435072|(B|0)==2146435072&0<0){q=+jm(c,t)*2.0;j=q!=0.0;if(j)f[t>>2]=(f[t>>2]|0)+-1;w=i|32;if((w|0)==97){r=i&32;p=(r|0)==0?A:A+9|0;o=C|2;j=12-e|0;do if(!(e>>>0>11|(j|0)==0)){c=8.0;do{j=j+-1|0;c=c*16.0}while((j|0)!=0);if((b[p>>0]|0)==45){c=-(c+(-q-c));break}else{c=q+c-c;break}}else c=q;while(0);k=f[t>>2]|0;j=(k|0)<0?0-k|0:k;j=Fg(j,((j|0)<0)<<31>>31,D)|0;if((j|0)==(D|0)){j=m+11|0;b[j>>0]=48}b[j+-1>>0]=(k>>31&2)+43;n=j+-2|0;b[n>>0]=i+15;l=(e|0)<1;m=(g&8|0)==0;k=F;while(1){C=~~c;j=k+1|0;b[k>>0]=h[13518+C>>0]|r;c=(c-+(C|0))*16.0;if((j-E|0)==1?!(m&(l&c==0.0)):0){b[j>>0]=46;j=k+2|0}if(!(c!=0.0))break;else k=j}C=j-E|0;E=D-n|0;D=(e|0)!=0&(C+-2|0)<(e|0)?e+2|0:C;j=E+o+D|0;gh(a,32,d,j,g);Qk(a,p,o);gh(a,48,d,j,g^65536);Qk(a,F,C);gh(a,48,D-C|0,0,0);Qk(a,n,E);gh(a,32,d,j,g^8192);break}k=(e|0)<0?6:e;if(j){j=(f[t>>2]|0)+-28|0;f[t>>2]=j;c=q*268435456.0}else{j=f[t>>2]|0;c=q}B=(j|0)<0?l:l+288|0;l=B;do{y=~~c>>>0;f[l>>2]=y;l=l+4|0;c=(c-+(y>>>0))*1.0e9}while(c!=0.0);if((j|0)>0){m=B;n=l;while(1){o=(j|0)<29?j:29;j=n+-4|0;if(j>>>0>=m>>>0){l=0;do{x=tj(f[j>>2]|0,0,o|0)|0;x=Ij(x|0,I|0,l|0,0)|0;y=I;v=Oi(x|0,y|0,1e9,0)|0;f[j>>2]=v;l=il(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=m>>>0);if(l){m=m+-4|0;f[m>>2]=l}}l=n;while(1){if(l>>>0<=m>>>0)break;j=l+-4|0;if(!(f[j>>2]|0))l=j;else break}j=(f[t>>2]|0)-o|0;f[t>>2]=j;if((j|0)>0)n=l;else break}}else m=B;if((j|0)<0){e=((k+25|0)/9|0)+1|0;s=(w|0)==102;do{r=0-j|0;r=(r|0)<9?r:9;if(m>>>0>>0){o=(1<>>r;p=0;j=m;do{y=f[j>>2]|0;f[j>>2]=(y>>>r)+p;p=X(y&o,n)|0;j=j+4|0}while(j>>>0>>0);j=(f[m>>2]|0)==0?m+4|0:m;if(!p){m=j;j=l}else{f[l>>2]=p;m=j;j=l+4|0}}else{m=(f[m>>2]|0)==0?m+4|0:m;j=l}l=s?B:m;l=(j-l>>2|0)>(e|0)?l+(e<<2)|0:j;j=(f[t>>2]|0)+r|0;f[t>>2]=j}while((j|0)<0);j=m;e=l}else{j=m;e=l}y=B;if(j>>>0>>0){l=(y-j>>2)*9|0;n=f[j>>2]|0;if(n>>>0>=10){m=10;do{m=m*10|0;l=l+1|0}while(n>>>0>=m>>>0)}}else l=0;s=(w|0)==103;v=(k|0)!=0;m=k-((w|0)!=102?l:0)+((v&s)<<31>>31)|0;if((m|0)<(((e-y>>2)*9|0)+-9|0)){n=m+9216|0;m=B+4+(((n|0)/9|0)+-1024<<2)|0;n=((n|0)%9|0)+1|0;if((n|0)<9){o=10;do{o=o*10|0;n=n+1|0}while((n|0)!=9)}else o=10;p=f[m>>2]|0;r=(p>>>0)%(o>>>0)|0;n=(m+4|0)==(e|0);if(!(n&(r|0)==0)){q=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;c=r>>>0>>0?.5:n&(r|0)==(x|0)?1.0:1.5;if(C){x=(b[A>>0]|0)==45;q=x?-q:q;c=x?-c:c}n=p-r|0;f[m>>2]=n;if(q+c!=q){x=n+o|0;f[m>>2]=x;if(x>>>0>999999999){l=m;while(1){m=l+-4|0;f[l>>2]=0;if(m>>>0>>0){j=j+-4|0;f[j>>2]=0}x=(f[m>>2]|0)+1|0;f[m>>2]=x;if(x>>>0>999999999)l=m;else break}}l=(y-j>>2)*9|0;o=f[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;l=l+1|0}while(o>>>0>=n>>>0)}}}w=m+4|0;x=j;j=e>>>0>w>>>0?w:e}else{x=j;j=e}w=j;while(1){if(w>>>0<=x>>>0){t=0;break}j=w+-4|0;if(!(f[j>>2]|0))w=j;else{t=1;break}}e=0-l|0;do if(s){j=((v^1)&1)+k|0;if((j|0)>(l|0)&(l|0)>-5){k=j+-1-l|0;n=i+-1|0}else{k=j+-1|0;n=i+-2|0}j=g&8;if(!j){if(t?(z=f[w+-4>>2]|0,(z|0)!=0):0)if(!((z>>>0)%10|0)){j=10;m=0;do{j=j*10|0;m=m+1|0}while(!((z>>>0)%(j>>>0)|0|0))}else m=0;else m=9;j=((w-y>>2)*9|0)+-9|0;if((n|32|0)==102){i=j-m|0;i=(i|0)>0?i:0;r=0;k=(k|0)<(i|0)?k:i;break}else{i=j+l-m|0;i=(i|0)>0?i:0;r=0;k=(k|0)<(i|0)?k:i;break}}else r=j}else{r=g&8;n=i}while(0);s=k|r;o=(s|0)!=0&1;p=(n|32|0)==102;if(p){v=0;j=(l|0)>0?l:0}else{j=(l|0)<0?e:l;j=Fg(j,((j|0)<0)<<31>>31,D)|0;m=D;if((m-j|0)<2)do{j=j+-1|0;b[j>>0]=48}while((m-j|0)<2);b[j+-1>>0]=(l>>31&2)+43;j=j+-2|0;b[j>>0]=n;v=j;j=m-j|0}j=C+1+k+o+j|0;gh(a,32,d,j,g);Qk(a,A,C);gh(a,48,d,j,g^65536);if(p){o=x>>>0>B>>>0?B:x;r=F+9|0;p=r;n=F+8|0;m=o;do{l=Fg(f[m>>2]|0,0,r)|0;if((m|0)==(o|0)){if((l|0)==(r|0)){b[n>>0]=48;l=n}}else if(l>>>0>F>>>0){Cf(F|0,48,l-E|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}Qk(a,l,p-l|0);m=m+4|0}while(m>>>0<=B>>>0);if(s|0)Qk(a,13534,1);if(m>>>0>>0&(k|0)>0)while(1){l=Fg(f[m>>2]|0,0,r)|0;if(l>>>0>F>>>0){Cf(F|0,48,l-E|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}Qk(a,l,(k|0)<9?k:9);m=m+4|0;l=k+-9|0;if(!(m>>>0>>0&(k|0)>9)){k=l;break}else k=l}gh(a,48,k+9|0,9,0)}else{t=t?w:x+4|0;if((k|0)>-1){s=F+9|0;e=(r|0)==0;r=s;n=0-E|0;p=F+8|0;o=x;do{l=Fg(f[o>>2]|0,0,s)|0;if((l|0)==(s|0)){b[p>>0]=48;l=p}do if((o|0)==(x|0)){m=l+1|0;Qk(a,l,1);if(e&(k|0)<1){l=m;break}Qk(a,13534,1);l=m}else{if(l>>>0<=F>>>0)break;Cf(F|0,48,l+n|0)|0;do l=l+-1|0;while(l>>>0>F>>>0)}while(0);E=r-l|0;Qk(a,l,(k|0)>(E|0)?E:k);k=k-E|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}gh(a,48,k+18|0,18,0);Qk(a,v,D-v|0)}gh(a,32,d,j,g^8192)}else{F=(i&32|0)!=0;j=C+3|0;gh(a,32,d,j,g&-65537);Qk(a,A,C);Qk(a,c!=c|0.0!=0.0?(F?13510:13514):F?13502:13506,3);gh(a,32,d,j,g^8192)}while(0);u=G;return ((j|0)<(d|0)?d:j)|0}function gb(a){a=a|0;var c=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+80|0;t=x+64|0;i=x+60|0;q=x+56|0;p=x+52|0;m=x+48|0;w=x;r=x+44|0;s=x+40|0;f[a+132>>2]=0;h=a+148|0;if(f[h>>2]|0){e=a+144|0;c=f[e>>2]|0;if(c|0)do{v=c;c=f[c>>2]|0;Em(v)}while((c|0)!=0);f[e>>2]=0;c=f[a+140>>2]|0;if(c|0){e=a+136|0;g=0;do{f[(f[e>>2]|0)+(g<<2)>>2]=0;g=g+1|0}while((g|0)!=(c|0))}f[h>>2]=0}l=a+4|0;if(!(Vf(i,f[(f[l>>2]|0)+32>>2]|0)|0)){w=0;u=x;return w|0}k=a+156|0;f[k>>2]=f[i>>2];v=(Vf(q,f[(f[l>>2]|0)+32>>2]|0)|0)^1;do if(!((f[q>>2]|0)>>>0>715827882|v)){c=f[a+24>>2]|0;g=a+28|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);o=Yi(60)|0;tk(o);v=a+8|0;c=f[v>>2]|0;f[v>>2]=o;if(c|0?(Sf(c),Em(c),(f[v>>2]|0)==0):0){c=0;break}h=a+160|0;c=f[h>>2]|0;g=a+164|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);fg(h,f[q>>2]|0);h=a+172|0;c=f[h>>2]|0;g=a+176|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);fg(h,f[q>>2]|0);c=f[a+36>>2]|0;g=a+40|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~(((e+-12-c|0)>>>0)/12|0)*12|0);c=f[a+48>>2]|0;g=a+52|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+64>>2]=0;c=f[a+72>>2]|0;g=a+76|0;e=f[g>>2]|0;if((e|0)!=(c|0))f[g>>2]=e+(~((e+-4-c|0)>>>2)<<2);f[a+84>>2]=-1;f[a+92>>2]=-1;f[a+88>>2]=-1;c=f[(f[l>>2]|0)+32>>2]|0;o=c+8|0;n=f[o+4>>2]|0;h=c+16|0;g=h;e=f[g>>2]|0;g=f[g+4>>2]|0;if((n|0)>(g|0)|((n|0)==(g|0)?(f[o>>2]|0)>>>0>e>>>0:0)){j=b[(f[c>>2]|0)+e>>0]|0;i=Ij(e|0,g|0,1,0)|0;o=h;f[o>>2]=i;f[o+4>>2]=I;o=a+212|0;i=f[o>>2]|0;n=a+216|0;c=f[n>>2]|0;if((c|0)!=(i|0))do{f[n>>2]=c+-116;e=f[c+-12>>2]|0;if(e|0){h=c+-8|0;g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}e=f[c+-28>>2]|0;if(e|0){h=c+-24|0;g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}e=f[c+-40>>2]|0;if(e|0){h=c+-36|0;g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}_f(c+-112|0);c=f[n>>2]|0}while((c|0)!=(i|0));c=j&255;Ae(o,c);if(Vf(p,f[(f[l>>2]|0)+32>>2]|0)|0?(f[q>>2]|0)>>>0>=(f[p>>2]|0)>>>0:0)if((Vf(m,f[(f[l>>2]|0)+32>>2]|0)|0?Wg(f[v>>2]|0,f[q>>2]|0,(f[m>>2]|0)+(f[k>>2]|0)|0)|0:0)?(q=(f[m>>2]|0)+(f[k>>2]|0)|0,b[t>>0]=1,Wd(a+120|0,q,t),(nc(a,f[(f[l>>2]|0)+32>>2]|0)|0)!=-1):0){q=a+224|0;f[a+368>>2]=a;h=(Ma[f[(f[a>>2]|0)+32>>2]&127](a)|0)+32|0;h=f[h>>2]|0;h=(f[h>>2]|0)+(f[h+16>>2]|0)|0;i=(Ma[f[(f[a>>2]|0)+32>>2]&127](a)|0)+32|0;i=f[i>>2]|0;j=i+8|0;i=i+16|0;i=hk(f[j>>2]|0,f[j+4>>2]|0,f[i>>2]|0,f[i+4>>2]|0)|0;j=(Ma[f[(f[a>>2]|0)+32>>2]&127](a)|0)+32|0;Li(q,h,i,d[(f[j>>2]|0)+38>>1]|0);j=Ma[f[(f[a>>2]|0)+36>>2]&127](a)|0;f[a+372>>2]=j;f[a+376>>2]=(f[m>>2]|0)+(f[k>>2]|0);f[a+364>>2]=c;ui(w);a:do if(bc(q,w)|0){m=Ya(a,f[p>>2]|0)|0;if((m|0)==-1){c=0;break}q=f[(f[l>>2]|0)+32>>2]|0;p=w+16|0;k=f[p>>2]|0;l=(f[w>>2]|0)+k|0;j=w+8|0;p=hk(f[j>>2]|0,f[j+4>>2]|0,k|0,f[p+4>>2]|0)|0;Li(q,l,p,d[q+38>>1]|0);do if((f[n>>2]|0)!=(f[o>>2]|0)){q=f[v>>2]|0;if(((f[q+4>>2]|0)-(f[q>>2]|0)|0)<=0)break;c=0;do{f[r>>2]=c;f[t>>2]=f[r>>2];c=c+3|0;if(!(Ac(a,t)|0)){c=0;break a}q=f[v>>2]|0}while((c|0)<((f[q+4>>2]|0)-(f[q>>2]|0)>>2|0))}while(0);if(b[a+300>>0]|0)Yh(a+264|0);c=f[o>>2]|0;if((f[n>>2]|0)!=(c|0)){h=0;do{mf(c+(h*116|0)+4|0,f[v>>2]|0)|0;c=f[o>>2]|0;e=f[c+(h*116|0)+104>>2]|0;g=f[c+(h*116|0)+108>>2]|0;if((e|0)!=(g|0))do{f[s>>2]=f[e>>2];f[t>>2]=f[s>>2];Kd(c+(h*116|0)+4|0,t);e=e+4|0;c=f[o>>2]|0}while((e|0)!=(g|0));zh(c+(h*116|0)+4|0,0,0);h=h+1|0;c=f[o>>2]|0}while(h>>>0<(((f[n>>2]|0)-c|0)/116|0)>>>0)}j=f[v>>2]|0;j=(f[j+28>>2]|0)-(f[j+24>>2]|0)>>2;g=a+196|0;i=a+200|0;h=f[i>>2]|0;c=f[g>>2]|0;e=h-c>>2;do if(j>>>0>e>>>0)Ve(g,j-e|0);else{if(j>>>0>=e>>>0)break;c=c+(j<<2)|0;if((h|0)==(c|0))break;f[i>>2]=h+(~((h+-4-c|0)>>>2)<<2)}while(0);fg(a+184|0,j);c=f[o>>2]|0;if((f[n>>2]|0)!=(c|0)){l=0;do{k=(f[c+(l*116|0)+60>>2]|0)-(f[c+(l*116|0)+56>>2]|0)>>2;h=f[v>>2]|0;h=(f[h+28>>2]|0)-(f[h+24>>2]|0)>>2;k=(k|0)<(h|0)?h:k;h=c+(l*116|0)+88|0;j=c+(l*116|0)+92|0;i=f[j>>2]|0;e=f[h>>2]|0;g=i-e>>2;do if(k>>>0>g>>>0)Ve(h,k-g|0);else{if(k>>>0>=g>>>0)break;e=e+(k<<2)|0;if((i|0)==(e|0))break;f[j>>2]=i+(~((i+-4-e|0)>>>2)<<2)}while(0);fg(c+(l*116|0)+76|0,k);l=l+1|0;c=f[o>>2]|0}while(l>>>0<(((f[n>>2]|0)-c|0)/116|0)>>>0)}c=jb(a,m)|0}else c=0;while(0);Jm(w+24|0)}else c=0;else c=0}else c=0}else c=0;while(0);w=c;u=x;return w|0}function hb(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=u;u=u+64|0;C=G+16|0;z=G;y=G+24|0;F=G+8|0;B=G+20|0;f[C>>2]=c;E=(a|0)!=0;x=y+40|0;D=x;y=y+39|0;A=F+4|0;o=c;c=0;i=0;l=0;a:while(1){do if((c|0)>-1)if((i|0)>(2147483647-c|0)){c=rm()|0;f[c>>2]=75;c=-1;break}else{c=i+c|0;break}while(0);i=b[o>>0]|0;if(!(i<<24>>24)){w=87;break}else j=o;b:while(1){switch(i<<24>>24){case 37:{i=j;w=9;break b}case 0:{i=j;break b}default:{}}v=j+1|0;f[C>>2]=v;i=b[v>>0]|0;j=v}c:do if((w|0)==9)while(1){w=0;if((b[i+1>>0]|0)!=37)break c;j=j+1|0;i=i+2|0;f[C>>2]=i;if((b[i>>0]|0)==37)w=9;else break}while(0);j=j-o|0;if(E)Qk(a,o,j);if(j|0){o=i;i=j;continue}k=i+1|0;j=(b[k>>0]|0)+-48|0;if(j>>>0<10){v=(b[i+2>>0]|0)==36;r=v?j:-1;n=v?1:l;k=v?i+3|0:k}else{r=-1;n=l}f[C>>2]=k;i=b[k>>0]|0;j=(i<<24>>24)+-32|0;d:do if(j>>>0<32){l=0;while(1){j=1<>2]=k;i=b[k>>0]|0;j=(i<<24>>24)+-32|0;if(j>>>0>=32){m=l;break}}}else m=0;while(0);if(i<<24>>24==42){j=k+1|0;i=(b[j>>0]|0)+-48|0;if(i>>>0<10?(b[k+2>>0]|0)==36:0){f[h+(i<<2)>>2]=10;l=1;i=k+3|0;j=f[g+((b[j>>0]|0)+-48<<3)>>2]|0}else{if(n|0){c=-1;break}if(E){l=(f[e>>2]|0)+(4-1)&~(4-1);v=f[l>>2]|0;f[e>>2]=l+4;l=0;i=j;j=v}else{l=0;i=j;j=0}}f[C>>2]=i;t=(j|0)<0;q=t?m|8192:m;v=l;t=t?0-j|0:j}else{j=ii(C)|0;if((j|0)<0){c=-1;break}i=f[C>>2]|0;q=m;v=n;t=j}do if((b[i>>0]|0)==46){if((b[i+1>>0]|0)!=42){f[C>>2]=i+1;m=ii(C)|0;i=f[C>>2]|0;break}k=i+2|0;j=(b[k>>0]|0)+-48|0;if(j>>>0<10?(b[i+3>>0]|0)==36:0){f[h+(j<<2)>>2]=10;m=f[g+((b[k>>0]|0)+-48<<3)>>2]|0;i=i+4|0;f[C>>2]=i;break}if(v|0){c=-1;break a}if(E){s=(f[e>>2]|0)+(4-1)&~(4-1);j=f[s>>2]|0;f[e>>2]=s+4}else j=0;f[C>>2]=k;i=k;m=j}else m=-1;while(0);n=0;while(1){if(((b[i>>0]|0)+-65|0)>>>0>57){c=-1;break a}s=i+1|0;f[C>>2]=s;j=b[(b[i>>0]|0)+-65+(13002+(n*58|0))>>0]|0;l=j&255;if((l+-1|0)>>>0<8){i=s;n=l}else break}if(!(j<<24>>24)){c=-1;break}k=(r|0)>-1;do if(j<<24>>24==19)if(k){c=-1;break a}else w=49;else{if(k){f[h+(r<<2)>>2]=l;l=g+(r<<3)|0;r=f[l+4>>2]|0;w=z;f[w>>2]=f[l>>2];f[w+4>>2]=r;w=49;break}if(!E){c=0;break a}Lc(z,l,e)}while(0);if((w|0)==49?(w=0,!E):0){o=s;i=0;l=v;continue}l=b[i>>0]|0;l=(n|0)!=0&(l&15|0)==3?l&-33:l;j=q&-65537;r=(q&8192|0)==0?q:j;e:do switch(l|0){case 110:switch((n&255)<<24>>24){case 0:{f[f[z>>2]>>2]=c;o=s;i=0;l=v;continue a}case 1:{f[f[z>>2]>>2]=c;o=s;i=0;l=v;continue a}case 2:{o=f[z>>2]|0;f[o>>2]=c;f[o+4>>2]=((c|0)<0)<<31>>31;o=s;i=0;l=v;continue a}case 3:{d[f[z>>2]>>1]=c;o=s;i=0;l=v;continue a}case 4:{b[f[z>>2]>>0]=c;o=s;i=0;l=v;continue a}case 6:{f[f[z>>2]>>2]=c;o=s;i=0;l=v;continue a}case 7:{o=f[z>>2]|0;f[o>>2]=c;f[o+4>>2]=((c|0)<0)<<31>>31;o=s;i=0;l=v;continue a}default:{o=s;i=0;l=v;continue a}}case 112:{i=r|8;j=m>>>0>8?m:8;l=120;w=61;break}case 88:case 120:{i=r;j=m;w=61;break}case 111:{q=z;o=f[q>>2]|0;q=f[q+4>>2]|0;n=Di(o,q,x)|0;j=D-n|0;i=r;j=(r&8|0)==0|(m|0)>(j|0)?m:j+1|0;k=0;m=13466;w=67;break}case 105:case 100:{j=z;i=f[j>>2]|0;j=f[j+4>>2]|0;if((j|0)<0){i=hk(0,0,i|0,j|0)|0;j=I;k=z;f[k>>2]=i;f[k+4>>2]=j;k=1;l=13466;w=66;break e}else{k=(r&2049|0)!=0&1;l=(r&2048|0)==0?((r&1|0)==0?13466:13468):13467;w=66;break e}}case 117:{j=z;i=f[j>>2]|0;j=f[j+4>>2]|0;k=0;l=13466;w=66;break}case 99:{b[y>>0]=f[z>>2];o=y;n=j;l=1;k=0;j=13466;i=x;break}case 109:{i=rm()|0;i=Xk(f[i>>2]|0)|0;w=71;break}case 115:{i=f[z>>2]|0;i=i|0?i:13476;w=71;break}case 67:{f[F>>2]=f[z>>2];f[A>>2]=0;f[z>>2]=F;i=F;m=-1;w=75;break}case 83:{i=f[z>>2]|0;if(!m){gh(a,32,t,0,r);i=0;w=84}else w=75;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{o=s;i=fb(a,+p[z>>3],t,m,r,l)|0;l=v;continue a}default:{n=r;l=m;k=0;j=13466;i=x}}while(0);f:do if((w|0)==61){q=z;o=f[q>>2]|0;q=f[q+4>>2]|0;n=mi(o,q,x,l&32)|0;m=(i&8|0)==0|(o|0)==0&(q|0)==0;k=m?0:2;m=m?13466:13466+(l>>4)|0;w=67}else if((w|0)==66){o=i;q=j;n=Fg(i,j,x)|0;i=r;j=m;m=l;w=67}else if((w|0)==71){w=0;r=Ke(i,0,m)|0;q=(r|0)==0;o=i;n=j;l=q?m:r-i|0;k=0;j=13466;i=q?i+m|0:r}else if((w|0)==75){w=0;k=0;j=0;n=i;while(1){l=f[n>>2]|0;if(!l)break;j=Wk(B,l)|0;if((j|0)<0|j>>>0>(m-k|0)>>>0)break;k=j+k|0;if(m>>>0>k>>>0)n=n+4|0;else break}if((j|0)<0){c=-1;break a}gh(a,32,t,k,r);if(!k){i=0;w=84}else{l=0;while(1){j=f[i>>2]|0;if(!j){i=k;w=84;break f}j=Wk(B,j)|0;l=j+l|0;if((l|0)>(k|0)){i=k;w=84;break f}Qk(a,B,j);if(l>>>0>=k>>>0){i=k;w=84;break}else i=i+4|0}}}while(0);if((w|0)==67){w=0;l=(o|0)!=0|(q|0)!=0;r=(j|0)!=0|l;l=((l^1)&1)+(D-n)|0;o=r?n:x;n=(j|0)>-1?i&-65537:i;l=r?((j|0)>(l|0)?j:l):j;j=m;i=x}else if((w|0)==84){w=0;gh(a,32,t,i,r^8192);o=s;i=(t|0)>(i|0)?t:i;l=v;continue}r=i-o|0;q=(l|0)<(r|0)?r:l;l=q+k|0;i=(t|0)<(l|0)?l:t;gh(a,32,i,l,n);Qk(a,j,k);gh(a,48,i,l,n^65536);gh(a,48,q,r,0);Qk(a,o,r);gh(a,32,i,l,n^8192);o=s;l=v}g:do if((w|0)==87)if(!a)if(!l)c=0;else{c=1;while(1){i=f[h+(c<<2)>>2]|0;if(!i)break;Lc(g+(c<<3)|0,i,e);c=c+1|0;if((c|0)>=10){c=1;break g}}while(1){if(f[h+(c<<2)>>2]|0){c=-1;break g}c=c+1|0;if((c|0)>=10){c=1;break}}}while(0);u=G;return c|0}function ib(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;A=u;u=u+32|0;y=A+20|0;z=A+16|0;x=A+4|0;k=A;w=a+32|0;if(!(Vf(y,f[w>>2]|0)|0)){a=0;u=A;return a|0}if(!(Vf(z,f[w>>2]|0)|0)){a=0;u=A;return a|0}o=f[y>>2]|0;if(o>>>0>1431655765){a=0;u=A;return a|0}c=f[z>>2]|0;v=Xi(o|0,0,3,0)|0;t=I;if(0>t>>>0|0==(t|0)&c>>>0>v>>>0){a=0;u=A;return a|0}m=f[w>>2]|0;v=m+8|0;t=f[v+4>>2]|0;d=m+16|0;j=d;i=f[j>>2]|0;j=f[j+4>>2]|0;if(!((t|0)>(j|0)|((t|0)==(j|0)?(f[v>>2]|0)>>>0>i>>>0:0))){a=0;u=A;return a|0}t=b[(f[m>>2]|0)+i>>0]|0;l=Ij(i|0,j|0,1,0)|0;v=I;s=d;f[s>>2]=l;f[s+4>>2]=v;a:do if(!(t<<24>>24)){if(!(Rc(a,o)|0)){a=0;u=A;return a|0}}else{if(c>>>0<256){if(!o)break;p=a+44|0;q=x+4|0;r=x+8|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;c=m+8|0;d=f[c>>2]|0;c=f[c+4>>2]|0;b:do if((c|0)>(v|0)|(c|0)==(v|0)&d>>>0>l>>>0){j=m;n=o;k=v;i=c;g=d;m=0;while(1){e=j+16|0;d=f[j>>2]|0;t=b[d+l>>0]|0;c=Ij(l|0,k|0,1,0)|0;v=I;s=e;f[s>>2]=c;f[s+4>>2]=v;f[x>>2]=t&255;if(!((i|0)>(v|0)|(i|0)==(v|0)&g>>>0>c>>>0))break b;t=b[d+c>>0]|0;c=Ij(l|0,k|0,2,0)|0;v=I;s=e;f[s>>2]=c;f[s+4>>2]=v;f[q>>2]=t&255;if(!((i|0)>(v|0)|(i|0)==(v|0)&g>>>0>c>>>0))break b;d=b[d+c>>0]|0;c=Ij(l|0,k|0,3,0)|0;f[e>>2]=c;f[e+4>>2]=I;f[r>>2]=d&255;d=f[p>>2]|0;e=d+100|0;c=f[e>>2]|0;if((c|0)==(f[d+104>>2]|0)){Re(d+96|0,x);c=f[y>>2]|0}else{f[c>>2]=f[x>>2];f[c+4>>2]=f[x+4>>2];f[c+8>>2]=f[x+8>>2];f[e>>2]=(f[e>>2]|0)+12;c=n}m=m+1|0;if(m>>>0>=c>>>0)break a;j=f[w>>2]|0;k=j+16|0;l=f[k>>2]|0;k=f[k+4>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;i=j+8|0;g=f[i>>2]|0;i=f[i+4>>2]|0;if(!((i|0)>(k|0)|(i|0)==(k|0)&g>>>0>l>>>0))break;else n=c}}while(0);a=0;u=A;return a|0}if(c>>>0<65536){if(!o)break;r=a+44|0;s=x+4|0;t=x+8|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;e=m+8|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=Ij(i|0,j|0,3,0)|0;d=I;c:do if(!((e|0)<(d|0)|(e|0)==(d|0)&g>>>0>>0)){p=c;j=v;n=e;k=g;q=0;while(1){i=m+16|0;g=f[m>>2]|0;e=g+l|0;e=h[e>>0]|h[e+1>>0]<<8;c=i;f[c>>2]=p;f[c+4>>2]=d;f[x>>2]=e&65535;e=Ij(l|0,j|0,4,0)|0;c=I;if((n|0)<(c|0)|(n|0)==(c|0)&k>>>0>>0)break c;d=g+p|0;d=h[d>>0]|h[d+1>>0]<<8;v=i;f[v>>2]=e;f[v+4>>2]=c;f[s>>2]=d&65535;c=Ij(l|0,j|0,6,0)|0;d=I;if((n|0)<(d|0)|(n|0)==(d|0)&k>>>0>>0)break c;e=g+e|0;e=h[e>>0]|h[e+1>>0]<<8;v=i;f[v>>2]=c;f[v+4>>2]=d;f[t>>2]=e&65535;d=f[r>>2]|0;e=d+100|0;c=f[e>>2]|0;if((c|0)==(f[d+104>>2]|0)){Re(d+96|0,x);c=f[y>>2]|0}else{f[c>>2]=f[x>>2];f[c+4>>2]=f[x+4>>2];f[c+8>>2]=f[x+8>>2];f[e>>2]=(f[e>>2]|0)+12;c=o}q=q+1|0;if(q>>>0>=c>>>0)break a;m=f[w>>2]|0;j=m+16|0;l=f[j>>2]|0;j=f[j+4>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;n=m+8|0;k=f[n>>2]|0;n=f[n+4>>2]|0;p=Ij(l|0,j|0,2,0)|0;d=I;if((n|0)<(d|0)|(n|0)==(d|0)&k>>>0

>>0)break;else o=c}}while(0);a=0;u=A;return a|0}t=a+44|0;if((f[(f[t>>2]|0)+80>>2]|0)<2097152?(((h[a+36>>0]|0)<<8|(h[a+37>>0]|0))&65535)>513:0){if(!o)break;i=x+4|0;j=x+8|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;d:do if(Vf(k,m)|0){g=0;do{f[x>>2]=f[k>>2];if(!(Vf(k,f[w>>2]|0)|0))break d;f[i>>2]=f[k>>2];if(!(Vf(k,f[w>>2]|0)|0))break d;f[j>>2]=f[k>>2];d=f[t>>2]|0;e=d+100|0;c=f[e>>2]|0;if((c|0)==(f[d+104>>2]|0))Re(d+96|0,x);else{f[c>>2]=f[x>>2];f[c+4>>2]=f[x+4>>2];f[c+8>>2]=f[x+8>>2];f[e>>2]=(f[e>>2]|0)+12}g=g+1|0;if(g>>>0>=(f[y>>2]|0)>>>0)break a;v=f[w>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0}while(Vf(k,v)|0)}while(0);a=0;u=A;return a|0}if(o|0){r=x+4|0;s=x+8|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;e=m+8|0;g=f[e>>2]|0;e=f[e+4>>2]|0;c=Ij(i|0,j|0,5,0)|0;d=I;e:do if(!((e|0)<(d|0)|(e|0)==(d|0)&g>>>0>>0)){p=c;j=v;n=e;k=g;q=0;while(1){i=m+16|0;g=f[m>>2]|0;e=g+l|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;c=i;f[c>>2]=p;f[c+4>>2]=d;f[x>>2]=e;e=Ij(l|0,j|0,8,0)|0;c=I;if((n|0)<(c|0)|(n|0)==(c|0)&k>>>0>>0)break e;d=g+p|0;d=h[d>>0]|h[d+1>>0]<<8|h[d+2>>0]<<16|h[d+3>>0]<<24;v=i;f[v>>2]=e;f[v+4>>2]=c;f[r>>2]=d;c=Ij(l|0,j|0,12,0)|0;d=I;if((n|0)<(d|0)|(n|0)==(d|0)&k>>>0>>0)break e;e=g+e|0;e=h[e>>0]|h[e+1>>0]<<8|h[e+2>>0]<<16|h[e+3>>0]<<24;v=i;f[v>>2]=c;f[v+4>>2]=d;f[s>>2]=e;d=f[t>>2]|0;e=d+100|0;c=f[e>>2]|0;if((c|0)==(f[d+104>>2]|0)){Re(d+96|0,x);c=f[y>>2]|0}else{f[c>>2]=f[x>>2];f[c+4>>2]=f[x+4>>2];f[c+8>>2]=f[x+8>>2];f[e>>2]=(f[e>>2]|0)+12;c=o}q=q+1|0;if(q>>>0>=c>>>0)break a;m=f[w>>2]|0;j=m+16|0;l=f[j>>2]|0;j=f[j+4>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;n=m+8|0;k=f[n>>2]|0;n=f[n+4>>2]|0;p=Ij(l|0,j|0,4,0)|0;d=I;if((n|0)<(d|0)|(n|0)==(d|0)&k>>>0

>>0)break;else o=c}}while(0);a=0;u=A;return a|0}}while(0);f[(f[a+4>>2]|0)+80>>2]=f[z>>2];a=1;u=A;return a|0}function jb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,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=u;u=u+48|0;H=J+36|0;I=J+24|0;D=J+12|0;C=J;G=a+4|0;e=f[(f[G>>2]|0)+44>>2]|0;E=a+8|0;h=f[E>>2]|0;h=((f[h+4>>2]|0)-(f[h>>2]|0)>>2>>>0)/3|0;i=e+96|0;e=e+100|0;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;d=f[e>>2]|0;c=f[i>>2]|0;j=(d-c|0)/12|0;if(h>>>0<=j>>>0){if(h>>>0>>0?(g=c+(h*12|0)|0,(d|0)!=(g|0)):0)f[e>>2]=d+(~(((d+-12-g|0)>>>0)/12|0)*12|0)}else Id(i,h-j|0,H);s=a+212|0;r=a+216|0;if((f[s>>2]|0)==(f[r>>2]|0)){e=f[G>>2]|0;c=f[e+44>>2]|0;g=f[c+100>>2]|0;d=f[c+96>>2]|0;if((g-d|0)>0){o=I+4|0;p=I+8|0;k=c;c=e;h=e;n=0;while(1){f[I>>2]=0;f[I+4>>2]=0;f[I+8>>2]=0;e=n*3|0;if((n|0)<0)m=-1073741824;else m=f[(f[f[E>>2]>>2]|0)+(e<<2)>>2]|0;f[I>>2]=m;if((e|0)<-1){f[o>>2]=-1073741824;if((e|0)==-2)F=89;else e=-1073741824}else{f[o>>2]=f[(f[f[E>>2]>>2]|0)+(e+1<<2)>>2];F=89}if((F|0)==89){F=0;e=f[(f[f[E>>2]>>2]|0)+(e+2<<2)>>2]|0}f[p>>2]=e;j=k+96|0;e=k+100|0;a=(g-d|0)/12|0;i=d;l=n;n=n+1|0;if((l|0)<(a|0))e=k;else{c=g;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;if(n>>>0<=a>>>0)if(n>>>0>>0?(q=i+(n*12|0)|0,(c|0)!=(q|0)):0){g=c+(~(((c+-12-q|0)>>>0)/12|0)*12|0)|0;f[e>>2]=g;e=k}else e=k;else{Id(j,n-a|0,H);h=f[G>>2]|0;d=f[h+44>>2]|0;i=f[j>>2]|0;e=d;g=f[d+100>>2]|0;d=f[d+96>>2]|0}c=h}f[i+(l*12|0)>>2]=m;f[i+(l*12|0)+4>>2]=f[o>>2];f[i+(l*12|0)+8>>2]=f[p>>2];if((n|0)>=((g-d|0)/12|0|0))break;else k=e}}else c=e;f[(f[c+4>>2]|0)+80>>2]=b;u=J;return 1}f[I>>2]=0;A=I+4|0;f[A>>2]=0;f[I+8>>2]=0;e=f[E>>2]|0;d=(f[e+4>>2]|0)-(f[e>>2]|0)|0;c=d>>2;f[D>>2]=0;b=D+4|0;f[b>>2]=0;f[D+8>>2]=0;do if(c|0)if(c>>>0>1073741823)Wl(D);else{p=Yi(d)|0;f[D>>2]=p;q=p+(c<<2)|0;f[D+8>>2]=q;Cf(p|0,0,d|0)|0;f[b>>2]=q;break}while(0);if(((f[e+28>>2]|0)-(f[e+24>>2]|0)|0)>0){p=a+120|0;q=I+8|0;c=e;o=0;do{i=f[(f[c+24>>2]|0)+(o<<2)>>2]|0;a:do if((i|0)>=0){b:do if((f[(f[p>>2]|0)+(o>>>5<<2)>>2]&1<<(o&31)|0)==0?(t=f[r>>2]|0,v=f[s>>2]|0,w=v,(t|0)!=(v|0)):0){a=(((i>>>0)%3|0|0)==0?2:-1)+i|0;k=(a|0)<0;m=(t-v|0)/116|0;j=c+12|0;h=c+12|0;l=0;c:while(1){n=f[(f[f[w+(l*116|0)+68>>2]>>2]|0)+(i<<2)>>2]|0;do if(1<<(n&31)&f[(f[w+(l*116|0)+16>>2]|0)+(n>>>5<<2)>>2]|0){g=f[w+(l*116|0)+32>>2]|0;n=f[g+(i<<2)>>2]|0;if(!k){d=f[(f[j>>2]|0)+(a<<2)>>2]|0;do if((d|0)>=0)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}while(0);if((d|0)==(i|0))break;else e=d}else e=a;while(1){d=f[g+(e<<2)>>2]|0;if((e|0)<0)break c;if((d|0)!=(n|0)){i=e;break b}d=(((e>>>0)%3|0|0)==0?2:-1)+e|0;do if((d|0)>=0){d=f[(f[h>>2]|0)+(d<<2)>>2]|0;if((d|0)<0)break;if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}}while(0);if((d|0)==(i|0))break;else e=d}}while(0);l=l+1|0;if(l>>>0>=m>>>0)break b}while(1)if((d|0)==(n|0))d=n;else{i=e;break}}while(0);d=f[A>>2]|0;f[(f[D>>2]|0)+(i<<2)>>2]=d-(f[I>>2]|0)>>2;f[H>>2]=i;if(d>>>0<(f[q>>2]|0)>>>0){f[d>>2]=i;f[A>>2]=d+4}else{hf(I,H);c=f[E>>2]|0}if((((i|0)>=0?(x=(((i>>>0)%3|0|0)==0?2:-1)+i|0,(x|0)>=0):0)?(y=f[(f[c+12>>2]|0)+(x<<2)>>2]|0,(y|0)>=0):0)?(z=y+(((y>>>0)%3|0|0)==0?2:-1)|0,(z|0)>-1&(z|0)!=(i|0)):0){h=z;g=i;while(1){c=f[r>>2]|0;d=f[s>>2]|0;e=d;d:do if((c|0)!=(d|0)){d=(c-d|0)/116|0;c=0;while(1){n=f[e+(c*116|0)+32>>2]|0;c=c+1|0;if((f[n+(h<<2)>>2]|0)!=(f[n+(g<<2)>>2]|0))break;if(c>>>0>=d>>>0){F=64;break d}}c=f[A>>2]|0;f[(f[D>>2]|0)+(h<<2)>>2]=c-(f[I>>2]|0)>>2;f[H>>2]=h;if(c>>>0<(f[q>>2]|0)>>>0){f[c>>2]=h;f[A>>2]=c+4}else hf(I,H)}else F=64;while(0);if((F|0)==64){F=0;n=f[D>>2]|0;f[n+(h<<2)>>2]=f[n+(g<<2)>>2]}c=(((h>>>0)%3|0|0)==0?2:-1)+h|0;if((c|0)<0)break a;c=f[(f[(f[E>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;if((c|0)<0)break a;c=c+(((c>>>0)%3|0|0)==0?2:-1)|0;if((c|0)>-1&(c|0)!=(i|0)){g=h;h=c}else break}}}while(0);o=o+1|0;c=f[E>>2]|0}while((o|0)<((f[c+28>>2]|0)-(f[c+24>>2]|0)>>2|0))}g=f[G>>2]|0;c=f[g+44>>2]|0;e=f[c+100>>2]|0;d=f[c+96>>2]|0;if((e-d|0)>0){n=C+4|0;o=C+8|0;k=d;d=g;h=g;l=0;while(1){f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;j=(f[D>>2]|0)+(l*3<<2)|0;f[C>>2]=f[j>>2];f[C+4>>2]=f[j+4>>2];f[C+8>>2]=f[j+8>>2];j=c+96|0;i=c+100|0;a=(e-k|0)/12|0;g=k;m=l;l=l+1|0;if((m|0)<(a|0))i=k;else{d=e;f[H>>2]=0;f[H+4>>2]=0;f[H+8>>2]=0;if(l>>>0<=a>>>0)if(l>>>0>>0?(B=g+(l*12|0)|0,(d|0)!=(B|0)):0){e=d+(~(((d+-12-B|0)>>>0)/12|0)*12|0)|0;f[i>>2]=e;d=k}else d=k;else{Id(j,l-a|0,H);h=f[G>>2]|0;d=f[h+44>>2]|0;g=f[j>>2]|0;c=d;e=f[d+100>>2]|0;d=f[d+96>>2]|0}i=d;d=h}f[g+(m*12|0)>>2]=f[C>>2];f[g+(m*12|0)+4>>2]=f[n>>2];f[g+(m*12|0)+8>>2]=f[o>>2];if((l|0)>=((e-i|0)/12|0|0))break;else k=i}}else d=g;c=f[I>>2]|0;f[(f[d+4>>2]|0)+80>>2]=(f[A>>2]|0)-c>>2;d=f[D>>2]|0;if(d){c=f[b>>2]|0;if((c|0)!=(d|0))f[b>>2]=c+(~((c+-4-d|0)>>>2)<<2);Em(d);c=f[I>>2]|0}if(c|0){d=f[A>>2]|0;if((d|0)!=(c|0))f[A>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}u=J;return 1}function kb(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var i=0,k=0,l=0;if(!g){g=0;return g|0}do switch(f[a+28>>2]|0){case 1:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;i=f[f[a>>2]>>2]|0;l=a+40|0;c=Xi(f[l>>2]|0,f[l+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=i+a|0;while(1){f[g+(c<<2)>>2]=b[a>>0];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 2:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=h[a>>0];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 3:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=d[a>>1];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 4:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=j[a>>1];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+2|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 5:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=f[a>>2];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 6:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=f[a>>2];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 7:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=f[a>>2];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 8:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=f[a>>2];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 9:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){i=~~$(n[a>>2]);f[g+(c<<2)>>2]=i;c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+4|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 10:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=~~+p[a>>3];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+8|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}case 11:{k=a+24|0;i=b[k>>0]|0;if((i<<24>>24>e<<24>>24?e:i)<<24>>24>0){c=f[c>>2]|0;l=f[f[a>>2]>>2]|0;i=a+40|0;c=Xi(f[i>>2]|0,f[i+4>>2]|0,c|0,((c|0)<0)<<31>>31|0)|0;a=a+48|0;a=Ij(c|0,I|0,f[a>>2]|0,f[a+4>>2]|0)|0;c=0;a=l+a|0;while(1){f[g+(c<<2)>>2]=h[a>>0];c=c+1|0;i=b[k>>0]|0;if((c|0)>=((i<<24>>24>e<<24>>24?e:i)<<24>>24|0))break;else a=a+1|0}}c=i<<24>>24;if(i<<24>>24>=e<<24>>24){l=1;return l|0}Cf(g+(c<<2)|0,0,(e<<24>>24)-c<<2|0)|0;l=1;return l|0}default:{l=0;return l|0}}while(0);return 0}function lb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;F=u;u=u+80|0;k=F+76|0;l=F+72|0;D=F+48|0;m=F+24|0;x=F;h=a+32|0;g=f[c>>2]|0;c=g+1|0;if((g|0)>=0){c=((c|0)%3|0|0)==0?g+-2|0:c;g=(((g>>>0)%3|0|0)==0?2:-1)+g|0;if((c|0)<0)c=-1073741824;else c=f[(f[f[h>>2]>>2]|0)+(c<<2)>>2]|0;if((g|0)<0)i=-1073741824;else i=f[(f[f[h>>2]>>2]|0)+(g<<2)>>2]|0}else{c=-1073741824;i=-1073741824}h=f[a+36>>2]|0;g=f[h>>2]|0;j=(f[h+4>>2]|0)-g>>2;if(j>>>0<=c>>>0)Wl(h);w=f[g+(c<<2)>>2]|0;if(j>>>0<=i>>>0)Wl(h);h=f[g+(i<<2)>>2]|0;p=(w|0)<(e|0);do if(p&(h|0)<(e|0)){z=w<<1;q=f[d+(z<<2)>>2]|0;y=((q|0)<0)<<31>>31;z=f[d+((z|1)<<2)>>2]|0;A=((z|0)<0)<<31>>31;o=h<<1;n=f[d+(o<<2)>>2]|0;o=f[d+((o|1)<<2)>>2]|0;if(!((n|0)!=(q|0)|(o|0)!=(z|0))){f[a+8>>2]=q;f[a+12>>2]=z;u=F;return}i=a+4|0;c=f[(f[i>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;f[D+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];eb(g,k,c,D)|0;c=f[(f[i>>2]|0)+(w<<2)>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];eb(g,k,c,m)|0;c=f[(f[i>>2]|0)+(h<<2)>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;f[x+16>>2]=0;f[x+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;r=b[g+24>>0]|0;f[k>>2]=f[l>>2];eb(g,k,r,x)|0;r=x;i=m;h=f[i>>2]|0;i=f[i+4>>2]|0;r=hk(f[r>>2]|0,f[r+4>>2]|0,h|0,i|0)|0;s=I;t=x+8|0;k=m+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;t=hk(f[t>>2]|0,f[t+4>>2]|0,j|0,k|0)|0;v=I;l=x+16|0;g=m+16|0;c=f[g>>2]|0;g=f[g+4>>2]|0;l=hk(f[l>>2]|0,f[l+4>>2]|0,c|0,g|0)|0;m=I;C=Xi(r|0,s|0,r|0,s|0)|0;x=I;B=Xi(t|0,v|0,t|0,v|0)|0;x=Ij(B|0,I|0,C|0,x|0)|0;C=I;B=Xi(l|0,m|0,l|0,m|0)|0;B=Ij(x|0,C|0,B|0,I|0)|0;C=I;if((B|0)==0&(C|0)==0)break;K=D;K=hk(f[K>>2]|0,f[K+4>>2]|0,h|0,i|0)|0;J=I;H=D+8|0;H=hk(f[H>>2]|0,f[H+4>>2]|0,j|0,k|0)|0;G=I;h=D+16|0;h=hk(f[h>>2]|0,f[h+4>>2]|0,c|0,g|0)|0;i=I;k=Xi(K|0,J|0,r|0,s|0)|0;d=I;g=Xi(H|0,G|0,t|0,v|0)|0;d=Ij(g|0,I|0,k|0,d|0)|0;k=I;g=Xi(h|0,i|0,l|0,m|0)|0;g=Ij(d|0,k|0,g|0,I|0)|0;k=I;d=hk(n|0,((n|0)<0)<<31>>31|0,q|0,y|0)|0;c=I;w=hk(o|0,((o|0)<0)<<31>>31|0,z|0,A|0)|0;x=I;o=Xi(B|0,C|0,q|0,y|0)|0;n=I;q=Xi(B|0,C|0,z|0,A|0)|0;p=I;D=Xi(g|0,k|0,d|0,c|0)|0;e=I;j=Xi(g|0,k|0,w|0,x|0)|0;A=I;n=Ij(D|0,e|0,o|0,n|0)|0;o=I;p=Ij(j|0,A|0,q|0,p|0)|0;q=I;A=Xi(g|0,k|0,r|0,s|0)|0;j=I;e=Xi(g|0,k|0,t|0,v|0)|0;D=I;m=Xi(g|0,k|0,l|0,m|0)|0;k=I;j=Dg(A|0,j|0,B|0,C|0)|0;l=I;D=Dg(e|0,D|0,B|0,C|0)|0;e=I;k=Dg(m|0,k|0,B|0,C|0)|0;m=I;l=hk(K|0,J|0,j|0,l|0)|0;j=I;e=hk(H|0,G|0,D|0,e|0)|0;D=I;m=hk(h|0,i|0,k|0,m|0)|0;k=I;j=Xi(l|0,j|0,l|0,j|0)|0;l=I;D=Xi(e|0,D|0,e|0,D|0)|0;l=Ij(D|0,I|0,j|0,l|0)|0;j=I;k=Xi(m|0,k|0,m|0,k|0)|0;k=Ij(l|0,j|0,k|0,I|0)|0;j=I;l=hk(0,0,d|0,c|0)|0;m=I;j=Xi(k|0,j|0,B|0,C|0)|0;k=I;c=k&2147483647;switch(j|0){case 0:{if(!c){g=0;c=0}else{g=1;c=0;h=j;i=k;E=23}break}case 1:{if(!c){g=1;c=0;E=24}else{g=1;c=0;h=j;i=k;E=23}break}default:{g=1;c=0;h=j;i=k;E=23}}if((E|0)==23)while(1){g=tj(g|0,c|0,1)|0;c=I;K=h;h=zj(h|0,i|0,2)|0;if(!(i>>>0>0|(i|0)==0&K>>>0>7)){E=24;break}else{i=I;E=23}}if((E|0)==24)while(1){K=il(j|0,k|0,g|0,c|0)|0;g=Ij(K|0,I|0,g|0,c|0)|0;g=zj(g|0,I|0,1)|0;c=I;K=Xi(g|0,c|0,g|0,c|0)|0;J=I;if(J>>>0>k>>>0|(J|0)==(k|0)&K>>>0>j>>>0)E=24;else break}E=Xi(g|0,c|0,w|0,x|0)|0;G=I;d=Xi(g|0,c|0,l|0,m|0)|0;H=I;J=a+20|0;D=(f[J>>2]|0)+-1|0;K=(1<<(D&31)&f[(f[a+16>>2]|0)+(D>>>5<<2)>>2]|0)!=0;f[J>>2]=D;J=hk(0,0,E|0,G|0)|0;G=Ij(n|0,o|0,(K?E:J)|0,(K?G:I)|0)|0;J=I;E=hk(0,0,d|0,H|0)|0;H=Ij(p|0,q|0,(K?d:E)|0,(K?H:I)|0)|0;K=I;J=Dg(G|0,J|0,B|0,C|0)|0;K=Dg(H|0,K|0,B|0,C|0)|0;f[a+8>>2]=J;f[a+12>>2]=K;u=F;return}while(0);do if(p)c=w<<1;else{if((e|0)>0){c=(e<<1)+-2|0;break}K=a+8|0;f[K>>2]=0;f[K+4>>2]=0;u=F;return}while(0);f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=f[d+(c+1<<2)>>2];u=F;return}function mb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;F=u;u=u+80|0;k=F+76|0;l=F+72|0;D=F+48|0;m=F+24|0;x=F;h=a+32|0;g=f[c>>2]|0;c=g+1|0;do if((g|0)>=0){c=((c|0)%3|0|0)==0?g+-2|0:c;if(!((g>>>0)%3|0)){g=g+2|0;break}else{g=g+-1|0;break}}else c=g;while(0);i=f[(f[h>>2]|0)+28>>2]|0;h=f[i+(c<<2)>>2]|0;i=f[i+(g<<2)>>2]|0;g=f[a+36>>2]|0;c=f[g>>2]|0;j=(f[g+4>>2]|0)-c>>2;if(j>>>0<=h>>>0)Wl(g);w=f[c+(h<<2)>>2]|0;if(j>>>0<=i>>>0)Wl(g);h=f[c+(i<<2)>>2]|0;p=(w|0)<(e|0);do if(p&(h|0)<(e|0)){y=w<<1;A=f[d+(y<<2)>>2]|0;q=((A|0)<0)<<31>>31;y=f[d+((y|1)<<2)>>2]|0;z=((y|0)<0)<<31>>31;o=h<<1;n=f[d+(o<<2)>>2]|0;o=f[d+((o|1)<<2)>>2]|0;if(!((n|0)!=(A|0)|(o|0)!=(y|0))){f[a+8>>2]=A;f[a+12>>2]=y;u=F;return}i=a+4|0;c=f[(f[i>>2]|0)+(e<<2)>>2]|0;f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;f[D+12>>2]=0;f[D+16>>2]=0;f[D+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];eb(g,k,c,D)|0;c=f[(f[i>>2]|0)+(w<<2)>>2]|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[m+16>>2]=0;f[m+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;c=b[g+24>>0]|0;f[k>>2]=f[l>>2];eb(g,k,c,m)|0;c=f[(f[i>>2]|0)+(h<<2)>>2]|0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=0;f[x+12>>2]=0;f[x+16>>2]=0;f[x+20>>2]=0;g=f[a>>2]|0;if(!(b[g+84>>0]|0))c=f[(f[g+68>>2]|0)+(c<<2)>>2]|0;f[l>>2]=c;r=b[g+24>>0]|0;f[k>>2]=f[l>>2];eb(g,k,r,x)|0;r=x;i=m;h=f[i>>2]|0;i=f[i+4>>2]|0;r=hk(f[r>>2]|0,f[r+4>>2]|0,h|0,i|0)|0;s=I;t=x+8|0;k=m+8|0;j=f[k>>2]|0;k=f[k+4>>2]|0;t=hk(f[t>>2]|0,f[t+4>>2]|0,j|0,k|0)|0;v=I;l=x+16|0;g=m+16|0;c=f[g>>2]|0;g=f[g+4>>2]|0;l=hk(f[l>>2]|0,f[l+4>>2]|0,c|0,g|0)|0;m=I;C=Xi(r|0,s|0,r|0,s|0)|0;x=I;B=Xi(t|0,v|0,t|0,v|0)|0;x=Ij(B|0,I|0,C|0,x|0)|0;C=I;B=Xi(l|0,m|0,l|0,m|0)|0;B=Ij(x|0,C|0,B|0,I|0)|0;C=I;if((B|0)==0&(C|0)==0)break;K=D;K=hk(f[K>>2]|0,f[K+4>>2]|0,h|0,i|0)|0;J=I;H=D+8|0;H=hk(f[H>>2]|0,f[H+4>>2]|0,j|0,k|0)|0;G=I;h=D+16|0;h=hk(f[h>>2]|0,f[h+4>>2]|0,c|0,g|0)|0;i=I;k=Xi(K|0,J|0,r|0,s|0)|0;d=I;g=Xi(H|0,G|0,t|0,v|0)|0;d=Ij(g|0,I|0,k|0,d|0)|0;k=I;g=Xi(h|0,i|0,l|0,m|0)|0;g=Ij(d|0,k|0,g|0,I|0)|0;k=I;d=hk(n|0,((n|0)<0)<<31>>31|0,A|0,q|0)|0;c=I;w=hk(o|0,((o|0)<0)<<31>>31|0,y|0,z|0)|0;x=I;o=Xi(B|0,C|0,A|0,q|0)|0;n=I;q=Xi(B|0,C|0,y|0,z|0)|0;p=I;D=Xi(g|0,k|0,d|0,c|0)|0;e=I;j=Xi(g|0,k|0,w|0,x|0)|0;A=I;n=Ij(D|0,e|0,o|0,n|0)|0;o=I;p=Ij(j|0,A|0,q|0,p|0)|0;q=I;A=Xi(g|0,k|0,r|0,s|0)|0;j=I;e=Xi(g|0,k|0,t|0,v|0)|0;D=I;m=Xi(g|0,k|0,l|0,m|0)|0;k=I;j=Dg(A|0,j|0,B|0,C|0)|0;l=I;D=Dg(e|0,D|0,B|0,C|0)|0;e=I;k=Dg(m|0,k|0,B|0,C|0)|0;m=I;l=hk(K|0,J|0,j|0,l|0)|0;j=I;e=hk(H|0,G|0,D|0,e|0)|0;D=I;m=hk(h|0,i|0,k|0,m|0)|0;k=I;j=Xi(l|0,j|0,l|0,j|0)|0;l=I;D=Xi(e|0,D|0,e|0,D|0)|0;l=Ij(D|0,I|0,j|0,l|0)|0;j=I;k=Xi(m|0,k|0,m|0,k|0)|0;k=Ij(l|0,j|0,k|0,I|0)|0;j=I;l=hk(0,0,d|0,c|0)|0;m=I;j=Xi(k|0,j|0,B|0,C|0)|0;k=I;c=k&2147483647;switch(j|0){case 0:{if(!c){g=0;c=0}else{g=1;c=0;h=j;i=k;E=22}break}case 1:{if(!c){g=1;c=0;E=23}else{g=1;c=0;h=j;i=k;E=22}break}default:{g=1;c=0;h=j;i=k;E=22}}if((E|0)==22)while(1){g=tj(g|0,c|0,1)|0;c=I;K=h;h=zj(h|0,i|0,2)|0;if(!(i>>>0>0|(i|0)==0&K>>>0>7)){E=23;break}else{i=I;E=22}}if((E|0)==23)while(1){K=il(j|0,k|0,g|0,c|0)|0;g=Ij(K|0,I|0,g|0,c|0)|0;g=zj(g|0,I|0,1)|0;c=I;K=Xi(g|0,c|0,g|0,c|0)|0;J=I;if(J>>>0>k>>>0|(J|0)==(k|0)&K>>>0>j>>>0)E=23;else break}E=Xi(g|0,c|0,w|0,x|0)|0;G=I;d=Xi(g|0,c|0,l|0,m|0)|0;H=I;J=a+20|0;D=(f[J>>2]|0)+-1|0;K=(1<<(D&31)&f[(f[a+16>>2]|0)+(D>>>5<<2)>>2]|0)!=0;f[J>>2]=D;J=hk(0,0,E|0,G|0)|0;G=Ij(n|0,o|0,(K?E:J)|0,(K?G:I)|0)|0;J=I;E=hk(0,0,d|0,H|0)|0;H=Ij(p|0,q|0,(K?d:E)|0,(K?H:I)|0)|0;K=I;J=Dg(G|0,J|0,B|0,C|0)|0;K=Dg(H|0,K|0,B|0,C|0)|0;f[a+8>>2]=J;f[a+12>>2]=K;u=F;return}while(0);do if(p)c=w<<1;else{if((e|0)>0){c=(e<<1)+-2|0;break}K=a+8|0;f[K>>2]=0;f[K+4>>2]=0;u=F;return}while(0);f[a+8>>2]=f[d+(c<<2)>>2];f[a+12>>2]=f[d+(c+1<<2)>>2];u=F;return}function nb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;S=u;u=u+96|0;F=S+92|0;G=S+88|0;H=S+72|0;M=S+48|0;N=S+24|0;O=S;L=a+4|0;m=f[L>>2]|0;if(!m)ra(8295,8317,46,8487);K=a+8|0;l=f[K>>2]|0;if(!l)ra(8295,8317,46,8487);J=a+16|0;k=f[J>>2]|0;n=f[c>>2]|0;f[H>>2]=k;f[H+4>>2]=n;D=H+8|0;f[D>>2]=n;b[H+12>>0]=1;k=f[(f[k+28>>2]|0)+(n<<2)>>2]|0;E=a+20|0;i=f[E>>2]|0;c=f[i>>2]|0;if((f[i+4>>2]|0)-c>>2>>>0<=k>>>0)Wl(i);c=f[l+(f[c+(k<<2)>>2]<<2)>>2]|0;if(!(b[m+84>>0]|0))c=f[(f[m+68>>2]|0)+(c<<2)>>2]|0;f[M>>2]=0;f[M+4>>2]=0;f[M+8>>2]=0;f[M+12>>2]=0;f[M+16>>2]=0;f[M+20>>2]=0;f[G>>2]=c;i=b[m+24>>0]|0;f[F>>2]=f[G>>2];eb(m,F,i,M)|0;i=f[D>>2]|0;w=a+28|0;c=(f[w>>2]|0)==0;a:do if((i|0)>=0){A=N+8|0;x=M+8|0;C=N+16|0;y=M+16|0;z=O+8|0;B=O+16|0;k=(n|0)<0;t=n+1|0;v=n+(k?0:((n>>>0)%3|0|0)==0?2:-1)|0;t=k?n:((t|0)%3|0|0)==0?n+-2|0:t;k=0;r=0;l=0;s=0;m=0;o=0;while(1){do if(!c){c=i+1|0;c=((c|0)%3|0|0)==0?i+-2|0:c;if(!((i>>>0)%3|0)){q=i+2|0;break}else{q=i+-1|0;break}}else{c=t;q=v}while(0);p=f[L>>2]|0;if(!p){c=16;break}a=f[K>>2]|0;if(!a){c=16;break}i=f[(f[(f[J>>2]|0)+28>>2]|0)+(c<<2)>>2]|0;n=f[E>>2]|0;c=f[n>>2]|0;if((f[n+4>>2]|0)-c>>2>>>0<=i>>>0){c=18;break}c=f[a+(f[c+(i<<2)>>2]<<2)>>2]|0;if(!(b[p+84>>0]|0))c=f[(f[p+68>>2]|0)+(c<<2)>>2]|0;f[N>>2]=0;f[N+4>>2]=0;f[N+8>>2]=0;f[N+12>>2]=0;f[N+16>>2]=0;f[N+20>>2]=0;f[G>>2]=c;n=b[p+24>>0]|0;f[F>>2]=f[G>>2];eb(p,F,n,N)|0;p=f[L>>2]|0;if(!p){c=23;break}a=f[K>>2]|0;if(!a){c=23;break}i=f[(f[(f[J>>2]|0)+28>>2]|0)+(q<<2)>>2]|0;n=f[E>>2]|0;c=f[n>>2]|0;if((f[n+4>>2]|0)-c>>2>>>0<=i>>>0){c=25;break}c=f[a+(f[c+(i<<2)>>2]<<2)>>2]|0;if(!(b[p+84>>0]|0))c=f[(f[p+68>>2]|0)+(c<<2)>>2]|0;f[O>>2]=0;f[O+4>>2]=0;f[O+8>>2]=0;f[O+12>>2]=0;f[O+16>>2]=0;f[O+20>>2]=0;f[G>>2]=c;i=b[p+24>>0]|0;f[F>>2]=f[G>>2];eb(p,F,i,O)|0;i=N;_=M;Z=f[_>>2]|0;_=f[_+4>>2]|0;i=hk(f[i>>2]|0,f[i+4>>2]|0,Z|0,_|0)|0;c=I;q=A;aa=x;$=f[aa>>2]|0;aa=f[aa+4>>2]|0;q=hk(f[q>>2]|0,f[q+4>>2]|0,$|0,aa|0)|0;p=I;U=C;n=y;T=f[n>>2]|0;n=f[n+4>>2]|0;U=hk(f[U>>2]|0,f[U+4>>2]|0,T|0,n|0)|0;V=I;W=O;_=hk(f[W>>2]|0,f[W+4>>2]|0,Z|0,_|0)|0;Z=I;W=z;aa=hk(f[W>>2]|0,f[W+4>>2]|0,$|0,aa|0)|0;$=I;W=B;n=hk(f[W>>2]|0,f[W+4>>2]|0,T|0,n|0)|0;T=I;W=Xi(n|0,T|0,q|0,p|0)|0;a=I;Y=Xi(aa|0,$|0,U|0,V|0)|0;X=I;V=Xi(_|0,Z|0,U|0,V|0)|0;U=I;T=Xi(n|0,T|0,i|0,c|0)|0;n=I;c=Xi(aa|0,$|0,i|0,c|0)|0;i=I;p=Xi(_|0,Z|0,q|0,p|0)|0;q=I;k=hk(k|0,r|0,Y|0,X|0)|0;k=Ij(k|0,I|0,W|0,a|0)|0;a=I;l=Ij(V|0,U|0,l|0,s|0)|0;l=hk(l|0,I|0,T|0,n|0)|0;n=I;m=hk(m|0,o|0,p|0,q|0)|0;m=Ij(m|0,I|0,c|0,i|0)|0;o=I;dd(H);i=f[D>>2]|0;c=(f[w>>2]|0)==0;if((i|0)<0){j=a;Q=k;R=n;h=l;g=o;e=m;P=c;break a}else{r=a;s=n}}if((c|0)==16)ra(8295,8544,70,8714);else if((c|0)==18)Wl(n);else if((c|0)==23)ra(8295,8544,70,8714);else if((c|0)==25)Wl(n)}else{j=0;Q=0;R=0;h=0;g=0;e=0;P=c}while(0);aa=(j|0)>-1|(j|0)==-1&Q>>>0>4294967295;i=hk(0,0,Q|0,j|0)|0;c=aa?j:I;X=(R|0)>-1|(R|0)==-1&h>>>0>4294967295;Y=hk(0,0,h|0,R|0)|0;Z=X?R:I;$=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;_=hk(0,0,e|0,g|0)|0;$=Ij((X?h:Y)|0,Z|0,($?e:_)|0,($?g:I)|0)|0;c=Ij($|0,I|0,(aa?Q:i)|0,c|0)|0;i=I;if(P)if((c|0)>536870912){aa=zj(c|0,i|0,29)|0;aa=aa&7;i=Dg(Q|0,j|0,aa|0,0)|0;j=I;h=Dg(h|0,R|0,aa|0,0)|0;c=I;e=Dg(e|0,g|0,aa|0,0)|0;g=I}else{i=Q;c=R}else if((i|0)>0|(i|0)==0&c>>>0>536870912){$=zj(c|0,i|0,29)|0;aa=I;i=Dg(Q|0,j|0,$|0,aa|0)|0;j=I;h=Dg(h|0,R|0,$|0,aa|0)|0;c=I;e=Dg(e|0,g|0,$|0,aa|0)|0;g=I}else{i=Q;c=R}_=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;$=hk(0,0,i|0,j|0)|0;aa=_?j:I;V=(c|0)>-1|(c|0)==-1&h>>>0>4294967295;W=hk(0,0,h|0,c|0)|0;X=V?c:I;Z=(g|0)>-1|(g|0)==-1&e>>>0>4294967295;Y=hk(0,0,e|0,g|0)|0;Z=Ij((V?h:W)|0,X|0,(Z?e:Y)|0,(Z?g:I)|0)|0;aa=Ij(Z|0,I|0,(_?i:$)|0,aa|0)|0;$=I;if(($|0)<0|($|0)==0&aa>>>0<536870913){f[d>>2]=i;f[d+4>>2]=h;f[d+8>>2]=e;u=S;return}else ra(8509,8317,95,8487)}function ob(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=Ka,l=Ka,m=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=Ka;C=u;u=u+64|0;e=C+40|0;A=C+16|0;B=C;g=Jb(a,c)|0;if(g|0){f[A>>2]=g;f[e>>2]=f[A>>2];Zc(a,e)|0}f[B>>2]=0;z=B+4|0;f[z>>2]=0;f[B+8>>2]=0;g=f[d>>2]|0;j=(f[d+4>>2]|0)-g|0;if(!j)i=0;else{_e(B,j);i=f[B>>2]|0;g=f[d>>2]|0}Od(i|0,g|0,j|0)|0;Df(A,c);j=A+12|0;f[j>>2]=0;y=A+16|0;f[y>>2]=0;f[A+20>>2]=0;i=f[z>>2]|0;g=f[B>>2]|0;d=i-g|0;if(!d){d=i;i=0}else{_e(j,d);d=f[z>>2]|0;i=f[j>>2]|0;g=f[B>>2]|0}Od(i|0,g|0,d-g|0)|0;x=A+11|0;s=b[x>>0]|0;v=s<<24>>24<0;t=v?f[A>>2]|0:A;s=v?f[A+4>>2]|0:s&255;if(s>>>0>3){i=t;g=s;d=s;while(1){v=X(h[i>>0]|h[i+1>>0]<<8|h[i+2>>0]<<16|h[i+3>>0]<<24,1540483477)|0;g=(X(v>>>24^v,1540483477)|0)^(X(g,1540483477)|0);d=d+-4|0;if(d>>>0<=3)break;else i=i+4|0}v=s+-4|0;i=v&-4;d=t+(i+4)|0;i=v-i|0}else{d=t;g=s;i=s}switch(i|0){case 3:{g=h[d+2>>0]<<16^g;w=12;break}case 2:{w=12;break}case 1:{w=13;break}default:{}}if((w|0)==12){g=h[d+1>>0]<<8^g;w=13}if((w|0)==13)g=X(h[d>>0]^g,1540483477)|0;v=X(g>>>13^g,1540483477)|0;v=v>>>15^v;q=a+4|0;j=f[q>>2]|0;r=(j|0)==0;a:do if(!r){p=j+-1|0;d=(p&j|0)==0;if(!d)if(v>>>0>>0)i=v;else i=(v>>>0)%(j>>>0)|0;else i=v&p;g=f[(f[a>>2]|0)+(i<<2)>>2]|0;if((g|0)!=0?(o=f[g>>2]|0,(o|0)!=0):0){g=(s|0)==0;if(d){if(g){g=o;while(1){t=f[g+4>>2]|0;if(!((t|0)==(v|0)|(t&p|0)==(i|0))){w=54;break a}t=b[g+8+11>>0]|0;if(!((t<<24>>24<0?f[g+12>>2]|0:t&255)|0))break a;g=f[g>>2]|0;if(!g){w=54;break a}}}while(1){m=f[o+4>>2]|0;if(!((m|0)==(v|0)|(m&p|0)==(i|0))){w=54;break a}g=o+8|0;c=b[g+11>>0]|0;m=c<<24>>24<0;c=c&255;do if(((m?f[o+12>>2]|0:c)|0)==(s|0)){d=f[g>>2]|0;if(m)if(!(sh(d,t,s)|0))break a;else break;if((d&255)<<24>>24==(b[t>>0]|0)){d=t;do{c=c+-1|0;g=g+1|0;if(!c)break a;d=d+1|0}while((b[g>>0]|0)==(b[d>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=54;break a}}}if(g){d=o;while(1){g=f[d+4>>2]|0;if((g|0)!=(v|0)){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)!=(i|0)){w=54;break a}}t=b[d+8+11>>0]|0;if(!((t<<24>>24<0?f[d+12>>2]|0:t&255)|0))break a;d=f[d>>2]|0;if(!d){w=54;break a}}}while(1){g=f[o+4>>2]|0;if((g|0)!=(v|0)){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0;if((g|0)!=(i|0)){w=54;break a}}g=o+8|0;c=b[g+11>>0]|0;m=c<<24>>24<0;c=c&255;do if(((m?f[o+12>>2]|0:c)|0)==(s|0)){d=f[g>>2]|0;if(m)if(!(sh(d,t,s)|0))break a;else break;if((d&255)<<24>>24==(b[t>>0]|0)){d=t;do{c=c+-1|0;g=g+1|0;if(!c)break a;d=d+1|0}while((b[g>>0]|0)==(b[d>>0]|0))}}while(0);o=f[o>>2]|0;if(!o){w=54;break}}}else w=54}else{i=0;w=54}while(0);if((w|0)==54){ce(e,a,v,A);c=a+12|0;l=$(((f[c>>2]|0)+1|0)>>>0);D=$(j>>>0);k=$(n[a+16>>2]);do if(r|l>$(D*k)){g=(j>>>0<3|(j+-1&j|0)!=0)&1|j<<1;i=~~$(W($(l/k)))>>>0;ze(a,g>>>0>>0?i:g);g=f[q>>2]|0;i=g+-1|0;if(!(i&g)){j=g;i=i&v;break}if(v>>>0>>0){j=g;i=v}else{j=g;i=(v>>>0)%(g>>>0)|0}}while(0);g=f[(f[a>>2]|0)+(i<<2)>>2]|0;if(!g){d=a+8|0;f[f[e>>2]>>2]=f[d>>2];f[d>>2]=f[e>>2];f[(f[a>>2]|0)+(i<<2)>>2]=d;d=f[e>>2]|0;g=f[d>>2]|0;if(g){g=f[g+4>>2]|0;i=j+-1|0;if(i&j){if(g>>>0>=j>>>0)g=(g>>>0)%(j>>>0)|0}else g=g&i;f[(f[a>>2]|0)+(g<<2)>>2]=d}}else{f[f[e>>2]>>2]=f[g>>2];f[g>>2]=f[e>>2]}f[c>>2]=(f[c>>2]|0)+1;f[e>>2]=0}e=f[A+12>>2]|0;if(e|0){if((f[y>>2]|0)!=(e|0))f[y>>2]=e;Em(e)}if((b[x>>0]|0)<0)Em(f[A>>2]|0);e=f[B>>2]|0;if(!e){u=C;return}if((f[z>>2]|0)!=(e|0))f[z>>2]=e;Em(e);u=C;return}function pb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;x=u;u=u+48|0;w=x;t=x+36|0;j=x+32|0;k=x+28|0;l=x+24|0;m=x+20|0;n=x+16|0;o=x+12|0;s=x+8|0;v=x+4|0;if((f[a+96>>2]|0)==(f[a+92>>2]|0)){u=x;return}d=a+56|0;c=f[d>>2]|0;if((c|0)==(f[a+60>>2]|0))hf(a+52|0,b);else{f[c>>2]=f[b>>2];f[d>>2]=c+4}q=a+88|0;f[q>>2]=0;g=f[a>>2]|0;d=f[b>>2]|0;c=d+1|0;if((d|0)>=0){c=((c|0)%3|0|0)==0?d+-2|0:c;if((c|0)<0)e=-1073741824;else e=f[(f[g>>2]|0)+(c<<2)>>2]|0;c=(((d>>>0)%3|0|0)==0?2:-1)+d|0;if((c|0)<0)i=-1073741824;else i=f[(f[g>>2]|0)+(c<<2)>>2]|0}else{i=-1073741824;e=-1073741824}p=a+24|0;c=f[p>>2]|0;g=c+(e>>>5<<2)|0;h=1<<(e&31);d=f[g>>2]|0;if(!(d&h)){f[g>>2]=d|h;f[j>>2]=e;c=f[b>>2]|0;d=c+1|0;if((c|0)>=0)c=((d|0)%3|0|0)==0?c+-2|0:d;f[k>>2]=c;f[t>>2]=f[j>>2];f[w>>2]=f[k>>2];Fd(a+36|0,t,w);c=f[p>>2]|0}d=c+(i>>>5<<2)|0;e=1<<(i&31);c=f[d>>2]|0;if(!(c&e)){f[d>>2]=c|e;d=a+36|0;f[l>>2]=i;c=f[b>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);f[m>>2]=c;f[t>>2]=f[l>>2];f[w>>2]=f[m>>2];Fd(d,t,w)}c=f[b>>2]|0;if((c|0)<0)e=-1073741824;else e=f[(f[f[a>>2]>>2]|0)+(c<<2)>>2]|0;d=(f[p>>2]|0)+(e>>>5<<2)|0;g=1<<(e&31);c=f[d>>2]|0;if(!(g&c)){f[d>>2]=c|g;f[n>>2]=e;f[o>>2]=f[b>>2];f[t>>2]=f[n>>2];f[w>>2]=f[o>>2];Fd(a+36|0,t,w)}c=f[q>>2]|0;a:do if((c|0)<3){m=a+12|0;n=a+36|0;l=a+92|0;while(1){while(1){e=a+52+(c*12|0)+4|0;d=f[e>>2]|0;if((f[a+52+(c*12|0)>>2]|0)!=(d|0))break;c=c+1|0;if((c|0)>=3)break a}o=d+-4|0;g=f[o>>2]|0;f[e>>2]=o;f[q>>2]=c;f[b>>2]=g;if((g|0)<=-1)break;o=(g>>>0)/3|0;d=f[m>>2]|0;do if(!(f[d+(o>>>5<<2)>>2]&1<<(o&31))){c=g;b:while(1){o=(c|0)/3|0;d=d+(o>>>5<<2)|0;f[d>>2]=1<<(o&31)|f[d>>2];d=f[b>>2]|0;if((d|0)<0)g=-1073741824;else g=f[(f[f[a>>2]>>2]|0)+(d<<2)>>2]|0;e=(f[p>>2]|0)+(g>>>5<<2)|0;h=1<<(g&31);c=f[e>>2]|0;if(!(h&c)){f[e>>2]=c|h;f[s>>2]=g;f[v>>2]=f[b>>2];f[t>>2]=f[s>>2];f[w>>2]=f[v>>2];Fd(n,t,w);d=f[b>>2]|0}h=f[a>>2]|0;if((d|0)<0){r=69;break}c=d+1|0;c=((c|0)%3|0|0)==0?d+-2|0:c;if((c|0)<0)k=c;else k=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;c=(((d>>>0)%3|0|0)==0?2:-1)+d|0;if((c|0)>=0)c=f[(f[h+12>>2]|0)+(c<<2)>>2]|0;j=(k|0)<0;d=j?-1:(k>>>0)/3|0;e=(c|0)<0;g=e?-1:(c>>>0)/3|0;if(j)i=1;else i=(f[(f[m>>2]|0)+(d>>>5<<2)>>2]&1<<(d&31)|0)!=0;do if(e)if(i){r=69;break b}else r=58;else{if(f[(f[m>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)|0)if(i){r=69;break b}else{r=58;break}d=f[(f[h>>2]|0)+(c<<2)>>2]|0;if(!(1<<(d&31)&f[(f[p>>2]|0)+(d>>>5<<2)>>2])){o=(f[l>>2]|0)+(d<<2)|0;g=f[o>>2]|0;f[o>>2]=g+1;g=(g|0)>0?1:2}else g=0;if(i?(g|0)<=(f[q>>2]|0):0)break;f[w>>2]=c;e=a+52+(g*12|0)+4|0;d=f[e>>2]|0;if((d|0)==(f[a+52+(g*12|0)+8>>2]|0))hf(a+52+(g*12|0)|0,w);else{f[d>>2]=c;f[e>>2]=d+4}if((f[q>>2]|0)>(g|0))f[q>>2]=g;if(i){r=69;break b}else r=58}while(0);if((r|0)==58){r=0;if(j)c=-1073741824;else c=f[(f[f[a>>2]>>2]|0)+(k<<2)>>2]|0;if(!(1<<(c&31)&f[(f[p>>2]|0)+(c>>>5<<2)>>2])){o=(f[l>>2]|0)+(c<<2)|0;e=f[o>>2]|0;f[o>>2]=e+1;e=(e|0)>0?1:2}else e=0;if((e|0)>(f[q>>2]|0))break;else c=k}f[b>>2]=c;d=f[m>>2]|0}if((r|0)==69){r=0;c=f[q>>2]|0;break}f[w>>2]=k;d=a+52+(e*12|0)+4|0;c=f[d>>2]|0;if((c|0)==(f[a+52+(e*12|0)+8>>2]|0))hf(a+52+(e*12|0)|0,w);else{f[c>>2]=k;f[d>>2]=c+4}c=f[q>>2]|0;if((c|0)>(e|0)){f[q>>2]=e;c=e}}while(0);if((c|0)>=3)break a}u=x;return}while(0);f[b>>2]=-1073741824;u=x;return}function qb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0;A=u;u=u+176|0;s=A+136|0;w=A+32|0;v=A;t=A+104|0;x=A+100|0;y=a+4|0;q=f[y>>2]|0;d=f[q+32>>2]|0;o=d+8|0;n=f[o>>2]|0;o=f[o+4>>2]|0;p=d+16|0;l=p;k=f[l>>2]|0;l=f[l+4>>2]|0;if(!((o|0)>(l|0)|(o|0)==(l|0)&n>>>0>k>>>0)){c=0;u=A;return c|0}j=f[d>>2]|0;r=b[j+k>>0]|0;d=Ij(k|0,l|0,1,0)|0;m=I;i=p;f[i>>2]=d;f[i+4>>2]=m;if(!((o|0)>(m|0)|(o|0)==(m|0)&n>>>0>d>>>0)){c=0;u=A;return c|0}m=b[j+d>>0]|0;d=Ij(k|0,l|0,2,0)|0;e=I;i=p;f[i>>2]=d;f[i+4>>2]=e;do if(r<<24>>24>-1){i=r<<24>>24;g=f[a+212>>2]|0;if(i>>>0<(((f[a+216>>2]|0)-g|0)/116|0)>>>0){f[g+(i*116|0)>>2]=c;break}else{c=0;u=A;return c|0}}while(0);do if((((h[q+36>>0]|0)<<8|(h[q+37>>0]|0))&65535)>257)if((o|0)>(e|0)|(o|0)==(e|0)&n>>>0>d>>>0){e=b[j+d>>0]|0;o=Ij(k|0,l|0,3,0)|0;f[p>>2]=o;f[p+4>>2]=I;e=e&255;break}else{c=0;u=A;return c|0}else e=0;while(0);n=f[q+44>>2]|0;if(!(m<<24>>24)){if(r<<24>>24<0)d=a+184|0;else{d=r<<24>>24;w=f[a+212>>2]|0;b[w+(d*116|0)+72>>0]=0;d=w+(d*116|0)+76|0}switch((e&255)<<24>>24){case 0:{ac(s,a,d);d=f[s>>2]|0;break}case 1:{zc(s,a,d);d=f[s>>2]|0;break}default:{c=0;u=A;return c|0}}if(!d){c=0;u=A;return c|0}}else{if(e|0){c=0;u=A;return c|0}j=r<<24>>24;if(r<<24>>24<0){c=0;u=A;return c|0}d=Yi(88)|0;i=f[a+212>>2]|0;k=i+(j*116|0)+76|0;f[d+4>>2]=0;f[d>>2]=2332;l=d+12|0;f[l>>2]=2356;m=d+64|0;f[m>>2]=0;f[d+68>>2]=0;f[d+72>>2]=0;e=d+16|0;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));f[d+76>>2]=n;f[d+80>>2]=k;f[d+84>>2]=0;p=w+4|0;f[p>>2]=2356;o=w+56|0;f[o>>2]=0;q=w+60|0;f[q>>2]=0;f[w+64>>2]=0;e=w+8|0;g=e+44|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));g=i+(j*116|0)+4|0;f[v>>2]=2356;e=v+4|0;a=e+4|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;f[a+16>>2]=0;f[a+20>>2]=0;f[e>>2]=g;i=f[i+(j*116|0)+68>>2]|0;i=((f[i+4>>2]|0)-(f[i>>2]|0)>>2>>>0)/3|0;b[s>>0]=0;Wd(v+8|0,i,s);Ra[f[(f[v>>2]|0)+8>>2]&127](v);Wc(t,v);Wc(s,t);f[w>>2]=f[s+4>>2];i=w+4|0;nd(i,s)|0;f[s>>2]=2356;e=f[s+20>>2]|0;if(e|0)Em(e);e=f[s+8>>2]|0;if(e|0)Em(e);f[w+36>>2]=g;f[w+40>>2]=k;f[w+44>>2]=n;f[w+48>>2]=d;f[t>>2]=2356;e=f[t+20>>2]|0;if(e|0)Em(e);e=f[t+8>>2]|0;if(e|0)Em(e);f[d+8>>2]=f[w>>2];nd(l,i)|0;e=d+44|0;t=w+36|0;f[e>>2]=f[t>>2];f[e+4>>2]=f[t+4>>2];f[e+8>>2]=f[t+8>>2];f[e+12>>2]=f[t+12>>2];b[e+16>>0]=b[t+16>>0]|0;qd(m,f[o>>2]|0,f[q>>2]|0);f[v>>2]=2356;e=f[v+20>>2]|0;if(e|0)Em(e);e=f[v+8>>2]|0;if(e|0)Em(e);e=f[o>>2]|0;if(e|0){g=f[q>>2]|0;if((g|0)!=(e|0))f[q>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}f[p>>2]=2356;e=f[w+24>>2]|0;if(e|0)Em(e);e=f[w+12>>2]|0;if(e|0)Em(e)}e=Yi(64)|0;f[x>>2]=d;rh(e,x);l=e;d=f[x>>2]|0;f[x>>2]=0;if(d|0)Ra[f[(f[d>>2]|0)+4>>2]&127](d);d=f[y>>2]|0;if((c|0)<0){Ra[f[(f[e>>2]|0)+4>>2]&127](e);c=0;u=A;return c|0}k=d+8|0;j=d+12|0;d=f[j>>2]|0;e=f[k>>2]|0;i=d-e>>2;do if((i|0)<=(c|0)){g=c+1|0;if(g>>>0>i>>>0){Dd(k,g-i|0);break}if(g>>>0>>0?(z=e+(g<<2)|0,(d|0)!=(z|0)):0)do{y=d+-4|0;f[j>>2]=y;d=f[y>>2]|0;f[y>>2]=0;if(d|0)Ra[f[(f[d>>2]|0)+4>>2]&127](d);d=f[j>>2]|0}while((d|0)!=(z|0))}while(0);c=(f[k>>2]|0)+(c<<2)|0;d=f[c>>2]|0;f[c>>2]=l;if(!d){c=1;u=A;return c|0}Ra[f[(f[d>>2]|0)+4>>2]&127](d);c=1;u=A;return c|0}function rb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+32|0;w=z+28|0;t=z+24|0;j=z+20|0;k=z+16|0;l=z+12|0;m=z+8|0;s=z+4|0;v=z;e=f[b>>2]|0;if((e|0)<0){u=z;return}x=(e>>>0)/3|0;q=a+12|0;if(f[(f[q>>2]|0)+(x>>>5<<2)>>2]&1<<(x&31)|0){u=z;return}x=a+56|0;c=f[x>>2]|0;r=a+60|0;d=f[r>>2]|0;if((d|0)!=(c|0)){c=d+(~((d+-4-c|0)>>>2)<<2)|0;f[r>>2]=c}o=a+64|0;if((c|0)==(f[o>>2]|0))hf(x,b);else{f[c>>2]=e;f[r>>2]=c+4}c=f[a>>2]|0;g=f[b>>2]|0;d=g+1|0;do if((g|0)>=0){c=f[c+28>>2]|0;d=f[c+((((d|0)%3|0|0)==0?g+-2|0:d)<<2)>>2]|0;if(!((g>>>0)%3|0)){e=c;c=g+2|0;break}else{e=c;c=g+-1|0;break}}else{d=f[c+28>>2]|0;e=d;d=f[d+(g<<2)>>2]|0;c=g}while(0);i=f[e+(c<<2)>>2]|0;n=a+24|0;c=f[n>>2]|0;g=c+(d>>>5<<2)|0;h=1<<(d&31);e=f[g>>2]|0;if(!(e&h)){f[g>>2]=e|h;f[j>>2]=d;c=f[b>>2]|0;d=c+1|0;if((c|0)>=0)c=((d|0)%3|0|0)==0?c+-2|0:d;f[k>>2]=c;f[t>>2]=f[j>>2];f[w>>2]=f[k>>2];Fd(a+36|0,t,w);c=f[n>>2]|0}d=c+(i>>>5<<2)|0;e=1<<(i&31);c=f[d>>2]|0;if(!(c&e)){f[d>>2]=c|e;d=a+36|0;f[l>>2]=i;c=f[b>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);f[m>>2]=c;f[t>>2]=f[l>>2];f[w>>2]=f[m>>2];Fd(d,t,w)}d=f[x>>2]|0;c=f[r>>2]|0;if((d|0)==(c|0)){u=z;return}k=a+36|0;do{e=f[c+-4>>2]|0;f[b>>2]=e;g=(e|0)/3|0;if((e|0)>=0?(p=f[q>>2]|0,(f[p+(g>>>5<<2)>>2]&1<<(g&31)|0)==0):0){c=e;d=p;e=f[a>>2]|0;a:while(1){i=(c|0)/3|0;g=d+(i>>>5<<2)|0;f[g>>2]=1<<(i&31)|f[g>>2];g=f[(f[e+28>>2]|0)+(f[b>>2]<<2)>>2]|0;d=(f[n>>2]|0)+(g>>>5<<2)|0;i=1<<(g&31);c=f[d>>2]|0;do if(!(i&c)){h=f[(f[e+40>>2]|0)+(g<<2)>>2]|0;if((h|0)<0){f[d>>2]=c|i;f[s>>2]=g;f[v>>2]=f[b>>2];f[t>>2]=f[s>>2];f[w>>2]=f[v>>2];Fd(k,t,w);y=40;break}m=f[(f[f[e+64>>2]>>2]|0)+(h<<2)>>2]|0;m=(1<<(m&31)&f[(f[e+12>>2]|0)+(m>>>5<<2)>>2]|0)==0;f[d>>2]=c|i;f[s>>2]=g;f[v>>2]=f[b>>2];f[t>>2]=f[s>>2];f[w>>2]=f[v>>2];Fd(k,t,w);if(m){e=f[a>>2]|0;c=f[b>>2]|0;d=c+1|0;if((c|0)>=0)c=((d|0)%3|0|0)==0?c+-2|0:d;do if(!(1<<(c&31)&f[(f[e>>2]|0)+(c>>>5<<2)>>2])){if((c|0)<0)break;c=f[(f[(f[e+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0}else c=-1073741824;while(0);f[b>>2]=c}else y=40}else y=40;while(0);if((y|0)==40){y=0;e=f[a>>2]|0;d=f[b>>2]|0;g=(d|0)<0;c=d+1|0;if(g)c=d;else c=((c|0)%3|0|0)==0?d+-2|0:c;if(!(1<<(c&31)&f[(f[e>>2]|0)+(c>>>5<<2)>>2])){if((c|0)>=0)c=f[(f[(f[e+64>>2]|0)+12>>2]|0)+(c<<2)>>2]|0}else c=-1073741824;f[w>>2]=c;do if(!g)if(!((d>>>0)%3|0)){d=d+2|0;break}else{d=d+-1|0;break}while(0);do if(!(1<<(d&31)&f[(f[e>>2]|0)+(d>>>5<<2)>>2])){if((d|0)<0)break;d=f[(f[(f[e+64>>2]|0)+12>>2]|0)+(d<<2)>>2]|0}else d=-1073741824;while(0);m=(c|0)<0;i=m?-1:(c>>>0)/3|0;h=(d|0)<0;j=h?-1:(d>>>0)/3|0;do if(!m){g=f[q>>2]|0;if(f[g+(i>>>5<<2)>>2]&1<<(i&31)|0){y=54;break}if(h)break;if(!(f[g+(j>>>5<<2)>>2]&1<<(j&31))){y=59;break a}}else y=54;while(0);if((y|0)==54){y=0;if(h){y=56;break}if(!(f[(f[q>>2]|0)+(j>>>5<<2)>>2]&1<<(j&31)))c=d;else{y=56;break}}f[b>>2]=c}d=f[q>>2]|0}do if((y|0)==56){y=0;c=(f[r>>2]|0)+-4|0;f[r>>2]=c}else if((y|0)==59){y=0;c=f[r>>2]|0;f[c+-4>>2]=d;if((c|0)==(f[o>>2]|0)){hf(x,w);c=f[r>>2]|0;break}else{f[c>>2]=f[w>>2];c=c+4|0;f[r>>2]=c;break}}while(0);d=f[x>>2]|0}else{c=c+-4|0;f[r>>2]=c}}while((d|0)!=(c|0));u=z;return}function sb(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;if(!a)return;c=a+-8|0;d=f[4006]|0;a=f[a+-4>>2]|0;b=a&-8;k=c+b|0;do if(!(a&1)){e=f[c>>2]|0;if(!(a&3))return;g=c+(0-e)|0;h=e+b|0;if(g>>>0>>0)return;if((g|0)==(f[4007]|0)){b=k+4|0;a=f[b>>2]|0;if((a&3|0)!=3){i=g;j=g;b=h;break}f[4004]=h;f[b>>2]=a&-2;f[g+4>>2]=h|1;f[g+h>>2]=h;return}c=e>>>3;if(e>>>0<256){a=f[g+8>>2]|0;b=f[g+12>>2]|0;if((b|0)==(a|0)){f[4002]=f[4002]&~(1<>2]=b;f[b+8>>2]=a;i=g;j=g;b=h;break}}e=f[g+24>>2]|0;a=f[g+12>>2]|0;do if((a|0)==(g|0)){c=g+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){c=0;break}else d=c}else d=b;while(1){c=a+20|0;b=f[c>>2]|0;if(b|0){a=b;d=c;continue}c=a+16|0;b=f[c>>2]|0;if(!b)break;else{a=b;d=c}}f[d>>2]=0;c=a}else{c=f[g+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(e){a=f[g+28>>2]|0;b=16312+(a<<2)|0;if((g|0)==(f[b>>2]|0)){f[b>>2]=c;if(!c){f[4003]=f[4003]&~(1<>2]|0)!=(g|0)&1)<<2)>>2]=c;if(!c){i=g;j=g;b=h;break}}f[c+24>>2]=e;b=g+16|0;a=f[b>>2]|0;if(a|0){f[c+16>>2]=a;f[a+24>>2]=c}a=f[b+4>>2]|0;if(a){f[c+20>>2]=a;f[a+24>>2]=c;i=g;j=g;b=h}else{i=g;j=g;b=h}}else{i=g;j=g;b=h}}else{i=c;j=c}while(0);if(i>>>0>=k>>>0)return;a=k+4|0;d=f[a>>2]|0;if(!(d&1))return;if(!(d&2)){a=f[4007]|0;if((k|0)==(f[4008]|0)){k=(f[4005]|0)+b|0;f[4005]=k;f[4008]=j;f[j+4>>2]=k|1;if((j|0)!=(a|0))return;f[4007]=0;f[4004]=0;return}if((k|0)==(a|0)){k=(f[4004]|0)+b|0;f[4004]=k;f[4007]=i;f[j+4>>2]=k|1;f[i+k>>2]=k;return}e=(d&-8)+b|0;c=d>>>3;do if(d>>>0<256){b=f[k+8>>2]|0;a=f[k+12>>2]|0;if((a|0)==(b|0)){f[4002]=f[4002]&~(1<>2]=a;f[a+8>>2]=b;break}}else{g=f[k+24>>2]|0;a=f[k+12>>2]|0;do if((a|0)==(k|0)){c=k+16|0;b=c+4|0;a=f[b>>2]|0;if(!a){a=f[c>>2]|0;if(!a){c=0;break}else d=c}else d=b;while(1){c=a+20|0;b=f[c>>2]|0;if(b|0){a=b;d=c;continue}c=a+16|0;b=f[c>>2]|0;if(!b)break;else{a=b;d=c}}f[d>>2]=0;c=a}else{c=f[k+8>>2]|0;f[c+12>>2]=a;f[a+8>>2]=c;c=a}while(0);if(g|0){a=f[k+28>>2]|0;b=16312+(a<<2)|0;if((k|0)==(f[b>>2]|0)){f[b>>2]=c;if(!c){f[4003]=f[4003]&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=c;if(!c)break}f[c+24>>2]=g;b=k+16|0;a=f[b>>2]|0;if(a|0){f[c+16>>2]=a;f[a+24>>2]=c}a=f[b+4>>2]|0;if(a|0){f[c+20>>2]=a;f[a+24>>2]=c}}}while(0);f[j+4>>2]=e|1;f[i+e>>2]=e;if((j|0)==(f[4007]|0)){f[4004]=e;return}}else{f[a>>2]=d&-2;f[j+4>>2]=b|1;f[i+b>>2]=b;e=b}a=e>>>3;if(e>>>0<256){c=16048+(a<<1<<2)|0;b=f[4002]|0;a=1<>2]|0}f[a>>2]=j;f[b+12>>2]=j;f[j+8>>2]=b;f[j+12>>2]=c;return}a=e>>>8;if(a)if(e>>>0>16777215)b=31;else{i=(a+1048320|0)>>>16&8;k=a<>>16&4;k=k<>>16&2;b=14-(h|i|b)+(k<>>15)|0;b=e>>>(b+7|0)&1|b<<1}else b=0;d=16312+(b<<2)|0;f[j+28>>2]=b;f[j+20>>2]=0;f[j+16>>2]=0;a=f[4003]|0;c=1<>>1)|0);c=f[d>>2]|0;while(1){if((f[c+4>>2]&-8|0)==(e|0)){a=73;break}d=c+16+(b>>>31<<2)|0;a=f[d>>2]|0;if(!a){a=72;break}else{b=b<<1;c=a}}if((a|0)==72){f[d>>2]=j;f[j+24>>2]=c;f[j+12>>2]=j;f[j+8>>2]=j;break}else if((a|0)==73){i=c+8|0;k=f[i>>2]|0;f[k+12>>2]=j;f[i>>2]=j;f[j+8>>2]=k;f[j+12>>2]=c;f[j+24>>2]=0;break}}else{f[4003]=a|c;f[d>>2]=j;f[j+24>>2]=d;f[j+12>>2]=j;f[j+8>>2]=j}while(0);k=(f[4010]|0)+-1|0;f[4010]=k;if(!k)a=16464;else return;while(1){a=f[a>>2]|0;if(!a)break;else a=a+8|0}f[4010]=-1;return}function tb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=u;u=u+48|0;I=J+24|0;G=J+12|0;m=J;if(!b){I=0;u=J;return I|0}F=a+12|0;n=a+4|0;c=f[n>>2]|0;d=f[a>>2]|0;j=c-d>>2;h=a+16|0;g=f[h>>2]|0;e=f[F>>2]|0;k=g-e>>2;if(j>>>0<=k>>>0){if(j>>>0>>0?(i=e+(j<<2)|0,(g|0)!=(i|0)):0)f[h>>2]=g+(~((g+-4-i|0)>>>2)<<2)}else{ee(F,j-k|0,2636);d=f[a>>2]|0;c=f[n>>2]|0}f[I>>2]=0;B=I+4|0;f[B>>2]=0;f[I+8>>2]=0;fg(I,c-d>>2);c=f[n>>2]|0;d=f[a>>2]|0;if((c-d|0)>0){j=0;do{k=f[d+(j<<2)>>2]|0;g=f[B>>2]|0;e=f[I>>2]|0;i=g-e>>2;if((k|0)>=(i|0)){h=k+1|0;f[G>>2]=0;if(h>>>0<=i>>>0){if(h>>>0>>0?(l=e+(h<<2)|0,(g|0)!=(l|0)):0)f[B>>2]=g+(~((g+-4-l|0)>>>2)<<2)}else{ee(I,h-i|0,G);c=f[n>>2]|0;d=f[a>>2]|0}}A=(f[I>>2]|0)+(k<<2)|0;f[A>>2]=(f[A>>2]|0)+1;j=j+1|0}while((j|0)<(c-d>>2|0))}c=c-d|0;h=c>>2;f[G>>2]=0;A=G+4|0;f[A>>2]=0;f[G+8>>2]=0;if(!h){e=0;d=0}else{if(h>>>0>536870911)Wl(G);g=Yi(c<<1)|0;f[A>>2]=g;f[G>>2]=g;f[G+8>>2]=g+(h<<3);e=g;c=h;d=g;while(1){z=e;f[z>>2]=-1;f[z+4>>2]=-1;d=d+8|0;c=c+-1|0;if(!c)break;else e=d}f[A>>2]=g+(h<<3);e=g;d=g}c=f[B>>2]|0;g=f[I>>2]|0;h=c-g|0;z=h>>2;f[m>>2]=0;y=m+4|0;f[y>>2]=0;f[m+8>>2]=0;x=g;do if(z)if(z>>>0>1073741823)Wl(m);else{E=Yi(h)|0;f[m>>2]=E;D=E+(z<<2)|0;f[m+8>>2]=D;Cf(E|0,0,h|0)|0;f[y>>2]=D;C=E;break}else{C=0;D=0;E=0}while(0);if((c|0)!=(g|0)){c=0;g=0;do{f[C+(c<<2)>>2]=g;g=(f[x+(c<<2)>>2]|0)+g|0;c=c+1|0}while(c>>>0>>0)}w=f[a>>2]|0;c=(f[n>>2]|0)-w|0;if((c|0)>0){v=a+40|0;t=c>>2;l=C;r=0;j=e;p=e;q=e;o=e;s=e;while(1){i=(r|0)<0;c=r+1|0;if(!i){c=((c|0)%3|0|0)==0?r+-2|0:c;if((c|0)<0)h=-1073741824;else h=f[w+(c<<2)>>2]|0;c=(r>>>0)%3|0;g=((c|0)==0?2:-1)+r|0;if((g|0)<0){a=-1073741824;n=h}else{a=f[w+(g<<2)>>2]|0;n=h}}else{c=(r>>>0)%3|0;a=-1073741824;n=-1073741824}if((r|0)==((i?-1073741824:r-c|0)|0)){if(i)c=-1073741824;else c=f[w+(r<<2)>>2]|0;if((n|0)==(a|0)|((c|0)==(n|0)|(c|0)==(a|0))){f[v>>2]=(f[v>>2]|0)+1;i=r+2|0;h=p;k=q;c=o;g=s}else H=55}else H=55;a:do if((H|0)==55){H=0;m=f[x+(a<<2)>>2]|0;b:do if((m|0)>0){c=0;i=f[l+(a<<2)>>2]|0;while(1){g=f[o+(i<<3)>>2]|0;if((g|0)<0){g=j;h=p;c=o;break b}if((g|0)==(n|0))break;c=c+1|0;if((c|0)<(m|0))i=i+1|0;else{g=j;h=p;c=o;break b}}k=f[o+(i<<3)+4>>2]|0;h=p;while(1){c=c+1|0;if((c|0)>=(m|0))break;g=i+1|0;f[h+(i<<3)>>2]=f[h+(g<<3)>>2];f[h+(i<<3)+4>>2]=f[h+(g<<3)+4>>2];if((f[j+(i<<3)>>2]|0)<0)break;else{i=g;h=j}}f[q+(i<<3)>>2]=-1;if((k|0)<0){g=q;h=q;c=q}else{i=f[F>>2]|0;f[i+(r<<2)>>2]=k;f[i+(k<<2)>>2]=r;i=r;j=q;h=q;k=q;c=q;g=s;break a}}else{g=j;h=p;c=o}while(0);i=f[x+(n<<2)>>2]|0;if((i|0)>0){h=0;c=f[C+(n<<2)>>2]|0;while(1){g=s+(c<<3)|0;if((f[g>>2]|0)<0)break;h=h+1|0;if((h|0)>=(i|0)){l=C;i=r;j=s;h=s;k=s;c=s;g=s;break a}else c=c+1|0}f[g>>2]=a;f[e+(c<<3)+4>>2]=r;l=C;i=r;j=e;h=e;k=e;c=e;g=e}else{i=r;j=g;k=q;g=s}}while(0);r=i+1|0;if((r|0)>=(t|0))break;else{p=h;q=k;o=c;s=g}}}f[b>>2]=z;if(C){if((D|0)!=(C|0))f[y>>2]=D+(~((D+-4-C|0)>>>2)<<2);Em(E);d=f[G>>2]|0;e=d}if(e|0){c=f[A>>2]|0;if((c|0)!=(e|0))f[A>>2]=c+(~((c+-8-e|0)>>>3)<<3);Em(d)}c=f[I>>2]|0;if(c|0){d=f[B>>2]|0;if((d|0)!=(c|0))f[B>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}I=1;u=J;return I|0}function ub(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;z=u;u=u+32|0;w=z+28|0;t=z+24|0;j=z+20|0;k=z+16|0;l=z+12|0;m=z+8|0;s=z+4|0;v=z;e=f[b>>2]|0;if((e|0)<0){u=z;return}x=(e>>>0)/3|0;q=a+12|0;if(f[(f[q>>2]|0)+(x>>>5<<2)>>2]&1<<(x&31)|0){u=z;return}x=a+56|0;c=f[x>>2]|0;r=a+60|0;d=f[r>>2]|0;if((d|0)!=(c|0)){c=d+(~((d+-4-c|0)>>>2)<<2)|0;f[r>>2]=c}o=a+64|0;if((c|0)==(f[o>>2]|0))hf(x,b);else{f[c>>2]=e;f[r>>2]=c+4}g=f[a>>2]|0;e=f[b>>2]|0;c=e+1|0;if((e|0)>=0){c=((c|0)%3|0|0)==0?e+-2|0:c;if((c|0)<0)d=-1073741824;else d=f[(f[g>>2]|0)+(c<<2)>>2]|0;c=(((e>>>0)%3|0|0)==0?2:-1)+e|0;if((c|0)<0)i=-1073741824;else i=f[(f[g>>2]|0)+(c<<2)>>2]|0}else{d=-1073741824;i=-1073741824}n=a+24|0;c=f[n>>2]|0;g=c+(d>>>5<<2)|0;h=1<<(d&31);e=f[g>>2]|0;if(!(e&h)){f[g>>2]=e|h;f[j>>2]=d;c=f[b>>2]|0;d=c+1|0;if((c|0)>=0)c=((d|0)%3|0|0)==0?c+-2|0:d;f[k>>2]=c;f[t>>2]=f[j>>2];f[w>>2]=f[k>>2];Fd(a+36|0,t,w);c=f[n>>2]|0}d=c+(i>>>5<<2)|0;e=1<<(i&31);c=f[d>>2]|0;if(!(c&e)){f[d>>2]=c|e;d=a+36|0;f[l>>2]=i;c=f[b>>2]|0;do if((c|0)>=0)if(!((c>>>0)%3|0)){c=c+2|0;break}else{c=c+-1|0;break}while(0);f[m>>2]=c;f[t>>2]=f[l>>2];f[w>>2]=f[m>>2];Fd(d,t,w)}d=f[x>>2]|0;c=f[r>>2]|0;if((d|0)==(c|0)){u=z;return}k=a+36|0;g=c;while(1){c=f[g+-4>>2]|0;f[b>>2]=c;e=(c|0)/3|0;if((c|0)>=0?(p=f[q>>2]|0,(f[p+(e>>>5<<2)>>2]&1<<(e&31)|0)==0):0){d=p;a:while(1){m=(c|0)/3|0;d=d+(m>>>5<<2)|0;f[d>>2]=1<<(m&31)|f[d>>2];d=f[b>>2]|0;if((d|0)<0)i=-1073741824;else i=f[(f[f[a>>2]>>2]|0)+(d<<2)>>2]|0;h=(f[n>>2]|0)+(i>>>5<<2)|0;j=1<<(i&31);g=f[h>>2]|0;do if(!(j&g)){e=f[a>>2]|0;c=f[(f[e+24>>2]|0)+(i<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;if((c|0)>=0){c=f[(f[e+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0)c=((d|0)%3|0|0)==0?c+-2|0:d}}f[h>>2]=g|j;f[s>>2]=i;f[v>>2]=f[b>>2];f[t>>2]=f[s>>2];f[w>>2]=f[v>>2];Fd(k,t,w);if((c|0)<0){d=f[b>>2]|0;y=42;break}d=f[a>>2]|0;c=f[b>>2]|0;do if((c|0)<0)c=-1073741824;else{m=c+1|0;c=((m|0)%3|0|0)==0?c+-2|0:m;if((c|0)<0)break;c=f[(f[d+12>>2]|0)+(c<<2)>>2]|0}while(0);f[b>>2]=c}else y=42;while(0);if((y|0)==42){y=0;e=f[a>>2]|0;if((d|0)<0){y=45;break}c=d+1|0;c=((c|0)%3|0|0)==0?d+-2|0:c;if((c|0)>=0)c=f[(f[e+12>>2]|0)+(c<<2)>>2]|0;f[w>>2]=c;d=(((d>>>0)%3|0|0)==0?2:-1)+d|0;if((d|0)>=0)d=f[(f[e+12>>2]|0)+(d<<2)>>2]|0;m=(c|0)<0;h=m?-1:(c>>>0)/3|0;g=(d|0)<0;i=g?-1:(d>>>0)/3|0;do if(!m){e=f[q>>2]|0;if(f[e+(h>>>5<<2)>>2]&1<<(h&31)|0){y=50;break}if(g)break;if(!(f[e+(i>>>5<<2)>>2]&1<<(i&31))){y=55;break a}}else y=50;while(0);if((y|0)==50){y=0;if(g){y=52;break}if(!(f[(f[q>>2]|0)+(i>>>5<<2)>>2]&1<<(i&31)))c=d;else{y=52;break}}f[b>>2]=c}d=f[q>>2]|0}do if((y|0)==45){f[w>>2]=-1073741824;y=52}else if((y|0)==55){y=0;c=f[r>>2]|0;f[c+-4>>2]=d;if((c|0)==(f[o>>2]|0)){hf(x,w);c=f[r>>2]|0;break}else{f[c>>2]=f[w>>2];c=c+4|0;f[r>>2]=c;break}}while(0);if((y|0)==52){y=0;c=(f[r>>2]|0)+-4|0;f[r>>2]=c}d=f[x>>2]|0}else{c=g+-4|0;f[r>>2]=c}if((d|0)==(c|0))break;else g=c}u=z;return}function vb(a,c){a=a|0;c=c|0;var d=0,e=0,g=Ka,i=Ka,j=0,k=0,l=0,m=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=Ka;v=b[c+11>>0]|0;x=v<<24>>24<0;w=x?f[c>>2]|0:c;v=x?f[c+4>>2]|0:v&255;if(v>>>0>3){j=w;m=v;k=v;while(1){x=X(h[j>>0]|h[j+1>>0]<<8|h[j+2>>0]<<16|h[j+3>>0]<<24,1540483477)|0;m=(X(x>>>24^x,1540483477)|0)^(X(m,1540483477)|0);k=k+-4|0;if(k>>>0<=3)break;else j=j+4|0}x=v+-4|0;k=x&-4;l=w+(k+4)|0;j=m;k=x-k|0}else{l=w;j=v;k=v}switch(k|0){case 3:{o=h[l+2>>0]<<16^j;z=6;break}case 2:{o=j;z=6;break}case 1:{p=j;z=7;break}default:q=j}if((z|0)==6){p=h[l+1>>0]<<8^o;z=7}if((z|0)==7)q=X(h[l>>0]^p,1540483477)|0;x=X(q>>>13^q,1540483477)|0;x=x>>>15^x;t=a+4|0;s=f[t>>2]|0;u=(s|0)==0;a:do if(!u){q=s+-1|0;k=(q&s|0)==0;if(!k)if(x>>>0>>0)r=x;else r=(x>>>0)%(s>>>0)|0;else r=x&q;j=f[(f[a>>2]|0)+(r<<2)>>2]|0;if((j|0)!=0?(e=f[j>>2]|0,(e|0)!=0):0){p=(v|0)==0;if(k){if(p){d=e;while(1){w=f[d+4>>2]|0;if(!((w|0)==(x|0)|(w&q|0)==(r|0))){d=r;break a}w=b[d+8+11>>0]|0;if(!((w<<24>>24<0?f[d+12>>2]|0:w&255)|0)){j=d;break}d=f[d>>2]|0;if(!d){d=r;break a}}a=j+20|0;return a|0}else j=e;b:while(1){o=f[j+4>>2]|0;if(!((o|0)==(x|0)|(o&q|0)==(r|0))){d=r;break a}k=j+8|0;m=b[k+11>>0]|0;o=m<<24>>24<0;m=m&255;do if(((o?f[j+12>>2]|0:m)|0)==(v|0)){l=f[k>>2]|0;if(o)if(!(sh(l,w,v)|0)){z=63;break b}else break;if((l&255)<<24>>24==(b[w>>0]|0)){l=w;do{m=m+-1|0;k=k+1|0;if(!m){z=63;break b}l=l+1|0}while((b[k>>0]|0)==(b[l>>0]|0))}}while(0);j=f[j>>2]|0;if(!j){d=r;break a}}if((z|0)==63){a=j+20|0;return a|0}}if(p){while(1){d=f[e+4>>2]|0;if((d|0)!=(x|0)){if(d>>>0>=s>>>0)d=(d>>>0)%(s>>>0)|0;if((d|0)!=(r|0)){d=r;break a}}w=b[e+8+11>>0]|0;if(!((w<<24>>24<0?f[e+12>>2]|0:w&255)|0)){j=e;break}e=f[e>>2]|0;if(!e){d=r;break a}}a=j+20|0;return a|0}c:while(1){j=f[e+4>>2]|0;if((j|0)!=(x|0)){if(j>>>0>=s>>>0)j=(j>>>0)%(s>>>0)|0;if((j|0)!=(r|0)){d=r;break a}}j=e+8|0;l=b[j+11>>0]|0;m=l<<24>>24<0;l=l&255;do if(((m?f[e+12>>2]|0:l)|0)==(v|0)){k=f[j>>2]|0;if(m)if(!(sh(k,w,v)|0)){j=e;z=63;break c}else break;if((k&255)<<24>>24==(b[w>>0]|0)){k=w;do{l=l+-1|0;j=j+1|0;if(!l){j=e;z=63;break c}k=k+1|0}while((b[j>>0]|0)==(b[k>>0]|0))}}while(0);e=f[e>>2]|0;if(!e){d=r;break a}}if((z|0)==63){a=j+20|0;return a|0}}else d=r}else d=0;while(0);l=Yi(24)|0;Df(l+8|0,c);f[l+20>>2]=0;f[l+4>>2]=x;f[l>>2]=0;k=a+12|0;i=$(((f[k>>2]|0)+1|0)>>>0);A=$(s>>>0);g=$(n[a+16>>2]);do if(u|i>$(A*g)){d=(s>>>0<3|(s+-1&s|0)!=0)&1|s<<1;e=~~$(W($(i/g)))>>>0;ze(a,d>>>0>>0?e:d);d=f[t>>2]|0;e=d+-1|0;if(!(e&d)){j=d;d=e&x;break}if(x>>>0>>0){j=d;d=x}else{j=d;d=(x>>>0)%(d>>>0)|0}}else j=s;while(0);e=(f[a>>2]|0)+(d<<2)|0;d=f[e>>2]|0;if(!d){d=a+8|0;f[l>>2]=f[d>>2];f[d>>2]=l;f[e>>2]=d;d=f[l>>2]|0;if(d|0){d=f[d+4>>2]|0;e=j+-1|0;if(e&j){if(d>>>0>=j>>>0)d=(d>>>0)%(j>>>0)|0}else d=d&e;y=(f[a>>2]|0)+(d<<2)|0;z=61}}else{f[l>>2]=f[d>>2];y=d;z=61}if((z|0)==61)f[y>>2]=l;f[k>>2]=(f[k>>2]|0)+1;a=l;a=a+20|0;return a|0}function wb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;G=u;u=u+112|0;B=G+100|0;C=G+80|0;D=G+48|0;e=G+96|0;E=G+24|0;z=G+76|0;F=G;A=G+72|0;if(!(f[a+4>>2]|0))ra(8295,8317,46,8487);if(!(f[a+8>>2]|0))ra(8295,8317,46,8487);h=f[c>>2]|0;f[C>>2]=f[a+16>>2];f[C+4>>2]=h;y=C+8|0;f[y>>2]=h;b[C+12>>0]=1;f[e>>2]=h;f[B>>2]=f[e>>2];we(D,a,B);p=a+28|0;j=(f[p>>2]|0)==0;if((h|0)<0){k=0;l=0;m=0;g=0;e=0;c=0}else{x=h+1|0;x=((x|0)%3|0|0)==0?h+-2|0:x;t=E+8|0;q=D+8|0;w=E+16|0;r=D+16|0;s=F+8|0;v=F+16|0;o=h+(((h>>>0)%3|0|0)==0?2:-1)|0;l=0;k=0;g=0;m=0;c=0;e=0;n=h;do{do if(!j){h=n+1|0;h=((h|0)%3|0|0)==0?n+-2|0:h;if(!((n>>>0)%3|0)){i=h;h=n+2|0;break}else{i=h;h=n+-1|0;break}}else{i=x;h=o}while(0);f[z>>2]=i;f[B>>2]=f[z>>2];we(E,a,B);f[A>>2]=h;f[B>>2]=f[A>>2];we(F,a,B);n=E;R=D;Q=f[R>>2]|0;R=f[R+4>>2]|0;n=hk(f[n>>2]|0,f[n+4>>2]|0,Q|0,R|0)|0;j=I;i=t;T=q;S=f[T>>2]|0;T=f[T+4>>2]|0;i=hk(f[i>>2]|0,f[i+4>>2]|0,S|0,T|0)|0;h=I;K=w;H=r;J=f[H>>2]|0;H=f[H+4>>2]|0;K=hk(f[K>>2]|0,f[K+4>>2]|0,J|0,H|0)|0;L=I;N=F;R=hk(f[N>>2]|0,f[N+4>>2]|0,Q|0,R|0)|0;Q=I;N=s;T=hk(f[N>>2]|0,f[N+4>>2]|0,S|0,T|0)|0;S=I;N=v;H=hk(f[N>>2]|0,f[N+4>>2]|0,J|0,H|0)|0;J=I;N=Xi(H|0,J|0,i|0,h|0)|0;M=I;P=Xi(T|0,S|0,K|0,L|0)|0;O=I;L=Xi(R|0,Q|0,K|0,L|0)|0;K=I;J=Xi(H|0,J|0,n|0,j|0)|0;H=I;j=Xi(T|0,S|0,n|0,j|0)|0;n=I;h=Xi(R|0,Q|0,i|0,h|0)|0;i=I;l=hk(l|0,k|0,P|0,O|0)|0;l=Ij(l|0,I|0,N|0,M|0)|0;k=I;g=Ij(L|0,K|0,g|0,m|0)|0;g=hk(g|0,I|0,J|0,H|0)|0;m=I;c=hk(c|0,e|0,h|0,i|0)|0;c=Ij(c|0,I|0,j|0,n|0)|0;e=I;Td(C);n=f[y>>2]|0;j=(f[p>>2]|0)==0}while((n|0)>=0)}T=(k|0)>-1|(k|0)==-1&l>>>0>4294967295;i=hk(0,0,l|0,k|0)|0;h=T?k:I;O=(m|0)>-1|(m|0)==-1&g>>>0>4294967295;P=hk(0,0,g|0,m|0)|0;Q=O?m:I;S=(e|0)>-1|(e|0)==-1&c>>>0>4294967295;R=hk(0,0,c|0,e|0)|0;S=Ij((O?g:P)|0,Q|0,(S?c:R)|0,(S?e:I)|0)|0;h=Ij(S|0,I|0,(T?l:i)|0,h|0)|0;i=I;if(j)if((h|0)>536870912){T=zj(h|0,i|0,29)|0;T=T&7;i=Dg(l|0,k|0,T|0,0)|0;j=I;g=Dg(g|0,m|0,T|0,0)|0;h=I;c=Dg(c|0,e|0,T|0,0)|0;e=I}else{j=k;i=l;h=m}else if((i|0)>0|(i|0)==0&h>>>0>536870912){S=zj(h|0,i|0,29)|0;T=I;i=Dg(l|0,k|0,S|0,T|0)|0;j=I;g=Dg(g|0,m|0,S|0,T|0)|0;h=I;c=Dg(c|0,e|0,S|0,T|0)|0;e=I}else{j=k;i=l;h=m}R=(j|0)>-1|(j|0)==-1&i>>>0>4294967295;S=hk(0,0,i|0,j|0)|0;T=R?j:I;M=(h|0)>-1|(h|0)==-1&g>>>0>4294967295;N=hk(0,0,g|0,h|0)|0;O=M?h:I;Q=(e|0)>-1|(e|0)==-1&c>>>0>4294967295;P=hk(0,0,c|0,e|0)|0;Q=Ij((M?g:N)|0,O|0,(Q?c:P)|0,(Q?e:I)|0)|0;T=Ij(Q|0,I|0,(R?i:S)|0,T|0)|0;S=I;if((S|0)<0|(S|0)==0&T>>>0<536870913){f[d>>2]=i;f[d+4>>2]=g;f[d+8>>2]=c;u=G;return}else ra(8509,8317,95,8487)}function xb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=u;u=u+16|0;A=D+8|0;x=D+4|0;B=D;y=a+64|0;e=f[y>>2]|0;if(((f[e+28>>2]|0)-(f[e+24>>2]|0)|0)<=0){u=D;return}z=c+96|0;t=c+100|0;w=a+52|0;v=d+84|0;m=d+68|0;o=a+56|0;q=a+60|0;l=a+12|0;n=a+28|0;s=a+40|0;p=a+44|0;r=a+48|0;j=0;k=0;a:while(1){h=f[(f[e+24>>2]|0)+(k<<2)>>2]|0;if((h|0)<0)c=j;else{i=j+1|0;d=(h>>>0)/3|0;c=f[z>>2]|0;if((d|0)>=(((f[t>>2]|0)-c|0)/12|0|0)){C=6;break}c=f[c+(d*12|0)+(((h>>>0)%3|0)<<2)>>2]|0;if(!(b[v>>0]|0))c=f[(f[m>>2]|0)+(c<<2)>>2]|0;f[A>>2]=c;d=f[o>>2]|0;if(d>>>0<(f[q>>2]|0)>>>0){f[d>>2]=c;f[o>>2]=d+4}else hf(w,A);f[A>>2]=h;f[x>>2]=0;b:do if(!(f[(f[l>>2]|0)+(k>>>5<<2)>>2]&1<<(k&31)))c=h;else{c=h+1|0;c=((c|0)%3|0|0)==0?h+-2|0:c;g=f[a>>2]|0;if(!(1<<(c&31)&f[g+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[y>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;d=c+1|0;if((c|0)>=0){c=((d|0)%3|0|0)==0?c+-2|0:d;f[x>>2]=c;if((c|0)<=-1){c=h;break}while(1){f[A>>2]=c;d=c+1|0;d=((d|0)%3|0|0)==0?c+-2|0:d;if(1<<(d&31)&f[g+(d>>>5<<2)>>2]|0){d=-1073741824;break}if((d|0)<0)break;d=f[(f[(f[y>>2]|0)+12>>2]|0)+(d<<2)>>2]|0;e=d+1|0;if((d|0)<0)break;d=((e|0)%3|0|0)==0?d+-2|0:e;f[x>>2]=d;if((d|0)>-1)c=d;else break b}f[x>>2]=d;break}}}else c=-1073741824;f[x>>2]=c;c=h}while(0);f[(f[n>>2]|0)+(c<<2)>>2]=j;c=f[p>>2]|0;if((c|0)==(f[r>>2]|0))hf(s,A);else{f[c>>2]=f[A>>2];f[p>>2]=c+4}e=f[y>>2]|0;c=f[A>>2]|0;c:do if((c|0)>=0){d=(((c>>>0)%3|0|0)==0?2:-1)+c|0;if((d|0)>=0){d=f[(f[e+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0){d=d+(((d>>>0)%3|0|0)==0?2:-1)|0;f[x>>2]=d;if((d|0)>-1&(d|0)!=(c|0)){e=j;while(1){j=d+1|0;j=((j|0)%3|0|0)==0?d+-2|0:j;do if(f[(f[a>>2]|0)+(j>>>5<<2)>>2]&1<<(j&31)){h=i+1|0;e=(d>>>0)/3|0;c=f[z>>2]|0;if((e|0)>=(((f[t>>2]|0)-c|0)/12|0|0)){C=33;break a}c=f[c+(e*12|0)+(((d>>>0)%3|0)<<2)>>2]|0;if(!(b[v>>0]|0))c=f[(f[m>>2]|0)+(c<<2)>>2]|0;f[B>>2]=c;d=f[o>>2]|0;if(d>>>0<(f[q>>2]|0)>>>0){f[d>>2]=c;f[o>>2]=d+4}else hf(w,B);c=f[p>>2]|0;if((c|0)==(f[r>>2]|0)){hf(s,x);g=i;c=h;break}else{f[c>>2]=f[x>>2];f[p>>2]=c+4;g=i;c=h;break}}else{g=e;c=i}while(0);f[(f[n>>2]|0)+(f[x>>2]<<2)>>2]=g;e=f[y>>2]|0;d=f[x>>2]|0;if((d|0)<0)break;d=(((d>>>0)%3|0|0)==0?2:-1)+d|0;if((d|0)<0)break;d=f[(f[e+12>>2]|0)+(d<<2)>>2]|0;if((d|0)<0)break;d=d+(((d>>>0)%3|0|0)==0?2:-1)|0;f[x>>2]=d;if(!((d|0)>-1?(d|0)!=(f[A>>2]|0):0))break c;else{e=g;i=c}}f[x>>2]=d}else c=i}else{c=d;C=30}}else{c=d;C=30}}else C=30;while(0);if((C|0)==30){C=0;f[x>>2]=c;c=i}}k=k+1|0;if((k|0)>=((f[e+28>>2]|0)-(f[e+24>>2]|0)>>2|0)){C=3;break}else j=c}if((C|0)==3){u=D;return}else if((C|0)==6)ra(12948,12860,64,12943);else if((C|0)==33)ra(12948,12860,64,12943)}function yb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=u;u=u+16|0;k=l;i=c+8|0;o=i;m=f[o>>2]|0;o=f[o+4>>2]|0;j=c+16|0;g=j;e=f[g>>2]|0;g=Ij(e|0,f[g+4>>2]|0,5,0)|0;n=I;if((o|0)<(n|0)|(o|0)==(n|0)&m>>>0>>0){e=Yi(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=12021;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Df(a+4|0,k);if((b[k+11>>0]|0)<0)Em(f[k>>2]|0);u=l;return}e=(f[c>>2]|0)+e|0;b[d>>0]=b[e>>0]|0;b[d+1>>0]=b[e+1>>0]|0;b[d+2>>0]=b[e+2>>0]|0;b[d+3>>0]=b[e+3>>0]|0;b[d+4>>0]=b[e+4>>0]|0;e=j;e=Ij(f[e>>2]|0,f[e+4>>2]|0,5,0)|0;g=I;o=j;f[o>>2]=e;f[o+4>>2]=g;if(sh(d,12051,5)|0){e=Yi(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=17;g=e;c=12057;i=g+17|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+17>>0]=0;f[a>>2]=-1;Df(a+4|0,k);if((b[k+11>>0]|0)<0)Em(f[k>>2]|0);u=l;return}o=i;n=f[o+4>>2]|0;if(!((n|0)>(g|0)|((n|0)==(g|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=Yi(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=12021;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Df(a+4|0,k);if((b[k+11>>0]|0)<0)Em(f[k>>2]|0);u=l;return}b[d+5>>0]=b[(f[c>>2]|0)+e>>0]|0;e=j;e=Ij(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=j;f[o>>2]=e;f[o+4>>2]=n;o=i;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=Yi(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=12021;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Df(a+4|0,k);if((b[k+11>>0]|0)<0)Em(f[k>>2]|0);u=l;return}b[d+6>>0]=b[(f[c>>2]|0)+e>>0]|0;e=j;e=Ij(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=j;f[o>>2]=e;f[o+4>>2]=n;o=i;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=Yi(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=12021;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Df(a+4|0,k);if((b[k+11>>0]|0)<0)Em(f[k>>2]|0);u=l;return}b[d+7>>0]=b[(f[c>>2]|0)+e>>0]|0;e=j;e=Ij(f[e>>2]|0,f[e+4>>2]|0,1,0)|0;n=I;o=j;f[o>>2]=e;f[o+4>>2]=n;o=i;m=f[o+4>>2]|0;if(!((m|0)>(n|0)|((m|0)==(n|0)?(f[o>>2]|0)>>>0>e>>>0:0))){e=Yi(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=12021;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Df(a+4|0,k);if((b[k+11>>0]|0)<0)Em(f[k>>2]|0);u=l;return}b[d+8>>0]=b[(f[c>>2]|0)+e>>0]|0;o=j;m=f[o>>2]|0;o=f[o+4>>2]|0;e=Ij(m|0,o|0,1,0)|0;n=j;f[n>>2]=e;f[n+4>>2]=I;n=f[i>>2]|0;i=f[i+4>>2]|0;o=Ij(m|0,o|0,3,0)|0;m=I;if(!((i|0)<(m|0)|(i|0)==(m|0)&n>>>0>>0)){n=d+10|0;o=(f[c>>2]|0)+e|0;o=h[o>>0]|h[o+1>>0]<<8;b[n>>0]=o;b[n+1>>0]=o>>8;n=j;n=Ij(f[n>>2]|0,f[n+4>>2]|0,2,0)|0;o=j;f[o>>2]=n;f[o+4>>2]=I;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=l;return}e=Yi(32)|0;f[k>>2]=e;f[k+8>>2]=-2147483616;f[k+4>>2]=29;g=e;c=12021;i=g+29|0;do{b[g>>0]=b[c>>0]|0;g=g+1|0;c=c+1|0}while((g|0)<(i|0));b[e+29>>0]=0;f[a>>2]=-2;Df(a+4|0,k);if((b[k+11>>0]|0)<0)Em(f[k>>2]|0);u=l;return}function zb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=a+8|0;f[z>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0)if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0){f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2);d=e}else d=e;else{Ve(i,e-j|0);d=f[z>>2]|0}w=f[a+48>>2]|0;x=f[a+52>>2]|0;v=e>>>0>1073741823?-1:e<<2;y=Bm(v)|0;Cf(y|0,0,v|0)|0;if((d|0)>0){k=a+16|0;h=a+32|0;l=a+12|0;i=0;do{d=f[y+(i<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[h>>2]|0;f[j+(i<<2)>>2]=g}else{v=f[l>>2]|0;j=f[h>>2]|0;f[j+(i<<2)>>2]=(d|0)<(v|0)?v:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;B=18}}else{d=d-(f[i>>2]|0)|0;B=18}if((B|0)==18){B=0;f[g>>2]=d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0))}}r=f[a+56>>2]|0;g=f[r>>2]|0;u=(f[r+4>>2]|0)-g|0;v=u>>2;if((u|0)<=4){Cm(y);return 1}t=a+16|0;s=a+32|0;u=a+12|0;q=a+20|0;o=w+12|0;p=(e|0)>0;n=1;while(1){if(v>>>0<=n>>>0){B=24;break}h=f[g+(n<<2)>>2]|0;m=X(n,e)|0;if((h|0)>=0?(A=f[(f[o>>2]|0)+(h<<2)>>2]|0,(A|0)>=0):0){i=f[w>>2]|0;j=f[x>>2]|0;k=f[j+(f[i+(A<<2)>>2]<<2)>>2]|0;h=A+1|0;h=((h|0)%3|0|0)==0?A+-2|0:h;if((h|0)<0)h=-1073741824;else h=f[i+(h<<2)>>2]|0;l=f[j+(h<<2)>>2]|0;h=(((A>>>0)%3|0|0)==0?2:-1)+A|0;if((h|0)<0)h=-1073741824;else h=f[i+(h<<2)>>2]|0;h=f[j+(h<<2)>>2]|0;if((k|0)<(n|0)&(l|0)<(n|0)&(h|0)<(n|0)){k=X(k,e)|0;j=X(l,e)|0;i=X(h,e)|0;if(p){h=0;do{f[y+(h<<2)>>2]=(f[c+(h+i<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+k<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}l=b+(m<<2)|0;k=c+(m<<2)|0;if((d|0)>0){i=0;do{d=f[y+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){j=f[s>>2]|0;f[j+(i<<2)>>2]=h}else{m=f[u>>2]|0;j=f[s>>2]|0;f[j+(i<<2)>>2]=(d|0)<(m|0)?m:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[l+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;h=k+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[u>>2]|0)){d=(f[q>>2]|0)+d|0;B=56}}else{d=d-(f[q>>2]|0)|0;B=56}if((B|0)==56){B=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}else B=34}else B=34;if((B|0)==34){B=0;j=c+((X(n+-1|0,e)|0)<<2)|0;a=b+(m<<2)|0;l=c+(m<<2)|0;if((d|0)>0){i=0;do{d=f[j+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){k=f[s>>2]|0;f[k+(i<<2)>>2]=h}else{m=f[u>>2]|0;k=f[s>>2]|0;f[k+(i<<2)>>2]=(d|0)<(m|0)?m:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[u>>2]|0)){d=(f[q>>2]|0)+d|0;B=44}}else{d=d-(f[q>>2]|0)|0;B=44}if((B|0)==44){B=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}n=n+1|0;if((n|0)>=(v|0)){B=22;break}}if((B|0)==22){Cm(y);return 1}else if((B|0)==24)Wl(r);return 0}function Ab(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;z=a+8|0;f[z>>2]=e;i=a+32|0;h=a+36|0;g=f[h>>2]|0;d=f[i>>2]|0;j=g-d>>2;if(j>>>0>=e>>>0)if(j>>>0>e>>>0?(k=d+(e<<2)|0,(g|0)!=(k|0)):0){f[h>>2]=g+(~((g+-4-k|0)>>>2)<<2);d=e}else d=e;else{Ve(i,e-j|0);d=f[z>>2]|0}w=f[a+48>>2]|0;x=f[a+52>>2]|0;v=e>>>0>1073741823?-1:e<<2;y=Bm(v)|0;Cf(y|0,0,v|0)|0;if((d|0)>0){k=a+16|0;h=a+32|0;l=a+12|0;i=0;do{d=f[y+(i<<2)>>2]|0;g=f[k>>2]|0;if((d|0)>(g|0)){j=f[h>>2]|0;f[j+(i<<2)>>2]=g}else{v=f[l>>2]|0;j=f[h>>2]|0;f[j+(i<<2)>>2]=(d|0)<(v|0)?v:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=a+20|0;h=0;do{d=(f[b+(h<<2)>>2]|0)+(f[j+(h<<2)>>2]|0)|0;g=c+(h<<2)|0;f[g>>2]=d;if((d|0)<=(f[k>>2]|0)){if((d|0)<(f[l>>2]|0)){d=(f[i>>2]|0)+d|0;E=18}}else{d=d-(f[i>>2]|0)|0;E=18}if((E|0)==18){E=0;f[g>>2]=d}h=h+1|0;d=f[z>>2]|0}while((h|0)<(d|0))}}r=f[a+56>>2]|0;g=f[r>>2]|0;u=(f[r+4>>2]|0)-g|0;v=u>>2;if((u|0)<=4){Cm(y);return 1}t=a+16|0;s=a+32|0;u=a+12|0;q=a+20|0;p=w+64|0;n=w+28|0;o=(e|0)>0;m=1;while(1){if(v>>>0<=m>>>0){E=24;break}h=f[g+(m<<2)>>2]|0;l=X(m,e)|0;if((!((h|0)<0?1:(1<<(h&31)&f[(f[w>>2]|0)+(h>>>5<<2)>>2]|0)!=0)?(D=f[(f[(f[p>>2]|0)+12>>2]|0)+(h<<2)>>2]|0,(D|0)>=0):0)?(C=f[n>>2]|0,a=f[x>>2]|0,A=f[a+(f[C+(D<<2)>>2]<<2)>>2]|0,B=D+1|0,B=f[a+(f[C+((((B|0)%3|0|0)==0?D+-2|0:B)<<2)>>2]<<2)>>2]|0,C=f[a+(f[C+((((D>>>0)%3|0|0)==0?2:-1)+D<<2)>>2]<<2)>>2]|0,(A|0)<(m|0)&(B|0)<(m|0)&(C|0)<(m|0)):0){i=X(A,e)|0;j=X(B,e)|0;k=X(C,e)|0;if(o){h=0;do{f[y+(h<<2)>>2]=(f[c+(h+k<<2)>>2]|0)+(f[c+(h+j<<2)>>2]|0)-(f[c+(h+i<<2)>>2]|0);h=h+1|0}while((h|0)!=(e|0))}a=b+(l<<2)|0;k=c+(l<<2)|0;if((d|0)>0){i=0;do{d=f[y+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){j=f[s>>2]|0;f[j+(i<<2)>>2]=h}else{l=f[u>>2]|0;j=f[s>>2]|0;f[j+(i<<2)>>2]=(d|0)<(l|0)?l:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[j+(i<<2)>>2]|0)|0;h=k+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[u>>2]|0)){d=(f[q>>2]|0)+d|0;E=52}}else{d=d-(f[q>>2]|0)|0;E=52}if((E|0)==52){E=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}else{j=c+((X(m+-1|0,e)|0)<<2)|0;a=b+(l<<2)|0;l=c+(l<<2)|0;if((d|0)>0){i=0;do{d=f[j+(i<<2)>>2]|0;h=f[t>>2]|0;if((d|0)>(h|0)){k=f[s>>2]|0;f[k+(i<<2)>>2]=h}else{h=f[u>>2]|0;k=f[s>>2]|0;f[k+(i<<2)>>2]=(d|0)<(h|0)?h:d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0));if((d|0)>0){i=0;do{d=(f[a+(i<<2)>>2]|0)+(f[k+(i<<2)>>2]|0)|0;h=l+(i<<2)|0;f[h>>2]=d;if((d|0)<=(f[t>>2]|0)){if((d|0)<(f[u>>2]|0)){d=(f[q>>2]|0)+d|0;E=40}}else{d=d-(f[q>>2]|0)|0;E=40}if((E|0)==40){E=0;f[h>>2]=d}i=i+1|0;d=f[z>>2]|0}while((i|0)<(d|0))}}}m=m+1|0;if((m|0)>=(v|0)){E=22;break}}if((E|0)==22){Cm(y);return 1}else if((E|0)==24)Wl(r);return 0}function Bb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if((b|0)<0)return;l=a+12|0;c=f[l>>2]|0;d=f[a+8>>2]|0;e=c-d>>2;if(e>>>0<=b>>>0)return;g=d+(b<<2)|0;n=f[(f[g>>2]|0)+56>>2]|0;if((e|0)<=(b|0))ra(12781,12674,68,12771);m=f[(f[d+(b<<2)>>2]|0)+60>>2]|0;d=g+4|0;if((d|0)!=(c|0)){j=g;do{h=f[d>>2]|0;f[d>>2]=0;i=f[j>>2]|0;f[j>>2]=h;if(i|0){h=i+88|0;e=f[h>>2]|0;f[h>>2]=0;if(e|0){g=f[e+8>>2]|0;if(g|0){h=e+12|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;Em(g)}Em(e)}e=f[i+68>>2]|0;if(e|0){h=i+72|0;g=f[h>>2]|0;if((g|0)!=(e|0))f[h>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}h=i+64|0;e=f[h>>2]|0;f[h>>2]=0;if(e|0){g=f[e>>2]|0;if(g|0){h=e+4|0;if((f[h>>2]|0)!=(g|0))f[h>>2]=g;Em(g)}Em(e)}Em(i)}d=d+4|0;j=j+4|0}while((d|0)!=(c|0));c=f[l>>2]|0;if((c|0)!=(j|0)){g=j;k=26}}else k=26;if((k|0)==26)do{k=c+-4|0;f[l>>2]=k;h=f[k>>2]|0;f[k>>2]=0;if(h|0){k=h+88|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c+8>>2]|0;if(d|0){e=c+12|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}Em(c)}c=f[h+68>>2]|0;if(c|0){e=h+72|0;d=f[e>>2]|0;if((d|0)!=(c|0))f[e>>2]=d+(~((d+-4-c|0)>>>2)<<2);Em(c)}k=h+64|0;c=f[k>>2]|0;f[k>>2]=0;if(c|0){d=f[c>>2]|0;if(d|0){e=c+4|0;if((f[e>>2]|0)!=(d|0))f[e>>2]=d;Em(d)}Em(c)}Em(h)}c=f[l>>2]|0}while((c|0)!=(g|0));d=f[a+4>>2]|0;a:do if(d|0){h=d+44|0;c=f[h>>2]|0;d=f[d+40>>2]|0;while(1){if((d|0)==(c|0))break a;e=d+4|0;if((f[(f[d>>2]|0)+40>>2]|0)==(m|0))break;else d=e}if((e|0)!=(c|0)){g=d;do{m=f[e>>2]|0;f[e>>2]=0;d=f[g>>2]|0;f[g>>2]=m;if(d|0){lf(d);Em(d)}e=e+4|0;g=g+4|0}while((e|0)!=(c|0));c=f[h>>2]|0;if((c|0)==(g|0))break;else d=g}do{m=c+-4|0;f[h>>2]=m;c=f[m>>2]|0;f[m>>2]=0;if(c|0){lf(c);Em(c)}c=f[h>>2]|0}while((c|0)!=(d|0))}while(0);b:do if((n|0)<5){c=f[a+20+(n*12|0)>>2]|0;i=a+20+(n*12|0)+4|0;d=f[i>>2]|0;e=d;c:do if((c|0)!=(d|0))while(1){if((f[c>>2]|0)==(b|0))break c;c=c+4|0;if((c|0)==(d|0))break b}while(0);if((c|0)!=(d|0)){g=c+4|0;e=e-g|0;h=e>>2;if(h){hi(c|0,g|0,e|0)|0;d=f[i>>2]|0}c=c+(h<<2)|0;if((d|0)!=(c|0))f[i>>2]=d+(~((d+-4-c|0)>>>2)<<2)}}while(0);c=f[a+24>>2]|0;d=f[a+20>>2]|0;h=d;if((c|0)!=(d|0)){g=c-d>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0)}c=f[a+36>>2]|0;d=f[a+32>>2]|0;h=d;if((c|0)!=(d|0)){g=c-d>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0)}c=f[a+48>>2]|0;d=f[a+44>>2]|0;h=d;if((c|0)!=(d|0)){g=c-d>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0)}c=f[a+60>>2]|0;d=f[a+56>>2]|0;h=d;if((c|0)!=(d|0)){g=c-d>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0)}d=f[a+72>>2]|0;c=f[a+68>>2]|0;h=c;if((d|0)==(c|0))return;g=d-c>>2;e=0;do{d=h+(e<<2)|0;c=f[d>>2]|0;if((c|0)>(b|0))f[d>>2]=c+-1;e=e+1|0}while(e>>>0>>0);return}function Cb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+16|0;r=v;t=a+68|0;f[t>>2]=(f[t>>2]|0)+1;t=(f[a+8+(b*12|0)+4>>2]|0)-(f[a+8+(b*12|0)>>2]|0)|0;s=t>>2;if((t|0)<=0){u=v;return}p=a+4|0;o=a+56|0;q=a+72|0;t=a+76|0;b=f[a+44+(b<<2)>>2]|0;n=0;a:while(1){l=(b|0)<0;j=l?-1073741824:(b>>>0)/3|0;k=(f[o>>2]|0)+(j>>>5<<2)|0;f[k>>2]=f[k>>2]|1<<(j&31);f[q>>2]=(f[q>>2]|0)+1;do if(n){d=f[a>>2]|0;if((b|0)==-1073741824)h=-1073741824;else{g=(b|0)/3|0;if((b|0)<=-3){m=39;break a}e=f[d+96>>2]|0;if((g|0)>=(((f[d+100>>2]|0)-e|0)/12|0|0)){m=41;break a}h=f[e+(g*12|0)+(((b|0)%3|0)<<2)>>2]|0}f[t>>2]=h;f[r>>2]=h;g=f[c>>2]|0;e=g+4|0;d=f[e>>2]|0;if(d>>>0<(f[g+8>>2]|0)>>>0){f[d>>2]=h;f[e>>2]=d+4}else hf(g,r);if(!(n&1)){d=b+1|0;if(l)break;b=((d|0)%3|0|0)==0?b+-2|0:d;m=53;break}if(!l)if(!((b>>>0)%3|0)){b=b+2|0;m=53;break}else{b=b+-1|0;m=53;break}}else{e=f[a>>2]|0;h=(b|0)==-1073741824;if(h)e=-1073741824;else{g=(b|0)/3|0;if((b|0)<=-3){m=7;break a}d=f[e+96>>2]|0;if((g|0)>=(((f[e+100>>2]|0)-d|0)/12|0|0)){m=9;break a}e=f[d+(g*12|0)+(((b|0)%3|0)<<2)>>2]|0}f[r>>2]=e;k=f[c>>2]|0;i=k+4|0;d=f[i>>2]|0;j=k+8|0;if(d>>>0<(f[j>>2]|0)>>>0){f[d>>2]=e;f[i>>2]=d+4}else hf(k,r);d=b+1|0;if(l)if((b|0)==-1073741824)e=-1073741824;else{d=b;m=17}else if(!((d|0)%3|0)){d=b+-2|0;m=19}else m=17;if((m|0)==17)if((d|0)>-3)m=19;else{m=18;break a}if((m|0)==19){m=0;w=f[a>>2]|0;g=(d|0)/3|0;e=f[w+96>>2]|0;if((g|0)>=(((f[w+100>>2]|0)-e|0)/12|0|0)){m=20;break a}e=f[e+(g*12|0)+(((d|0)%3|0)<<2)>>2]|0}f[r>>2]=e;d=f[i>>2]|0;if(d>>>0<(f[j>>2]|0)>>>0){f[d>>2]=e;f[i>>2]=d+4}else hf(k,r);if(l)if(h)e=-1073741824;else{h=b;m=28}else{h=(((b>>>0)%3|0|0)==0?2:-1)+b|0;m=28}if((m|0)==28){d=f[a>>2]|0;g=(h|0)/3|0;if((h|0)<=-3){m=29;break a}e=f[d+96>>2]|0;if((g|0)>=(((f[d+100>>2]|0)-e|0)/12|0|0)){m=31;break a}e=f[e+(g*12|0)+(((h|0)%3|0)<<2)>>2]|0}f[t>>2]=e;f[r>>2]=e;d=f[i>>2]|0;if(d>>>0<(f[j>>2]|0)>>>0){f[d>>2]=e;f[i>>2]=d+4}else hf(k,r);m=53}while(0);if((m|0)==53){m=0;if((b|0)>=0)b=f[(f[(f[p>>2]|0)+12>>2]|0)+(b<<2)>>2]|0}n=n+1|0;if((n|0)>=(s|0)){m=3;break}}if((m|0)==3){u=v;return}else if((m|0)==7)ra(12835,12860,63,12943);else if((m|0)==9)ra(12948,12860,64,12943);else if((m|0)==18)ra(12835,12860,63,12943);else if((m|0)==20)ra(12948,12860,64,12943);else if((m|0)==29)ra(12835,12860,63,12943);else if((m|0)==31)ra(12948,12860,64,12943);else if((m|0)==39)ra(12835,12860,63,12943);else if((m|0)==41)ra(12948,12860,64,12943)}function Db(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;v=C+28|0;w=C+16|0;x=C+8|0;t=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)ra(6911,6922,60,7043);if((d|0)>=31)ra(7063,6922,61,7043);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;r=a+80|0;f[r>>2]=s;q=a+84|0;f[q>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ma[f[(f[a>>2]|0)+16>>2]&127](a)|0))ra(8295,9099,99,9262);if((e|0)!=2)ra(9284,9099,102,9262);o=a+36|0;g=f[o>>2]|0;n=(f[g+4>>2]|0)-(f[g>>2]|0)|0;p=n>>2;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;if((n|0)<=0){u=C;return 1}m=w+4|0;n=w+8|0;l=a+88|0;k=x+4|0;d=f[g>>2]|0;if((f[g+4>>2]|0)==(d|0)){j=g;Wl(j)}else{h=d;B=0}while(1){f[t>>2]=f[h+(B<<2)>>2];f[v>>2]=f[t>>2];nb(s,v,w);d=f[w>>2]|0;a=(d|0)>-1?d:0-d|0;g=f[m>>2]|0;e=(g|0)>-1?g:0-g|0;a=Ij(e|0,((e|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;e=f[n>>2]|0;h=(e|0)>-1;e=h?e:0-e|0;e=Ij(a|0,I|0,e|0,((e|0)<0)<<31>>31|0)|0;a=I;i=f[q>>2]|0;if((e|0)==0&(a|0)==0){g=w;d=i}else{D=((i|0)<0)<<31>>31;j=Xi(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Dg(j|0,I|0,e|0,a|0)|0;f[w>>2]=j;d=Xi(i|0,D|0,g|0,((g|0)<0)<<31>>31|0)|0;d=Dg(d|0,I|0,e|0,a|0)|0;f[m>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;g=n;d=h?d:0-d|0}f[g>>2]=d;j=f[w>>2]|0;h=f[m>>2]|0;D=f[n>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){g=16;break}D=Rg(l)|0;d=f[w>>2]|0;if(D){d=0-d|0;g=0-(f[m>>2]|0)|0;i=0-(f[n>>2]|0)|0;f[w>>2]=d;f[m>>2]=g;f[n>>2]=i}else{g=f[m>>2]|0;i=f[n>>2]|0}a=(d|0)>-1;h=(g|0)>-1?g:0-g|0;e=(i|0)>-1?i:0-i|0;j=h+(a?d:0-d|0)+e|0;if((j|0)!=(f[q>>2]|0)){g=21;break}if(!a){if((g|0)<0)d=e;else d=(f[r>>2]|0)-e|0;if((i|0)<0){g=d;d=h}else{g=d;d=(f[r>>2]|0)-h|0}}else{g=j+g|0;d=j+i|0}e=(g|0)==0;a=(d|0)==0;h=f[r>>2]|0;do if((d|g|0)!=0?(z=(h|0)==(d|0),A=(h|0)==(g|0),!(e&z|a&A)):0){if(e&(j|0)<(d|0)){g=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&A){d=(j<<1)-d|0;break}if((j|0)>(g|0)&z){g=(j<<1)-g|0;break}else{g=(j|0)<(g|0)&a?(j<<1)-g|0:g;break}}else{g=h;d=h}while(0);f[x>>2]=g;f[k>>2]=d;D=B<<1;Ie(y,x,b+(D<<2)|0,c+(D<<2)|0);B=B+1|0;if((B|0)>=(p|0)){g=11;break}d=f[o>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=B>>>0){g=12;break}}if((g|0)==11){u=C;return 1}else if((g|0)==12)Wl(d);else if((g|0)==16)ra(9308,9099,116,9262);else if((g|0)==21)ra(9375,6922,99,9463);return 0}function Eb(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=u;u=u+32|0;v=C+28|0;w=C+16|0;x=C+8|0;t=C;y=a+8|0;d=f[y>>2]|0;if((d|0)<=1)ra(6911,6922,60,7043);if((d|0)>=31)ra(7063,6922,61,7043);f[a+72>>2]=d;s=1<>2]=s+-1;s=s+-2|0;r=a+80|0;f[r>>2]=s;q=a+84|0;f[q>>2]=(s|0)/2|0;s=a+40|0;f[a+48>>2]=g;if(!(Ma[f[(f[a>>2]|0)+16>>2]&127](a)|0))ra(8295,9099,99,9262);if((e|0)!=2)ra(9284,9099,102,9262);o=a+36|0;g=f[o>>2]|0;n=(f[g+4>>2]|0)-(f[g>>2]|0)|0;p=n>>2;f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;if((n|0)<=0){u=C;return 1}m=w+4|0;n=w+8|0;l=a+88|0;k=x+4|0;d=f[g>>2]|0;if((f[g+4>>2]|0)==(d|0)){j=g;Wl(j)}else{h=d;B=0}while(1){f[t>>2]=f[h+(B<<2)>>2];f[v>>2]=f[t>>2];wb(s,v,w);d=f[w>>2]|0;a=(d|0)>-1?d:0-d|0;g=f[m>>2]|0;e=(g|0)>-1?g:0-g|0;a=Ij(e|0,((e|0)<0)<<31>>31|0,a|0,((a|0)<0)<<31>>31|0)|0;e=f[n>>2]|0;h=(e|0)>-1;e=h?e:0-e|0;e=Ij(a|0,I|0,e|0,((e|0)<0)<<31>>31|0)|0;a=I;i=f[q>>2]|0;if((e|0)==0&(a|0)==0){g=w;d=i}else{D=((i|0)<0)<<31>>31;j=Xi(i|0,D|0,d|0,((d|0)<0)<<31>>31|0)|0;j=Dg(j|0,I|0,e|0,a|0)|0;f[w>>2]=j;d=Xi(i|0,D|0,g|0,((g|0)<0)<<31>>31|0)|0;d=Dg(d|0,I|0,e|0,a|0)|0;f[m>>2]=d;d=i-((j|0)>-1?j:0-j|0)-((d|0)>-1?d:0-d|0)|0;g=n;d=h?d:0-d|0}f[g>>2]=d;j=f[w>>2]|0;h=f[m>>2]|0;D=f[n>>2]|0;if((((h|0)>-1?h:0-h|0)+((j|0)>-1?j:0-j|0)+((D|0)>-1?D:0-D|0)|0)!=(i|0)){g=16;break}D=Rg(l)|0;d=f[w>>2]|0;if(D){d=0-d|0;g=0-(f[m>>2]|0)|0;i=0-(f[n>>2]|0)|0;f[w>>2]=d;f[m>>2]=g;f[n>>2]=i}else{g=f[m>>2]|0;i=f[n>>2]|0}a=(d|0)>-1;h=(g|0)>-1?g:0-g|0;e=(i|0)>-1?i:0-i|0;j=h+(a?d:0-d|0)+e|0;if((j|0)!=(f[q>>2]|0)){g=21;break}if(!a){if((g|0)<0)d=e;else d=(f[r>>2]|0)-e|0;if((i|0)<0){g=d;d=h}else{g=d;d=(f[r>>2]|0)-h|0}}else{g=j+g|0;d=j+i|0}e=(g|0)==0;a=(d|0)==0;h=f[r>>2]|0;do if((d|g|0)!=0?(z=(h|0)==(d|0),A=(h|0)==(g|0),!(e&z|a&A)):0){if(e&(j|0)<(d|0)){g=0;d=(j<<1)-d|0;break}if((j|0)>(d|0)&A){d=(j<<1)-d|0;break}if((j|0)>(g|0)&z){g=(j<<1)-g|0;break}else{g=(j|0)<(g|0)&a?(j<<1)-g|0:g;break}}else{g=h;d=h}while(0);f[x>>2]=g;f[k>>2]=d;D=B<<1;Ie(y,x,b+(D<<2)|0,c+(D<<2)|0);B=B+1|0;if((B|0)>=(p|0)){g=11;break}d=f[o>>2]|0;h=f[d>>2]|0;if((f[d+4>>2]|0)-h>>2>>>0<=B>>>0){g=12;break}}if((g|0)==11){u=C;return 1}else if((g|0)==12)Wl(d);else if((g|0)==16)ra(9308,9099,116,9262);else if((g|0)==21)ra(9375,6922,99,9463);return 0}function Fb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0;v=u;u=u+16|0;r=v+8|0;q=v+4|0;o=v;p=a+64|0;c=f[p>>2]|0;if(((f[c+28>>2]|0)-(f[c+24>>2]|0)|0)<=0){u=v;return}s=a+52|0;k=a+56|0;m=a+60|0;i=a+12|0;j=a+28|0;t=a+40|0;l=a+44|0;n=a+48|0;b=0;h=0;do{d=f[(f[c+24>>2]|0)+(h<<2)>>2]|0;if((d|0)>=0){e=b+1|0;f[r>>2]=b;c=f[k>>2]|0;if((c|0)==(f[m>>2]|0))hf(s,r);else{f[c>>2]=b;f[k>>2]=c+4}f[q>>2]=d;f[o>>2]=0;a:do if(!(f[(f[i>>2]|0)+(h>>>5<<2)>>2]&1<<(h&31)))c=d;else{c=d+1|0;c=((c|0)%3|0|0)==0?d+-2|0:c;g=f[a>>2]|0;if(!(1<<(c&31)&f[g+(c>>>5<<2)>>2])){if((c|0)>=0){c=f[(f[(f[p>>2]|0)+12>>2]|0)+(c<<2)>>2]|0;b=c+1|0;if((c|0)>=0){c=((b|0)%3|0|0)==0?c+-2|0:b;f[o>>2]=c;if((c|0)<=-1){c=d;break}while(1){f[q>>2]=c;b=c+1|0;b=((b|0)%3|0|0)==0?c+-2|0:b;if(1<<(b&31)&f[g+(b>>>5<<2)>>2]|0){b=-1073741824;break}if((b|0)<0)break;b=f[(f[(f[p>>2]|0)+12>>2]|0)+(b<<2)>>2]|0;d=b+1|0;if((b|0)<0)break;b=((d|0)%3|0|0)==0?b+-2|0:d;f[o>>2]=b;if((b|0)>-1)c=b;else break a}f[o>>2]=b;break}}}else c=-1073741824;f[o>>2]=c;c=d}while(0);f[(f[j>>2]|0)+(c<<2)>>2]=f[r>>2];c=f[l>>2]|0;if((c|0)==(f[n>>2]|0))hf(t,q);else{f[c>>2]=f[q>>2];f[l>>2]=c+4}c=f[p>>2]|0;b=f[q>>2]|0;b:do if((b|0)>=0){d=(((b>>>0)%3|0|0)==0?2:-1)+b|0;if((d|0)>=0){d=f[(f[c+12>>2]|0)+(d<<2)>>2]|0;if((d|0)>=0){d=d+(((d>>>0)%3|0|0)==0?2:-1)|0;f[o>>2]=d;if((d|0)>-1&(d|0)!=(b|0)){b=d;while(1){g=b+1|0;g=((g|0)%3|0|0)==0?b+-2|0:g;do if(f[(f[a>>2]|0)+(g>>>5<<2)>>2]&1<<(g&31)){b=e+1|0;f[r>>2]=e;c=f[k>>2]|0;if((c|0)==(f[m>>2]|0))hf(s,r);else{f[c>>2]=e;f[k>>2]=c+4}c=f[l>>2]|0;if((c|0)==(f[n>>2]|0)){hf(t,o);e=b;break}else{f[c>>2]=f[o>>2];f[l>>2]=c+4;e=b;break}}while(0);f[(f[j>>2]|0)+(f[o>>2]<<2)>>2]=f[r>>2];c=f[p>>2]|0;b=f[o>>2]|0;if((b|0)<0)break;b=(((b>>>0)%3|0|0)==0?2:-1)+b|0;if((b|0)<0)break;b=f[(f[c+12>>2]|0)+(b<<2)>>2]|0;if((b|0)<0)break;b=b+(((b>>>0)%3|0|0)==0?2:-1)|0;f[o>>2]=b;if(!((b|0)>-1?(b|0)!=(f[q>>2]|0):0)){b=e;break b}}f[o>>2]=b;b=e}else b=e}else{b=d;w=26}}else{b=d;w=26}}else w=26;while(0);if((w|0)==26){w=0;f[o>>2]=b;b=e}}h=h+1|0}while((h|0)<((f[c+28>>2]|0)-(f[c+24>>2]|0)>>2|0));u=v;return}function Gb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=u;u=u+80|0;z=D+76|0;y=D;C=D+72|0;x=D+64|0;B=D+68|0;if(!(Vf(z,c)|0)){C=0;u=D;return C|0}d=f[z>>2]|0;if(!d){C=0;u=D;return C|0}A=a+4|0;h=a+8|0;g=f[h>>2]|0;e=f[A>>2]|0;j=g-e>>2;if(d>>>0>j>>>0){Ve(A,d-j|0);if(!(f[z>>2]|0)){C=1;u=D;return C|0}}else if(d>>>0>>0?(i=e+(d<<2)|0,(g|0)!=(i|0)):0)f[h>>2]=g+(~((g+-4-i|0)>>>2)<<2);o=f[a+32>>2]|0;r=c+8|0;t=c+16|0;v=y+60|0;q=o+8|0;p=o+12|0;s=a+16|0;m=a+20|0;n=0;while(1){g=r;e=f[g>>2]|0;g=f[g+4>>2]|0;a=t;j=f[a>>2]|0;a=f[a+4>>2]|0;if(!((g|0)>(a|0)|(g|0)==(a|0)&e>>>0>j>>>0)){d=0;e=44;break}h=f[c>>2]|0;l=b[h+j>>0]|0;d=Ij(j|0,a|0,1,0)|0;k=I;i=t;f[i>>2]=d;f[i+4>>2]=k;if(!((g|0)>(k|0)|(g|0)==(k|0)&e>>>0>d>>>0)){d=0;e=44;break}k=b[h+d>>0]|0;d=Ij(j|0,a|0,2,0)|0;i=I;E=t;f[E>>2]=d;f[E+4>>2]=i;if(!((g|0)>(i|0)|(g|0)==(i|0)&e>>>0>d>>>0)){d=0;e=44;break}i=b[h+d>>0]|0;d=Ij(j|0,a|0,3,0)|0;E=I;F=t;f[F>>2]=d;f[F+4>>2]=E;if(!((g|0)>(E|0)|(g|0)==(E|0)&e>>>0>d>>>0)){d=0;e=44;break}e=b[h+d>>0]|0;F=Ij(j|0,a|0,4,0)|0;d=t;f[d>>2]=F;f[d+4>>2]=I;d=k&255;if((k+-1&255)>10){d=0;e=44;break}Eh(y);h=X(Uh(d)|0,i&255)|0;Uf(y,l&255,0,i,d,e<<24>>24!=0,h,((h|0)<0)<<31>>31,0,0);Vf(C,c)|0;f[v>>2]=f[C>>2];i=Yi(96)|0;xh(i,y);f[x>>2]=i;i=ae(o,x)|0;h=f[x>>2]|0;f[x>>2]=0;if(h|0){F=h+88|0;d=f[F>>2]|0;f[F>>2]=0;if(d|0){e=f[d+8>>2]|0;if(e|0){g=d+12|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Em(e)}Em(d)}d=f[h+68>>2]|0;if(d|0){g=h+72|0;e=f[g>>2]|0;if((e|0)!=(d|0))f[g>>2]=e+(~((e+-4-d|0)>>>2)<<2);Em(d)}F=h+64|0;d=f[F>>2]|0;f[F>>2]=0;if(d|0){e=f[d>>2]|0;if(e|0){g=d+4|0;if((f[g>>2]|0)!=(e|0))f[g>>2]=e;Em(e)}Em(d)}Em(h)}if((i|0)<=-1){e=33;break}d=f[q>>2]|0;if(((f[p>>2]|0)-d>>2|0)<=(i|0)){e=35;break}f[(f[d+(i<<2)>>2]|0)+60>>2]=f[C>>2];f[(f[A>>2]|0)+(n<<2)>>2]=i;e=f[m>>2]|0;d=f[s>>2]|0;h=e-d>>2;if((i|0)>=(h|0)){g=i+1|0;f[B>>2]=-1;if(g>>>0<=h>>>0){if(g>>>0>>0?(w=d+(g<<2)|0,(e|0)!=(w|0)):0)f[m>>2]=e+(~((e+-4-w|0)>>>2)<<2)}else{ee(s,g-h|0,B);d=f[s>>2]|0}}f[d+(i<<2)>>2]=n;n=n+1|0;if(n>>>0>=(f[z>>2]|0)>>>0){d=1;e=44;break}}if((e|0)==33)ra(12658,12674,67,12771);else if((e|0)==35)ra(12781,12674,68,12771);else if((e|0)==44){u=D;return d|0}return 0}function Hb(a,c,e,g,i){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;n=u;u=u+32|0;k=n+12|0;m=n;f[c+40>>2]=e;j=c+32|0;f[j>>2]=g;f[c+4>>2]=i;yb(a,g,k);if(f[a>>2]|0){u=n;return}l=a+4|0;i=l+11|0;if((b[i>>0]|0)<0)Em(f[l>>2]|0);g=h[k+7>>0]|0;if((g|0)!=(Ma[f[(f[c>>2]|0)+8>>2]&127](c)|0)){e=Yi(64)|0;f[m>>2]=e;f[m+8>>2]=-2147483584;f[m+4>>2]=50;g=e;i=12102;j=g+50|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+50>>0]=0;f[a>>2]=-1;Df(l,m);if((b[m+11>>0]|0)<0)Em(f[m>>2]|0);u=n;return}e=b[k+5>>0]|0;b[c+36>>0]=e;g=b[k+6>>0]|0;b[c+37>>0]=g;if((e+-1&255)>1){e=Yi(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=22;g=e;i=12153;j=g+22|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+22>>0]=0;f[a>>2]=-5;Df(l,m);if((b[m+11>>0]|0)<0)Em(f[m>>2]|0);u=n;return}if(e<<24>>24==2&(g&255)>2){e=Yi(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=22;g=e;i=12176;j=g+22|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+22>>0]=0;f[a>>2]=-5;Df(l,m);if((b[m+11>>0]|0)<0)Em(f[m>>2]|0);u=n;return}g=(g&255|(e&255)<<8)&65535;d[(f[j>>2]|0)+38>>1]=g;if((g&65535)>258?(d[k+10>>1]|0)<0:0){Cc(a,c);if(f[a>>2]|0){u=n;return}if((b[i>>0]|0)<0)Em(f[l>>2]|0)}if(!(Ma[f[(f[c>>2]|0)+12>>2]&127](c)|0)){e=Yi(48)|0;f[m>>2]=e;f[m+8>>2]=-2147483600;f[m+4>>2]=33;g=e;i=12199;j=g+33|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+33>>0]=0;f[a>>2]=-1;Df(l,m);if((b[m+11>>0]|0)<0)Em(f[m>>2]|0);u=n;return}if(!(Ma[f[(f[c>>2]|0)+20>>2]&127](c)|0)){e=Yi(32)|0;f[m>>2]=e;f[m+8>>2]=-2147483616;f[m+4>>2]=31;g=e;i=12233;j=g+31|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+31>>0]=0;f[a>>2]=-1;Df(l,m);if((b[m+11>>0]|0)<0)Em(f[m>>2]|0);u=n;return}if(Ma[f[(f[c>>2]|0)+24>>2]&127](c)|0){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;f[a+12>>2]=0;u=n;return}e=Yi(48)|0;f[m>>2]=e;f[m+8>>2]=-2147483600;f[m+4>>2]=34;g=e;i=12265;j=g+34|0;do{b[g>>0]=b[i>>0]|0;g=g+1|0;i=i+1|0}while((g|0)<(j|0));b[e+34>>0]=0;f[a>>2]=-1;Df(l,m);if((b[m+11>>0]|0)<0)Em(f[m>>2]|0);u=n;return}function Ib(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=b[c+11>>0]|0;m=r<<24>>24<0;u=m?f[c>>2]|0:c;r=m?f[c+4>>2]|0:r&255;if(r>>>0>3){c=u;g=r;d=r;while(1){m=X(h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24,1540483477)|0;g=(X(m>>>24^m,1540483477)|0)^(X(g,1540483477)|0);d=d+-4|0;if(d>>>0<=3)break;else c=c+4|0}m=r+-4|0;d=m&-4;e=u+(d+4)|0;c=g;d=m-d|0}else{e=u;c=r;d=r}switch(d|0){case 3:{i=h[e+2>>0]<<16^c;q=6;break}case 2:{i=c;q=6;break}case 1:{j=c;q=7;break}default:k=c}if((q|0)==6){j=h[e+1>>0]<<8^i;q=7}if((q|0)==7)k=X(h[e>>0]^j,1540483477)|0;m=X(k>>>13^k,1540483477)|0;m=m>>>15^m;k=f[a+4>>2]|0;if(!k){w=0;return w|0}i=k+-1|0;d=(i&k|0)==0;if(!d)if(m>>>0>>0)l=m;else l=(m>>>0)%(k>>>0)|0;else l=m&i;c=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!c){w=0;return w|0}c=f[c>>2]|0;if(!c){w=0;return w|0}j=(r|0)==0;if(d){a:while(1){q=f[c+4>>2]|0;d=(m|0)==(q|0);if(!(d|(q&i|0)==(l|0))){c=0;q=41;break}do if(d?(n=c+8|0,o=b[n+11>>0]|0,p=o<<24>>24<0,o=o&255,((p?f[c+12>>2]|0:o)|0)==(r|0)):0){d=f[n>>2]|0;e=p?d:n;if(p){if(j){q=41;break a}if(!(sh(e,u,r)|0)){q=41;break a}else break}if(j){q=41;break a}if((d&255)<<24>>24==(b[u>>0]|0)){d=o;e=n;g=u;do{d=d+-1|0;e=e+1|0;if(!d){q=41;break a}g=g+1|0}while((b[e>>0]|0)==(b[g>>0]|0))}}while(0);c=f[c>>2]|0;if(!c){c=0;q=41;break}}if((q|0)==41)return c|0}else s=c;b:while(1){c=f[s+4>>2]|0;d=(m|0)==(c|0);if(!d){if(c>>>0>=k>>>0)c=(c>>>0)%(k>>>0)|0;if((c|0)!=(l|0)){c=0;q=41;break}if(d)q=33}else q=33;do if((q|0)==33?(q=0,t=s+8|0,v=b[t+11>>0]|0,w=v<<24>>24<0,v=v&255,((w?f[s+12>>2]|0:v)|0)==(r|0)):0){c=f[t>>2]|0;d=w?c:t;if(w){if(j){c=s;q=41;break b}if(!(sh(d,u,r)|0)){c=s;q=41;break b}else break}if(j){c=s;q=41;break b}if((c&255)<<24>>24==(b[u>>0]|0)){c=v;d=t;e=u;do{c=c+-1|0;d=d+1|0;if(!c){c=s;q=41;break b}e=e+1|0}while((b[d>>0]|0)==(b[e>>0]|0))}}while(0);s=f[s>>2]|0;if(!s){c=0;q=41;break}}if((q|0)==41)return c|0;return 0}function Jb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=b[c+11>>0]|0;m=r<<24>>24<0;u=m?f[c>>2]|0:c;r=m?f[c+4>>2]|0:r&255;if(r>>>0>3){c=u;g=r;d=r;while(1){m=X(h[c>>0]|h[c+1>>0]<<8|h[c+2>>0]<<16|h[c+3>>0]<<24,1540483477)|0;g=(X(m>>>24^m,1540483477)|0)^(X(g,1540483477)|0);d=d+-4|0;if(d>>>0<=3)break;else c=c+4|0}m=r+-4|0;d=m&-4;e=u+(d+4)|0;c=g;d=m-d|0}else{e=u;c=r;d=r}switch(d|0){case 3:{i=h[e+2>>0]<<16^c;q=6;break}case 2:{i=c;q=6;break}case 1:{j=c;q=7;break}default:k=c}if((q|0)==6){j=h[e+1>>0]<<8^i;q=7}if((q|0)==7)k=X(h[e>>0]^j,1540483477)|0;m=X(k>>>13^k,1540483477)|0;m=m>>>15^m;k=f[a+4>>2]|0;if(!k){w=0;return w|0}i=k+-1|0;d=(i&k|0)==0;if(!d)if(m>>>0>>0)l=m;else l=(m>>>0)%(k>>>0)|0;else l=m&i;c=f[(f[a>>2]|0)+(l<<2)>>2]|0;if(!c){w=0;return w|0}c=f[c>>2]|0;if(!c){w=0;return w|0}j=(r|0)==0;if(d){a:while(1){q=f[c+4>>2]|0;d=(q|0)==(m|0);if(!(d|(q&i|0)==(l|0))){c=0;q=41;break}do if(d?(n=c+8|0,o=b[n+11>>0]|0,p=o<<24>>24<0,o=o&255,((p?f[c+12>>2]|0:o)|0)==(r|0)):0){d=f[n>>2]|0;e=p?d:n;if(p){if(j){q=41;break a}if(!(sh(e,u,r)|0)){q=41;break a}else break}if(j){q=41;break a}if((d&255)<<24>>24==(b[u>>0]|0)){d=o;e=n;g=u;do{d=d+-1|0;e=e+1|0;if(!d){q=41;break a}g=g+1|0}while((b[e>>0]|0)==(b[g>>0]|0))}}while(0);c=f[c>>2]|0;if(!c){c=0;q=41;break}}if((q|0)==41)return c|0}else s=c;b:while(1){c=f[s+4>>2]|0;d=(c|0)==(m|0);if(!d){if(c>>>0>=k>>>0)c=(c>>>0)%(k>>>0)|0;if((c|0)!=(l|0)){c=0;q=41;break}if(d)q=33}else q=33;do if((q|0)==33?(q=0,t=s+8|0,v=b[t+11>>0]|0,w=v<<24>>24<0,v=v&255,((w?f[s+12>>2]|0:v)|0)==(r|0)):0){c=f[t>>2]|0;d=w?c:t;if(w){if(j){c=s;q=41;break b}if(!(sh(d,u,r)|0)){c=s;q=41;break b}else break}if(j){c=s;q=41;break b}if((c&255)<<24>>24==(b[u>>0]|0)){c=v;d=t;e=u;do{c=c+-1|0;d=d+1|0;if(!c){c=s;q=41;break b}e=e+1|0}while((b[d>>0]|0)==(b[e>>0]|0))}}while(0);s=f[s>>2]|0;if(!s){c=0;q=41;break}}if((q|0)==41)return c|0;return 0}function Kb(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=a+4|0;if(!c){d=f[a>>2]|0;f[a>>2]=0;if(d|0)Em(d);f[e>>2]=0;return}if(c>>>0>1073741823){a=sa(8)|0;Fk(a,12569);f[a>>2]=3708;wa(a|0,856,80)}s=Yi(c<<2)|0;d=f[a>>2]|0;f[a>>2]=s;if(d|0)Em(d);f[e>>2]=c;d=0;do{f[(f[a>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(c|0));e=a+8|0;g=f[e>>2]|0;if(!g)return;d=f[g+4>>2]|0;r=c+-1|0;s=(r&c|0)==0;if(!s){if(d>>>0>=c>>>0)d=(d>>>0)%(c>>>0)|0}else d=d&r;f[(f[a>>2]|0)+(d<<2)>>2]=e;e=f[g>>2]|0;if(!e)return;else{h=g;i=e;e=g}a:while(1){q=h;g=i;p=e;b:while(1){e=g;while(1){g=f[e+4>>2]|0;if(!s){if(g>>>0>=c>>>0)g=(g>>>0)%(c>>>0)|0}else g=g&r;if((g|0)==(d|0))break;h=(f[a>>2]|0)+(g<<2)|0;if(!(f[h>>2]|0))break b;h=f[e>>2]|0;c:do if(!h)h=e;else{n=e+8|0;m=b[n+11>>0]|0;k=m<<24>>24<0;m=m&255;o=k?f[e+12>>2]|0:m;l=(o|0)==0;if(k){i=e;while(1){j=h+8|0;m=b[j+11>>0]|0;k=m<<24>>24<0;if((o|0)!=((k?f[h+12>>2]|0:m&255)|0)){h=i;break c}if(!l?sh(f[n>>2]|0,k?f[j>>2]|0:j,o)|0:0){h=i;break c}i=f[h>>2]|0;if(!i)break c;else{m=h;h=i;i=m}}}if(l){i=e;while(1){o=b[h+8+11>>0]|0;if((o<<24>>24<0?f[h+12>>2]|0:o&255)|0){h=i;break c}i=f[h>>2]|0;if(!i)break c;else{o=h;h=i;i=o}}}l=e;while(1){i=h+8|0;k=b[i+11>>0]|0;j=k<<24>>24<0;if((o|0)!=((j?f[h+12>>2]|0:k&255)|0)){h=l;break c}i=j?f[i>>2]|0:i;if((f[n>>2]&255)<<24>>24==(b[i>>0]|0)){j=m;k=n}else{h=l;break c}while(1){j=j+-1|0;k=k+1|0;if(!j)break;i=i+1|0;if((b[k>>0]|0)!=(b[i>>0]|0)){h=l;break c}}i=f[h>>2]|0;if(!i)break;else{l=h;h=i}}}while(0);f[p>>2]=f[h>>2];f[h>>2]=f[f[(f[a>>2]|0)+(g<<2)>>2]>>2];f[f[(f[a>>2]|0)+(g<<2)>>2]>>2]=e;e=f[q>>2]|0;if(!e){d=43;break a}}g=f[e>>2]|0;if(!g){d=43;break a}else{q=e;p=e}}f[h>>2]=p;i=f[e>>2]|0;if(!i){d=43;break}else{h=e;d=g}}if((d|0)==43)return}function Lb(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;o=a+4|0;t=f[c>>2]|0;c=t;do if((t|0)!=(o|0)){j=t+16|0;i=b[j+11>>0]|0;m=i<<24>>24<0;i=m?f[t+20>>2]|0:i&255;q=b[g+11>>0]|0;r=q<<24>>24<0;q=r?f[g+4>>2]|0:q&255;l=i>>>0>>0;h=l?i:q;if((h|0)!=0?(k=sh(r?f[g>>2]|0:g,m?f[j>>2]|0:j,h)|0,(k|0)!=0):0){if((k|0)<0)break}else u=4;if((u|0)==4?q>>>0>>0:0)break;h=q>>>0>>0?q:i;if((h|0)!=0?(n=sh(m?f[j>>2]|0:j,r?f[g>>2]|0:g,h)|0,(n|0)!=0):0){if((n|0)>=0)u=36}else u=20;if((u|0)==20?!l:0)u=36;if((u|0)==36){f[d>>2]=c;f[e>>2]=c;d=e;return d|0}m=t+4|0;h=f[m>>2]|0;if(!h){i=t+8|0;h=f[i>>2]|0;if((f[h>>2]|0)!=(t|0))do{p=f[i>>2]|0;i=p+8|0;h=f[i>>2]|0}while((f[h>>2]|0)!=(p|0))}else while(1){i=f[h>>2]|0;if(!i)break;else h=i}do if((h|0)!=(o|0)){j=h+16|0;k=b[j+11>>0]|0;l=k<<24>>24<0;k=l?f[h+20>>2]|0:k&255;i=k>>>0>>0?k:q;if((i|0)!=0?(s=sh(r?f[g>>2]|0:g,l?f[j>>2]|0:j,i)|0,(s|0)!=0):0){if((s|0)<0)break}else u=30;if((u|0)==30?q>>>0>>0:0)break;d=vd(a,d,g)|0;return d|0}while(0);if(!(f[t+4>>2]|0)){f[d>>2]=c;d=m;return d|0}else{f[d>>2]=h;d=h;return d|0}}while(0);e=f[t>>2]|0;do if((t|0)!=(f[a>>2]|0)){if(!e){h=t;while(1){c=f[h+8>>2]|0;if((f[c>>2]|0)==(h|0))h=c;else{h=c;break}}}else{h=e;while(1){c=f[h+4>>2]|0;if(!c)break;else h=c}}c=h;j=h+16|0;k=b[g+11>>0]|0;l=k<<24>>24<0;k=l?f[g+4>>2]|0:k&255;i=b[j+11>>0]|0;m=i<<24>>24<0;i=m?f[h+20>>2]|0:i&255;h=k>>>0>>0?k:i;if((h|0)!=0?(p=sh(m?f[j>>2]|0:j,l?f[g>>2]|0:g,h)|0,(p|0)!=0):0){if((p|0)<0)break}else u=12;if((u|0)==12?i>>>0>>0:0)break;d=vd(a,d,g)|0;return d|0}while(0);if(!e){f[d>>2]=t;d=t;return d|0}else{u=c;f[d>>2]=u;d=u+4|0;return d|0}return 0}function Mb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=Ma[f[(f[a>>2]|0)+44>>2]&127](a)|0;if((r|0)<1){c=0;return c|0}m=(f[c+4>>2]|0)-(f[c>>2]|0)>>2;s=X(m,r)|0;Cd(a,m,r);m=a+16|0;q=f[m>>2]|0;q=(f[f[q>>2]>>2]|0)+(f[q+48>>2]|0)|0;o=d+8|0;g=o;e=f[g>>2]|0;g=f[g+4>>2]|0;p=d+16|0;l=p;k=f[l>>2]|0;l=f[l+4>>2]|0;if(!((g|0)>(l|0)|(g|0)==(l|0)&e>>>0>k>>>0)){c=0;return c|0}h=f[d>>2]|0;n=b[h+k>>0]|0;i=Ij(k|0,l|0,1,0)|0;j=I;t=p;f[t>>2]=i;f[t+4>>2]=j;a:do if(!(n<<24>>24)){if(!((g|0)>(j|0)|(g|0)==(j|0)&e>>>0>i>>>0)){t=0;return t|0}n=b[h+i>>0]|0;t=Ij(k|0,l|0,2,0)|0;l=p;f[l>>2]=t;f[l+4>>2]=I;l=n&255;t=(l|0)==(Uh(5)|0);e=f[(f[m>>2]|0)+64>>2]|0;e=(f[e+4>>2]|0)-(f[e>>2]|0)|0;if(t){g=s<<2;if(e>>>0>>0){t=0;return t|0}m=o;o=f[m>>2]|0;m=f[m+4>>2]|0;t=p;e=f[t>>2]|0;t=Ij(e|0,f[t+4>>2]|0,g|0,0)|0;n=I;if((m|0)<(n|0)|(m|0)==(n|0)&o>>>0>>0){t=0;return t|0}else{Od(q|0,(f[d>>2]|0)+e|0,g|0)|0;t=p;t=Ij(f[t>>2]|0,f[t+4>>2]|0,g|0,0)|0;i=p;f[i>>2]=t;f[i+4>>2]=I;i=18;break}}i=X(l,s)|0;if(e>>>0>>0){t=0;return t|0}j=o;h=f[j>>2]|0;j=f[j+4>>2]|0;g=p;e=f[g>>2]|0;g=f[g+4>>2]|0;t=hk(h|0,j|0,e|0,g|0)|0;m=I;if((m|0)<0|(m|0)==0&t>>>0>>0){t=0;return t|0}if(!s)i=19;else{k=n&255;i=j;j=0;while(1){t=Ij(e|0,g|0,k|0,0)|0;n=I;if(!((i|0)<(n|0)|(i|0)==(n|0)&h>>>0>>0)){Od(q+(j<<2)|0,(f[d>>2]|0)+e|0,l|0)|0;e=p;e=Ij(f[e>>2]|0,f[e+4>>2]|0,k|0,0)|0;g=I;t=p;f[t>>2]=e;f[t+4>>2]=g}j=j+1|0;if((j|0)==(s|0)){i=18;break a}h=o;i=f[h+4>>2]|0;h=f[h>>2]|0}}}else if(Ef(s,r,d,q)|0)i=18;else{t=0;return t|0}while(0);do if((i|0)==18)if(!s)i=19;else{g=a+20|0;e=f[g>>2]|0;if(e|0?Ma[f[(f[e>>2]|0)+32>>2]&127](e)|0:0){h=1;break}li(q,s,q);h=1}while(0);if((i|0)==19){g=a+20|0;h=0}e=f[g>>2]|0;if(e|0){if(!(Na[f[(f[e>>2]|0)+40>>2]&127](e,d)|0)){t=0;return t|0}if(h?(t=f[g>>2]|0,!(Pa[f[(f[t>>2]|0)+44>>2]&15](t,q,q,s,r,f[c>>2]|0)|0)):0){t=0;return t|0}}t=1;return t|0}function Nb(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=u;u=u+64|0;E=F;g=E;i=g+40|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(i|0));a:do if(Jc(E,d)|0?md(E,d)|0:0){g=(a|0)==0;b:do if(!g){if(!(f[E+12>>2]|0)){k=0;break a}Sg(d,0,0)|0;if(!g){z=E+44|0;C=E+48|0;y=E+40|0;s=E+16|0;t=E+28|0;A=(c|0)>0;D=d+36|0;x=d+32|0;v=d+24|0;w=d+28|0;i=f[C>>2]|0;B=0;g=0;while(1){c:do if(i>>>0<16384){j=f[z>>2]|0;do{if((j|0)<=0)break c;r=f[y>>2]|0;j=j+-1|0;f[z>>2]=j;i=h[r+j>>0]|i<<8;f[C>>2]=i}while(i>>>0<16384)}while(0);p=i&4095;r=f[(f[s>>2]|0)+(p<<2)>>2]|0;q=f[t>>2]|0;i=(X(f[q+(r<<3)>>2]|0,i>>>12)|0)+p-(f[q+(r<<3)+4>>2]|0)|0;f[C>>2]=i;if(A){p=(r|0)>0;if((r|0)<=-1){g=22;break}if((r|0)<33){q=0;o=g}else{g=21;break}while(1){if(!(b[D>>0]|0)){k=0;break a}if(p){l=f[v>>2]|0;m=f[w>>2]|0;k=f[x>>2]|0;n=0;j=0;do{g=l+(k>>>3)|0;if(g>>>0>>0){g=(h[g>>0]|0)>>>(k&7)&1;k=k+1|0;f[x>>2]=k}else g=0;j=g<>2]=j;q=q+1|0;if((q|0)>=(c|0))break;else o=g}}B=B+c|0;if(B>>>0>=a>>>0)break b}if((g|0)==21){if(!(b[D>>0]|0)){k=0;break a}ra(12416,12315,156,12408)}else if((g|0)==22){if(!(b[D>>0]|0)){k=0;break a}ra(12300,12315,155,12408)}}}else Sg(d,0,0)|0;while(0);Yh(d);k=1}else k=0;while(0);g=f[E+28>>2]|0;if(g|0){j=E+32|0;i=f[j>>2]|0;if((i|0)!=(g|0))f[j>>2]=i+(~((i+-8-g|0)>>>3)<<3);Em(g)}g=f[E+16>>2]|0;if(g|0){j=E+20|0;i=f[j>>2]|0;if((i|0)!=(g|0))f[j>>2]=i+(~((i+-4-g|0)>>>2)<<2);Em(g)}j=f[E>>2]|0;if(!j){u=F;return k|0}i=E+4|0;g=f[i>>2]|0;if((g|0)!=(j|0))f[i>>2]=g+(~((g+-4-j|0)>>>2)<<2);Em(j);u=F;return k|0}function Ob(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=f[a>>2]|0;i=a+4|0;d=f[i>>2]|0;h=c+4|0;if((d|0)==(e|0)){g=h;d=a;j=f[h>>2]|0;h=e;f[d>>2]=j;f[g>>2]=h;h=c+8|0;e=f[i>>2]|0;d=f[h>>2]|0;f[i>>2]=d;f[h>>2]=e;h=a+8|0;a=c+12|0;i=f[h>>2]|0;e=f[a>>2]|0;f[h>>2]=e;f[a>>2]=i;a=f[g>>2]|0;f[c>>2]=a;return}g=f[h>>2]|0;do{l=d;d=d+-116|0;f[g+-116>>2]=f[d>>2];j=l+-112|0;f[g+-112>>2]=f[j>>2];k=l+-108|0;f[g+-108>>2]=f[k>>2];m=l+-104|0;f[g+-104>>2]=f[m>>2];f[j>>2]=0;f[k>>2]=0;f[m>>2]=0;m=l+-100|0;f[g+-100>>2]=f[m>>2];k=l+-96|0;f[g+-96>>2]=f[k>>2];j=l+-92|0;f[g+-92>>2]=f[j>>2];f[m>>2]=0;f[k>>2]=0;f[j>>2]=0;b[g+-88>>0]=b[l+-88>>0]|0;j=g+-84|0;k=l+-84|0;f[j>>2]=0;m=g+-80|0;f[m>>2]=0;f[g+-76>>2]=0;f[j>>2]=f[k>>2];j=l+-80|0;f[m>>2]=f[j>>2];m=l+-76|0;f[g+-76>>2]=f[m>>2];f[m>>2]=0;f[j>>2]=0;f[k>>2]=0;k=g+-72|0;j=l+-72|0;f[k>>2]=0;m=g+-68|0;f[m>>2]=0;f[g+-64>>2]=0;f[k>>2]=f[j>>2];k=l+-68|0;f[m>>2]=f[k>>2];m=l+-64|0;f[g+-64>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[j>>2]=0;j=g+-60|0;k=l+-60|0;f[j>>2]=0;m=g+-56|0;f[m>>2]=0;f[g+-52>>2]=0;f[j>>2]=f[k>>2];j=l+-56|0;f[m>>2]=f[j>>2];m=l+-52|0;f[g+-52>>2]=f[m>>2];f[m>>2]=0;f[j>>2]=0;f[k>>2]=0;f[g+-48>>2]=f[l+-48>>2];b[g+-44>>0]=b[l+-44>>0]|0;k=g+-40|0;j=l+-40|0;f[k>>2]=0;m=g+-36|0;f[m>>2]=0;f[g+-32>>2]=0;f[k>>2]=f[j>>2];k=l+-36|0;f[m>>2]=f[k>>2];m=l+-32|0;f[g+-32>>2]=f[m>>2];f[m>>2]=0;f[k>>2]=0;f[j>>2]=0;j=g+-28|0;k=l+-28|0;f[j>>2]=0;m=g+-24|0;f[m>>2]=0;f[g+-20>>2]=0;f[j>>2]=f[k>>2];j=l+-24|0;f[m>>2]=f[j>>2];m=l+-20|0;f[g+-20>>2]=f[m>>2];f[m>>2]=0;f[j>>2]=0;f[k>>2]=0;f[g+-16>>2]=f[l+-16>>2];k=g+-12|0;j=l+-12|0;f[k>>2]=0;m=g+-8|0;f[m>>2]=0;f[g+-4>>2]=0;f[k>>2]=f[j>>2];k=l+-8|0;f[m>>2]=f[k>>2];l=l+-4|0;f[g+-4>>2]=f[l>>2];f[l>>2]=0;f[k>>2]=0;f[j>>2]=0;g=(f[h>>2]|0)+-116|0;f[h>>2]=g}while((d|0)!=(e|0));m=h;l=a;k=g;j=f[a>>2]|0;f[l>>2]=k;f[m>>2]=j;j=c+8|0;l=f[i>>2]|0;k=f[j>>2]|0;f[i>>2]=k;f[j>>2]=l;j=a+8|0;l=c+12|0;k=f[j>>2]|0;a=f[l>>2]|0;f[j>>2]=a;f[l>>2]=k;m=f[m>>2]|0;f[c>>2]=m;return}function Pb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=u;u=u+48|0;i=q+32|0;h=q+28|0;o=q+16|0;p=q;j=a+16|0;d=f[j>>2]|0;if(d|0){g=f[b>>2]|0;c=j;a:while(1){e=d;while(1){if((f[e+16>>2]|0)>=(g|0))break;d=f[e+4>>2]|0;if(!d)break a;else e=d}d=f[e>>2]|0;if(!d){c=e;break}else c=e}if((c|0)!=(j|0)?(g|0)>=(f[c+16>>2]|0):0){p=c;p=p+20|0;u=q;return p|0}}jl(o);f[p>>2]=f[b>>2];l=p+4|0;f[p+8>>2]=0;k=p+12|0;f[k>>2]=0;m=p+8|0;f[l>>2]=m;c=f[o>>2]|0;n=o+4|0;if((c|0)!=(n|0)){g=m;do{d=c+16|0;f[h>>2]=g;f[i>>2]=f[h>>2];Vd(l,i,d,d)|0;d=f[c+4>>2]|0;if(!d){d=c+8|0;e=f[d>>2]|0;if((f[e>>2]|0)==(c|0))c=e;else do{b=f[d>>2]|0;d=b+8|0;c=f[d>>2]|0}while((f[c>>2]|0)!=(b|0))}else{c=d;while(1){d=f[c>>2]|0;if(!d)break;else c=d}}}while((c|0)!=(n|0))}i=a+12|0;c=f[j>>2]|0;do if(c){g=f[p>>2]|0;e=a+16|0;while(1){d=f[c+16>>2]|0;if((g|0)<(d|0)){d=f[c>>2]|0;if(!d){d=23;break}else e=c}else{if((d|0)>=(g|0)){d=27;break}e=c+4|0;d=f[e>>2]|0;if(!d){d=26;break}}c=d}if((d|0)==23){h=c;e=c;break}else if((d|0)==26){h=c;break}else if((d|0)==27){h=c;break}}else{h=j;e=j}while(0);c=f[e>>2]|0;if(!c){c=Yi(32)|0;f[c+16>>2]=f[p>>2];b=c+20|0;f[b>>2]=f[l>>2];g=c+24|0;d=f[p+8>>2]|0;f[g>>2]=d;j=f[k>>2]|0;f[c+28>>2]=j;if(!j)f[b>>2]=g;else{f[d+8>>2]=g;f[l>>2]=m;f[m>>2]=0;f[k>>2]=0}f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=h;f[e>>2]=c;d=f[f[i>>2]>>2]|0;if(!d)d=c;else{f[i>>2]=d;d=f[e>>2]|0}wc(f[a+16>>2]|0,d);a=a+20|0;f[a>>2]=(f[a>>2]|0)+1}Pf(p+4|0,f[m>>2]|0);Pf(o,f[n>>2]|0);p=c;p=p+20|0;u=q;return p|0}function Qb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{b=Yi(60)|0;f[b>>2]=1192;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];mg(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=1556;e=b;f[a>>2]=e;return}case 4:{b=Yi(112)|0;f[b>>2]=1192;f[b+4>>2]=d;h=b+8|0;f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[h+12>>2]=f[e+12>>2];f[h+16>>2]=f[e+16>>2];f[h+20>>2]=f[e+20>>2];mg(b+32|0,e+24|0);h=b+44|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[b>>2]=1612;h=b+60|0;c=h+52|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(c|0));e=b;f[a>>2]=e;return}case 5:{b=Yi(104)|0;f[b>>2]=1192;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];mg(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=1668;f[b+60>>2]=0;f[b+64>>2]=0;f[b+76>>2]=0;f[b+80>>2]=0;f[b+84>>2]=0;e=b+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];e=b;f[a>>2]=e;return}case 6:{b=Yi(124)|0;f[b>>2]=1192;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];mg(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=1724;f[b+64>>2]=0;f[b+68>>2]=0;e=b+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b+60>>2]=1780;f[b+88>>2]=1;e=b+92|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;cm(b+108|0);e=b;f[a>>2]=e;return}default:{e=0;f[a>>2]=e;return}}}function Rb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;y=u;u=u+16|0;r=y+12|0;s=y+4|0;p=y+8|0;q=y;x=a+8+(b*12|0)|0;d=f[x>>2]|0;t=a+8+(b*12|0)+4|0;e=f[t>>2]|0;if((e|0)!=(d|0))f[t>>2]=e+(~((e+-4-d|0)>>>2)<<2);d=f[c>>2]|0;m=a+4|0;f[s>>2]=(d|0)<0?-1073741824:(d>>>0)/3|0;w=a+56|0;l=a+8+(b*12|0)+8|0;e=d;o=0;do{n=(o|0)==1;if(n){g=(d|0)<0;do if(!g)if(!((d>>>0)%3|0)){e=d+2|0;break}else{e=d+-1|0;break}else e=d;while(0);f[p>>2]=e;f[r>>2]=f[p>>2];if((Sc(a,r)|0)<0)break;e=d+1|0;if(g){v=12;break}e=((e|0)%3|0|0)==0?d+-2|0:e;f[c>>2]=e;g=e+1|0;if((e|0)<0){v=16;break}e=((g|0)%3|0|0)==0?e+-2|0:g;if((e|0)<0){v=16;break}e=f[(f[(f[m>>2]|0)+12>>2]|0)+(e<<2)>>2]|0;g=e+1|0;if((e|0)<0){v=16;break}e=((g|0)%3|0|0)==0?e+-2|0:g;f[c>>2]=e;if((e|0)<0)break;else{g=0;v=18}}else{i=f[s>>2]|0;k=e;j=0}while(1){if((v|0)==18){v=0;i=(e>>>0)/3|0;f[s>>2]=i;k=e;j=g}h=(f[w>>2]|0)+(i>>>5<<2)|0;g=1<<(i&31);e=f[h>>2]|0;if(g&e|0){e=k;g=j;break}f[h>>2]=e|g;e=f[t>>2]|0;if((e|0)==(f[l>>2]|0))hf(x,s);else{f[e>>2]=f[s>>2];f[t>>2]=e+4}g=j+1|0;if((j|0)>0){do if(!(g&1)){d=n?k:d;if((k|0)>=0)if(!((k>>>0)%3|0)){e=k+2|0;break}else{e=k+-1|0;break}else e=k}else{e=k+1|0;if((k|0)<0)e=k;else e=((e|0)%3|0|0)==0?k+-2|0:e}while(0);f[c>>2]=e}else e=k;f[q>>2]=e;f[r>>2]=f[q>>2];e=Sc(a,r)|0;f[c>>2]=e;if((e|0)<0)break;else v=18}if(!((g&1|0)==0|n^1)){n=f[t>>2]|0;j=f[n+-4>>2]|0;k=(f[w>>2]|0)+(j>>>5<<2)|0;f[k>>2]=f[k>>2]&~(1<<(j&31));f[t>>2]=n+-4}o=o+1|0}while((o|0)<2);if((v|0)==12){f[c>>2]=d;e=d;v=16}if((v|0)==16)f[c>>2]=e;f[a+44+(b<<2)>>2]=d;e=f[t>>2]|0;d=f[x>>2]|0;h=d;if((e|0)==(d|0)){u=y;return}g=f[w>>2]|0;e=e-d>>2;d=0;do{w=f[h+(d<<2)>>2]|0;x=g+(w>>>5<<2)|0;f[x>>2]=f[x>>2]&~(1<<(w&31));d=d+1|0}while(d>>>0>>0);u=y;return}function Sb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+64|0;i=t;s=t+8|0;e=s;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));a:do if(Dc(s,c)|0){p=(a|0)==0;if(!p?(f[s+12>>2]|0)==0:0){c=0;break}if(tf(i,c)|0?(l=i,n=f[l>>2]|0,l=f[l+4>>2]|0,r=c+8|0,m=c+16|0,k=m,j=f[k>>2]|0,k=f[k+4>>2]|0,r=hk(f[r>>2]|0,f[r+4>>2]|0,j|0,k|0)|0,i=I,!(l>>>0>i>>>0|(l|0)==(i|0)&n>>>0>r>>>0)):0){r=(f[c>>2]|0)+j|0;l=Ij(j|0,k|0,n|0,l|0)|0;f[m>>2]=l;f[m+4>>2]=I;b:do if((n|0)>=1){f[s+40>>2]=r;g=n+-1|0;e=r+g|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[s+44>>2]=g;q=g;o=b[e>>0]&63;break}case 1:{if((n|0)<2)break b;q=n+-2|0;f[s+44>>2]=q;o=r+n+-2|0;o=(h[o+1>>0]|0)<<8&16128|(h[o>>0]|0);break}case 2:{if((n|0)<3)break b;q=n+-3|0;f[s+44>>2]=q;o=r+n+-3|0;o=(h[o+1>>0]|0)<<8|(h[o>>0]|0)|(h[o+2>>0]|0)<<16&4128768;break}case 3:{q=n+-4|0;f[s+44>>2]=q;o=r+n+-4|0;o=(h[o+2>>0]|0)<<16|(h[o+3>>0]|0)<<24&1056964608|(h[o+1>>0]|0)<<8|(h[o>>0]|0);break}default:{}}l=s+48|0;g=o+4194304|0;f[l>>2]=g;e=g>>>0>1073741823;if(e|p){c=e^1;break a}k=s+44|0;c=s+16|0;j=s+28|0;e=q;i=0;while(1){c:do if(g>>>0<4194304)do{if((e|0)<=0)break c;e=e+-1|0;f[k>>2]=e;g=h[r+e>>0]|0|g<<8;f[l>>2]=g}while(g>>>0<4194304);while(0);o=g&1048575;q=f[(f[c>>2]|0)+(o<<2)>>2]|0;p=f[j>>2]|0;g=(X(f[p+(q<<3)>>2]|0,g>>>20)|0)+o-(f[p+(q<<3)+4>>2]|0)|0;f[l>>2]=g;f[d+(i<<2)>>2]=q;i=i+1|0;if((i|0)==(a|0)){c=1;break a}}}while(0);c=0;break}c=0}else c=0;while(0);e=f[s+28>>2]|0;if(e|0){i=s+32|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-8-e|0)>>>3)<<3);Em(e)}e=f[s+16>>2]|0;if(e|0){i=s+20|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}i=f[s>>2]|0;if(!i){u=t;return c|0}g=s+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);Em(i);u=t;return c|0}function Tb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+64|0;i=t;s=t+8|0;e=s;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));a:do if(Ec(s,c)|0){p=(a|0)==0;if(!p?(f[s+12>>2]|0)==0:0){c=0;break}if(tf(i,c)|0?(l=i,n=f[l>>2]|0,l=f[l+4>>2]|0,r=c+8|0,m=c+16|0,k=m,j=f[k>>2]|0,k=f[k+4>>2]|0,r=hk(f[r>>2]|0,f[r+4>>2]|0,j|0,k|0)|0,i=I,!(l>>>0>i>>>0|(l|0)==(i|0)&n>>>0>r>>>0)):0){r=(f[c>>2]|0)+j|0;l=Ij(j|0,k|0,n|0,l|0)|0;f[m>>2]=l;f[m+4>>2]=I;b:do if((n|0)>=1){f[s+40>>2]=r;g=n+-1|0;e=r+g|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[s+44>>2]=g;q=g;o=b[e>>0]&63;break}case 1:{if((n|0)<2)break b;q=n+-2|0;f[s+44>>2]=q;o=r+n+-2|0;o=(h[o+1>>0]|0)<<8&16128|(h[o>>0]|0);break}case 2:{if((n|0)<3)break b;q=n+-3|0;f[s+44>>2]=q;o=r+n+-3|0;o=(h[o+1>>0]|0)<<8|(h[o>>0]|0)|(h[o+2>>0]|0)<<16&4128768;break}case 3:{q=n+-4|0;f[s+44>>2]=q;o=r+n+-4|0;o=(h[o+2>>0]|0)<<16|(h[o+3>>0]|0)<<24&1056964608|(h[o+1>>0]|0)<<8|(h[o>>0]|0);break}default:{}}l=s+48|0;g=o+2097152|0;f[l>>2]=g;e=g>>>0>536870911;if(e|p){c=e^1;break a}k=s+44|0;c=s+16|0;j=s+28|0;e=q;i=0;while(1){c:do if(g>>>0<2097152)do{if((e|0)<=0)break c;e=e+-1|0;f[k>>2]=e;g=h[r+e>>0]|0|g<<8;f[l>>2]=g}while(g>>>0<2097152);while(0);o=g&524287;q=f[(f[c>>2]|0)+(o<<2)>>2]|0;p=f[j>>2]|0;g=(X(f[p+(q<<3)>>2]|0,g>>>19)|0)+o-(f[p+(q<<3)+4>>2]|0)|0;f[l>>2]=g;f[d+(i<<2)>>2]=q;i=i+1|0;if((i|0)==(a|0)){c=1;break a}}}while(0);c=0;break}c=0}else c=0;while(0);e=f[s+28>>2]|0;if(e|0){i=s+32|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-8-e|0)>>>3)<<3);Em(e)}e=f[s+16>>2]|0;if(e|0){i=s+20|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}i=f[s>>2]|0;if(!i){u=t;return c|0}g=s+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);Em(i);u=t;return c|0}function Ub(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+64|0;i=t;s=t+8|0;e=s;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));a:do if(Fc(s,c)|0){p=(a|0)==0;if(!p?(f[s+12>>2]|0)==0:0){c=0;break}if(tf(i,c)|0?(l=i,n=f[l>>2]|0,l=f[l+4>>2]|0,r=c+8|0,m=c+16|0,k=m,j=f[k>>2]|0,k=f[k+4>>2]|0,r=hk(f[r>>2]|0,f[r+4>>2]|0,j|0,k|0)|0,i=I,!(l>>>0>i>>>0|(l|0)==(i|0)&n>>>0>r>>>0)):0){r=(f[c>>2]|0)+j|0;l=Ij(j|0,k|0,n|0,l|0)|0;f[m>>2]=l;f[m+4>>2]=I;b:do if((n|0)>=1){f[s+40>>2]=r;g=n+-1|0;e=r+g|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[s+44>>2]=g;q=g;o=b[e>>0]&63;break}case 1:{if((n|0)<2)break b;q=n+-2|0;f[s+44>>2]=q;o=r+n+-2|0;o=(h[o+1>>0]|0)<<8&16128|(h[o>>0]|0);break}case 2:{if((n|0)<3)break b;q=n+-3|0;f[s+44>>2]=q;o=r+n+-3|0;o=(h[o+1>>0]|0)<<8|(h[o>>0]|0)|(h[o+2>>0]|0)<<16&4128768;break}case 3:{q=n+-4|0;f[s+44>>2]=q;o=r+n+-4|0;o=(h[o+2>>0]|0)<<16|(h[o+3>>0]|0)<<24&1056964608|(h[o+1>>0]|0)<<8|(h[o>>0]|0);break}default:{}}l=s+48|0;g=o+1048576|0;f[l>>2]=g;e=g>>>0>268435455;if(e|p){c=e^1;break a}k=s+44|0;c=s+16|0;j=s+28|0;e=q;i=0;while(1){c:do if(g>>>0<1048576)do{if((e|0)<=0)break c;e=e+-1|0;f[k>>2]=e;g=h[r+e>>0]|0|g<<8;f[l>>2]=g}while(g>>>0<1048576);while(0);o=g&262143;q=f[(f[c>>2]|0)+(o<<2)>>2]|0;p=f[j>>2]|0;g=(X(f[p+(q<<3)>>2]|0,g>>>18)|0)+o-(f[p+(q<<3)+4>>2]|0)|0;f[l>>2]=g;f[d+(i<<2)>>2]=q;i=i+1|0;if((i|0)==(a|0)){c=1;break a}}}while(0);c=0;break}c=0}else c=0;while(0);e=f[s+28>>2]|0;if(e|0){i=s+32|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-8-e|0)>>>3)<<3);Em(e)}e=f[s+16>>2]|0;if(e|0){i=s+20|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}i=f[s>>2]|0;if(!i){u=t;return c|0}g=s+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);Em(i);u=t;return c|0}function Vb(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;switch(c|0){case 1:{b=Yi(60)|0;f[b>>2]=1192;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];mg(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=1304;e=b;f[a>>2]=e;return}case 4:{b=Yi(112)|0;f[b>>2]=1192;f[b+4>>2]=d;h=b+8|0;f[h>>2]=f[e>>2];f[h+4>>2]=f[e+4>>2];f[h+8>>2]=f[e+8>>2];f[h+12>>2]=f[e+12>>2];f[h+16>>2]=f[e+16>>2];f[h+20>>2]=f[e+20>>2];mg(b+32|0,e+24|0);h=b+44|0;f[h>>2]=f[g>>2];f[h+4>>2]=f[g+4>>2];f[h+8>>2]=f[g+8>>2];f[h+12>>2]=f[g+12>>2];f[b>>2]=1360;h=b+60|0;c=h+52|0;do{f[h>>2]=0;h=h+4|0}while((h|0)<(c|0));e=b;f[a>>2]=e;return}case 5:{b=Yi(104)|0;f[b>>2]=1192;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];mg(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=1416;f[b+60>>2]=0;f[b+64>>2]=0;f[b+76>>2]=0;f[b+80>>2]=0;f[b+84>>2]=0;e=b+88|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];e=b;f[a>>2]=e;return}case 6:{b=Yi(124)|0;f[b>>2]=1192;f[b+4>>2]=d;d=b+8|0;f[d>>2]=f[e>>2];f[d+4>>2]=f[e+4>>2];f[d+8>>2]=f[e+8>>2];f[d+12>>2]=f[e+12>>2];f[d+16>>2]=f[e+16>>2];f[d+20>>2]=f[e+20>>2];mg(b+32|0,e+24|0);e=b+44|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b>>2]=1472;f[b+64>>2]=0;f[b+68>>2]=0;e=b+72|0;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];f[e+8>>2]=f[g+8>>2];f[e+12>>2]=f[g+12>>2];f[b+60>>2]=1528;f[b+88>>2]=1;e=b+92|0;f[e>>2]=-1;f[e+4>>2]=-1;f[e+8>>2]=-1;f[e+12>>2]=-1;cm(b+108|0);e=b;f[a>>2]=e;return}default:{e=0;f[a>>2]=e;return}}}function Wb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+64|0;i=t;s=t+8|0;e=s;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));a:do if(Gc(s,c)|0){p=(a|0)==0;if(!p?(f[s+12>>2]|0)==0:0){c=0;break}if(tf(i,c)|0?(l=i,n=f[l>>2]|0,l=f[l+4>>2]|0,r=c+8|0,m=c+16|0,k=m,j=f[k>>2]|0,k=f[k+4>>2]|0,r=hk(f[r>>2]|0,f[r+4>>2]|0,j|0,k|0)|0,i=I,!(l>>>0>i>>>0|(l|0)==(i|0)&n>>>0>r>>>0)):0){r=(f[c>>2]|0)+j|0;l=Ij(j|0,k|0,n|0,l|0)|0;f[m>>2]=l;f[m+4>>2]=I;b:do if((n|0)>=1){f[s+40>>2]=r;g=n+-1|0;e=r+g|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[s+44>>2]=g;q=g;o=b[e>>0]&63;break}case 1:{if((n|0)<2)break b;q=n+-2|0;f[s+44>>2]=q;o=r+n+-2|0;o=(h[o+1>>0]|0)<<8&16128|(h[o>>0]|0);break}case 2:{if((n|0)<3)break b;q=n+-3|0;f[s+44>>2]=q;o=r+n+-3|0;o=(h[o+1>>0]|0)<<8|(h[o>>0]|0)|(h[o+2>>0]|0)<<16&4128768;break}case 3:{q=n+-4|0;f[s+44>>2]=q;o=r+n+-4|0;o=(h[o+2>>0]|0)<<16|(h[o+3>>0]|0)<<24&1056964608|(h[o+1>>0]|0)<<8|(h[o>>0]|0);break}default:{}}l=s+48|0;g=o+262144|0;f[l>>2]=g;e=g>>>0>67108863;if(e|p){c=e^1;break a}k=s+44|0;c=s+16|0;j=s+28|0;e=q;i=0;while(1){c:do if(g>>>0<262144)do{if((e|0)<=0)break c;e=e+-1|0;f[k>>2]=e;g=h[r+e>>0]|0|g<<8;f[l>>2]=g}while(g>>>0<262144);while(0);o=g&65535;q=f[(f[c>>2]|0)+(o<<2)>>2]|0;p=f[j>>2]|0;g=(X(f[p+(q<<3)>>2]|0,g>>>16)|0)+o-(f[p+(q<<3)+4>>2]|0)|0;f[l>>2]=g;f[d+(i<<2)>>2]=q;i=i+1|0;if((i|0)==(a|0)){c=1;break a}}}while(0);c=0;break}c=0}else c=0;while(0);e=f[s+28>>2]|0;if(e|0){i=s+32|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-8-e|0)>>>3)<<3);Em(e)}e=f[s+16>>2]|0;if(e|0){i=s+20|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}i=f[s>>2]|0;if(!i){u=t;return c|0}g=s+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);Em(i);u=t;return c|0}function Xb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+64|0;i=t;s=t+8|0;e=s;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));a:do if(Hc(s,c)|0){p=(a|0)==0;if(!p?(f[s+12>>2]|0)==0:0){c=0;break}if(tf(i,c)|0?(l=i,n=f[l>>2]|0,l=f[l+4>>2]|0,r=c+8|0,m=c+16|0,k=m,j=f[k>>2]|0,k=f[k+4>>2]|0,r=hk(f[r>>2]|0,f[r+4>>2]|0,j|0,k|0)|0,i=I,!(l>>>0>i>>>0|(l|0)==(i|0)&n>>>0>r>>>0)):0){r=(f[c>>2]|0)+j|0;l=Ij(j|0,k|0,n|0,l|0)|0;f[m>>2]=l;f[m+4>>2]=I;b:do if((n|0)>=1){f[s+40>>2]=r;g=n+-1|0;e=r+g|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[s+44>>2]=g;q=g;o=b[e>>0]&63;break}case 1:{if((n|0)<2)break b;q=n+-2|0;f[s+44>>2]=q;o=r+n+-2|0;o=(h[o+1>>0]|0)<<8&16128|(h[o>>0]|0);break}case 2:{if((n|0)<3)break b;q=n+-3|0;f[s+44>>2]=q;o=r+n+-3|0;o=(h[o+1>>0]|0)<<8|(h[o>>0]|0)|(h[o+2>>0]|0)<<16&4128768;break}case 3:{q=n+-4|0;f[s+44>>2]=q;o=r+n+-4|0;o=(h[o+2>>0]|0)<<16|(h[o+3>>0]|0)<<24&1056964608|(h[o+1>>0]|0)<<8|(h[o>>0]|0);break}default:{}}l=s+48|0;g=o+131072|0;f[l>>2]=g;e=g>>>0>33554431;if(e|p){c=e^1;break a}k=s+44|0;c=s+16|0;j=s+28|0;e=q;i=0;while(1){c:do if(g>>>0<131072)do{if((e|0)<=0)break c;e=e+-1|0;f[k>>2]=e;g=h[r+e>>0]|0|g<<8;f[l>>2]=g}while(g>>>0<131072);while(0);o=g&32767;q=f[(f[c>>2]|0)+(o<<2)>>2]|0;p=f[j>>2]|0;g=(X(f[p+(q<<3)>>2]|0,g>>>15)|0)+o-(f[p+(q<<3)+4>>2]|0)|0;f[l>>2]=g;f[d+(i<<2)>>2]=q;i=i+1|0;if((i|0)==(a|0)){c=1;break a}}}while(0);c=0;break}c=0}else c=0;while(0);e=f[s+28>>2]|0;if(e|0){i=s+32|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-8-e|0)>>>3)<<3);Em(e)}e=f[s+16>>2]|0;if(e|0){i=s+20|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}i=f[s>>2]|0;if(!i){u=t;return c|0}g=s+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);Em(i);u=t;return c|0}function Yb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+64|0;i=t;s=t+8|0;e=s;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));a:do if(Ic(s,c)|0){p=(a|0)==0;if(!p?(f[s+12>>2]|0)==0:0){c=0;break}if(tf(i,c)|0?(l=i,n=f[l>>2]|0,l=f[l+4>>2]|0,r=c+8|0,m=c+16|0,k=m,j=f[k>>2]|0,k=f[k+4>>2]|0,r=hk(f[r>>2]|0,f[r+4>>2]|0,j|0,k|0)|0,i=I,!(l>>>0>i>>>0|(l|0)==(i|0)&n>>>0>r>>>0)):0){r=(f[c>>2]|0)+j|0;l=Ij(j|0,k|0,n|0,l|0)|0;f[m>>2]=l;f[m+4>>2]=I;b:do if((n|0)>=1){f[s+40>>2]=r;g=n+-1|0;e=r+g|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[s+44>>2]=g;q=g;o=b[e>>0]&63;break}case 1:{if((n|0)<2)break b;q=n+-2|0;f[s+44>>2]=q;o=r+n+-2|0;o=(h[o+1>>0]|0)<<8&16128|(h[o>>0]|0);break}case 2:{if((n|0)<3)break b;q=n+-3|0;f[s+44>>2]=q;o=r+n+-3|0;o=(h[o+1>>0]|0)<<8|(h[o>>0]|0)|(h[o+2>>0]|0)<<16&4128768;break}case 3:{q=n+-4|0;f[s+44>>2]=q;o=r+n+-4|0;o=(h[o+2>>0]|0)<<16|(h[o+3>>0]|0)<<24&1056964608|(h[o+1>>0]|0)<<8|(h[o>>0]|0);break}default:{}}l=s+48|0;g=o+32768|0;f[l>>2]=g;e=g>>>0>8388607;if(e|p){c=e^1;break a}k=s+44|0;c=s+16|0;j=s+28|0;e=q;i=0;while(1){c:do if(g>>>0<32768)do{if((e|0)<=0)break c;e=e+-1|0;f[k>>2]=e;g=h[r+e>>0]|0|g<<8;f[l>>2]=g}while(g>>>0<32768);while(0);o=g&8191;q=f[(f[c>>2]|0)+(o<<2)>>2]|0;p=f[j>>2]|0;g=(X(f[p+(q<<3)>>2]|0,g>>>13)|0)+o-(f[p+(q<<3)+4>>2]|0)|0;f[l>>2]=g;f[d+(i<<2)>>2]=q;i=i+1|0;if((i|0)==(a|0)){c=1;break a}}}while(0);c=0;break}c=0}else c=0;while(0);e=f[s+28>>2]|0;if(e|0){i=s+32|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-8-e|0)>>>3)<<3);Em(e)}e=f[s+16>>2]|0;if(e|0){i=s+20|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}i=f[s>>2]|0;if(!i){u=t;return c|0}g=s+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);Em(i);u=t;return c|0}function Zb(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=u;u=u+64|0;i=t;s=t+8|0;e=s;g=e+40|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(g|0));a:do if(Jc(s,c)|0){p=(a|0)==0;if(!p?(f[s+12>>2]|0)==0:0){c=0;break}if(tf(i,c)|0?(l=i,n=f[l>>2]|0,l=f[l+4>>2]|0,r=c+8|0,m=c+16|0,k=m,j=f[k>>2]|0,k=f[k+4>>2]|0,r=hk(f[r>>2]|0,f[r+4>>2]|0,j|0,k|0)|0,i=I,!(l>>>0>i>>>0|(l|0)==(i|0)&n>>>0>r>>>0)):0){r=(f[c>>2]|0)+j|0;l=Ij(j|0,k|0,n|0,l|0)|0;f[m>>2]=l;f[m+4>>2]=I;b:do if((n|0)>=1){f[s+40>>2]=r;g=n+-1|0;e=r+g|0;switch((h[e>>0]|0)>>>6&3){case 0:{f[s+44>>2]=g;q=g;o=b[e>>0]&63;break}case 1:{if((n|0)<2)break b;q=n+-2|0;f[s+44>>2]=q;o=r+n+-2|0;o=(h[o+1>>0]|0)<<8&16128|(h[o>>0]|0);break}case 2:{if((n|0)<3)break b;q=n+-3|0;f[s+44>>2]=q;o=r+n+-3|0;o=(h[o+1>>0]|0)<<8|(h[o>>0]|0)|(h[o+2>>0]|0)<<16&4128768;break}case 3:{q=n+-4|0;f[s+44>>2]=q;o=r+n+-4|0;o=(h[o+2>>0]|0)<<16|(h[o+3>>0]|0)<<24&1056964608|(h[o+1>>0]|0)<<8|(h[o>>0]|0);break}default:{}}l=s+48|0;g=o+16384|0;f[l>>2]=g;e=g>>>0>4194303;if(e|p){c=e^1;break a}k=s+44|0;c=s+16|0;j=s+28|0;e=q;i=0;while(1){c:do if(g>>>0<16384)do{if((e|0)<=0)break c;e=e+-1|0;f[k>>2]=e;g=h[r+e>>0]|0|g<<8;f[l>>2]=g}while(g>>>0<16384);while(0);o=g&4095;q=f[(f[c>>2]|0)+(o<<2)>>2]|0;p=f[j>>2]|0;g=(X(f[p+(q<<3)>>2]|0,g>>>12)|0)+o-(f[p+(q<<3)+4>>2]|0)|0;f[l>>2]=g;f[d+(i<<2)>>2]=q;i=i+1|0;if((i|0)==(a|0)){c=1;break a}}}while(0);c=0;break}c=0}else c=0;while(0);e=f[s+28>>2]|0;if(e|0){i=s+32|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-8-e|0)>>>3)<<3);Em(e)}e=f[s+16>>2]|0;if(e|0){i=s+20|0;g=f[i>>2]|0;if((g|0)!=(e|0))f[i>>2]=g+(~((g+-4-e|0)>>>2)<<2);Em(e)}i=f[s>>2]|0;if(!i){u=t;return c|0}g=s+4|0;e=f[g>>2]|0;if((e|0)!=(i|0))f[g>>2]=e+(~((e+-4-i|0)>>>2)<<2);Em(i);u=t;return c|0}function _b(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=c;n=d;i=n;if(!k){g=(e|0)!=0;if(!i){if(g){f[e>>2]=(l>>>0)%(h>>>0);f[e+4>>2]=0}n=0;e=(l>>>0)/(h>>>0)>>>0;return (I=n,e)|0}else{if(!g){n=0;e=0;return (I=n,e)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;e=0;return (I=n,e)|0}}g=(i|0)==0;do if(h){if(!g){g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<>>(m>>>0)&b;g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;n=0;e=0;return (I=n,e)|0}g=h-1|0;if(g&h|0){i=(_(h|0)|0)+33-(_(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<>>(o>>>0))&j|l<>31;break}if(e|0){f[e>>2]=g&l;f[e+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (I=o,p)|0}else{p=pi(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (I=o,p)|0}}else{if(g){if(e|0){f[e>>2]=(k>>>0)%(h>>>0);f[e+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (I=o,p)|0}if(!l){if(e|0){f[e>>2]=0;f[e+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (I=o,p)|0}g=i-1|0;if(!(g&i)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=g&k|b&0}o=0;p=k>>>((pi(i|0)|0)>>>0);return (I=o,p)|0}g=(_(i|0)|0)-(_(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<>2]=a|0;f[e+4>>2]=j|b&0;o=0;p=0;return (I=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=c|0|0;l=n|d&0;k=Ij(m|0,l|0,-1,-1)|0;c=I;j=i;i=0;do{d=j;j=g>>>31|j<<1;g=i|g<<1;d=a<<1|d>>>31|0;n=a>>>31|b<<1|0;hk(k|0,c|0,d|0,n|0)|0;p=I;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=hk(d|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=I;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(e|0){f[e>>2]=a;f[e+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (I=o,p)|0} // EMSCRIPTEN_END_FUNCS -var Na=[Er,dp,am,om,Ao,lj,Bo,Cg,ed,Mm,rj,Mj,zl,vj,vl,Kh,km,zm,Vn,lk,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er,Er];var Oa=[gr,Yj,Vh,gr];var Pa=[ms,is,bs,In,tn,Xl,Il,Il,ck,yq,Vi,_p,hn,Um,nn,Vm,Vm,Vm,Vm,Ok,Fk,tl,cl,Vl,Fl,hm,Wl,is,bs,Vm,Vm,Kk,Ek,ml,Zk,Ol,Bl,cm,Pl,is,bs,Um,is,bs,bs,is,bs,bs,bs,Zl,Kl,Rm,xm,Pn,An,so,ho,is,bs,bs,bs,Sl,Hl,Lm,sm,Ln,un,jo,co,is,bs,is,bs,bs,bs,bm,Rl,_m,Gm,_n,Gn,yo,qo,is,bs,bs,bs,_l,Ll,Sm,ym,Qn,Bn,to,io,is,bs,$l,Ql,Bk,xk,bk,Xj,Ae,Yo,bl,Uk,eo,Rn,Xm,kn,cn,lo,$n,an,fl,Yk,be,Fo,jf,Ko,xk,is,bs,xk,xk,xk,yl,ol,ob,lh,kr,is,Br,is,is,Br,is,Br,ro,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms,ms];var Qa=[Zr,kl,Qg,sl,Kc,Zr,Zr,Zr];var Ra=[xq,se,kc,Zb,qb,Fe,kf,jn,lc,_b,ib,Ce,df,jn,kk,rf,nd,Cb,vh,ci,Bc,xf,md,zb,nh,Yh,zc,ok,vf,td,Eb,Ah,gi,Dc,Ff,sd,Ab,wh,di,Cc,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq,xq];var Sa=[hs,Gr,Ir,nq,rr,Ir,wf,kq,Yq,js,js,Ir,js,Ir,Ir,Am,Gr,Am,Qo,Am,$q,tm,Ir,$o,tm,Ir,bp,dl,Ir,rr,Ir,Am,Gr,Am,Qo,Am,$q,tm,Ir,$o,tm,Ir,bp,dl,Ir,rr,Gr,Gr,$q,js,Yq,Ir,js,Ir,$q,Ir,um,Gr,um,Qo,um,$q,qm,Ir,$o,qm,Ir,bp,_k,Ir,rr,Ir,um,Gr,um,Qo,um,$q,qm,Ir,$o,qm,Ir,bp,_k,Ir,rr,js,Yq,Ir,js,Ir,Gr,Ir,um,Gr,um,Qo,um,$q,qm,Ir,$o,qm,Ir,bp,_k,Ir,rr,Ir,um,Gr,um,Qo,um,$q,qm,Ir,$o,qm,Ir,bp,_k,Ir,rr,wg,Ir,Ir,No,We,Ml,Ir,js,ch,rp,zp,up,db,Ir,Yq,gq,Gh,Ng,Ph,bb,Ir,Yq,gq,cb,Ir,Yq,gq,Bb,Wj,js,Ir,Lk,Lk,Qk,oo,Ur,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs,hs];var Ta=[Lr,il,Qb,Tb,Qb,Tb,Qb,Tb,rh,gk,Zg,Ug,Lr,Lr,Lr,Lr];var Ua=[os,Xr,xj,Jo];var Va=[Vq,Pm,Nl,Vq];var Wa=[Tr,Hm,wi,ic,Km,dq,mr,Gq,Gq,Wb,Dp,Gq,ii,Mf,Jh,pm,Wk,Tk,jm,Je,Xp,mr,_i,uf,Wn,Zm,Lf,Mn,Ym,Gf,On,Wm,ih,Fn,uf,Wn,Zm,Lf,Mn,Ym,Gf,On,Wm,ih,Fn,bj,Xp,mr,Jn,eh,Wn,Tm,Eh,Mn,Qm,Ch,On,Nm,Kj,Fn,eh,Wn,Tm,Eh,Mn,Qm,Ch,On,Nm,Kj,Fn,Xp,mr,Xn,jh,Wn,Tm,Lh,Mn,Qm,Hh,On,Nm,Qj,Fn,jh,Wn,Tm,Lh,Mn,Qm,Hh,On,Nm,Qj,Fn,tp,Vg,mr,mr,Vo,Uo,So,xp,kj,sj,Ub,jg,rg,lg,xp,kj,sj,Ub,xp,kj,sj,Ub,Oh,En,yj,Oh,Tr,Tr,Tr,Tr,Tr,Tr];var Xa=[ur,Ij,vi,on,gm,ur,ur,ur];return{_emscripten_bind_Decoder_GetAttributeFloat_3:Oo,_emscripten_bind_PointAttribute_normalized_0:fr,_bitshift64Lshr:Wo,_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3:po,_emscripten_bind_DecoderBuffer_Init_2:bq,_emscripten_bind_PointAttribute_size_0:xr,_bitshift64Ashr:Do,_sbrk:Dm,_memcpy:Fh,stackSave:ls,_emscripten_enum_draco_GeometryAttribute_Type_INVALID:Yr,_emscripten_bind_Decoder_GetAttributeIdByName_2:Ep,_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD:_r,___udivmoddi4:Bd,_emscripten_bind_Status_ok_0:wr,_emscripten_bind_Mesh_num_faces_0:rq,_emscripten_get_global_libc:fs,_emscripten_bind_Decoder_DecodeBufferToPointCloud_2:Xo,_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM:_r,runPostSets:Zo,_emscripten_bind_Decoder_GetEncodedGeometryType_1:Np,___cxa_can_catch:yn,_free:cc,_emscripten_bind_GeometryAttribute___destroy___0:Zq,_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE:Yr,_emscripten_bind_PointAttribute_byte_stride_0:nr,_emscripten_bind_Metadata_Metadata_0:$m,_emscripten_bind_AttributeQuantizationTransform_min_value_1:Mp,_emscripten_bind_Decoder_Decoder_0:dr,_emscripten_bind_MetadataQuerier_GetStringEntry_2:pp,_emscripten_bind_MetadataQuerier_GetIntEntry_2:Bp,_emscripten_bind_Decoder___destroy___0:hl,_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM:Qr,getTempRet0:ks,setThrew:_q,_emscripten_bind_MetadataQuerier_HasStringEntry_2:np,_emscripten_bind_AttributeTransformData___destroy___0:Zn,_emscripten_bind_PointAttribute_num_components_0:lr,___cxa_is_pointer_type:Yp,_emscripten_bind_AttributeTransformData_AttributeTransformData_0:Hp,_llvm_cttz_i32:Cn,_emscripten_bind_AttributeQuantizationTransform___destroy___0:Pp,stackAlloc:qq,_emscripten_bind_DracoInt32Array___destroy___0:Dn,_emscripten_bind_Mesh_num_points_0:xr,___divdi3:jl,_emscripten_bind_Mesh_Mesh_0:er,_emscripten_bind_MetadataQuerier_MetadataQuerier_0:Tq,_emscripten_bind_Decoder_GetAttributeByUniqueId_2:yp,_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3:Io,_emscripten_bind_MetadataQuerier_HasDoubleEntry_2:op,_emscripten_bind_MetadataQuerier_GetDoubleEntry_2:qp,_emscripten_bind_Mesh_num_attributes_0:Dq,_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0:Yq,_emscripten_bind_AttributeOctahedronTransform___destroy___0:Pp,_llvm_bswap_i32:Rq,_emscripten_bind_Decoder_GetAttributeMetadata_2:wp,_emscripten_bind_PointAttribute_unique_id_0:qr,establishStackSpace:tr,_emscripten_enum_draco_StatusCode_IO_ERROR:Wr,_emscripten_bind_MetadataQuerier_HasIntEntry_2:Ap,_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2:gp,_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD:Kr,_emscripten_bind_PointCloud_num_attributes_0:Dq,_emscripten_bind_DecoderBuffer_DecoderBuffer_0:vq,_emscripten_enum_draco_GeometryAttribute_Type_POSITION:_r,_emscripten_bind_DracoInt32Array_size_0:Nq,_emscripten_bind_Decoder_SkipAttributeTransform_1:Lp,_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM:Pr,_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3:vo,_emscripten_enum_draco_StatusCode_ERROR:Yr,_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0:Yq,_emscripten_enum_draco_StatusCode_INVALID_PARAMETER:Or,_emscripten_enum_draco_GeometryAttribute_Type_COLOR:Qr,_emscripten_bind_VoidPtr___destroy___0:Zq,_memset:_j,_emscripten_bind_PointAttribute_attribute_type_0:ir,_emscripten_bind_MetadataQuerier___destroy___0:Zq,_emscripten_bind_DracoInt32Array_GetValue_1:wq,_emscripten_bind_DecoderBuffer___destroy___0:cq,_emscripten_bind_Decoder_GetAttribute_2:Up,_emscripten_bind_PointCloud___destroy___0:Pp,_i64Subtract:_o,setTempRet0:es,_emscripten_bind_DracoInt32Array_DracoInt32Array_0:uq,_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION:Sr,_emscripten_bind_DracoFloat32Array___destroy___0:Dn,_emscripten_bind_PointCloud_num_points_0:xr,_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH:Pr,_emscripten_bind_GeometryAttribute_GeometryAttribute_0:eq,___muldsi3:fn,_emscripten_bind_Decoder_GetFaceFromMesh_3:cp,_emscripten_bind_PointAttribute_data_type_0:rr,_emscripten_bind_DracoFloat32Array_size_0:Nq,_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1:sp,_malloc:$a,_emscripten_bind_PointAttribute_GetAttributeTransformData_0:br,_emscripten_bind_PointAttribute_byte_offset_0:or,_emscripten_replace_memory:Ma,_memmove:rn,_emscripten_bind_PointCloud_PointCloud_0:Jq,_emscripten_bind_Status_error_msg_0:kp,_emscripten_bind_Mesh___destroy___0:Pp,_emscripten_bind_Metadata___destroy___0:iq,_emscripten_bind_Status___destroy___0:jp,___udivdi3:Hq,_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM:Yr,_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0:Tn,_emscripten_bind_AttributeQuantizationTransform_range_0:Xq,_bitshift64Shl:Ro,_emscripten_bind_Decoder_GetAttributeId_2:fp,_emscripten_enum_draco_StatusCode_OK:_r,_emscripten_bind_AttributeTransformData_transform_type_0:Fr,_emscripten_bind_Status_code_0:Fr,___muldi3:mo,_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0:Ip,___uremdi3:bo,_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0:uq,_emscripten_enum_draco_GeometryAttribute_Type_GENERIC:Nr,_i64Add:Kp,_emscripten_bind_Decoder_DecodeBufferToMesh_2:mp,_emscripten_bind_DracoFloat32Array_GetValue_1:fq,_emscripten_bind_PointAttribute_PointAttribute_0:pq,_emscripten_bind_Decoder_GetMetadata_1:jq,_emscripten_enum_draco_GeometryAttribute_Type_NORMAL:Pr,stackRestore:cs,_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1:sp,_emscripten_bind_PointAttribute___destroy___0:sk,_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION:Mr,stackAlloc:qq,stackSave:ls,stackRestore:cs,establishStackSpace:tr,setThrew:_q,setTempRet0:es,getTempRet0:ks,dynCall_iiii:aq,dynCall_viiiii:lp,dynCall_vi:yr,dynCall_vii:cr,dynCall_iiiiiii:Co,dynCall_ii:pr,dynCall_viii:oq,dynCall_v:Vr,dynCall_viiiiii:Mo,dynCall_iii:Qq,dynCall_viiii:Rp}}) +var Ma=[Im,hm,im,Rk,Tl,im,pc,Ok,wl,Km,Km,im,Km,im,im,yh,sj,yh,Cj,vh,im,Ej,zg,im,Tl,im,yh,sj,yh,Cj,vh,im,Ej,zg,im,Tl,hm,Km,wl,im,Km,im,yk,Ej,ug,im,Tl,Ej,ug,im,Tl,$c,im,im,pj,rc,Xg,im,Km,_d,Vj,ak,Yj,cb,im,wl,Kk,xd,cd,Hd,gb,im,wl,Kk,ib,jf,Km,im,Zi,Il,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im,Im];var Na=[tm,Dh,qe,Gb,Hh,Hk,Ol,_k,ek,_k,zf,yc,Rd,uh,sg,pg,vi,ic,xk,Ol,xe,Nc,Bi,Rh,xc,Ei,Oh,Yd,ti,Nc,Bi,Rh,xc,Ei,Oh,Yd,ti,Ge,xk,Ol,xi,Ei,Fh,ah,ti,Ei,Fh,ah,ti,Xj,kd,Ol,Ol,yj,wj,uj,_j,Ne,We,qb,Qc,Vc,Tc,_j,Ne,We,qb,Ad,ri,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm,tm];var Oa=[fm,Gj,jh,th,hj,Oe,ij,td,Mb,Ih,Ue,Ph,Ng,Ze,Ph,Sd,ph,Fi,Qf,fm,fm,fm,fm,fm,fm,fm,fm,fm,fm,fm,fm,fm];var Pa=[al,fc,zb,bb,jc,_h,Ab,ab,hc,_h,Of,Db,Eb,al,al,al];var Qa=[Pm,wm,af,mj];var Ra=[Nm,Jm,Cm,wi,ji,fh,Vg,If,bl,Be,Bk,Zh,Mh,di,Nh,Nh,Nh,kg,gg,dh,Tg,oh,eh,Jm,Cm,Nh,ig,eg,Zg,Qg,kh,_g,Jm,Cm,Mh,Jm,Cm,Ui,Pi,Jm,Cm,aj,Ti,Jm,Cm,ih,$g,bg,$f,Gf,yf,mc,Bj,yg,qg,Qi,Ci,Qh,ai,Vh,Wi,Ki,Th,Ag,vg,vc,nj,$f,Jm,Cm,$f,Mg,Gg,Ed,Kl,Jm,Ll,Jm,Jm,Ll,nl,Vl,Vl,$i,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm,Nm];var Sa=[ym,Eg,pd,Ig,Bb,ym,ym,ym];var Ta=[lm,Cg,wb,nb,nb,wb,Jd,sd];var Ua=[$l,pf,Rf,ei,mh,$l,$l,$l];var Va=[Gl,Bf,Xd,Gl];var Wa=[pl,Kh,Yg,pl];return{___cxa_can_catch:ni,___cxa_is_pointer_type:Ak,___divdi3:Dg,___muldi3:Xi,___udivdi3:il,___uremdi3:Oi,_bitshift64Lshr:zj,_bitshift64Shl:tj,_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0:jk,_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1:Wj,_emscripten_bind_AttributeOctahedronTransform___destroy___0:pk,_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0:wl,_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0:Gi,_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1:Wj,_emscripten_bind_AttributeQuantizationTransform___destroy___0:pk,_emscripten_bind_AttributeQuantizationTransform_min_value_1:mk,_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0:wl,_emscripten_bind_AttributeQuantizationTransform_range_0:vl,_emscripten_bind_AttributeTransformData_AttributeTransformData_0:ik,_emscripten_bind_AttributeTransformData___destroy___0:Ji,_emscripten_bind_AttributeTransformData_transform_type_0:gm,_emscripten_bind_DecoderBuffer_DecoderBuffer_0:Zk,_emscripten_bind_DecoderBuffer_Init_2:Ek,_emscripten_bind_DecoderBuffer___destroy___0:Gk,_emscripten_bind_Decoder_DecodeBufferToMesh_2:Qj,_emscripten_bind_Decoder_DecodeBufferToPointCloud_2:Aj,_emscripten_bind_Decoder_Decoder_0:Cl,_emscripten_bind_Decoder_GetAttributeByUniqueId_2:$j,_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3:_i,_emscripten_bind_Decoder_GetAttributeFloat_3:qj,_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3:lj,_emscripten_bind_Decoder_GetAttributeIdByName_2:fk,_emscripten_bind_Decoder_GetAttributeId_2:Kj,_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3:bj,_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3:dj,_emscripten_bind_Decoder_GetAttributeMetadata_2:Zj,_emscripten_bind_Decoder_GetAttribute_2:uk,_emscripten_bind_Decoder_GetEncodedGeometryType_1:nk,_emscripten_bind_Decoder_GetFaceFromMesh_3:Fj,_emscripten_bind_Decoder_GetMetadata_1:Nk,_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2:Lj,_emscripten_bind_Decoder_SkipAttributeTransform_1:lk,_emscripten_bind_Decoder___destroy___0:wg,_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0:Yk,_emscripten_bind_DracoFloat32Array_GetValue_1:Jk,_emscripten_bind_DracoFloat32Array___destroy___0:qi,_emscripten_bind_DracoFloat32Array_size_0:ml,_emscripten_bind_DracoInt32Array_DracoInt32Array_0:Yk,_emscripten_bind_DracoInt32Array_GetValue_1:$k,_emscripten_bind_DracoInt32Array___destroy___0:qi,_emscripten_bind_DracoInt32Array_size_0:ml,_emscripten_bind_GeometryAttribute_GeometryAttribute_0:Ik,_emscripten_bind_GeometryAttribute___destroy___0:xl,_emscripten_bind_Mesh_Mesh_0:Dl,_emscripten_bind_Mesh___destroy___0:pk,_emscripten_bind_Mesh_num_attributes_0:fl,_emscripten_bind_Mesh_num_faces_0:Vk,_emscripten_bind_Mesh_num_points_0:_l,_emscripten_bind_MetadataQuerier_GetDoubleEntry_2:Uj,_emscripten_bind_MetadataQuerier_GetIntEntry_2:ck,_emscripten_bind_MetadataQuerier_GetStringEntry_2:Tj,_emscripten_bind_MetadataQuerier_HasDoubleEntry_2:Sj,_emscripten_bind_MetadataQuerier_HasIntEntry_2:bk,_emscripten_bind_MetadataQuerier_HasStringEntry_2:Rj,_emscripten_bind_MetadataQuerier_MetadataQuerier_0:sl,_emscripten_bind_MetadataQuerier___destroy___0:xl,_emscripten_bind_Metadata_Metadata_0:Sh,_emscripten_bind_Metadata___destroy___0:Mk,_emscripten_bind_PointAttribute_GetAttributeTransformData_0:Al,_emscripten_bind_PointAttribute_PointAttribute_0:Tk,_emscripten_bind_PointAttribute___destroy___0:Xf,_emscripten_bind_PointAttribute_attribute_type_0:Jl,_emscripten_bind_PointAttribute_byte_offset_0:Ql,_emscripten_bind_PointAttribute_byte_stride_0:Pl,_emscripten_bind_PointAttribute_data_type_0:Tl,_emscripten_bind_PointAttribute_normalized_0:El,_emscripten_bind_PointAttribute_num_components_0:Ml,_emscripten_bind_PointAttribute_size_0:_l,_emscripten_bind_PointAttribute_unique_id_0:Sl,_emscripten_bind_PointCloud_PointCloud_0:kl,_emscripten_bind_PointCloud___destroy___0:pk,_emscripten_bind_PointCloud_num_attributes_0:fl,_emscripten_bind_PointCloud_num_points_0:_l,_emscripten_bind_Status___destroy___0:vj,_emscripten_bind_Status_code_0:gm,_emscripten_bind_Status_error_msg_0:Oj,_emscripten_bind_Status_ok_0:Zl,_emscripten_bind_VoidPtr___destroy___0:xl,_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM:xm,_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM:zm,_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM:qm,_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM:pm,_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE:xm,_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD:zm,_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH:pm,_emscripten_enum_draco_GeometryAttribute_Type_COLOR:qm,_emscripten_enum_draco_GeometryAttribute_Type_GENERIC:nm,_emscripten_enum_draco_GeometryAttribute_Type_INVALID:xm,_emscripten_enum_draco_GeometryAttribute_Type_NORMAL:pm,_emscripten_enum_draco_GeometryAttribute_Type_POSITION:zm,_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD:km,_emscripten_enum_draco_StatusCode_ERROR:xm,_emscripten_enum_draco_StatusCode_INVALID_PARAMETER:om,_emscripten_enum_draco_StatusCode_IO_ERROR:vm,_emscripten_enum_draco_StatusCode_OK:zm,_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION:sm,_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION:mm,_emscripten_get_global_libc:Gm,_emscripten_replace_memory:La,_free:sb,_i64Add:Ij,_i64Subtract:hk,_llvm_bswap_i32:ql,_malloc:Xa,_memcpy:Od,_memmove:hi,_memset:Cf,_sbrk:Bh,dynCall_ii:Rl,dynCall_iii:ol,dynCall_iiii:Dk,dynCall_iiiiiii:jj,dynCall_v:um,dynCall_vi:am,dynCall_vii:Bl,dynCall_viii:Sk,dynCall_viiii:rk,dynCall_viiiii:Pj,dynCall_viiiiii:oj,establishStackSpace:Xl,getTempRet0:Lm,runPostSets:Hj,setTempRet0:Fm,setThrew:yl,stackAlloc:Uk,stackRestore:Dm,stackSave:Mm}}) // EMSCRIPTEN_END_ASM -(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _emscripten_bind_Decoder_GetAttributeFloat_3=Module["_emscripten_bind_Decoder_GetAttributeFloat_3"]=asm["_emscripten_bind_Decoder_GetAttributeFloat_3"];var _emscripten_bind_PointAttribute_normalized_0=Module["_emscripten_bind_PointAttribute_normalized_0"]=asm["_emscripten_bind_PointAttribute_normalized_0"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3"]=asm["_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3"];var _emscripten_bind_DecoderBuffer_Init_2=Module["_emscripten_bind_DecoderBuffer_Init_2"]=asm["_emscripten_bind_DecoderBuffer_Init_2"];var _emscripten_bind_PointAttribute_size_0=Module["_emscripten_bind_PointAttribute_size_0"]=asm["_emscripten_bind_PointAttribute_size_0"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var stackSave=Module["stackSave"]=asm["stackSave"];var _emscripten_enum_draco_GeometryAttribute_Type_INVALID=Module["_emscripten_enum_draco_GeometryAttribute_Type_INVALID"]=asm["_emscripten_enum_draco_GeometryAttribute_Type_INVALID"];var _emscripten_bind_Decoder_GetAttributeIdByName_2=Module["_emscripten_bind_Decoder_GetAttributeIdByName_2"]=asm["_emscripten_bind_Decoder_GetAttributeIdByName_2"];var _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=Module["_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"]=asm["_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"];var ___udivmoddi4=Module["___udivmoddi4"]=asm["___udivmoddi4"];var _emscripten_bind_Status_ok_0=Module["_emscripten_bind_Status_ok_0"]=asm["_emscripten_bind_Status_ok_0"];var _emscripten_bind_Mesh_num_faces_0=Module["_emscripten_bind_Mesh_num_faces_0"]=asm["_emscripten_bind_Mesh_num_faces_0"];var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=asm["_emscripten_get_global_libc"];var _emscripten_bind_Decoder_DecodeBufferToPointCloud_2=Module["_emscripten_bind_Decoder_DecodeBufferToPointCloud_2"]=asm["_emscripten_bind_Decoder_DecodeBufferToPointCloud_2"];var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM"]=asm["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _emscripten_bind_Decoder_GetEncodedGeometryType_1=Module["_emscripten_bind_Decoder_GetEncodedGeometryType_1"]=asm["_emscripten_bind_Decoder_GetEncodedGeometryType_1"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var _free=Module["_free"]=asm["_free"];var _emscripten_bind_GeometryAttribute___destroy___0=Module["_emscripten_bind_GeometryAttribute___destroy___0"]=asm["_emscripten_bind_GeometryAttribute___destroy___0"];var _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=Module["_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"]=asm["_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"];var _emscripten_bind_PointAttribute_byte_stride_0=Module["_emscripten_bind_PointAttribute_byte_stride_0"]=asm["_emscripten_bind_PointAttribute_byte_stride_0"];var _emscripten_bind_Metadata_Metadata_0=Module["_emscripten_bind_Metadata_Metadata_0"]=asm["_emscripten_bind_Metadata_Metadata_0"];var _emscripten_bind_AttributeQuantizationTransform_min_value_1=Module["_emscripten_bind_AttributeQuantizationTransform_min_value_1"]=asm["_emscripten_bind_AttributeQuantizationTransform_min_value_1"];var _emscripten_bind_Decoder_Decoder_0=Module["_emscripten_bind_Decoder_Decoder_0"]=asm["_emscripten_bind_Decoder_Decoder_0"];var _emscripten_bind_MetadataQuerier_GetStringEntry_2=Module["_emscripten_bind_MetadataQuerier_GetStringEntry_2"]=asm["_emscripten_bind_MetadataQuerier_GetStringEntry_2"];var _emscripten_bind_MetadataQuerier_GetIntEntry_2=Module["_emscripten_bind_MetadataQuerier_GetIntEntry_2"]=asm["_emscripten_bind_MetadataQuerier_GetIntEntry_2"];var _emscripten_bind_Decoder___destroy___0=Module["_emscripten_bind_Decoder___destroy___0"]=asm["_emscripten_bind_Decoder___destroy___0"];var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM"]=asm["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var _emscripten_bind_MetadataQuerier_HasStringEntry_2=Module["_emscripten_bind_MetadataQuerier_HasStringEntry_2"]=asm["_emscripten_bind_MetadataQuerier_HasStringEntry_2"];var _emscripten_bind_AttributeTransformData___destroy___0=Module["_emscripten_bind_AttributeTransformData___destroy___0"]=asm["_emscripten_bind_AttributeTransformData___destroy___0"];var _emscripten_bind_PointAttribute_num_components_0=Module["_emscripten_bind_PointAttribute_num_components_0"]=asm["_emscripten_bind_PointAttribute_num_components_0"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var _emscripten_bind_AttributeTransformData_AttributeTransformData_0=Module["_emscripten_bind_AttributeTransformData_AttributeTransformData_0"]=asm["_emscripten_bind_AttributeTransformData_AttributeTransformData_0"];var _llvm_cttz_i32=Module["_llvm_cttz_i32"]=asm["_llvm_cttz_i32"];var _emscripten_bind_AttributeQuantizationTransform___destroy___0=Module["_emscripten_bind_AttributeQuantizationTransform___destroy___0"]=asm["_emscripten_bind_AttributeQuantizationTransform___destroy___0"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var _emscripten_bind_DracoInt32Array___destroy___0=Module["_emscripten_bind_DracoInt32Array___destroy___0"]=asm["_emscripten_bind_DracoInt32Array___destroy___0"];var _emscripten_bind_Mesh_num_points_0=Module["_emscripten_bind_Mesh_num_points_0"]=asm["_emscripten_bind_Mesh_num_points_0"];var ___divdi3=Module["___divdi3"]=asm["___divdi3"];var _emscripten_bind_Mesh_Mesh_0=Module["_emscripten_bind_Mesh_Mesh_0"]=asm["_emscripten_bind_Mesh_Mesh_0"];var _emscripten_bind_MetadataQuerier_MetadataQuerier_0=Module["_emscripten_bind_MetadataQuerier_MetadataQuerier_0"]=asm["_emscripten_bind_MetadataQuerier_MetadataQuerier_0"];var _emscripten_bind_Decoder_GetAttributeByUniqueId_2=Module["_emscripten_bind_Decoder_GetAttributeByUniqueId_2"]=asm["_emscripten_bind_Decoder_GetAttributeByUniqueId_2"];var _emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=Module["_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3"]=asm["_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3"];var _emscripten_bind_MetadataQuerier_HasDoubleEntry_2=Module["_emscripten_bind_MetadataQuerier_HasDoubleEntry_2"]=asm["_emscripten_bind_MetadataQuerier_HasDoubleEntry_2"];var _emscripten_bind_MetadataQuerier_GetDoubleEntry_2=Module["_emscripten_bind_MetadataQuerier_GetDoubleEntry_2"]=asm["_emscripten_bind_MetadataQuerier_GetDoubleEntry_2"];var _emscripten_bind_Mesh_num_attributes_0=Module["_emscripten_bind_Mesh_num_attributes_0"]=asm["_emscripten_bind_Mesh_num_attributes_0"];var _emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=Module["_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0"]=asm["_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0"];var _emscripten_bind_AttributeOctahedronTransform___destroy___0=Module["_emscripten_bind_AttributeOctahedronTransform___destroy___0"]=asm["_emscripten_bind_AttributeOctahedronTransform___destroy___0"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _emscripten_bind_Decoder_GetAttributeMetadata_2=Module["_emscripten_bind_Decoder_GetAttributeMetadata_2"]=asm["_emscripten_bind_Decoder_GetAttributeMetadata_2"];var _emscripten_bind_PointAttribute_unique_id_0=Module["_emscripten_bind_PointAttribute_unique_id_0"]=asm["_emscripten_bind_PointAttribute_unique_id_0"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var _emscripten_enum_draco_StatusCode_IO_ERROR=Module["_emscripten_enum_draco_StatusCode_IO_ERROR"]=asm["_emscripten_enum_draco_StatusCode_IO_ERROR"];var _emscripten_bind_MetadataQuerier_HasIntEntry_2=Module["_emscripten_bind_MetadataQuerier_HasIntEntry_2"]=asm["_emscripten_bind_MetadataQuerier_HasIntEntry_2"];var _emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=Module["_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2"]=asm["_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2"];var _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=Module["_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"]=asm["_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"];var _emscripten_bind_PointCloud_num_attributes_0=Module["_emscripten_bind_PointCloud_num_attributes_0"]=asm["_emscripten_bind_PointCloud_num_attributes_0"];var _emscripten_bind_DecoderBuffer_DecoderBuffer_0=Module["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"]=asm["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"];var _emscripten_enum_draco_GeometryAttribute_Type_POSITION=Module["_emscripten_enum_draco_GeometryAttribute_Type_POSITION"]=asm["_emscripten_enum_draco_GeometryAttribute_Type_POSITION"];var _emscripten_bind_DracoInt32Array_size_0=Module["_emscripten_bind_DracoInt32Array_size_0"]=asm["_emscripten_bind_DracoInt32Array_size_0"];var _emscripten_bind_Decoder_SkipAttributeTransform_1=Module["_emscripten_bind_Decoder_SkipAttributeTransform_1"]=asm["_emscripten_bind_Decoder_SkipAttributeTransform_1"];var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM"]=asm["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM"];var _emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3"]=asm["_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3"];var _emscripten_enum_draco_StatusCode_ERROR=Module["_emscripten_enum_draco_StatusCode_ERROR"]=asm["_emscripten_enum_draco_StatusCode_ERROR"];var _emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=Module["_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0"]=asm["_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0"];var _emscripten_enum_draco_StatusCode_INVALID_PARAMETER=Module["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"]=asm["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"];var _emscripten_enum_draco_GeometryAttribute_Type_COLOR=Module["_emscripten_enum_draco_GeometryAttribute_Type_COLOR"]=asm["_emscripten_enum_draco_GeometryAttribute_Type_COLOR"];var _emscripten_bind_VoidPtr___destroy___0=Module["_emscripten_bind_VoidPtr___destroy___0"]=asm["_emscripten_bind_VoidPtr___destroy___0"];var _memset=Module["_memset"]=asm["_memset"];var _emscripten_bind_PointAttribute_attribute_type_0=Module["_emscripten_bind_PointAttribute_attribute_type_0"]=asm["_emscripten_bind_PointAttribute_attribute_type_0"];var _emscripten_bind_MetadataQuerier___destroy___0=Module["_emscripten_bind_MetadataQuerier___destroy___0"]=asm["_emscripten_bind_MetadataQuerier___destroy___0"];var _emscripten_bind_DracoInt32Array_GetValue_1=Module["_emscripten_bind_DracoInt32Array_GetValue_1"]=asm["_emscripten_bind_DracoInt32Array_GetValue_1"];var _emscripten_bind_DecoderBuffer___destroy___0=Module["_emscripten_bind_DecoderBuffer___destroy___0"]=asm["_emscripten_bind_DecoderBuffer___destroy___0"];var _emscripten_bind_Decoder_GetAttribute_2=Module["_emscripten_bind_Decoder_GetAttribute_2"]=asm["_emscripten_bind_Decoder_GetAttribute_2"];var _emscripten_bind_PointCloud___destroy___0=Module["_emscripten_bind_PointCloud___destroy___0"]=asm["_emscripten_bind_PointCloud___destroy___0"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var _emscripten_bind_DracoInt32Array_DracoInt32Array_0=Module["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"]=asm["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"];var _emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=Module["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"]=asm["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"];var _emscripten_bind_DracoFloat32Array___destroy___0=Module["_emscripten_bind_DracoFloat32Array___destroy___0"]=asm["_emscripten_bind_DracoFloat32Array___destroy___0"];var _emscripten_bind_PointCloud_num_points_0=Module["_emscripten_bind_PointCloud_num_points_0"]=asm["_emscripten_bind_PointCloud_num_points_0"];var _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=Module["_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"]=asm["_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"];var _emscripten_bind_GeometryAttribute_GeometryAttribute_0=Module["_emscripten_bind_GeometryAttribute_GeometryAttribute_0"]=asm["_emscripten_bind_GeometryAttribute_GeometryAttribute_0"];var ___muldsi3=Module["___muldsi3"]=asm["___muldsi3"];var _emscripten_bind_Decoder_GetFaceFromMesh_3=Module["_emscripten_bind_Decoder_GetFaceFromMesh_3"]=asm["_emscripten_bind_Decoder_GetFaceFromMesh_3"];var _emscripten_bind_PointAttribute_data_type_0=Module["_emscripten_bind_PointAttribute_data_type_0"]=asm["_emscripten_bind_PointAttribute_data_type_0"];var _emscripten_bind_DracoFloat32Array_size_0=Module["_emscripten_bind_DracoFloat32Array_size_0"]=asm["_emscripten_bind_DracoFloat32Array_size_0"];var _emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1"]=asm["_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1"];var _malloc=Module["_malloc"]=asm["_malloc"];var _emscripten_bind_PointAttribute_GetAttributeTransformData_0=Module["_emscripten_bind_PointAttribute_GetAttributeTransformData_0"]=asm["_emscripten_bind_PointAttribute_GetAttributeTransformData_0"];var _emscripten_bind_PointAttribute_byte_offset_0=Module["_emscripten_bind_PointAttribute_byte_offset_0"]=asm["_emscripten_bind_PointAttribute_byte_offset_0"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var _memmove=Module["_memmove"]=asm["_memmove"];var _emscripten_bind_PointCloud_PointCloud_0=Module["_emscripten_bind_PointCloud_PointCloud_0"]=asm["_emscripten_bind_PointCloud_PointCloud_0"];var _emscripten_bind_Status_error_msg_0=Module["_emscripten_bind_Status_error_msg_0"]=asm["_emscripten_bind_Status_error_msg_0"];var _emscripten_bind_Mesh___destroy___0=Module["_emscripten_bind_Mesh___destroy___0"]=asm["_emscripten_bind_Mesh___destroy___0"];var _emscripten_bind_Metadata___destroy___0=Module["_emscripten_bind_Metadata___destroy___0"]=asm["_emscripten_bind_Metadata___destroy___0"];var _emscripten_bind_Status___destroy___0=Module["_emscripten_bind_Status___destroy___0"]=asm["_emscripten_bind_Status___destroy___0"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM"]=asm["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM"];var _emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=Module["_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0"]=asm["_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0"];var _emscripten_bind_AttributeQuantizationTransform_range_0=Module["_emscripten_bind_AttributeQuantizationTransform_range_0"]=asm["_emscripten_bind_AttributeQuantizationTransform_range_0"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _emscripten_bind_Decoder_GetAttributeId_2=Module["_emscripten_bind_Decoder_GetAttributeId_2"]=asm["_emscripten_bind_Decoder_GetAttributeId_2"];var _emscripten_enum_draco_StatusCode_OK=Module["_emscripten_enum_draco_StatusCode_OK"]=asm["_emscripten_enum_draco_StatusCode_OK"];var _emscripten_bind_AttributeTransformData_transform_type_0=Module["_emscripten_bind_AttributeTransformData_transform_type_0"]=asm["_emscripten_bind_AttributeTransformData_transform_type_0"];var _emscripten_bind_Status_code_0=Module["_emscripten_bind_Status_code_0"]=asm["_emscripten_bind_Status_code_0"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var _emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=Module["_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0"]=asm["_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=Module["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"]=asm["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"];var _emscripten_enum_draco_GeometryAttribute_Type_GENERIC=Module["_emscripten_enum_draco_GeometryAttribute_Type_GENERIC"]=asm["_emscripten_enum_draco_GeometryAttribute_Type_GENERIC"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _emscripten_bind_Decoder_DecodeBufferToMesh_2=Module["_emscripten_bind_Decoder_DecodeBufferToMesh_2"]=asm["_emscripten_bind_Decoder_DecodeBufferToMesh_2"];var _emscripten_bind_DracoFloat32Array_GetValue_1=Module["_emscripten_bind_DracoFloat32Array_GetValue_1"]=asm["_emscripten_bind_DracoFloat32Array_GetValue_1"];var _emscripten_bind_PointAttribute_PointAttribute_0=Module["_emscripten_bind_PointAttribute_PointAttribute_0"]=asm["_emscripten_bind_PointAttribute_PointAttribute_0"];var _emscripten_bind_Decoder_GetMetadata_1=Module["_emscripten_bind_Decoder_GetMetadata_1"]=asm["_emscripten_bind_Decoder_GetMetadata_1"];var _emscripten_enum_draco_GeometryAttribute_Type_NORMAL=Module["_emscripten_enum_draco_GeometryAttribute_Type_NORMAL"]=asm["_emscripten_enum_draco_GeometryAttribute_Type_NORMAL"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var _emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1"]=asm["_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1"];var _emscripten_bind_PointAttribute___destroy___0=Module["_emscripten_bind_PointAttribute___destroy___0"]=asm["_emscripten_bind_PointAttribute___destroy___0"];var _emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=Module["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"]=asm["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_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_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=Module["stackAlloc"];Runtime.stackSave=Module["stackSave"];Runtime.stackRestore=Module["stackRestore"];Runtime.establishStackSpace=Module["establishStackSpace"];Runtime.setTempRet0=Module["setTempRet0"];Runtime.getTempRet0=Module["getTempRet0"];Module["asm"]=asm;Module["then"]=(function(func){if(Module["calledRun"]){func(Module)}else{var old=Module["onRuntimeInitialized"];Module["onRuntimeInitialized"]=(function(){if(old)old();func(Module)})}return Module});function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:(function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret}),copy:(function(array,view,offset){var offsetShifted=offset;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offsetShifted>>=1;break;case 4:offsetShifted>>=2;break;case 8:offsetShifted>>=3;break}for(var i=0;i0){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"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:(function(){if(ensureCache.needed){for(var i=0;i=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret}),copy:(function(array,view,offset){var offsetShifted=offset;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offsetShifted>>=1;break;case 4:offsetShifted>>=2;break;case 8:offsetShifted>>=3;break}for(var i=0;i=73@rkgp5v-9J1*}ZR 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%0AXzU@60?O!&6-1E}}vCLVveCrT2R&Fc_lvM?z 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 DtAIjt diff --git a/examples/models/gltf/Monster/glTF-Draco/Monster.gltf b/examples/models/gltf/Monster/glTF-Draco/Monster.gltf index a8f9b4d27e3761..ac378a8273f514 100644 --- a/examples/models/gltf/Monster/glTF-Draco/Monster.gltf +++ b/examples/models/gltf/Monster/glTF-Draco/Monster.gltf @@ -728,15 +728,27 @@ "primitives": [ { "attributes": { - "JOINTS_0": 1, - "NORMAL": 2, - "POSITION": 3, - "TEXCOORD_0": 4, - "WEIGHTS_0": 5 + "JOINTS_0": 130, + "NORMAL": 131, + "POSITION": 132, + "TEXCOORD_0": 133, + "WEIGHTS_0": 134 }, - "indices": 0, + "indices": 129, "mode": 4, - "material": 0 + "material": 0, + "extensions": { + "KHR_draco_mesh_compression": { + "bufferView": 33, + "attributes": { + "JOINTS_0": 0, + "NORMAL": 1, + "POSITION": 2, + "TEXCOORD_0": 3, + "WEIGHTS_0": 4 + } + } + } } ], "name": "monster" @@ -769,19 +781,19 @@ ], "samplers": [ { - "input": 7, + "input": 1, "interpolation": "LINEAR", - "output": 8 + "output": 2 }, { - "input": 7, + "input": 1, "interpolation": "LINEAR", - "output": 9 + "output": 3 }, { - "input": 7, + "input": 1, "interpolation": "LINEAR", - "output": 10 + "output": 4 } ] }, @@ -811,19 +823,19 @@ ], "samplers": [ { - "input": 11, + "input": 5, "interpolation": "LINEAR", - "output": 12 + "output": 6 }, { - "input": 11, + "input": 5, "interpolation": "LINEAR", - "output": 13 + "output": 7 }, { - "input": 11, + "input": 5, "interpolation": "LINEAR", - "output": 14 + "output": 8 } ] }, @@ -853,19 +865,19 @@ ], "samplers": [ { - "input": 15, + "input": 9, "interpolation": "LINEAR", - "output": 16 + "output": 10 }, { - "input": 15, + "input": 9, "interpolation": "LINEAR", - "output": 17 + "output": 11 }, { - "input": 15, + "input": 9, "interpolation": "LINEAR", - "output": 18 + "output": 12 } ] }, @@ -895,19 +907,19 @@ ], "samplers": [ { - "input": 19, + "input": 13, "interpolation": "LINEAR", - "output": 20 + "output": 14 }, { - "input": 19, + "input": 13, "interpolation": "LINEAR", - "output": 21 + "output": 15 }, { - "input": 19, + "input": 13, "interpolation": "LINEAR", - "output": 22 + "output": 16 } ] }, @@ -937,19 +949,19 @@ ], "samplers": [ { - "input": 23, + "input": 17, "interpolation": "LINEAR", - "output": 24 + "output": 18 }, { - "input": 23, + "input": 17, "interpolation": "LINEAR", - "output": 25 + "output": 19 }, { - "input": 23, + "input": 17, "interpolation": "LINEAR", - "output": 26 + "output": 20 } ] }, @@ -979,19 +991,19 @@ ], "samplers": [ { - "input": 27, + "input": 21, "interpolation": "LINEAR", - "output": 28 + "output": 22 }, { - "input": 27, + "input": 21, "interpolation": "LINEAR", - "output": 29 + "output": 23 }, { - "input": 27, + "input": 21, "interpolation": "LINEAR", - "output": 30 + "output": 24 } ] }, @@ -1021,19 +1033,19 @@ ], "samplers": [ { - "input": 31, + "input": 25, "interpolation": "LINEAR", - "output": 32 + "output": 26 }, { - "input": 31, + "input": 25, "interpolation": "LINEAR", - "output": 33 + "output": 27 }, { - "input": 31, + "input": 25, "interpolation": "LINEAR", - "output": 34 + "output": 28 } ] }, @@ -1063,19 +1075,19 @@ ], "samplers": [ { - "input": 35, + "input": 29, "interpolation": "LINEAR", - "output": 36 + "output": 30 }, { - "input": 35, + "input": 29, "interpolation": "LINEAR", - "output": 37 + "output": 31 }, { - "input": 35, + "input": 29, "interpolation": "LINEAR", - "output": 38 + "output": 32 } ] }, @@ -1105,19 +1117,19 @@ ], "samplers": [ { - "input": 39, + "input": 33, "interpolation": "LINEAR", - "output": 40 + "output": 34 }, { - "input": 39, + "input": 33, "interpolation": "LINEAR", - "output": 41 + "output": 35 }, { - "input": 39, + "input": 33, "interpolation": "LINEAR", - "output": 42 + "output": 36 } ] }, @@ -1147,19 +1159,19 @@ ], "samplers": [ { - "input": 43, + "input": 37, "interpolation": "LINEAR", - "output": 44 + "output": 38 }, { - "input": 43, + "input": 37, "interpolation": "LINEAR", - "output": 45 + "output": 39 }, { - "input": 43, + "input": 37, "interpolation": "LINEAR", - "output": 46 + "output": 40 } ] }, @@ -1189,19 +1201,19 @@ ], "samplers": [ { - "input": 47, + "input": 41, "interpolation": "LINEAR", - "output": 48 + "output": 42 }, { - "input": 47, + "input": 41, "interpolation": "LINEAR", - "output": 49 + "output": 43 }, { - "input": 47, + "input": 41, "interpolation": "LINEAR", - "output": 50 + "output": 44 } ] }, @@ -1231,19 +1243,19 @@ ], "samplers": [ { - "input": 51, + "input": 45, "interpolation": "LINEAR", - "output": 52 + "output": 46 }, { - "input": 51, + "input": 45, "interpolation": "LINEAR", - "output": 53 + "output": 47 }, { - "input": 51, + "input": 45, "interpolation": "LINEAR", - "output": 54 + "output": 48 } ] }, @@ -1273,19 +1285,19 @@ ], "samplers": [ { - "input": 55, + "input": 49, "interpolation": "LINEAR", - "output": 56 + "output": 50 }, { - "input": 55, + "input": 49, "interpolation": "LINEAR", - "output": 57 + "output": 51 }, { - "input": 55, + "input": 49, "interpolation": "LINEAR", - "output": 58 + "output": 52 } ] }, @@ -1315,19 +1327,19 @@ ], "samplers": [ { - "input": 59, + "input": 53, "interpolation": "LINEAR", - "output": 60 + "output": 54 }, { - "input": 59, + "input": 53, "interpolation": "LINEAR", - "output": 61 + "output": 55 }, { - "input": 59, + "input": 53, "interpolation": "LINEAR", - "output": 62 + "output": 56 } ] }, @@ -1357,19 +1369,19 @@ ], "samplers": [ { - "input": 63, + "input": 57, "interpolation": "LINEAR", - "output": 64 + "output": 58 }, { - "input": 63, + "input": 57, "interpolation": "LINEAR", - "output": 65 + "output": 59 }, { - "input": 63, + "input": 57, "interpolation": "LINEAR", - "output": 66 + "output": 60 } ] }, @@ -1399,19 +1411,19 @@ ], "samplers": [ { - "input": 67, + "input": 61, "interpolation": "LINEAR", - "output": 68 + "output": 62 }, { - "input": 67, + "input": 61, "interpolation": "LINEAR", - "output": 69 + "output": 63 }, { - "input": 67, + "input": 61, "interpolation": "LINEAR", - "output": 70 + "output": 64 } ] }, @@ -1441,19 +1453,19 @@ ], "samplers": [ { - "input": 71, + "input": 65, "interpolation": "LINEAR", - "output": 72 + "output": 66 }, { - "input": 71, + "input": 65, "interpolation": "LINEAR", - "output": 73 + "output": 67 }, { - "input": 71, + "input": 65, "interpolation": "LINEAR", - "output": 74 + "output": 68 } ] }, @@ -1483,19 +1495,19 @@ ], "samplers": [ { - "input": 75, + "input": 69, "interpolation": "LINEAR", - "output": 76 + "output": 70 }, { - "input": 75, + "input": 69, "interpolation": "LINEAR", - "output": 77 + "output": 71 }, { - "input": 75, + "input": 69, "interpolation": "LINEAR", - "output": 78 + "output": 72 } ] }, @@ -1525,19 +1537,19 @@ ], "samplers": [ { - "input": 79, + "input": 73, "interpolation": "LINEAR", - "output": 80 + "output": 74 }, { - "input": 79, + "input": 73, "interpolation": "LINEAR", - "output": 81 + "output": 75 }, { - "input": 79, + "input": 73, "interpolation": "LINEAR", - "output": 82 + "output": 76 } ] }, @@ -1567,19 +1579,19 @@ ], "samplers": [ { - "input": 83, + "input": 77, "interpolation": "LINEAR", - "output": 84 + "output": 78 }, { - "input": 83, + "input": 77, "interpolation": "LINEAR", - "output": 85 + "output": 79 }, { - "input": 83, + "input": 77, "interpolation": "LINEAR", - "output": 86 + "output": 80 } ] }, @@ -1609,19 +1621,19 @@ ], "samplers": [ { - "input": 87, + "input": 81, "interpolation": "LINEAR", - "output": 88 + "output": 82 }, { - "input": 87, + "input": 81, "interpolation": "LINEAR", - "output": 89 + "output": 83 }, { - "input": 87, + "input": 81, "interpolation": "LINEAR", - "output": 90 + "output": 84 } ] }, @@ -1651,19 +1663,19 @@ ], "samplers": [ { - "input": 91, + "input": 85, "interpolation": "LINEAR", - "output": 92 + "output": 86 }, { - "input": 91, + "input": 85, "interpolation": "LINEAR", - "output": 93 + "output": 87 }, { - "input": 91, + "input": 85, "interpolation": "LINEAR", - "output": 94 + "output": 88 } ] }, @@ -1693,19 +1705,19 @@ ], "samplers": [ { - "input": 95, + "input": 89, "interpolation": "LINEAR", - "output": 96 + "output": 90 }, { - "input": 95, + "input": 89, "interpolation": "LINEAR", - "output": 97 + "output": 91 }, { - "input": 95, + "input": 89, "interpolation": "LINEAR", - "output": 98 + "output": 92 } ] }, @@ -1735,19 +1747,19 @@ ], "samplers": [ { - "input": 99, + "input": 93, "interpolation": "LINEAR", - "output": 100 + "output": 94 }, { - "input": 99, + "input": 93, "interpolation": "LINEAR", - "output": 101 + "output": 95 }, { - "input": 99, + "input": 93, "interpolation": "LINEAR", - "output": 102 + "output": 96 } ] }, @@ -1777,19 +1789,19 @@ ], "samplers": [ { - "input": 103, + "input": 97, "interpolation": "LINEAR", - "output": 104 + "output": 98 }, { - "input": 103, + "input": 97, "interpolation": "LINEAR", - "output": 105 + "output": 99 }, { - "input": 103, + "input": 97, "interpolation": "LINEAR", - "output": 106 + "output": 100 } ] }, @@ -1819,19 +1831,19 @@ ], "samplers": [ { - "input": 107, + "input": 101, "interpolation": "LINEAR", - "output": 108 + "output": 102 }, { - "input": 107, + "input": 101, "interpolation": "LINEAR", - "output": 109 + "output": 103 }, { - "input": 107, + "input": 101, "interpolation": "LINEAR", - "output": 110 + "output": 104 } ] }, @@ -1861,19 +1873,19 @@ ], "samplers": [ { - "input": 111, + "input": 105, "interpolation": "LINEAR", - "output": 112 + "output": 106 }, { - "input": 111, + "input": 105, "interpolation": "LINEAR", - "output": 113 + "output": 107 }, { - "input": 111, + "input": 105, "interpolation": "LINEAR", - "output": 114 + "output": 108 } ] }, @@ -1903,19 +1915,19 @@ ], "samplers": [ { - "input": 115, + "input": 109, "interpolation": "LINEAR", - "output": 116 + "output": 110 }, { - "input": 115, + "input": 109, "interpolation": "LINEAR", - "output": 117 + "output": 111 }, { - "input": 115, + "input": 109, "interpolation": "LINEAR", - "output": 118 + "output": 112 } ] }, @@ -1945,19 +1957,19 @@ ], "samplers": [ { - "input": 119, + "input": 113, "interpolation": "LINEAR", - "output": 120 + "output": 114 }, { - "input": 119, + "input": 113, "interpolation": "LINEAR", - "output": 121 + "output": 115 }, { - "input": 119, + "input": 113, "interpolation": "LINEAR", - "output": 122 + "output": 116 } ] }, @@ -1987,19 +1999,19 @@ ], "samplers": [ { - "input": 123, + "input": 117, "interpolation": "LINEAR", - "output": 124 + "output": 118 }, { - "input": 123, + "input": 117, "interpolation": "LINEAR", - "output": 125 + "output": 119 }, { - "input": 123, + "input": 117, "interpolation": "LINEAR", - "output": 126 + "output": 120 } ] }, @@ -2029,19 +2041,19 @@ ], "samplers": [ { - "input": 127, + "input": 121, "interpolation": "LINEAR", - "output": 128 + "output": 122 }, { - "input": 127, + "input": 121, "interpolation": "LINEAR", - "output": 129 + "output": 123 }, { - "input": 127, + "input": 121, "interpolation": "LINEAR", - "output": 130 + "output": 124 } ] }, @@ -2071,26 +2083,26 @@ ], "samplers": [ { - "input": 131, + "input": 125, "interpolation": "LINEAR", - "output": 132 + "output": 126 }, { - "input": 131, + "input": 125, "interpolation": "LINEAR", - "output": 133 + "output": 127 }, { - "input": 131, + "input": 125, "interpolation": "LINEAR", - "output": 134 + "output": 128 } ] } ], "skins": [ { - "inverseBindMatrices": 6, + "inverseBindMatrices": 0, "skeleton": 2, "joints": [ 2, @@ -2133,106 +2145,6 @@ { "bufferView": 0, "byteOffset": 0, - "componentType": 5123, - "count": 2652, - "max": [ - 779 - ], - "min": [ - 0 - ], - "type": "SCALAR" - }, - { - "bufferView": 1, - "byteOffset": 0, - "componentType": 5123, - "count": 780, - "max": [ - 30, - 30, - 29, - 24 - ], - "min": [ - 0, - 0, - 0, - 0 - ], - "type": "VEC4" - }, - { - "bufferView": 2, - "byteOffset": 0, - "componentType": 5126, - "count": 780, - "max": [ - 0.9988760948181152, - 0.9998818039894104, - 0.9998157024383544 - ], - "min": [ - -0.9988760948181152, - -0.9980314373970032, - -0.9998273253440856 - ], - "type": "VEC3" - }, - { - "bufferView": 2, - "byteOffset": 9360, - "componentType": 5126, - "count": 780, - "max": [ - 7.313104152679443, - 25.414928436279297, - 33.43614959716797 - ], - "min": [ - -15.450709342956545, - -33.22121047973633, - -1.280419945716858 - ], - "type": "VEC3" - }, - { - "bufferView": 1, - "byteOffset": 6240, - "componentType": 5126, - "count": 780, - "max": [ - 1.009609937667847, - 0.9916410446166992 - ], - "min": [ - 0.005085944663733244, - -0.07434999942779541 - ], - "type": "VEC2" - }, - { - "bufferView": 3, - "byteOffset": 0, - "componentType": 5126, - "count": 780, - "max": [ - 1, - 0.9999979734420776, - 0.9997379779815674, - 0.9927020072937012 - ], - "min": [ - 0.0000019999999949504854, - 0, - 0, - 0 - ], - "type": "VEC4" - }, - { - "bufferView": 4, - "byteOffset": 0, "componentType": 5126, "count": 32, "max": [ @@ -2282,7 +2194,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2297,7 +2210,8 @@ 119.62960052490236, 436.8376770019531 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2314,7 +2228,8 @@ 0.5915565490722656, -0.3873957097530365 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2329,7 +2244,8 @@ 1.0000003576278689, 1 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2340,7 +2256,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2355,7 +2272,8 @@ 142.05380249023438, 0.00001525879997643642 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2372,7 +2290,8 @@ 0.9125778675079346, 0.3448300063610077 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2387,7 +2306,8 @@ 0.9999996423721313, 0.999998927116394 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2398,7 +2318,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2413,7 +2334,8 @@ -0.3193970024585724, -0.04251528158783913 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2430,7 +2352,8 @@ -0.1102677807211876, -0.99887216091156 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2445,7 +2368,8 @@ 0.9999990463256836, 0.9999992847442628 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2456,7 +2380,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2471,7 +2396,8 @@ -0.13861079514026645, -0.010498049668967724 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2488,7 +2414,8 @@ 0.12861666083335876, -0.9855769276618958 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2503,7 +2430,8 @@ 0.999998927116394, 0.9999986886978148 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2514,7 +2442,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2529,7 +2458,8 @@ 0.0012207030085846782, 0.0019226069562137127 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2546,7 +2476,8 @@ 0.6617863774299622, -0.7142592668533325 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2561,7 +2492,8 @@ 0.9999993443489076, 0.9999991655349731 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2572,7 +2504,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2587,7 +2520,8 @@ 345.13958740234375, 0.00006103519990574569 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2604,7 +2538,8 @@ -0.7070867419242859, -0.707126796245575 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2619,7 +2554,8 @@ 1, 1 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2630,7 +2566,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2645,7 +2582,8 @@ -2.25006103515625, 41.65719985961914 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2662,7 +2600,8 @@ -0.49198582768440247, -0.8074727654457092 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2677,7 +2616,8 @@ 0.9999995231628418, 1.0000001192092896 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2688,7 +2628,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2703,7 +2644,8 @@ 175.07080078125, -0.00006103519990574569 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2720,7 +2662,8 @@ -0.3887938261032105, -0.9229499697685242 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2735,7 +2678,8 @@ 0.9999983906745912, 0.9999996423721313 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2746,7 +2690,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2761,7 +2706,8 @@ 370.0173034667969, -0.00001525879997643642 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2778,7 +2724,8 @@ 0.35539764165878296, -0.8547816872596741 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2793,7 +2740,8 @@ 0.9999995827674866, 0.9999995231628418 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2804,7 +2752,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2819,7 +2768,8 @@ 370.01702880859375, 0.000003814699994109105 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2836,7 +2786,8 @@ -0.40358710289001465, -0.7833981513977051 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2851,7 +2802,8 @@ 0.9999983906745912, 0.9999982714653016 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2862,7 +2814,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2877,7 +2830,8 @@ 186.6938018798828, 0.00006103519990574569 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2894,7 +2848,8 @@ -0.23170951008796692, -0.7778217792510986 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2909,7 +2864,8 @@ 0.999998152256012, 0.9999975562095642 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2920,7 +2876,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2935,7 +2892,8 @@ 167.7620086669922, 0 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2952,7 +2910,8 @@ -0.6819262504577637, -0.6818854212760925 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -2967,7 +2926,8 @@ 1.0000001192092896, 1.0000001192092896 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -2978,7 +2938,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -2993,7 +2954,8 @@ -2.281677007675171, -43.12186050415039 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3010,7 +2972,8 @@ -0.4820735454559326, -0.8132827877998352 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3025,7 +2988,8 @@ 0.9999990463256836, 0.9999997615814208 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3036,7 +3000,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3051,7 +3016,8 @@ 175.07159423828125, 0 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3068,7 +3034,8 @@ -0.36269164085388184, -0.9203588366508484 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3083,7 +3050,8 @@ 0.9999993443489076, 0.999998927116394 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3094,7 +3062,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3109,7 +3078,8 @@ 370.0174865722656, -0.00006103519990574569 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3126,7 +3096,8 @@ 0.3553973138332367, -0.8547807335853577 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3141,7 +3112,8 @@ 0.999999701976776, 0.999999463558197 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3152,7 +3124,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3167,7 +3140,8 @@ 370.0171813964844, 0.00001525879997643642 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3184,7 +3158,8 @@ -0.41146859526634216, -0.7937191724777222 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3199,7 +3174,8 @@ 0.9999974966049194, 0.9999998211860656 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3210,7 +3186,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3225,7 +3202,8 @@ 186.69309997558597, 0.00006103519990574569 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3242,7 +3220,8 @@ -0.23170490562915805, -0.7778291702270508 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3257,7 +3236,8 @@ 0.9999991655349731, 0.9999974966049194 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3268,7 +3248,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3283,7 +3264,8 @@ 167.7602996826172, 0 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3300,7 +3282,8 @@ 0.681887686252594, -0.6819267868995667 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3315,7 +3298,8 @@ 0.9999998211860656, 0.9999998211860656 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3326,7 +3310,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3341,7 +3326,8 @@ 86.45635986328125, -181.9196929931641 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3358,7 +3344,8 @@ 0.06352268159389496, -0.7825927138328552 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3373,7 +3360,8 @@ 0.9999990463256836, 0.9999997615814208 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3384,7 +3372,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3399,7 +3388,8 @@ 547.8192138671875, 0 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3416,7 +3406,8 @@ -0.31192100048065186, 0.5138788223266602 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3431,7 +3422,8 @@ 0.9999983906745912, 0.9999988079071044 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3442,7 +3434,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3457,7 +3450,8 @@ 532.7470703125, 0.00003051759995287284 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3474,7 +3468,8 @@ -0.06888412684202194, -0.7050687074661255 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3489,7 +3484,8 @@ 0.9999992847442628, 0.999998152256012 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3500,7 +3496,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3515,7 +3512,8 @@ 286.1808776855469, -0.00001525879997643642 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3532,7 +3530,8 @@ 0.027654040604829788, -0.9122520089149476 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3547,7 +3546,8 @@ 0.9999993443489076, 0.9999994039535524 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3558,7 +3558,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3573,7 +3574,8 @@ 166.96910095214844, 0.00003051759995287284 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3590,7 +3592,8 @@ -0.0927930474281311, -0.09280822426080704 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3605,7 +3608,8 @@ 1, 0.9999997615814208 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3616,7 +3620,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3631,7 +3636,8 @@ 87.447509765625, 124.98169708251952 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3648,7 +3654,8 @@ 0.05997595936059952, -0.7728594541549683 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3663,7 +3670,8 @@ 1.0000004768371584, 0.9999985098838806 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3674,7 +3682,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3689,7 +3698,8 @@ 547.8187866210938, -0.00006103519990574569 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3706,7 +3716,8 @@ 0.2051556557416916, -0.7749928832054138 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3721,7 +3732,8 @@ 0.9999995231628418, 0.999998152256012 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3732,7 +3744,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3747,7 +3760,8 @@ 532.7478637695312, 0.00003051759995287284 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3764,7 +3778,8 @@ -0.06919090449810028, -0.7087214589118958 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3779,7 +3794,8 @@ 0.999999463558197, 0.9999991059303284 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3790,7 +3806,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3805,7 +3822,8 @@ 286.1813049316406, 0.00003051759995287284 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3822,7 +3840,8 @@ 0.027664778754115105, -0.9120306372642516 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3837,7 +3856,8 @@ 0.9999990463256836, 0.9999987483024596 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3848,7 +3868,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3863,7 +3884,8 @@ 166.9678955078125, -0.000007629389983776491 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3880,7 +3902,8 @@ 0.09279564768075944, -0.09279833734035492 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3895,7 +3918,8 @@ 0.9999998211860656, 0.9999999403953552 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3906,7 +3930,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3921,7 +3946,8 @@ 48.92041015625, -46.19350051879883 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3938,7 +3964,8 @@ -0.6573381423950195, -0.7955794930458069 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -3953,7 +3980,8 @@ 0.9999993443489076, 0.9999991655349731 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3964,7 +3992,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -3979,7 +4008,8 @@ 275.1336975097656, -0.00001525879997643642 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -3996,7 +4026,8 @@ -0.12589138746261597, -0.9920437335968018 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -4011,7 +4042,8 @@ 0.9999982118606568, 0.999998927116394 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -4022,7 +4054,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -4037,7 +4070,8 @@ 339.0890197753906, -0.000007629389983776491 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -4054,7 +4088,8 @@ -0.11349041759967804, -0.9935391545295716 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -4069,7 +4104,8 @@ 1.0000003576278689, 1 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -4080,7 +4116,8 @@ "min": [ 0 ], - "type": "SCALAR" + "type": "SCALAR", + "byteOffset": 0 }, { "componentType": 5126, @@ -4095,7 +4132,8 @@ 374.1894836425781, 0.00009918209980241954 ], - "type": "VEC3" + "type": "VEC3", + "byteOffset": 0 }, { "componentType": 5126, @@ -4112,7 +4150,8 @@ 8.442460170954291e-7, -1.539886227419629e-7 ], - "type": "VEC4" + "type": "VEC4", + "byteOffset": 0 }, { "componentType": 5126, @@ -4127,7 +4166,96 @@ 0.9999988079071044, 0.9999999403953552 ], + "type": "VEC3", + "byteOffset": 0 + }, + { + "componentType": 5123, + "count": 2652, + "max": [ + 779 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "componentType": 5123, + "count": 780, + "max": [ + 30, + 30, + 29, + 24 + ], + "min": [ + 0, + 0, + 0, + 0 + ], + "type": "VEC4" + }, + { + "componentType": 5126, + "count": 780, + "max": [ + 0.9988760948181152, + 0.9998818039894104, + 0.9998157024383544 + ], + "min": [ + -0.9988760948181152, + -0.9980314373970032, + -0.9998273253440856 + ], + "type": "VEC3" + }, + { + "componentType": 5126, + "count": 780, + "max": [ + 7.313104152679443, + 25.414928436279297, + 33.43614959716797 + ], + "min": [ + -15.450709342956545, + -33.22121047973633, + -1.280419945716858 + ], "type": "VEC3" + }, + { + "componentType": 5126, + "count": 780, + "max": [ + 1.009609937667847, + 0.9916410446166992 + ], + "min": [ + 0.005085944663733244, + -0.07434999942779541 + ], + "type": "VEC2" + }, + { + "componentType": 5126, + "count": 780, + "max": [ + 1, + 0.9999979734420776, + 0.9997379779815674, + 0.9927020072937012 + ], + "min": [ + 0.0000019999999949504854, + 0, + 0, + 0 + ], + "type": "VEC4" } ], "materials": [ @@ -4169,657 +4297,637 @@ { "buffer": 0, "byteOffset": 0, - "byteLength": 5304, - "target": 34963 - }, - { - "buffer": 0, - "byteOffset": 5304, - "byteLength": 12480, - "byteStride": 8, - "target": 34962 - }, - { - "buffer": 0, - "byteOffset": 17784, - "byteLength": 18720, - "byteStride": 12, - "target": 34962 - }, - { - "buffer": 0, - "byteOffset": 36504, - "byteLength": 12480, - "byteStride": 16, - "target": 34962 - }, - { - "buffer": 0, - "byteOffset": 48984, "byteLength": 2048 }, { "buffer": 0, - "byteOffset": 51032, + "byteOffset": 2048, "byteLength": 189 }, { "buffer": 0, - "byteOffset": 51221, + "byteOffset": 2237, "byteLength": 1047 }, { "buffer": 0, - "byteOffset": 52268, + "byteOffset": 3284, "byteLength": 1440 }, { "buffer": 0, - "byteOffset": 53708, + "byteOffset": 4724, "byteLength": 1526 }, { "buffer": 0, - "byteOffset": 55234, + "byteOffset": 6250, "byteLength": 1325 }, { "buffer": 0, - "byteOffset": 56559, + "byteOffset": 7575, "byteLength": 189 }, { "buffer": 0, - "byteOffset": 56748, + "byteOffset": 7764, "byteLength": 1461 }, { "buffer": 0, - "byteOffset": 58209, + "byteOffset": 9225, "byteLength": 1030 }, { "buffer": 0, - "byteOffset": 59239, + "byteOffset": 10255, "byteLength": 985 }, { "buffer": 0, - "byteOffset": 60224, + "byteOffset": 11240, "byteLength": 1053 }, { "buffer": 0, - "byteOffset": 61277, + "byteOffset": 12293, "byteLength": 1016 }, { "buffer": 0, - "byteOffset": 62293, + "byteOffset": 13309, "byteLength": 189 }, { "buffer": 0, - "byteOffset": 62482, + "byteOffset": 13498, "byteLength": 1440 }, { "buffer": 0, - "byteOffset": 63922, + "byteOffset": 14938, "byteLength": 1077 }, { "buffer": 0, - "byteOffset": 64999, + "byteOffset": 16015, "byteLength": 1053 }, { "buffer": 0, - "byteOffset": 66052, + "byteOffset": 17068, "byteLength": 1101 }, { "buffer": 0, - "byteOffset": 67153, + "byteOffset": 18169, "byteLength": 1031 }, { "buffer": 0, - "byteOffset": 68184, + "byteOffset": 19200, "byteLength": 189 }, { "buffer": 0, - "byteOffset": 68373, + "byteOffset": 19389, "byteLength": 1445 }, { "buffer": 0, - "byteOffset": 69818, + "byteOffset": 20834, "byteLength": 1061 }, { "buffer": 0, - "byteOffset": 70879, + "byteOffset": 21895, "byteLength": 1069 }, { "buffer": 0, - "byteOffset": 71948, + "byteOffset": 22964, "byteLength": 944 }, { "buffer": 0, - "byteOffset": 72892, + "byteOffset": 23908, "byteLength": 189 }, { "buffer": 0, - "byteOffset": 73081, + "byteOffset": 24097, "byteLength": 1482 }, { "buffer": 0, - "byteOffset": 74563, + "byteOffset": 25579, "byteLength": 1034 }, { "buffer": 0, - "byteOffset": 75597, + "byteOffset": 26613, "byteLength": 1103 }, { "buffer": 0, - "byteOffset": 76700, + "byteOffset": 27716, "byteLength": 1004 }, { "buffer": 0, - "byteOffset": 77704, + "byteOffset": 28720, "byteLength": 189 }, { "buffer": 0, - "byteOffset": 77893, + "byteOffset": 28909, "byteLength": 1393 }, { "buffer": 0, - "byteOffset": 79286, + "byteOffset": 30302, "byteLength": 1019 }, { "buffer": 0, - "byteOffset": 80305, + "byteOffset": 31321, "byteLength": 189 }, { "buffer": 0, - "byteOffset": 80494, + "byteOffset": 31510, "byteLength": 189 + }, + { + "buffer": 0, + "byteOffset": 31699, + "byteLength": 6403 } ], "buffers": [ { - "byteLength": 80683, + "byteLength": 38102, "uri": "0.bin" } ], "extensionsRequired": [ - "Draco_animation_compression" + "Draco_animation_compression", + "KHR_draco_mesh_compression" ], "extensionsUsed": [ - "Draco_animation_compression" + "Draco_animation_compression", + "KHR_draco_mesh_compression" ], "extensions": { "Draco_animation_compression": [ { - "input": 7, + "input": 1, "outputs": [ - 8, - 9, - 10 + 2, + 3, + 4 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 5 + "bufferView": 1 }, { - "input": 11, + "input": 5, "outputs": [ - 12, - 13, - 14 + 6, + 7, + 8 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 6 + "bufferView": 2 }, { - "input": 15, + "input": 9, "outputs": [ - 16, - 17, - 18 + 10, + 11, + 12 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 7 + "bufferView": 3 }, { - "input": 19, + "input": 13, "outputs": [ - 20, - 21, - 22 + 14, + 15, + 16 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 8 + "bufferView": 4 }, { - "input": 23, + "input": 17, "outputs": [ - 24, - 25, - 26 + 18, + 19, + 20 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 9 + "bufferView": 5 }, { - "input": 27, + "input": 21, "outputs": [ - 28, - 29, - 30 + 22, + 23, + 24 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 10 + "bufferView": 6 }, { - "input": 31, + "input": 25, "outputs": [ - 32, - 33, - 34 + 26, + 27, + 28 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 11 + "bufferView": 7 }, { - "input": 35, + "input": 29, "outputs": [ - 36, - 37, - 38 + 30, + 31, + 32 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 12 + "bufferView": 8 }, { - "input": 39, + "input": 33, "outputs": [ - 40, - 41, - 42 + 34, + 35, + 36 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 13 + "bufferView": 9 }, { - "input": 43, + "input": 37, "outputs": [ - 44, - 45, - 46 + 38, + 39, + 40 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 14 + "bufferView": 10 }, { - "input": 47, + "input": 41, "outputs": [ - 48, - 49, - 50 + 42, + 43, + 44 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 15 + "bufferView": 11 }, { - "input": 51, + "input": 45, "outputs": [ - 52, - 53, - 54 + 46, + 47, + 48 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 16 + "bufferView": 12 }, { - "input": 55, + "input": 49, "outputs": [ - 56, - 57, - 58 + 50, + 51, + 52 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 17 + "bufferView": 13 }, { - "input": 59, + "input": 53, "outputs": [ - 60, - 61, - 62 + 54, + 55, + 56 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 18 + "bufferView": 14 }, { - "input": 63, + "input": 57, "outputs": [ - 64, - 65, - 66 + 58, + 59, + 60 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 19 + "bufferView": 15 }, { - "input": 67, + "input": 61, "outputs": [ - 68, - 69, - 70 + 62, + 63, + 64 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 20 + "bufferView": 16 }, { - "input": 71, + "input": 65, "outputs": [ - 72, - 73, - 74 + 66, + 67, + 68 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 21 + "bufferView": 17 }, { - "input": 75, + "input": 69, "outputs": [ - 76, - 77, - 78 + 70, + 71, + 72 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 22 + "bufferView": 18 }, { - "input": 79, + "input": 73, "outputs": [ - 80, - 81, - 82 + 74, + 75, + 76 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 23 + "bufferView": 19 }, { - "input": 83, + "input": 77, "outputs": [ - 84, - 85, - 86 + 78, + 79, + 80 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 24 + "bufferView": 20 }, { - "input": 87, + "input": 81, "outputs": [ - 88, - 89, - 90 + 82, + 83, + 84 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 25 + "bufferView": 21 }, { - "input": 91, + "input": 85, "outputs": [ - 92, - 93, - 94 + 86, + 87, + 88 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 26 + "bufferView": 22 }, { - "input": 95, + "input": 89, "outputs": [ - 96, - 97, - 98 + 90, + 91, + 92 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 27 + "bufferView": 23 }, { - "input": 99, + "input": 93, "outputs": [ - 100, - 101, - 102 + 94, + 95, + 96 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 28 + "bufferView": 24 }, { - "input": 103, + "input": 97, "outputs": [ - 104, - 105, - 106 + 98, + 99, + 100 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 29 + "bufferView": 25 }, { - "input": 107, + "input": 101, "outputs": [ - 108, - 109, - 110 + 102, + 103, + 104 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 30 + "bufferView": 26 }, { - "input": 111, + "input": 105, "outputs": [ - 112, - 113, - 114 + 106, + 107, + 108 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 31 + "bufferView": 27 }, { - "input": 115, + "input": 109, "outputs": [ - 116, - 117, - 118 + 110, + 111, + 112 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 32 + "bufferView": 28 }, { - "input": 119, + "input": 113, "outputs": [ - 120, - 121, - 122 + 114, + 115, + 116 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 33 + "bufferView": 29 }, { - "input": 123, + "input": 117, "outputs": [ - 124, - 125, - 126 + 118, + 119, + 120 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 34 + "bufferView": 30 }, { - "input": 127, + "input": 121, "outputs": [ - 128, - 129, - 130 + 122, + 123, + 124 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 35 + "bufferView": 31 }, { - "input": 131, + "input": 125, "outputs": [ - 132, - 133, - 134 + 126, + 127, + 128 ], "attributesId": [ 1, 2, 3 ], - "bufferView": 36 + "bufferView": 32 } ] }