Monica视频监控处理程序
xc
2021-04-23 daa2210ce3aedfd425865aaff246bd4946179647
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=function(status,toThrow){throw toThrow};Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;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;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){scriptDirectory=__dirname+"/";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(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);Module["quit"]=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}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){quit(status)}}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}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)};Module["setWindowTitle"]=function(title){document.title=title}}else{}var out=Module["print"]||(typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null);var err=Module["printErr"]||(typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end<=_emscripten_get_heap_size()){HEAP32[DYNAMICTOP_PTR>>2]=end}else{return 0}return ret}function getNativeTypeSize(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 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var jsCallStartIndex=1;var functionPointers=new Array(0);var funcWrappers={};function makeBigInt(low,high,unsigned){return unsigned?+(low>>>0)+ +(high>>>0)*4294967296:+(low>>>0)+ +(high|0)*4294967296}function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var tempRet0=0;var setTempRet0=function(value){tempRet0=value};var getTempRet0=function(){return tempRet0};var GLOBAL_BASE=8;var ABORT=false;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}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);ret=convertReturnValue(ret);if(stack!==0)stackRestore(stack);return ret}function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_NONE=3;var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(u8Array[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx<endPtr){var u0=u8Array[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|u8Array[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&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(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}}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<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}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:y+" ["+x+"]"})}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()}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STACK_BASE=124256,DYNAMIC_BASE=5367136,DYNAMICTOP_PTR=124224;var TOTAL_STACK=5242880;var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||67108864;if(INITIAL_TOTAL_MEMORY<TOTAL_STACK)err("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+INITIAL_TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");if(Module["buffer"]){buffer=Module["buffer"]}else{{buffer=new ArrayBuffer(INITIAL_TOTAL_MEMORY)}}updateGlobalBufferViews();HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __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(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function unSign(value,bits,ignore){if(value>=0){return value}return bits<=32?2*Math.abs(1<<bits-1)+value:Math.pow(2,bits)+value}function reSign(value,bits,ignore){if(value<=0){return value}var half=bits<=32?Math.abs(1<<bits-1):Math.pow(2,bits-1);if(value>=half&&(bits<=32||value>half)){value=-2*half+value}return value}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;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 dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}__ATINIT__.push({func:function(){globalCtors()}});memoryInitializer="data:application/octet-stream;base64,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AAAAAAAAAAAEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAIAAAACAAAAAwAAAAMAAAACgAAAA0AAAAQAAAACwAAAA4AAAASAAAADQAAABAAAAAUAAAADgAAABIAAAAXAAAAEAAAABQAAAAZAAAAEgAAABcAAAAdAAAAAQAAAAIAAAAEAAAACAAAABAAAAAgAAAAQAAAAIAAAAABAAAAAQAAAAIAAAACAAAAAwAAAAMAAAADAAAAAwAAAAAAAAABAAAABAAAAAUAAAACAAAAAwAAAAYAAAAHAAAACAAAAAkAAAAMAAAADQAAAAoAAAALAAAADgAAAA8AAAAAAAAABQAAAP8AAAAAAAAA/wAAAAAAAAD/AAAAAAAAAAAAAAAFAAAAAAAAAAcAAAD/AAAAAAAAAP8AAAAAAAAAAAAAAAUAAAAEAAAAAAAAAP8AAAAAAAAA/wAAAAAAAAAAAAAABQAAAAQAAAAAAAAAAAAAAAcAAAAEAAAAAgAAAAQAAAABAAAA/wAAAAAAAAD/AAAAAAAAAP8AAAAAAAAABAAAAAEAAAAEAAAAAwAAAP8AAAAAAAAA/wAAAAAAAAAEAAAAAQAAAAQAAAAEAAAA/wAAAAAAAAD/AAAAAAAAAAQAAAABAAAABAAAAAQAAAAEAAAAAwAAAAQAAAAGAAAAAAAAAA0AAAD/AAAAAAAAAP8AAAAAAAAA/wAAAAAAAAAAAAAADQAAAAAAAAAPAAAA/wAAAAAAAAD/AAAAAAAAAAAAAAANAAAABAAAAAgAAAD/AAAAAAAAAP8AAAAAAAAAAAAAAA0AAAAEAAAACAAAAAAAAAAPAAAABAAAAAoAAAAEAAAACQAAAP8AAAAAAAAA/wAAAAAAAAD/AAAAAAAAAAQAAAAJAAAABAAAAAsAAAD/AAAAAAAAAP8AAAAAAAAABAAAAAkAAAAEAAAADAAAAP8AAAAAAAAA/wAAAAAAAAAEAAAACQAAAAQAAAAMAAAABAAAAAsAAAAEAAAADgAAAAEAAAAKAAAA/wAAAAAAAAD/AAAAAAAAAP8AAAAAAAAAAQAAAAoAAAAEAAAAAAAAAP8AAAAAAAAA/wAAAAAAAAABAAAACgAAAAEAAAALAAAA/wAAAAAAAAD/AAAAAAAAAAEAAAAKAAAAAQAAAAsAAAAEAAAAAAAAAAQAAAABAAAAAQAAAA4AAAD/AAAAAAAAAP8AAAAAAAAA/wAAAAAAAAABAAAADgAAAAQAAAAEAAAA/wAAAAAAAAD/AAAAAAAAAAEAAAAOAAAAAQAAAA8AAAD/AAAAAAAAAP8AAAAAAAAAAQAAAA4AAAABAAAADwAAAAQAAAAEAAAABAAAAAUAAAAEAAAAAgAAAP8AAAAAAAAA/wAAAAAAAAD/AAAAAAAAAAQAAAACAAAABAAAAAgAAAD/AAAAAAAAAP8AAAAAAAAABAAAAAIAAAAEAAAAAwAAAP8AAAAAAAAA/wAAAAAAAAAEAAAAAgAAAAQAAAADAAAABAAAAAgAAAAEAAAACQAAAAQAAAAGAAAA/wAAAAAAAAD/AAAAAAAAAP8AAAAAAAAABAAAAAYAAAAEAAAADAAAAP8AAAAAAAAA/wAAAAAAAAAEAAAABgAAAAQAAAAHAAAA/wAAAAAAAAD/AAAAAAAAAAQAAAAGAAAABAAAAAcAAAAEAAAADAAAAAQAAAANAAAAAQAAAA4AAAD/AAAAAAAAAP8AAAAAAAAA/wAAAAAAAAABAAAADgAAAP8AAAAEAAAA/wAAAAAAAAD/AAAAAAAAAAEAAAALAAAAAQAAAA4AAAD/AAAAAAAAAP8AAAAAAAAAAQAAAAsAAAABAAAADgAAAAQAAAABAAAA/wAAAAQAAAACAAAACgAAAP8AAAAAAAAA/wAAAAAAAAD/AAAAAAAAAAIAAAAKAAAA/wAAAAAAAAD/AAAAAAAAAP8AAAAAAAAAAQAAAA8AAAACAAAACgAAAP8AAAAAAAAA/wAAAAAAAAABAAAADwAAAAIAAAAKAAAABAAAAAUAAAD/AAAAAAAAAAQAAAAGAAAA/wAAAAAAAAD/AAAAAAAAAP8AAAAAAAAABAAAAAYAAAD/AAAADAAAAP8AAAAAAAAA/wAAAAAAAAAEAAAAAwAAAAQAAAAGAAAA/wAAAAAAAAD/AAAAAAAAAAQAAAADAAAABAAAAAYAAAAEAAAACQAAAP8AAAAMAAAA/wAAAAIAAAD/AAAAAAAAAP8AAAAAAAAA/wAAAAAAAAD/AAAAAgAAAP8AAAAIAAAA/wAAAAAAAAD/AAAAAAAAAAQAAAAHAAAA/wAAAAIAAAD/AAAAAAAAAP8AAAAAAAAABAAAAAcAAAD/AAAAAgAAAAQAAAANAAAA/wAAAAgAAAADAAAADwAAAP8AAAAAAAAA/wAAAAAAAAD/AAAAAAAAAAMAAAAPAAAAAAAAAAUAAAD/AAAAAAAAAP8AAAAAAAAAAwAAAA8AAAABAAAACgAAAP8AAAAAAAAA/wAAAAAAAAADAAAADwAAAAEAAAAKAAAAAAAAAAUAAAAEAAAAAAAAAAEAAAALAAAA/wAAAAAAAAD/AAAAAAAAAP8AAAAAAAAAAQAAAAsAAAAEAAAAAQAAAP8AAAAAAAAA/wAAAAAAAAABAAAACwAAAAEAAAAOAAAA/wAAAAAAAAD/AAAAAAAAAAEAAAALAAAAAQAAAA4AAAAEAAAAAQAAAAQAAAAEAAAAAAAAAAcAAAD/AAAAAAAAAP8AAAAAAAAA/wAAAAAAAAAAAAAABwAAAAAAAAANAAAA/wAAAAAAAAD/AAAAAAAAAAAAAAAHAAAABAAAAAIAAAD/AAAAAAAAAP8AAAAAAAAAAAAAAAcAAAAEAAAAAgAAAAAAAAANAAAABAAAAAgAAAAEAAAAAwAAAP8AAAAAAAAA/wAAAAAAAAD/AAAAAAAAAAQAAAADAAAABAAAAAkAAAD/AAAAAAAAAP8AAAAAAAAABAAAAAMAAAAEAAAABgAAAP8AAAAAAAAA/wAAAAAAAAAEAAAAAwAAAAQAAAAGAAAABAAAAAkAAAAEAAAADAAAAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAAAA8AAAADAAAADwAAAAEAAAAKAAAAAAAAAAUAAAAEAAAAAAAAAAEAAAALAAAAAQAAAA4AAAAEAAAAAQAAAAQAAAAEAAAAAAAAAAcAAAAEAAAAAgAAAAAAAAANAAAABAAAAAgAAAAEAAAAAwAAAAQAAAAGAAAABAAAAAkAAAAEAAAADAAAAAMAAAATAAAAAQAAABIAAAAAAAAAEQAAAAQAAAAQAAAAAwAAABcAAAABAAAAFgAAAAAAAAAVAAAABAAAABQAAAABAAAACwAAAAEAAAAOAAAABAAAAAEAAAD/AAAABAAAAAEAAAAPAAAAAgAAAAoAAAAEAAAABQAAAP8AAAAAAAAABAAAAAMAAAAEAAAABgAAAAQAAAAJAAAA/wAAAAwAAAAEAAAABwAAAP8AAAACAAAABAAAAA0AAAD/AAAACAAAAAEAAAATAAAAAgAAABIAAAAEAAAA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AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOt21jvW1qA8cgQGPZiXOz2DInE9bVGTPSMLrj02vcg9e2bjPcYF/j33TAw+45AZPhLOJj7xAzQ+6jFBPmlXTj7cc1s+roZoPk2PdT6TRoE+1b+HPiEzjj4xoJQ+vQabPntmoT4lv6c+cxCuPh5atD7hm7o+c9XAPpEGxz7zLs0+Vk7TPnRk2T4Icd8+0HPlPods6z7qWvE+tz73PqsX/T7DcgE/A1QEP3QvBz/4BAo/btQMP7adDz+yYBI/Qh0VP0jTFz+kgho/OisdP+vMHz+ZZyI/KPskP3qHJz9zDCo/9oksP+j/Lj8sbjE/qdQzP0IzNj/ciTg/X9g6P7AePT+1XD8/VZJBP3e/Qz8D5EU/4f9HP/oSSj81HUw/fB5OP7gWUD/UBVI/uutTP1PIVT+Mm1c/UGVZP4slWz8p3Fw/F4leP0IsYD+YxWE/BlVjP3zaZD/nVWY/OcdnP18uaT9Li2o/7t1rPzcmbT8aZG4/iJdvP3PAcD/P3nE/j/JyP6f7cz8L+nQ/sO11P4vWdj+TtHc/vYd4PwBQeT9UDXo/sL96Pwxnez9hA3w/qJR8P9safT/0lX0/7QV+P8Fqfj9txH4/7BJ/PzpWfz9Wjn8/O7t/P+ncfz9e838/mf5/PwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAP7b0Oj20nxw4bvM6PUQzsDkZ8Do9UWgmOrjqOj0ttXQ6SeM6Pa1/oTrO2To9/6LIOkbOOj0dxO86ssA6PU1xCzsSsTo9BP8eO2afOj38ijI7rYs6PQAVRjvpdTo915xZOxpeOj1LIm07P0Q6PZNSgDtZKDo9mBKKO2kKOj0a0ZM7b+o5PfyNnTtqyDk9JEmnO1ykOT13ArE7RX45Pdi5ujslVjk9Lm/EO/0rOT1cIs47zf84PUfT1zuW0Tg91IHhO1ehOD3pLes7E284PWnX9DvIOjg9On7+O3kEOD0gEQQ8Jcw3PbDhCDzNkTc9wLANPHFVNz1DfhI8Exc3PSpKFzyz1jY9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BxgHGAcYBxgAAAAAbXhteG6AToAugA6ALngOeE54LnBNcE1wDXANcG1wbXBNaE1oLWgtaA1oDWhtaG1oTWBNYC1gLWANYA1gDFgMWAxYDFhMWExYTFhMWCxYLFgsWCxYDFAMUAxQDFBsYGxgbGBsYExQTFBMUExQLFAsUCxQLFAMSAxIDEgMSGtYa1hrWGtYa1hrWGtYa1hLSEtIS0hLSEtIS0hLSEtIK0grSCtIK0grSCtIK0grSAtAC0ALQAtAC0ALQAtAC0BrUGtQa1BrUGtQa1BrUGtQS0BLQEtAS0BLQEtAS0BLQCtAK0ArQCtAK0ArQCtAK0ALOAs4CzgLOAs4CzgLOAs4AAAAAAAAAAAAAAAAAAAAAAYYRjgmOAYQZkhGMCYwBgglKCUoRShFKCUgJSBFIEUgJRglGGVAZUBFGEUYJRAlEGQ4ZDhkOGQ4ZDBkMGQwZDBkKGQoZChkKGQgZCBkIGQgZBhkGGQYZBhEEEQQRBBEECQIJAgkCCQIBAAEAAQABAAAAAqAaoBKgCqACnhqeEp4KngKcGpwSnAqcApoKWgpaAlgCWBJaEloKWApYAlYCVhpaGloSWBJYClYKVgJUAlQaGBoYGhgaGBIWEhYSFhIWChQKFAoUChQCEgISAhICEhoWGhYaFhoWEhQSFBIUEhQKEgoSChIKEgIQAhACEAIQAc4BzgHOAc4BzgHOAc4BzgHMAcwBzAHMAcwBzAHMAcwR0hHSEdIR0hHSEdIR0hHSAcoBygHKAcoBygHKAcoByhnUGdQZ1BnUGdQZ1BnUGdQR0BHQEdAR0BHQEdAR0BHQCdAJ0AnQCdAJ0AnQCdAJ0AHIAcgByAHIAcgByAHIAcgBggmCAAABgAGECYQRhAAAAYYJhhGGGYYBiAmIEYgZiAGKCYoRihmKAYwJjBGMGYwBjgmOEY4ZjgGQCZARkBmQAZIJkhGSGZIBlAmUEZQZlAGWCZYRlhmWAZgJmBGYGZgBmgmaEZoZmgGcCZwRnBmcAZ4JnhGeGZ4BoAmgEaAZoAAAEMQAgACACEIIQghCCEIZyBnIEggKCBHGEcYJxgnGAYgBiAGIAYgBhgGGAYYBhgGEAYQBhAGEGYYZhhmGGYYJhAmECYQJhAGCAYIBggGCAMABAACAAUAEAAfAC8APwBfAH8AnwC/AN8A/wA/AX8B/wH/Av8D/wcAAAQACAAMABAAFAAYACAAKAAwAEAAXACAAAAABAAIAAwAEAAUABgAIAAoADAAQABcAIAAAAAEAAgADAAQABQAHAAkACwAOABEAFAAYABwAIAAAAAEAAgADAAQABQAGAAcACQALAA0AEAATABcAGwAgAAAAAQACAAMABAAFAAYABwAIAAoADAAPABIAFgAbACAAAAABAAIAAwAEAAUABgAHAAkACwANAA8AEgAWABsAIAAAAAEAAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABEAEwAVABcAGQAcAB8AIgAlACkALgA0ADsAAwBLAFMAWwBjAGsAcwBAAIAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOABAAEgAUABYAGAAbAB4AIQAkACgALAAwADUAOwABAEgAUABYAGAAaABwAHgAQACAAAEAAgADAAQABQAGAAcACAAJAAoACwANAA8AEQAUABcAGgAeACMAKQAwADgAAABIAFAAWABgAGgAcAB4AEAAgAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4AEAASABQAFgAYABsAHgAhACQAJwArAC8ANQA8AAQATABUAFwAZABsAHgAQAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABIAFAAWABgAGgAcAB8AIgAlACkALQAyADgAAABIAFAAWABgAGgAcAB4AEAAAQACAAMABAAFAAYABwAIAAkACgALAA0ADwARABQAFwAaAB4AIwApADAAOAAAAEgAUABYAGAAaABwAHgAQAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4AEAASABQAFgAYABsAHgAhACQAJwArAC8ANQA8AAUAUABgAHAAQACQAKAAsACAANAA4ADwAMABAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4AEAASABQAFgAZABwAHwAjACcAKwAwADYAPAADAEwAVgBgAGoAdAB+AEgAkgCcAKYAsAC6AIQAzgDYAOIA7AD2AMABAAABAAIAAwAEAAUABgAHAAgACQAKAAwADgAQABIAFAAWABgAGwAeACEAJAAoACwAMQA2ADwAAgBJAFAAWABgAGgAcAB4AEAAiACQAJgAoACoALAAuACAAMgA0ADYAOAA6ADAAQAAAQACAAMABAAFAAYABwAIAAkACgAMAA4AEAASABQAFgAYABsAHgAhACQAKAAsADEANgA8AAIASQBQAFgAYABoAHAAeABAAIgAkACYAKAAqACwALgAgADIANAA2ADgAOgA8AD4AMABAAABAAIAAwAEAAUABgAHAAgACQAKAAsADQAPABEAEwAVABcAGQAbAB0AHwAiACUAKAArAC8AMwA3ADwAAQBHAE0AVABbAGMAbAB1AH8ASgCWAKMAsACAANAA4ADwAMABAAACAAQABgAIAAoADAAOABAAEgAUABYAGQAcAB8AIgAlACgAKwAuADEANQA5AD0AAQBGAEsAUABWAFwAYwBqAHIAewBFAI8AmgCmALMAgQDQAOAA8ADAAQAAAwAGAAkADAAPABIAFQAYABsAHgAhACQAJwArAC8AMwA3ADsAPwADAEgATQBSAFcAXQBjAGkAcAB3AH8ASACRAJsApgCyAL8AjQDcAOwAwAEAAABAAIAAwAEAAUABgAGAAcAAhABEAAQCgAKAAQABQAGAAcACAAJAAoACwAMAAkADgALAAwADQAOAA8AEAANABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhAAEQABAAAAEAAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABAAEQASABMASDVMQ0Jhc2UAJHBsYXkAb25EYXRhACRjbG9zZQBkZWNvZGVWaWRlb0J1ZmZlcgBpc1BsYXlpbmcAZmx2TW9kZQBhdWRpb0J1ZmZlcgB2aWRlb0J1ZmZlcgBicHMAYnVmZmVySW5mbwBINUxpdmVDbGllbnQAY2xvc2UAd2ViR0xDYW52YXMAaXNXZWJHTAB3ZWJnbDolcwB0cnVlAGZhbHNlAC5mbHYAV2ViU29ja2V0AGJpbmFyeVR5cGUAYXJyYXlidWZmZXIAb25tZXNzYWdlAHdzAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAYmluZABOMTBlbXNjcmlwdGVuM3ZhbEUAZGF0YQB1bmtub3cgdHlwZTogJWQAc2VuZABbIl9fYmFuZHdpZHRoIl0AZXJyb3IgdHlwZSA6JWQAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBwbGF5QXVkaW8AaW5pdEF1ZGlvAHNldCBhdWRpbyBidWZmZXJMZW5ndGg6JWQAISElcwoAYWFjIHNhbXBsZXJhdGU6JWQgY2hhbm5lbHM6JWQAZ290IGgyNjQgdmlkZW8AZ290IGgyNjUgdmlkZW8AT25seSBzdXBwb3J0IHZpZGVvIGguMjY0L2F2YyBvciBoLjI2NS9oZXZjIGNvZGVjLiBhY3R1YWw9JWQAdmlkZW8gaW5mbyBzZXQhAHJlc2V0VGltZVNwYW4AY29kZWMgPSAlZABwbGF5VmlkZW9CdWZmZXIAdGltZXNwYW4AY2xlYXJUaW1lb3V0AGZyb250AGJhY2sAc2l6ZQA4SDVMQ0Jhc2UAUDhINUxDQmFzZQBQSzhINUxDQmFzZQBpaQB2AHZpAHZpaWkAdmlpAGlpaQBub3RpZnlPbkRlc3RydWN0aW9uAGltcGxlbWVudABleHRlbmQAMTJINUxpdmVDbGllbnQATjEwZW1zY3JpcHRlbjd3cmFwcGVySThINUxDQmFzZUVFAE4xMGVtc2NyaXB0ZW44aW50ZXJuYWwxMVdyYXBwZXJCYXNlRQBQMTJINUxpdmVDbGllbnQAUEsxMkg1TGl2ZUNsaWVudABpaWlpAGFhYyBpbml0ISAlZABhdWRpbyBpbml0ISAlZABERUNPREVSIElOSVRJQUxJWkFUSU9OIEZBSUxFRAoASDI2NCBpbml0ADhCcm9hZHdheQAxMlZpZGVvRGVjb2RlcgB2aWRlbyBkZWNvZGVyIHJlbGVhc2UhCgB2aWRlbyBkZWNvZGUgJWQAY2FudmFzOiVkLCVkAHNldFZpZGVvU2l6ZQBkcmF3AGF1ZGlvIGRlY29kZXIgcmVsZWFzZQoAYXVkaW8gZGVjb2RlciByZWxlYXNlIQoARmx2RGVjb2RlciByZWxlYXNlIQoAX19kZXN0cnVjdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gIGCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWmp6ipqqusra6vsLGys7S1tre4ubq7vL2+v8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW19jZ2tvc3d7f4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb3+Pn6+/z9/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wAAAAAAAAEBAQEBAQICAgICAgMDAwMDAwQEBAQEBAUFBQUFBQYGBgYGBgcHBwcHBwgICAgAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDBAUAAQIDAABlVURENDQjIyMjExMTEwEBAQEBAQEBAQEBAQEBAQEA+enZyMi4uKenp6eXl5eXhoaGhoaGhoZ2dnZ2dnZ2dubWxralpZWVhISEhHR0dHRkZGRkVFRUVENDQ0NDQ0NDMzMzMzMzMzMjIyMjIyMjIxMTExMTExMTAwMDAwMDAwPWtsXFpaWVlYSEhIRUVFRURERERAQEBARzc3Nzc3Nzc2NjY2NjY2NjMzMzMzMzMzMjIyMjIyMjIxMTExMTExMTxbWlBZSUdHQ0NCQkg4ODg2NjY2NTU1NTQ0NDQxMTExO1laSkhIQkJBQUBARzc3NzY2NjY1NTU1NDQ0NDMzMzM6YGFRWEhISEk5OTk5OTk5Nzc3Nzc3Nzc2NjY2NjY2NjU1NTU1NTU1NDQ0NDQ0NDQzMzMzMzMzMzIyMjIyMjIyOWBhUVdHR0dIODg4ODg4ODY2NjY2NjY2NDQ0NDQ0NDQzMzMzMzMzMzIyMjIyMjIyNSUlJSUlJSUlJSUlJSUlJShgYlJRQUFBRzc3Nzc3Nzc2NjY2NjY2NjMzMzMzMzMzNSUlJSUlJSUlJSUlJSUlJSQkJCQkJCQkJCQkJCQkJCQhYGdXUkJCQkU1NTU1NTU1NiYmJiYmJiYmJiYmJiYmJiQkJCQkJCQkJCQkJCQkJCQjIyMjIyMjIyMjIyMjIyMjIVBWRkIyMjI1JSUlJSUlJSQkJCQkJCQkIyMjIyMjIyMgQUIyMzM1NTQUFBQUFBQUEEFENDIiIiIjExMTExMTExAxMyMiEhISECEiEhEQEiEgEBMiISAkMzIiISEgICU0MzIxISAgITI0MzY1MCAgAQAQIECCADBQoMDy8HCw0OBgkfIyUqLCEiJCgnKy0uERIUGBMVGhwXGx0eFhkmKS8fDwAXGx0eBwsNDicrLS4QAwUKDBMVGhwjJSosAQIECBESFBgGCRYZICEiJCgmKQAAAAAAAAAAAAAAAAAAAAAEBAUGBwgJCgwNDxEUFhkcICQoLTI4P0dQWmVxf5Citsvi//8AAAAAAAAAAAAAAAAAAAAAAgICAwMDAwQEBAYGBwcICAkJCgoLCwwMDQ0ODg8PEBARERISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAABAAABAAEBAAEBAQEBAQEBAQEBAQEBAQECAQECAQECAQECAQIDAQIDAgIDAgIEAgMEAgMEAwMFAwQGAwQGBAUHBAUIBAYJBQcKBggLBggNBwoOCAsQCQwSCg0UCw8XDREZZyBhICAgbyByIGUgbiAgIHQgaCBnIGkgciB5IHAgbyBjTm8gZXJyb3IAR2FpbiBjb250cm9sIG5vdCB5ZXQgaW1wbGVtZW50ZWQAUHVsc2UgY29kaW5nIG5vdCBhbGxvd2VkIGluIHNob3J0IGJsb2NrcwBJbnZhbGlkIGh1ZmZtYW4gY29kZWJvb2sAU2NhbGVmYWN0b3Igb3V0IG9mIHJhbmdlAFVuYWJsZSB0byBmaW5kIEFEVFMgc3luY3dvcmQAQ2hhbm5lbCBjb3VwbGluZyBub3QgeWV0IGltcGxlbWVudGVkAENoYW5uZWwgY29uZmlndXJhdGlvbiBub3QgYWxsb3dlZCBpbiBlcnJvciByZXNpbGllbnQgZnJhbWUAQml0IGVycm9yIGluIGVycm9yIHJlc2lsaWVudCBzY2FsZWZhY3RvciBkZWNvZGluZwBFcnJvciBkZWNvZGluZyBodWZmbWFuIHNjYWxlZmFjdG9yIChiaXRzdHJlYW0gZXJyb3IpAEVycm9yIGRlY29kaW5nIGh1ZmZtYW4gY29kZXdvcmQgKGJpdHN0cmVhbSBlcnJvcikATm9uIGV4aXN0ZW50IGh1ZmZtYW4gY29kZWJvb2sgbnVtYmVyIGZvdW5kAEludmFsaWQgbnVtYmVyIG9mIGNoYW5uZWxzAE1heGltdW0gbnVtYmVyIG9mIGJpdHN0cmVhbSBlbGVtZW50cyBleGNlZWRlZABJbnB1dCBkYXRhIGJ1ZmZlciB0b28gc21hbGwAQXJyYXkgaW5kZXggb3V0IG9mIHJhbmdlAE1heGltdW0gbnVtYmVyIG9mIHNjYWxlZmFjdG9yIGJhbmRzIGV4Y2VlZGVkAFF1YW50aXNlZCB2YWx1ZSBvdXQgb2YgcmFuZ2UATFRQIGxhZyBvdXQgb2YgcmFuZ2UASW52YWxpZCBTQlIgcGFyYW1ldGVyIGRlY29kZWQAU0JSIGNhbGxlZCB3aXRob3V0IGJlaW5nIGluaXRpYWxpc2VkAFVuZXhwZWN0ZWQgY2hhbm5lbCBjb25maWd1cmF0aW9uIGNoYW5nZQBFcnJvciBpbiBwcm9ncmFtX2NvbmZpZ19lbGVtZW50AEZpcnN0IFNCUiBmcmFtZSBpcyBub3QgdGhlIHNhbWUgYXMgZmlyc3QgQUFDIGZyYW1lAFVuZXhwZWN0ZWQgZmlsbCBlbGVtZW50IHdpdGggU0JSIGRhdGEATm90IGFsbCBlbGVtZW50cyB3ZXJlIHByb3ZpZGVkIHdpdGggU0JSIGRhdGEATFRQIGRlY29kaW5nIG5vdCBhdmFpbGFibGUAT3V0cHV0IGRhdGEgYnVmZmVyIHRvbyBzbWFsbABDUkMgZXJyb3IgaW4gRFJNIGRhdGEAUE5TIG5vdCBhbGxvd2VkIGluIERSTSBkYXRhIHN0cmVhbQBObyBzdGFuZGFyZCBleHRlbnNpb24gcGF5bG9hZCBhbGxvd2VkIGluIERSTQBQQ0Ugc2hhbGwgYmUgdGhlIGZpcnN0IGVsZW1lbnQgaW4gYSBmcmFtZQBCaXRzdHJlYW0gdmFsdWUgbm90IGFsbG93ZWQgYnkgc3BlY2lmaWNhdGlvbgBNQUlOIHByZWRpY3Rpb24gbm90IGluaXRpYWxpc2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQACAAMABAAFAAYABwAIAAkCDQIRAhUCGQIdAiEEMQYAAAAAAAAAAAEAAQACAAMABAAFAAYABwAIAAkBCwENAQ8BEQETARUBFwEZARsBHQEfASECJQIpAi0DNQM9A0UEAAAAAAEAAQACAAIAAwADAAQABAAFAAUABgAGAAcABwAIAAgACQAJAAoACwAMAA0ADgAPABACFAIYAyADKAQ4BwAAAAABAAEAAgACAAMAAwAEAAQABQAFAAYABgAHAAcACAAIAAkBCwENAQ8BEQETARUBFwEZAh0CIQIlAy0EPQYAAAAAAAAAAAEAAQACAAIAAwADAAQABAAFAAUABgAHAAgACQAKAAsADAANAQ8BEQETARUBFwIbAh8CIwMrAzMFAAAAAAAAAAABAAEAAQABAAIAAgACAAIAAwADAAQABAAFAAUABgAGAAcABwAIAAgACQAJAAoACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQEbAR0BHwEhASMBJQEnASkCLQIxAjUCOQI9AkEDSQNRA1kDYQRxBIEEkQYAAAAAAQABAAIAAwAEAAUABgAHAAgBCgEMAQ4CEgIWAhoCHgMmAy4DNgM+A0YDTgNWBGYEdgSGBJYFtgXWBfYHAQAAAAAFAQAAAAX/AAAABQAAAP8FAAEAAAUAAAABBQAA/wAFAAABAAUA/wAABwH/AAAH/wEAAAcAAP8BBwAB/wAHAP8BAAcAAAH/BwEBAAAHAAD//wf//wAABwD//wAHAQD/AAcAAQD/B/8AAQAHAAABAQcBAAEABwD/AAEHAAEBAAcAAQABB/8A/wAHAQAAAQf/AAD/BwEAAP8H/wAAAQcA/wD/CQEB/wAJ/wH/AAkB/wEACQABAf8JAAH/AQkA/wEBCQD/Af8JAf//AAkBAP8BCQAB//8J/wEBAAn/AAH/Cf//AQAJAP//AQkB/wABCQH/AP8J/wEA/wn/AQD/Cf8BAP8J/wEA/wn///8ACf///wAJ////AAn///8ACQD///8JAP///wkA////CQD///8JAAEBAQkAAQEBCQABAQEJAAEBAQkBAAH/CQEAAf8JAQAB/wkBAAH/CQEBAAEJAQEAAQkBAQABCQEBAAEJ/wEAAQn/AQABCf8BAAEJ/wEAAQkBAQEACQEBAQAJAQEBAAkBAQEACv//AAEK//8AAQr/AP//Cv8A//8KAQEA/woBAQD/CgEA//8KAQD//wr/AP8BCv8A/wEK//8A/wr//wD/Cv8AAQEK/wABAQoBAAEBCgEAAQELAf8B/wv/Af8BC/8BAf8LAf//AQsBAQEBC///AQELAQH//wv//wH/C/////8LAQH/AQsB/wEBC/8BAQEL/wH//wv///8BCwH///8LAQEB/wMAAAAABAEAAAAF/wAAAAUAAAABBQAA/wAFAAAA/wUA/wAABQAAAQAFAAEAAAYA/wEABv8BAAAGAAH/AAYAAAH/BgABAP8GAAD/AQb/AAD/BgH/AAAGAQD/AAb//wAABgAA//8GAQABAAYBAAABBgD/AAEG/wABAAYAAQABBgD//wAG/wAAAQYA/wD/Bv8A/wAGAQEAAAYAAQEABgAAAQEGAQAA/wcAAf8BBwEA/wEH/wH/AAcA/wH/BwH/AQAHAQEA/wcBAAEBB/8BAQAHAP//AQcBAQEAB/8AAf8H////AAf/AP8BB/8A/wEHAf//AAcB//8ABwEB/wAHAQH/AAgB/wABCP8BAP8I//8BAAj/AAEBCP//AAEI//8A/wgA////CAEAAf8IAQD//wgAAf//CAABAQEI/wEAAQj/AP//CAABAf8IAf8A/wgA/wEBCAEBAAEIAf8B/wj/Af8BCP8B/wEJAf//AQn/////Cf8BAf8J/wEBAQkBAQEBCf//Af8JAf8BAQn/Af//Cf//AQEJAQH//wkB////Cf///wEJAQH/AQkBAQH/BAEBAQEEAAEBAQQBAQABBAEBAQAEAQABAQQBAAAABAEBAAAEAAAAAAQAAAEBBAEAAQAFAQAAAQUAAQEABQAAAAEFAAEAAQUAAAEABQABAAAHAgEBAQcBAQIBBwECAQEHAQEBAgcCAQEABwIBAAEHAQIBAAcCAAEBBwABAgEHAAECAQgAAQECCAEBAgAIAAIBAQgBAAECCAECAAEIAQEAAggBAAIBCAIBAAAIAgABAAgBAgAACAIAAAEIAAEAAggAAgEACAAAAQIIAAECAAgAAQIACAACAAEIAAIAAQgBAAACCAEAAAIIAAACAQgAAAIBCAEAAgAIAQACAAgCAAAACAIAAAAIAAAAAggAAAACCQACAAAJAAACAAkBAgIBCQECAgEJAQICAQkBAgIBCQECAgEJAQICAQkBAgIBCQECAgEJAgIBAQkCAgEBCQICAQEJAgIBAQkCAgEBCQICAQEJAgIBAQkCAgEBCQIBAgEJAgECAQkCAQIBCQIBAgEJAgECAQkCAQIBCQIBAgEJAgECAQkBAQICCQEBAgIJAQECAgkBAQICCQEBAgIJAQECAgkBAQICCQEBAgIJAQIBAgkBAgECCQECAQIJAQIBAgkBAgECCQECAQIJAQIBAgkBAgECCQIBAQIJAgEBAgkCAQECCQIBAQIJAgEBAgkCAQECCQIBAQIJAgEBAgoBAgIACgECAgAKAQICAAoBAgIACgICAQAKAgIBAAoCAgEACgICAQAKAgECAAoCAQIACgIBAgAKAgECAAoAAgIBCgACAgEKAAICAQoAAgIBCgABAgIKAAECAgoAAQICCgABAgIKAgIAAQoCAgABCgICAAEKAgIAAQoAAgECCgACAQIKAAIBAgoAAgECCgIAAgEKAgACAQoCAAIBCgIAAgEKAQACAgoBAAICCgEAAgIKAQACAgoCAgIBCgICAgEKAgICAQoCAgIBCgECAAIKAQIAAgoBAgACCgECAAIKAgABAgoCAAECCgIAAQIKAgABAgoCAQACCgIBAAIKAgEAAgoCAQACCgECAgIKAQICAgoBAgICCgECAgILAgECAgsCAQICCwICAQILAgIBAgsAAgIACwACAgALAgIAAAsCAgAACwAAAgILAAACAgsCAAIACwIAAgALAAIAAgsAAgACCwIAAAILAgAAAgsCAgICCwICAgILAAICAgsAAgICCwICAgALAgICAAwCAgACDAIAAgIEAAAEAQAEAP8EAAEE/wAEAQEE/wEEAf8E//8GAv8GAgEG/gEG/v8G/gAG/wIGAgAGAf4GAQIGAP4G//4GAAIGAv4G/gIG/v4GAgIH/QEHAwEHA/8H/wMH/f8HAQMHAf0H//0HAwAH/QAHAP0HAAMHAwIHAwII/f4I/gMIAgMIA/4IAv0I/v0I/QII/QIIAwMIAwMJA/0J/f0J/QMJAfwJ//wJBAEJ/AEJ/P8JAQQJBP8J/wQJAPwJ/AIJ/AIJ/AIJ/AIJ/P4J/P4J/P4J/P4JAgQJAgQJAgQJAgQJ/vwJ/vwJ/vwJ/vwJ/AAJ/AAJ/AAJ/AAJBAIJBAIJBAIJBAIJBP4JBP4JBP4JBP4J/gQJ/gQJ/gQJ/gQJBAAJBAAJBAAJBAAJAvwJAvwJAvwJAvwJAAQJAAQJAAQJAAQK/fwK/fwK/QQK/QQKA/wKA/wKBP0KBP0KAwQKAwQKBAMKBAMK/AMK/AMK/P0K/P0LBAQL/AQL/PwLBPwDAQEEAgEEAQAEAQIEAAEEAgIFAAAFAgAFAAIFAwEFAQMFAwIFAgMGAwMGBAEGAQQGBAIGAgQGAwAGAAMGBAMGAwQGBQIHBQEHAgUHAQUHBQMHAwUHBAQHBQQHAAQHBAUHBAAHAgYHBgIHBgEHBgEHAQYHAQYIAwYIBgMIBQUIBQAIBgQIAAUIBAYIBwEIBwIIAgcIBgUIBwMIAQcIAQcIAQcIAQcIBQYIBQYIBQYIBQYIAwcIAwcIAwcIAwcJBgYJBgYJBwQJBwQJBgAJBgAJBAcJBAcJAAYJAAYJBwUJBwUJBwYJBwYJBgcJBgcKBQcKBwAKAAcKBwcEAQEEAQIEAgEFAgIFAQAFAAEFAQMFAwIFAwEFAgMFAwMGAgAGAAIGAgQGBAIGAQQGBAEGAAAGBAMGAwQGAwAGAAMGBAQGAgUGBQIHAQUHBQEHBQMHAwUHBQQHBAUHBgIHAgYHBgMHBAAHBgEHAAQHAQYHAwYHBQUHBgQHBAYHBAYIBgUIBwIIAwcIAgcIBQYICAIIBwMIBQAIBwEIAAUICAEIAQcICAMIBwQIBAcIAggIBgYIBwUIAQgIAwgICAQIBAgIBQcIBQcICAUICAUIBQgIBQgJBwYJBgcJCQIJBgAJBggJCQMJAwkJCQEJAgkJAAYJCAYJCQQJBAkJCgIJAQkJBwcJCAcJCQUJBwgJCgMJBQkJCgQJAgoJCgEJAwoJCQYJBgkJBgkJCAAJCAAJBAoJBAoJBwAJBwAJCwIJCwIKBwkKCwMKCgYKAQoKCwEKCQcKAAcKCAgKCgUKAwsKBQoKCAkKCwUKAAgKCwQKAgsKBwoKBgoKCgcKBAsKAQsKDAIKCQgKDAMKCwYKBQsKDAQKCwcKDAUKAwwKBgsKCQAKCggKCgAKDAEKAAkKBAwKCQkKDAYKDAYKDAYKDAYKAgwKAgwKAgwKAgwKCAoKCAoKCAoKCAoLCQoLCQoLAQwLAQwLCwgLCwgLDAcLDAcLBwsLBwsLBQwLBQwLBgwLBgwLCgkLCgkLCAsLCAsLDAgLDAgLAAoLAAoLBwwLBwwLCwALCwALCgoLCgoLCwkLCwkLCwoLCwoLAAsLAAsLCwsLCwsLCQsLCQsLCgsLCgsLDAALDAALCAwLCAwMDAkMCgwMCQwMCwwMDAsMAAwMDAoMDAwEAAAEAQEFEBAFAQAFAAEFAgEFAQIFAgIGAQMGAwEGAwIGAgAGAgMGAAIGAwMGAwMHBAEHAQQHBAIHAgQHBAMHAwQHAwAHAAMHBQEHBQIHAgUHBAQHAQUHBQMHAwUHAwUHBQQHBQQIBAUIBgIIAgYIBgEIBgMIAwYIAQYIBBAIAxAIEAUIEAMIEAQIBgQIEAYIBAAIBAYIAAQIAhAIBQUIBRAIEAcIEAIIEAgIAgcIBwIIAwcIBgUIBQYIBhAIEAoIBwMIBwEIEAkIBxAIARAIAQcIBAcIEAsIBwQIEAwICBAIEAEIBgYICRAIAggIBQcIChAIEA0ICAMICAIIAwgIBQAIEA4IEA4ICxAICxAIBwUIBwUIBAgIBAgIBgcIBgcIBwYIBwYIAAUIAAUJCAQJEA8JDBAJAQgJCAEJDhAJBQgJDRAJAwkJCAUJBwcJAgkJCAYJCQIJCQMJDxAJBAkJBggJBgAJCQQJBQkJCAcJBwgJAQkJCgMJAAYJCgIJCQEJCQUJBAoJAgoJCQYJAwoJBgkJCgQJCAgJCgUJCQcJCwMJAQoJBwAJCgYJBwkJAwsJBQoJCgEJBAsJCwIJDQIJBgoJDQMJDQMJAgsJAgsJEAAJEAAJBQsJBQsJCwUJCwUKCwQKCQgKBwoKCAkKABAKBA0KAAcKAw0KCwYKDQEKDQQKDAMKAg0KDQUKCAoKBgsKCggKCgcKDgIKDAQKAQsKBAwKCwEKAwwKAQ0KDAIKBwsKAw4KBQwKBQ0KDgQKBA4KCwcKDgMKDAUKDQYKDAYKCAAKCwgKAgwKCQkKDgUKBg0KCgoKDwIKCAsKCQoKDgYKCgkKBQ4KCwkKDgEKAg4KBgwKAQwKDQgKAAgKDQcKBwwKDAcKBw0KDwMKDAEKBg4KAg8KDwUKDwQKAQ4KCQsKBA8KDgcKCA0KDQkKCAwKBQ8KAw8KCgsKCwoKDAgKDwYKDwcKCA4KDwEKBw4KCQAKAAkKCQ0KCQ0KCQ0KCQ0KCQwKCQwKCQwKCQwKDAkKDAkKDAkKDAkKDggKDggKDggKDggKCg0KCg0KCg0KCg0KDgkKDgkKDgkKDgkKDAoKDAoKDAoKDAoKBg8KBg8KBg8KBg8KBw8KBw8KBw8KBw8LCQ4LCQ4LDwgLDwgLCwsLCwsLCw4LCw4LAQ8LAQ8LCgwLCgwLCg4LCg4LDQsLDQsLDQoLDQoLCw0LCw0LCwwLCwwLCA8LCA8LDgsLDgsLDQwLDQwLDA0LDA0LDwkLDwkLDgoLDgoLCgALCgALDAsLDAsLCQ8LCQ8LAAoLAAoLDAwLDAwLCwALCwALDA4LDA4LCg8LCg8LDQ0LDQ0LAA0LAA0LDgwLDgwLDwoLDwoLDwsLDwsLCw8LCw8LDg0LDg0LDQALDQALAAsLAAsLDQ4LDQ4LDwwLDwwLDw0LDw0LDA8LDA8LDgALDgALDg4LDg4LDQ8LDQ8LDAALDAALDg8LDg8MAA4MAAwMDw4MDwAMAA8MDw8AAQIBAAAAAQIAAgMAAwQABAUABQYABgcABwgB/wABAQABAAEBAP8ABAUABQYABgcABwgBAf8B/wEB//8BAQEABAUABQYABgcABwgACAkACQoACgsACwwADA0ADQ4ADg8ADxAB/gABAAIBAgABAP4ADA0ADQ4ADg8ADxAAEBEAERIAEhMAExQAFBUAFRYAFhcAFxgB/v8BAgEB//4BAQIB/gEBAv8B/wIBAf4B/QABAwABAP0BAAMADA0ADQ4ADg8ADxAAEBEAERIAEhMAExQAFBUAFRYAFhcAFxgB/f8BAQMBAwEB//0B/QEBA/8BAf0B/wMB/gIBAgIB/v4BAv4ADA0ADQ4ADg8ADxAAEBEAERIAEhMAExQAFBUAFRYAFhcAFxgB/f4BA/4B/gMBAv0BAwIBAgMB/QIB/v0BAPwB/AABBAEBBAAADA0ADQ4ADg8ADxAAEBEAERIAEhMAExQAFBUAFRYAFhcAFxgB/P8BAAQBBP8B//wBAQQB/wQB/AEBAfwBA/0B/f0B/QMB/gQB/P4BBAIBAvwBAgQBAwMB/AIABgcABwgACAkACQoACgsACwwB/vwBBP4BA/wB/P0B/AMBAwQB/QQBBAMBBP0B/fwAAgMAAwQBBPwB/AQBBAQB/PwAAQIBAAAAAQIAAgMAAwQBAQABAAEAAgMAAwQBAQEAAwQABAUABQYABgcABwgACAkACQoACgsACwwBAgEBAQIBAgABAAIACAkACQoACgsACwwADA0ADQ4ADg8ADxABAwEBAQMBAgIBAwABAAMACwwADA0ADQ4ADg8ADxAAEBEAERIAEhMAExQAFBUAFRYBAgMBAwIBAQQBBAEBAQUBBQEBAwMBAgQBAAQBBAAADA0ADQ4ADg8ADxAAEBEAERIAEhMAExQAFBUAFRYAFhcAFxgBBAIBAgUBBQIBAAUBBgEBBQABAQYBBAMBAwUBAwQBBQMBAgYBBgIBAQcACgsACwwADA0ADQ4ADg8ADxAAEBEAERIAEhMAExQBAwYBAAYBBgABBAQBBwEBBAUBBwIBBQQBBgMBAgcBBwMBBgQBBQUBBAYBAwcABQYABgcABwgACAkACQoBBwABAAcBBgUBBQYBBwQBBAcBBQcBBwUAAgMAAwQBBwYBBgYBBgcBBwcAAQIBAAAAAQIAAgMAAwQBAQABAAEAAgMAAwQBAQEAAwQABAUABQYABgcABwgACAkACQoACgsACwwBAgEBAQIBAgABAAIACAkACQoACgsACwwADA0ADQ4ADg8ADxABAwEBAgIBAQMADQ4ADg8ADxAAEBEAERIAEhMAExQAFBUAFRYAFhcAFxgAGBkAGRoBAwABAAMBAgMBAwIBAQQBBAEBAgQBAQUAEhMAExQAFBUAFRYAFhcAFxgAGBkAGRoAGhsAGxwAHB0AHR4AHh8AHyAAICEAISIAIiMAIyQBBAIBAwMBAAQBBAABBQEBAgUBAQYBAwQBBQIBBgEBBAMAGRoAGhsAGxwAHB0AHR4AHh8AHyAAICEAISIAIiMAIyQAJCUAJSYAJicAJygAKCkAKSoAKisAKywALC0ALS4ALi8ALzAAMDEAMTIBAAUBAgYBBQABAQcBAwUBAQgBCAEBBAQBBQMBBgIBBwEBAAYBCAIBAggBAwYBAgcBBAUBCQEBAQkBBwIAHh8AHyAAICEAISIAIiMAIyQAJCUAJSYAJicAJygAKCkAKSoAKisAKywALC0ALS4ALi8ALzAAMDEAMTIAMjMAMzQANDUANTYANjcANzgAODkAOToAOjsAOzwBBgABBQQBBgMBCAMBAAcBCQIBAwgBBAYBAwcBAAgBCgEBBgQBAgkBBQUBCAABBwABBwMBCgIBCQMBCAQBAQoBBwQBBgUBBQYBBAgBBAcBAwkBCwEBBQgBCQABCAUAHR4AHh8AHyAAICEAISIAIiMAIyQAJCUAJSYAJicAJygAKCkAKSoAKisAKywALC0ALS4ALi8ALzAAMDEAMTIAMjMAMzQANDUANTYANjcANzgAODkAOToBCgMBAgoBAAkBCwIBCQQBBgYBDAEBBAkBCAYBAQsBCQUBCgQBBQcBBwUBAgsBAQwBDAIBCwMBAwoBBQkBBgcBCAcBCwQBAAoBBwYBDAMBCgABCgUBBAoBBggBAgwBCQYBCQcBBAsBCwABBgkBAwsBBQoAFBUAFRYAFhcAFxgAGBkAGRoAGhsAGxwAHB0AHR4AHh8AHyAAICEAISIAIiMAIyQAJCUAJSYAJicAJygBCAgBBwgBDAUBAwwBCwUBBwcBDAQBCwYBCgYBBAwBBwkBBQsBAAsBDAYBBgoBDAABCgcBBQwBBwoBCQgBAAwBCwcBCAkBCQkBCggBBwsBDAcBBgsBCAsBCwgBBwwBBgwACAkACQoACgsACwwADA0ADQ4ADg8ADxABCAoBCgkBCAwBCQoBCQsBCQwBCgsBDAkBCgoBCwkBDAgBCwoBDAoBDAsAAgMAAwQBCgwBCwsBCwwBDAwABQUABQAFAAUABgUAAAABAQAAAQEBAQEAAAAAAQEBAQEBAQEBAQEBAQEBASEhJigoKCkpJSUlIh8JHAcfCRwHIgobBygOGgYqDhoGMw4aBi4OHQcuDh0HKg4XCCoOFwgqDhcIJw4TBycOEwcAAAAAAAAAAAAAAAAAAQEAAQAAAQEAAAEAAQEAAQAAAQABAQAAAQEAAQAAAQEAAAEAAQEAAAEBAAEAAAEAAQEAAQAAAQEAAAEAAQEAAQAAAQABAQAAAQEAAQAAAQABAQABAAABAQAAAQABAQAAAQEAAQAAAQEAAAEAAQEAAQAAAQABAQAAAQEAAQAAAQEAAAEAAQEAAAEBAAEAAAEAAQEAAQAAAQEAAAEAAQEAAAEBAAEAAAEBAAABAAEBAAEAAAEAAQEAAAEBAAEAAAEAAQEAAQAAAQEAAAEAAQEAAQAAAQABAQAAAQEAAQAAAQEAAAEAAQEAAAEBAAEAAAEAAQEAAQAAAQEAAAEAAQEATiAlIDggPT0gMABtZGN0LmMAZmFhZF9tZGN0X2luaXQAVEFHAAIEBAQIAgICAgAAAAoUIgoUIgAABQsRBQsRAAAAAQIEAQIDBOEB4ALiA98E4wXeBuQH3QjlCdwK5gvbDOcN6A7aDxAR6dkSExQVFhfq09TVGBkaG9bX2Ovs7e7v4QECA+LgBAXj3wYH5N4ICd3l5grcC+cM2w3aDugPEBHp2RIT6usUFdjsFhfXGBka1tPU1e0b7u8B4eICA+AEBQYH3+MI3uQJ3eUKC+YMDQ7b5w8QEdwS2ugTFBXqFhcY2ekZGuwbHB3X6x4fINgh1O4iIyQl1e0mJ9YoKSorLC0u0vAv0+8wMczN8/TOzzIzNDU2NzjQ8jk60fE7x/vFxv7//P3DxMj6yfnK+Mv39fYB4QIDBODiBd/jBgfe5AgJ3eUKC9zmDA3b5w4P6BAREhPZ6RQV2usWF9jqGNbsGRob1xzV7R0eHyDT7yEi1O4jJCUm0vAnKCkqK9DyLC0uLzAx0fHM9s70z/MyMzQ1Njc4OTo7x8jFxsv3ycr6+/j5/v/8/cPEzfXhAeIC4APjBN8F5AbeB+UI3QnmCtwL5wzbDdro4QHiAuAD4wTfBeQG3gflCOYJ3QrnC9wM6A3b2gHhAgMEBeLo5gbj5+XkAeECA+IEBQbl5uTn4+gB4QIDBAXi6Obj5wbl5AHhAgPo4gQF5OfjBublwAG/AsEDBAm+BcIGBwi0tba3ChELDgwNuLm6uw8QvL3DxBIVExTFxsfIFhfJysvMwAHBAr8DvgTCBb0GBwjDvAkeCg/EC7sMDQ7Fy6GiEBcRFBITo6SlphUWp6ipqhgbGRqrrK2uHB2vsLGyHy4gJyEkIiOztLW2JSa3uLm6KCspKsbHyMksLcrMzc4vNjAzMTLP0NHSNDXT1NXWNzo4OdfY2do7PNvc3T3e38ABvwLBA74EwgXDBr0HvAjECQoNuwvFDMa0DhEPELW2t7gSFRMUubrHyBYXycrLzMABvwLBA74EwgW9BgcIw7wJCsS7CwzFug0OxrkPEMe4ERPIEsm3FBgVFrbKyxe1tBkeGhvMzRwds7HOzx8nICMhIrLSrqgkJa3Q0SaqqygvKSwqK7DU1dYtLtmprNgwNzE0MjOhoqOkNTalpqevODs5OtPX2ts8Pdzd3t/AAcECvwPCBL4Fwwa9B8QIvAkKC7vFDA26xg4cDxUQEscRucgTFKipqqsWGRcYrK2urxobsLGysx0kHiEfILS1trciI7jJysslKSYnzM3OKM/QKi0rLNHS09QuL9XW19jAAcECvwO+BMIFwwa9B7wIxAkKEAsNuwy0tQ4Ptre4uREUEhO6xcbHFRbIycoXy8zAAb8CwQO+BMIFwwa9B7wIxAkKC7vFugzGDQ4RuQ/HEMi3EiATGRQWuBWoqRcYqqusrRodGxyur7CxHh+ys7S1ISgiJSMktsnKyyYnzM3OzyksKivQ0dLTLS7U1dYv19gBAsC/AwTBvgUGwr0HCMO8CQrEuwsMxboNDsa5DxDHuBESt8gTFbYUybUWGhcYyrSzGcuyGyIcHcyxHh+wzSAhra6vziM5JCglJqis0CemqykuKivPqSwtp6qEhS8yMDGGh4iJMzY0NYqLjI03OI6PkJE6WTtKPEM9QD4/kpOUlUFClpeYmURHRUaam5ydSEmen6ChS1JMT01OoqOkpVBR0dLT1FNWVFXV1tfYV1jZ2tvcWmlbYlxfXV7d3t/gYGHh4uPkY2ZkZeXm5+hnaOnq6+xqcWtubG3t7u/wb3Dx8vP0cnVzdPX29/h2d/n6+/zAAb8CwQO+BMIFvQbDB7wIxAkKC7vFDA66DbnGDxIQEbjHt7YTFsgUyRXKsxcfGBm1tBobssscHcyhoh6jpCAvISgiJSMkpaanqCYnqaqrrCksKiutrq+wLS6xzc7PMDcxNDIz0NHS0zU21NXW1zg7OTrY2drbPD3c3d7fAQLAvwMEwb4FBr3CBwi8wwkKu8QLDboMxbkOEMYPuMcRE7cSyLYUFxUWybXKyxgbGRq0zLPNHB8dHs6ysc8gJCEi0NGwI6+uJS8mKScordLTrCosqyvU1S0uqKmqpjBCMTgyNTM0pNbX2TY3l6fa2zk8OjuipdjcPT/sPo2SQEGUlZufQ1lES0VIRkeho97lSUrq7/CETFJNT4VOhodQUYiJiotTVlRVjI6PkFdYkZOWmFppW2JcX11emZqcnWBhnqDd32NmZGXg4eLjZ2jk5ufoanFrbmxt6evt7m9w8fLz9HJ1c3T19vf4dnf5+vv8AAABAgIDAwMDBAYFBA0PFBUXICAjMEBGYAACBAYICw4SFhofJSwzAAIEBggLDhIWGh8kKjEAAgQGCAsOERUZHSInLAACBAYICw4RFBgcISYrAAIEBggLDhEUGBwgJCkAAgQGCAoMDhEUFxodIAACBAYICgwOERQXGh0gAAEDBQcJCw0PERQXGh0AAQIDBAUGBwgJCgwOEAAAAAAAAAAAAAAAAAAAAP/+/fz7+vr6+vr6+voA/fr39PHu7Oro5uTi4AcHCgsMEBARGCAjMAUFBAQEAwIBAAYGBvj5+vv8/f7/AAECAwQFBgf7/P3+/wABAgMEBQYHCQsN+/3+/wABAgMEBQYHCQsNEPr8/v8AAQIDBAUGBwkLDRD8/v8AAQIDBAUGBwkLDRAU/v8AAQIDBAUGBwkLDRAUGAABAgMEBQYHCQsNEBQYHCEAEAgYBBQMHAISChoGFg4eAREJGQUVDR0DEwsbBxcPHwEA/wAAAQD/FRcgKy5AVV2AAAAAd2luZG93X3NlcXVlbmNlICE9IEVJR0hUX1NIT1JUX1NFUVVFTkNFAGZpbHRiYW5rLmMAZmlsdGVyX2JhbmtfbHRwAAABAgAAAQAAAAAAAQIAAAACAwAAAAMEAAAABAUAAAAFBgAAAAYHAAAABwgAAAEBAAAAAQAAAAEBAAEAAAEAAAEAAAQFAAAABQYAAAAGBwAAAAcIAAABAQEAAAEAAAEBAAYHAAAABwgAAAAICQAAAAkKAAAACgsAAAALDAAAAQABAQABAAEAAQEBAAEAAQABAQEBAQAAAQEBAQEAAAYHAAAABwgAAAAICQAAAAkKAAAACgsAAAALDAAAAQEBAQEBAQABAQEBAQABAAkKAAAACgsAAAALDAAAAAwNAAAADQ4AAAAODwAAAA8QAAAAEBEAAAAREgAAAQIAAAABAAAAAgEAAAECAQIBAAABAQIBAAANDgAAAA4PAAAADxAAAAAQEQAAABESAAAAEhMAAAATFAAAABQVAAAAFRYAAAAWFwAAABcYAAAAGBkAAAAZGgAAAQAAAgEBAAECAQEBAgAAAQABAQIBAgEBAAEAAAIAAQACAQABAAECAAEAAgAAAQABAAIBAgABAAEBAgEBAQACAQEBAQECAAEBAQIBAAsMAAAADA0AAAANDgAAAA4PAAAADxAAAAAQEQAAABESAAAAEhMAAAATFAAAABQVAAAAFRYAAAEBAgABAQEAAgABAQACAQEAAgABAQIBAQEBAQEBAgECAQABAQEAAQIBAAACAgEAAQICAQICAQABAQICAAEBAAACAQIAAAEBAAICAQAHCAAAAAgJAAAACQoAAAAKCwAAAAsMAAAADA0AAAANDgAAAQICAAABAQICAQEBAQACAQIAAQEBAQECAgECAgEBAQACAgABAAIBAgAGBwAAAAcIAAAACAkAAAAJCgAAAAoLAAAACwwAAAEBAAICAQICAAEBAgECAAECAgIAAQACAgIBAgICAQECAQIBAQECAQIBAQICAgADBAAAAAQFAAAABQYAAAEAAgACAQIAAgABAQIAAgADBAAAAAQFAAAABQYAAAECAAIBAQIBAQIBAgEAAgADBAAAAAQFAAAABQYAAAECAgICAQICAQIBAgECAgECAAECAQIAAAIAAQIAAAECAgACAQIAAgILCQcFAwELHx4dHBsaGRgXFhUUExIREAkHBQMBAAsJFBANCw4MEQ4xAAAAAA4RFRUZGR0dHR0hISElJSkBAjwAAQICAwMEOwADBAQFBQY9ADoAPgADBAQFBQY5AD8ABAUFBgYHBwg4AEAANwBBAAQFBQYGBwcIQgA2AEMABQYGBwcICAkJCjUARAA0AEUAMwAFBgYHBwgICQkKRgAyADEARwAGBwcICAkJCgoLCwxIADAASQAvAEoALgAGBwcICAkJCgoLCwxMAEsATQBOAC0AKwAGBwcICAkJCgoLCwwsAE8AKgApAFAAKAAGBwcICAkJCgoLCwxRACcAUgAmAFMABwgICQkKCgsLDAwNDQ4lACMAVQAhACQAIgBUACAABgcHCAgJCQoKCwsMVwBZAB4AHwAICQkKCgsLDAwNDQ4ODw8QVgAdABoAGwAcABgAWAAJCgoLCwwMDQ0ODg8PEBARERIZABYAFwAPEBARERISExMUFBUVFhYXFxgYGRkaGhsbHBwdHR5aABUAEwADAAEAAgAAABcYGBkZGhobGxwcHR0eHh8fICAhISIiIyMkJCUlJiYnJygoKSkqKisrLCwtLS5iAGMAZABlAGYAdQBhAFsAXABdAF4AXwBgAGgAbwBwAHEAcgBzAHQAbgBpAGoAawBsAG0AdgAGAAgACQAKAAUAZwB4AHcABAAHAA8AEAASABQAEQALAAwADgANAAAAACQkJR8fAAAAAAAAACMjJR4eAAAAACkpLzExMy8vKysrKCgoLTExMS4uKioqKAwMDA4ODg8PDw8PDwABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fBQYHCAkKCw0PERMVGBseISUpQAYHAAECAwkICgsDBAUGBwgJCw4SFyNAdm9pZABib29sAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGUAc3RkOjpzdHJpbmcAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4ALgB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHB0aHJlYWRfb25jZSBmYWlsdXJlIGluIF9fY3hhX2dldF9nbG9iYWxzX2Zhc3QoKQBjYW5ub3QgY3JlYXRlIHB0aHJlYWQga2V5IGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAGNhbm5vdCB6ZXJvIG91dCB0aHJlYWQgdmFsdWUgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAdGVybWluYXRlX2hhbmRsZXIgdW5leHBlY3RlZGx5IHJldHVybmVkAFN0MTFsb2dpY19lcnJvcgBTdDEybGVuZ3RoX2Vycm9yAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UAdgBEbgBiAGMAaABhAHMAdABpAGoAbABtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9F";var tempDoublePtr=124240;function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+UTF8ToString(condition)+", at: "+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}function ___cxa_allocate_exception(size){return _malloc(size)}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}function ___cxa_free_exception(ptr){try{return _free(ptr)}catch(e){}}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var key in EXCEPTIONS.infos){var ptr=+key;var adj=EXCEPTIONS.infos[ptr].adjusted;var len=adj.length;for(var i=0;i<len;i++){if(adj[i]===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}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i<typeArray.length;i++){if(typeArray[i]&&Module["___cxa_can_catch"](typeArray[i],throwntype,thrown)){thrown=HEAP32[thrown>>2];info.adjusted.push(thrown);return(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(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}function ___gxx_personality_v0(){}var SYSCALLS={buffers:[null,[],[]],printChar:function(stream,curr){var buffer=SYSCALLS.buffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}},varargs:0,get:function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(){var ret=UTF8ToString(SYSCALLS.get());return ret},get64:function(){var low=SYSCALLS.get(),high=SYSCALLS.get();return low},getZero:function(){SYSCALLS.get()}};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();return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function flush_NO_FILESYSTEM(){var fflush=Module["_fflush"];if(fflush)fflush(0);var buffers=SYSCALLS.buffers;if(buffers[1].length)SYSCALLS.printChar(1,10);if(buffers[2].length)SYSCALLS.printChar(2,10)}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j<len;j++){SYSCALLS.printChar(stream,HEAPU8[ptr+j])}ret+=len}return ret}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+'    "use strict";'+"    return body.apply(this, arguments);\n"+"};\n")(body)}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function count_emval_handles(){var count=0;for(var i=5;i<emval_handle_array.length;++i){if(emval_handle_array[i]!==undefined){++count}}return count}function get_first_emval(){for(var i=5;i<emval_handle_array.length;++i){if(emval_handle_array[i]!==undefined){return emval_handle_array[i]}}return null}function init_emval(){Module["count_emval_handles"]=count_emval_handles;Module["get_first_emval"]=get_first_emval}function __emval_register(value){switch(value){case undefined:{return 1}case null:{return 2}case true:{return 3}case false:{return 4}default:{var handle=emval_free_list.length?emval_free_list.pop():emval_handle_array.length;emval_handle_array[handle]={refcount:1,value:value};return handle}}}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var PureVirtualError=undefined;function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}var delayFunction=undefined;function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function registerInheritedInstance(class_,ptr,instance){ptr=getBasestPointer(class_,ptr);if(registeredInstances.hasOwnProperty(ptr)){throwBindingError("Tried to register registered instance: "+ptr)}else{registeredInstances[ptr]=instance}}function requireHandle(handle){if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handle_array[handle].value}var registeredTypes={};function getTypeName(type){var ptr=___getTypeName(type);var rv=readLatin1String(ptr);_free(ptr);return rv}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function unregisterInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);if(registeredInstances.hasOwnProperty(ptr)){delete registeredInstances[ptr]}else{throwBindingError("Tried to unregister unregistered instance: "+ptr)}}function __embind_create_inheriting_constructor(constructorName,wrapperType,properties){constructorName=readLatin1String(constructorName);wrapperType=requireRegisteredType(wrapperType,"wrapper");properties=requireHandle(properties);var arraySlice=[].slice;var registeredClass=wrapperType.registeredClass;var wrapperPrototype=registeredClass.instancePrototype;var baseClass=registeredClass.baseClass;var baseClassPrototype=baseClass.instancePrototype;var baseConstructor=registeredClass.baseClass.constructor;var ctor=createNamedFunction(constructorName,function(){registeredClass.baseClass.pureVirtualFunctions.forEach(function(name){if(this[name]===baseClassPrototype[name]){throw new PureVirtualError("Pure virtual function "+name+" must be implemented in JavaScript")}}.bind(this));Object.defineProperty(this,"__parent",{value:wrapperPrototype});this["__construct"].apply(this,arraySlice.call(arguments))});wrapperPrototype["__construct"]=function __construct(){if(this===wrapperPrototype){throwBindingError("Pass correct 'this' to __construct")}var inner=baseConstructor["implement"].apply(undefined,[this].concat(arraySlice.call(arguments)));var $$=inner.$$;inner["notifyOnDestruction"]();$$.preservePointerOnDelete=true;Object.defineProperties(this,{$$:{value:$$}});registerInheritedInstance(registeredClass,$$.ptr,this)};wrapperPrototype["__destruct"]=function __destruct(){if(this===wrapperPrototype){throwBindingError("Pass correct 'this' to __destruct")}unregisterInheritedInstance(registeredClass,this.$$.ptr)};ctor.prototype=Object.create(wrapperPrototype);for(var p in properties){ctor.prototype[p]=properties[p]}return __emval_register(ctor)}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}var awaitingDependencies={};var typeDependencies={};var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i<myTypes.length;++i){registerType(myTypes[i],myTypeConverters[i])}}var typeConverters=new Array(dependentTypes.length);var unregisteredTypes=[];var registered=0;dependentTypes.forEach(function(dt,i){if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt]}else{unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[]}awaitingDependencies[dt].push(function(){typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters)}})}});if(0===unregisteredTypes.length){onComplete(typeConverters)}}function registerType(rawType,registeredInstance,options){options=options||{};if(!("argPackAdvance"in registeredInstance)){throw new TypeError("registerType registeredInstance requires argPackAdvance")}var name=registeredInstance.name;if(!rawType){throwBindingError('type "'+name+'" must have a positive integer typeid pointer')}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else{throwBindingError("Cannot register type '"+name+"' twice")}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach(function(cb){cb()})}}function __embind_register_bool(rawType,name,size,trueValue,falseValue){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(wt){return!!wt},"toWireType":function(destructors,o){return o?trueValue:falseValue},"argPackAdvance":8,"readValueFromPointer":function(pointer){var heap;if(size===1){heap=HEAP8}else if(size===2){heap=HEAP16}else if(size===4){heap=HEAP32}else{throw new TypeError("Unknown boolean type size: "+name)}return this["fromWireType"](heap[pointer>>shift])},destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)};proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register(function(){clonedHandle["delete"]()}));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&&registeredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i<signature.length;++i){args.push("a"+i)}var name="dynCall_"+signature+"_"+rawFunction;var body="return function "+name+"("+args.join(", ")+") {\n";body+="    return dynCall(rawFunction"+(args.length?", ":"")+args.join(", ")+");\n";body+="};\n";return new Function("dynCall","rawFunction",body)(dynCall,rawFunction)}var fp;if(Module["FUNCTION_TABLE_"+signature]!==undefined){fp=Module["FUNCTION_TABLE_"+signature][rawFunction]}else if(typeof FUNCTION_TABLE!=="undefined"){fp=FUNCTION_TABLE[rawFunction]}else{var dc=Module["dynCall_"+signature];if(dc===undefined){dc=Module["dynCall_"+signature.replace(/f/g,"d")];if(dc===undefined){throwBindingError("No dynCall invoker for signature: "+signature)}}fp=makeDynCaller(dc)}if(typeof fp!=="function"){throwBindingError("unknown function pointer with signature "+signature+": "+rawFunction)}return fp}var UnboundTypeError=undefined;function throwUnboundTypeError(message,types){var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true}types.forEach(visit);throw new UnboundTypeError(message+": "+unboundTypes.map(getTypeName).join([", "]))}function __embind_register_class(rawType,rawPointerType,rawConstPointerType,baseClassRawType,getActualTypeSignature,getActualType,upcastSignature,upcast,downcastSignature,downcast,name,destructorSignature,rawDestructor){name=readLatin1String(name);getActualType=embind__requireFunction(getActualTypeSignature,getActualType);if(upcast){upcast=embind__requireFunction(upcastSignature,upcast)}if(downcast){downcast=embind__requireFunction(downcastSignature,downcast)}rawDestructor=embind__requireFunction(destructorSignature,rawDestructor);var legalFunctionName=makeLegalFunctionName(name);exposePublicSymbol(legalFunctionName,function(){throwUnboundTypeError("Cannot construct "+name+" due to unbound types",[baseClassRawType])});whenDependentTypesAreResolved([rawType,rawPointerType,rawConstPointerType],baseClassRawType?[baseClassRawType]:[],function(base){base=base[0];var baseClass;var basePrototype;if(baseClassRawType){baseClass=base.registeredClass;basePrototype=baseClass.instancePrototype}else{basePrototype=ClassHandle.prototype}var constructor=createNamedFunction(legalFunctionName,function(){if(Object.getPrototypeOf(this)!==instancePrototype){throw new BindingError("Use 'new' to construct "+name)}if(undefined===registeredClass.constructor_body){throw new BindingError(name+" has no accessible constructor")}var body=registeredClass.constructor_body[arguments.length];if(undefined===body){throw new BindingError("Tried to invoke ctor of "+name+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(registeredClass.constructor_body).toString()+") parameters instead!")}return body.apply(this,arguments)});var instancePrototype=Object.create(basePrototype,{constructor:{value:constructor}});constructor.prototype=instancePrototype;var registeredClass=new RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast);var referenceConverter=new RegisteredPointer(name,registeredClass,true,false,false);var pointerConverter=new RegisteredPointer(name+"*",registeredClass,false,false,false);var constPointerConverter=new RegisteredPointer(name+" const*",registeredClass,false,true,false);registeredPointers[rawType]={pointerType:pointerConverter,constPointerType:constPointerConverter};replacePublicSymbol(legalFunctionName,constructor);return[referenceConverter,pointerConverter,constPointerConverter]})}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i<argTypes.length;++i){if(argTypes[i]!==null&&argTypes[i].destructorFunction===undefined){needsDestructorStack=true;break}}var returns=argTypes[0].name!=="void";var argsList="";var argsListWired="";for(var i=0;i<argCount-2;++i){argsList+=(i!==0?", ":"")+"arg"+i;argsListWired+=(i!==0?", ":"")+"arg"+i+"Wired"}var invokerFnBody="return function "+makeLegalFunctionName(humanName)+"("+argsList+") {\n"+"if (arguments.length !== "+(argCount-2)+") {\n"+"throwBindingError('function "+humanName+" called with ' + arguments.length + ' arguments, expected "+(argCount-2)+" args!');\n"+"}\n";if(needsDestructorStack){invokerFnBody+="var destructors = [];\n"}var dtorStack=needsDestructorStack?"destructors":"null";var args1=["throwBindingError","invoker","fn","runDestructors","retType","classParam"];var args2=[throwBindingError,cppInvokerFunc,cppTargetFunc,runDestructors,argTypes[0],argTypes[1]];if(isClassMethodFunc){invokerFnBody+="var thisWired = classParam.toWireType("+dtorStack+", this);\n"}for(var i=0;i<argCount-2;++i){invokerFnBody+="var arg"+i+"Wired = argType"+i+".toWireType("+dtorStack+", arg"+i+"); // "+argTypes[i+2].name+"\n";args1.push("argType"+i);args2.push(argTypes[i+2])}if(isClassMethodFunc){argsListWired="thisWired"+(argsListWired.length>0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i<argTypes.length;++i){var paramName=i===1?"thisWired":"arg"+(i-2)+"Wired";if(argTypes[i].destructorFunction!==null){invokerFnBody+=paramName+"_dtor("+paramName+"); // "+argTypes[i].name+"\n";args1.push(paramName+"_dtor");args2.push(argTypes[i].destructorFunction)}}}if(returns){invokerFnBody+="var ret = retType.fromWireType(rv);\n"+"return ret;\n"}else{}invokerFnBody+="}\n";args1.push(invokerFnBody);var invokerFunction=new_(Function,args1).apply(null,args2);return invokerFunction}function heap32VectorToArray(count,firstElement){var array=[];for(var i=0;i<count;i++){array.push(HEAP32[(firstElement>>2)+i])}return array}function __embind_register_class_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,fn){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName=classType.name+"."+methodName;function unboundTypesHandler(){throwUnboundTypeError("Cannot call "+humanName+" due to unbound types",rawArgTypes)}var proto=classType.registeredClass.constructor;if(undefined===proto[methodName]){unboundTypesHandler.argCount=argCount-1;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-1]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));var func=craftInvokerFunction(humanName,invokerArgsArray,null,rawInvoker,fn);if(undefined===proto[methodName].overloadTable){func.argCount=argCount-1;proto[methodName]=func}else{proto[methodName].overloadTable[argCount-1]=func}return[]});return[]})}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName=classType.name+"."+methodName;if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName)}function unboundTypesHandler(){throwUnboundTypeError("Cannot call "+humanName+" due to unbound types",rawArgTypes)}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction}else{proto[methodName].overloadTable[argCount-2]=memberFunction}return[]});return[]})}function validateThis(this_,classType,humanName){if(!(this_ instanceof Object)){throwBindingError(humanName+' with invalid "this": '+this_)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(humanName+' incompatible with "this" of type '+this_.constructor.name)}if(!this_.$$.ptr){throwBindingError("cannot call emscripten binding method "+humanName+" on deleted object")}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)}function __embind_register_class_property(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],function(classType){classType=classType[0];var humanName=classType.name+"."+fieldName;var desc={get:function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])},enumerable:true,configurable:true};if(setter){desc.set=function(){throwUnboundTypeError("Cannot access "+humanName+" due to unbound types",[getterReturnType,setterArgumentType])}}else{desc.set=function(v){throwBindingError(humanName+" is a read-only property")}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],function(types){var getterReturnType=types[0];var desc={get:function(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))},enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]});return[]})}function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv},"toWireType":function(destructors,value){return __emval_register(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<<bitshift>>>bitshift}}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(value<minRange||value>maxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0},"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var endChar=HEAPU8[value+4+length];var endCharSwap=0;if(endChar!=0){endCharSwap=endChar;HEAPU8[value+4+length]=0}var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(HEAPU8[currentBytePtr]==0){var stringSegment=UTF8ToString(decodeStartPtr);if(str===undefined)str=stringSegment;else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}if(endCharSwap!=0)HEAPU8[value+4+length]=endCharSwap}else{var a=new Array(length);for(var i=0;i<length;++i){a[i]=String.fromCharCode(HEAPU8[value+4+i])}str=a.join("")}_free(value);return str},"toWireType":function(destructors,value){if(value instanceof ArrayBuffer){value=new Uint8Array(value)}var getLength;var valueIsOfTypeString=typeof value==="string";if(!(valueIsOfTypeString||value instanceof Uint8Array||value instanceof Uint8ClampedArray||value instanceof Int8Array)){throwBindingError("Cannot pass non-string to std::string")}if(stdStringIsUTF8&&valueIsOfTypeString){getLength=function(){return lengthBytesUTF8(value)}}else{getLength=function(){return value.length}}var length=getLength();var ptr=_malloc(4+length+1);HEAPU32[ptr>>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i<length;++i){var charCode=value.charCodeAt(i);if(charCode>255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i<length;++i){HEAPU8[ptr+4+i]=value[i]}}}if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=function(){return HEAPU16};shift=1}else if(charSize===4){getHeap=function(){return HEAPU32};shift=2}registerType(rawType,{name:name,"fromWireType":function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i<length;++i){a[i]=String.fromCharCode(HEAP[start+i])}_free(value);return a.join("")},"toWireType":function(destructors,value){var HEAP=getHeap();var length=value.length;var ptr=_malloc(4+length*charSize);HEAPU32[ptr>>2]=length;var start=ptr+4>>shift;for(var i=0;i<length;++i){HEAP[start+i]=value.charCodeAt(i)}if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function __emval_as(handle,returnType,destructorsRef){handle=requireHandle(handle);returnType=requireRegisteredType(returnType,"emval::as");var destructors=[];var rd=__emval_register(destructors);HEAP32[destructorsRef>>2]=rd;return returnType["toWireType"](destructors,handle)}function __emval_lookupTypes(argCount,argTypes,argWireTypes){var a=new Array(argCount);for(var i=0;i<argCount;++i){a[i]=requireRegisteredType(HEAP32[(argTypes>>2)+i],"parameter "+i)}return a}function __emval_call(handle,argCount,argTypes,argv){handle=requireHandle(handle);var types=__emval_lookupTypes(argCount,argTypes);var args=new Array(argCount);for(var i=0;i<argCount;++i){var type=types[i];args[i]=type["readValueFromPointer"](argv);argv+=type["argPackAdvance"]}var rv=handle.apply(undefined,args);return __emval_register(rv)}function __emval_allocateDestructors(destructorsRef){var destructors=[];HEAP32[destructorsRef>>2]=__emval_register(destructors);return destructors}var emval_symbols={};function getStringOrSymbol(address){var symbol=emval_symbols[address];if(symbol===undefined){return readLatin1String(address)}else{return symbol}}var emval_methodCallers=[];function __emval_call_method(caller,handle,methodName,destructorsRef,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);return caller(handle,methodName,__emval_allocateDestructors(destructorsRef),args)}function __emval_call_void_method(caller,handle,methodName,args){caller=emval_methodCallers[caller];handle=requireHandle(handle);methodName=getStringOrSymbol(methodName);caller(handle,methodName,null,args)}function emval_get_global(){return function(){return Function}()("return this")()}function __emval_get_global(name){if(name===0){return __emval_register(emval_get_global())}else{name=getStringOrSymbol(name);return __emval_register(emval_get_global()[name])}}function __emval_addMethodCaller(caller){var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id}function __emval_get_method_caller(argCount,argTypes){var types=__emval_lookupTypes(argCount,argTypes);var retType=types[0];var signatureName=retType.name+"_$"+types.slice(1).map(function(t){return t.name}).join("_")+"$";var params=["retType"];var args=[retType];var argsList="";for(var i=0;i<argCount-1;++i){argsList+=(i!==0?", ":"")+"arg"+i;params.push("argType"+i);args.push(types[1+i])}var functionName=makeLegalFunctionName("methodCaller_"+signatureName);var functionBody="return function "+functionName+"(handle, name, destructors, args) {\n";var offset=0;for(var i=0;i<argCount-1;++i){functionBody+="    var arg"+i+" = argType"+i+".readValueFromPointer(args"+(offset?"+"+offset:"")+");\n";offset+=types[i+1]["argPackAdvance"]}functionBody+="    var rv = handle[name]("+argsList+");\n";for(var i=0;i<argCount-1;++i){if(types[i+1]["deleteObject"]){functionBody+="    argType"+i+".deleteObject(arg"+i+");\n"}}if(!retType.isVoid){functionBody+="    return retType.toWireType(destructors, rv);\n"}functionBody+="};\n";params.push(functionBody);var invokerFunction=new_(Function,params).apply(null,args);return __emval_addMethodCaller(invokerFunction)}function __emval_get_property(handle,key){handle=requireHandle(handle);key=requireHandle(key);return __emval_register(handle[key])}function __emval_incref(handle){if(handle>4){emval_handle_array[handle].refcount+=1}}function craftEmvalAllocator(argCount){var argsList="";for(var i=0;i<argCount;++i){argsList+=(i!==0?", ":"")+"arg"+i}var functionBody="return function emval_allocator_"+argCount+"(constructor, argTypes, args) {\n";for(var i=0;i<argCount;++i){functionBody+="var argType"+i+" = requireRegisteredType(Module['HEAP32'][(argTypes >> 2) + "+i+'], "parameter '+i+'");\n'+"var arg"+i+" = argType"+i+".readValueFromPointer(args);\n"+"args += argType"+i+"['argPackAdvance'];\n"}functionBody+="var obj = new constructor("+argsList+");\n"+"return __emval_register(obj);\n"+"}\n";return new Function("requireRegisteredType","Module","__emval_register",functionBody)(requireRegisteredType,Module,__emval_register)}var emval_newers={};function __emval_new(handle,argCount,argTypes,args){handle=requireHandle(handle);var newer=emval_newers[argCount];if(!newer){newer=craftEmvalAllocator(argCount);emval_newers[argCount]=newer}return newer(handle,argTypes,args)}function __emval_new_cstring(v){return __emval_register(getStringOrSymbol(v))}function __emval_new_object(){return __emval_register({})}function __emval_run_destructors(handle){var destructors=emval_handle_array[handle].value;runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=requireHandle(handle);key=requireHandle(key);value=requireHandle(value);handle[key]=value}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){Module["abort"]()}function _clock(){if(_clock.start===undefined)_clock.start=Date.now();return(Date.now()-_clock.start)*(1e6/1e3)|0}function _emscripten_get_heap_size(){return HEAP8.length}function __reallyNegative(x){return x<0||x===0&&1/x===-Infinity}function __formatString(format,varargs){assert((varargs&3)===0);var textIndex=format;var argIndex=varargs;function prepVararg(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}function getNextArg(type){var ret;argIndex=prepVararg(argIndex,type);if(type==="double"){ret=HEAPF64[argIndex>>3];argIndex+=8}else if(type=="i64"){ret=[HEAP32[argIndex>>2],HEAP32[argIndex+4>>2]];argIndex+=8}else{assert((argIndex&3)===0);type="i32";ret=HEAP32[argIndex>>2];argIndex+=4}return ret}var ret=[];var curr,next,currArg;while(1){var startTextIndex=textIndex;curr=HEAP8[textIndex>>0];if(curr===0)break;next=HEAP8[textIndex+1>>0];if(curr==37){var flagAlwaysSigned=false;var flagLeftAlign=false;var flagAlternative=false;var flagZeroPad=false;var flagPadSign=false;flagsLoop:while(1){switch(next){case 43:flagAlwaysSigned=true;break;case 45:flagLeftAlign=true;break;case 35:flagAlternative=true;break;case 48:if(flagZeroPad){break flagsLoop}else{flagZeroPad=true;break}case 32:flagPadSign=true;break;default:break flagsLoop}textIndex++;next=HEAP8[textIndex+1>>0]}var width=0;if(next==42){width=getNextArg("i32");textIndex++;next=HEAP8[textIndex+1>>0]}else{while(next>=48&&next<=57){width=width*10+(next-48);textIndex++;next=HEAP8[textIndex+1>>0]}}var precisionSet=false,precision=-1;if(next==46){precision=0;precisionSet=true;textIndex++;next=HEAP8[textIndex+1>>0];if(next==42){precision=getNextArg("i32");textIndex++}else{while(1){var precisionChr=HEAP8[textIndex+1>>0];if(precisionChr<48||precisionChr>57)break;precision=precision*10+(precisionChr-48);textIndex++}}next=HEAP8[textIndex+1>>0]}if(precision<0){precision=6;precisionSet=false}var argSize;switch(String.fromCharCode(next)){case"h":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==104){textIndex++;argSize=1}else{argSize=2}break;case"l":var nextNext=HEAP8[textIndex+2>>0];if(nextNext==108){textIndex++;argSize=8}else{argSize=4}break;case"L":case"q":case"j":argSize=8;break;case"z":case"t":case"I":argSize=4;break;default:argSize=null}if(argSize)textIndex++;next=HEAP8[textIndex+1>>0];switch(String.fromCharCode(next)){case"d":case"i":case"u":case"o":case"x":case"X":case"p":{var signed=next==100||next==105;argSize=argSize||4;currArg=getNextArg("i"+argSize*8);var argText;if(argSize==8){currArg=makeBigInt(currArg[0],currArg[1],next==117)}if(argSize<=4){var limit=Math.pow(256,argSize)-1;currArg=(signed?reSign:unSign)(currArg&limit,argSize*8)}var currAbsArg=Math.abs(currArg);var prefix="";if(next==100||next==105){argText=reSign(currArg,8*argSize,1).toString(10)}else if(next==117){argText=unSign(currArg,8*argSize,1).toString(10);currArg=Math.abs(currArg)}else if(next==111){argText=(flagAlternative?"0":"")+currAbsArg.toString(8)}else if(next==120||next==88){prefix=flagAlternative&&currArg!=0?"0x":"";if(currArg<0){currArg=-currArg;argText=(currAbsArg-1).toString(16);var buffer=[];for(var i=0;i<argText.length;i++){buffer.push((15-parseInt(argText[i],16)).toString(16))}argText=buffer.join("");while(argText.length<argSize*2)argText="f"+argText}else{argText=currAbsArg.toString(16)}if(next==88){prefix=prefix.toUpperCase();argText=argText.toUpperCase()}}else if(next==112){if(currAbsArg===0){argText="(nil)"}else{prefix="0x";argText=currAbsArg.toString(16)}}if(precisionSet){while(argText.length<precision){argText="0"+argText}}if(currArg>=0){if(flagAlwaysSigned){prefix="+"+prefix}else if(flagPadSign){prefix=" "+prefix}}if(argText.charAt(0)=="-"){prefix="-"+prefix;argText=argText.substr(1)}while(prefix.length+argText.length<width){if(flagLeftAlign){argText+=" "}else{if(flagZeroPad){argText="0"+argText}else{prefix=" "+prefix}}}argText=prefix+argText;argText.split("").forEach(function(chr){ret.push(chr.charCodeAt(0))});break}case"f":case"F":case"e":case"E":case"g":case"G":{currArg=getNextArg("double");var argText;if(isNaN(currArg)){argText="nan";flagZeroPad=false}else if(!isFinite(currArg)){argText=(currArg<0?"-":"")+"inf";flagZeroPad=false}else{var isGeneral=false;var effectivePrecision=Math.min(precision,20);if(next==103||next==71){isGeneral=true;precision=precision||1;var exponent=parseInt(currArg.toExponential(effectivePrecision).split("e")[1],10);if(precision>exponent&&exponent>=-4){next=(next==103?"f":"F").charCodeAt(0);precision-=exponent+1}else{next=(next==103?"e":"E").charCodeAt(0);precision--}effectivePrecision=Math.min(precision,20)}if(next==101||next==69){argText=currArg.toExponential(effectivePrecision);if(/[eE][-+]\d$/.test(argText)){argText=argText.slice(0,-1)+"0"+argText.slice(-1)}}else if(next==102||next==70){argText=currArg.toFixed(effectivePrecision);if(currArg===0&&__reallyNegative(currArg)){argText="-"+argText}}var parts=argText.split("e");if(isGeneral&&!flagAlternative){while(parts[0].length>1&&parts[0].indexOf(".")!=-1&&(parts[0].slice(-1)=="0"||parts[0].slice(-1)==".")){parts[0]=parts[0].slice(0,-1)}}else{if(flagAlternative&&argText.indexOf(".")==-1)parts[0]+=".";while(precision>effectivePrecision++)parts[0]+="0"}argText=parts[0]+(parts.length>1?"e"+parts[1]:"");if(next==69)argText=argText.toUpperCase();if(currArg>=0){if(flagAlwaysSigned){argText="+"+argText}else if(flagPadSign){argText=" "+argText}}}while(argText.length<width){if(flagLeftAlign){argText+=" "}else{if(flagZeroPad&&(argText[0]=="-"||argText[0]=="+")){argText=argText[0]+"0"+argText.slice(1)}else{argText=(flagZeroPad?"0":" ")+argText}}}if(next<97)argText=argText.toUpperCase();argText.split("").forEach(function(chr){ret.push(chr.charCodeAt(0))});break}case"s":{var arg=getNextArg("i8*");var argLength=arg?_strlen(arg):"(null)".length;if(precisionSet)argLength=Math.min(argLength,precision);if(!flagLeftAlign){while(argLength<width--){ret.push(32)}}if(arg){for(var i=0;i<argLength;i++){ret.push(HEAPU8[arg++>>0])}}else{ret=ret.concat(intArrayFromString("(null)".substr(0,argLength),true))}if(flagLeftAlign){while(argLength<width--){ret.push(32)}}break}case"c":{if(flagLeftAlign)ret.push(getNextArg("i8"));while(--width>0){ret.push(32)}if(!flagLeftAlign)ret.push(getNextArg("i8"));break}case"n":{var ptr=getNextArg("i32*");HEAP32[ptr>>2]=ret.length;break}case"%":{ret.push(curr);break}default:{for(var i=startTextIndex;i<textIndex+2;i++){ret.push(HEAP8[i>>0])}}}textIndex+=2}else{ret.push(curr);textIndex+=1}}return ret}function __emscripten_traverse_stack(args){if(!args||!args.callee||!args.callee.name){return[null,"",""]}var funstr=args.callee.toString();var funcname=args.callee.name;var str="(";var first=true;for(var i in args){var a=args[i];if(!first){str+=", "}first=false;if(typeof a==="number"||typeof a==="string"){str+=a}else{str+="("+typeof a+")"}}str+=")";var caller=args.callee.caller;args=caller?caller.arguments:[];if(first)str="";return[args,funcname,str]}function _emscripten_get_callstack_js(flags){var callstack=jsStackTrace();var iThisFunc=callstack.lastIndexOf("_emscripten_log");var iThisFunc2=callstack.lastIndexOf("_emscripten_get_callstack");var iNextLine=callstack.indexOf("\n",Math.max(iThisFunc,iThisFunc2))+1;callstack=callstack.slice(iNextLine);if(flags&8&&typeof emscripten_source_map==="undefined"){warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.');flags^=8;flags|=16}var stack_args=null;if(flags&128){stack_args=__emscripten_traverse_stack(arguments);while(stack_args[1].indexOf("_emscripten_")>=0)stack_args=__emscripten_traverse_stack(stack_args[0])}var lines=callstack.split("\n");callstack="";var newFirefoxRe=new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)");var firefoxRe=new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?");var chromeRe=new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");for(var l in lines){var line=lines[l];var jsSymbolName="";var file="";var lineno=0;var column=0;var parts=chromeRe.exec(line);if(parts&&parts.length==5){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]}else{parts=newFirefoxRe.exec(line);if(!parts)parts=firefoxRe.exec(line);if(parts&&parts.length>=4){jsSymbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]|0}else{callstack+=line+"\n";continue}}var cSymbolName=flags&32?demangle(jsSymbolName):jsSymbolName;if(!cSymbolName){cSymbolName=jsSymbolName}var haveSourceMap=false;if(flags&8){var orig=emscripten_source_map.originalPositionFor({line:lineno,column:column});haveSourceMap=orig&&orig.source;if(haveSourceMap){if(flags&64){orig.source=orig.source.substring(orig.source.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+="    at "+cSymbolName+" ("+orig.source+":"+orig.line+":"+orig.column+")\n"}}if(flags&16||!haveSourceMap){if(flags&64){file=file.substring(file.replace(/\\/g,"/").lastIndexOf("/")+1)}callstack+=(haveSourceMap?"     = "+jsSymbolName:"    at "+cSymbolName)+" ("+file+":"+lineno+":"+column+")\n"}if(flags&128&&stack_args[0]){if(stack_args[1]==jsSymbolName&&stack_args[2].length>0){callstack=callstack.replace(/\s+$/,"");callstack+=" with values: "+stack_args[1]+stack_args[2]+"\n"}stack_args=__emscripten_traverse_stack(stack_args[0])}}callstack=callstack.replace(/\s+$/,"");return callstack}function _emscripten_log_js(flags,str){if(flags&24){str=str.replace(/\s+$/,"");str+=(str.length>0?"\n":"")+_emscripten_get_callstack_js(flags)}if(flags&1){if(flags&4){console.error(str)}else if(flags&2){console.warn(str)}else{console.log(str)}}else if(flags&6){err(str)}else{out(str)}}function _emscripten_log(flags,varargs){var format=HEAP32[varargs>>2];varargs+=4;var str="";if(format){var result=__formatString(format,varargs);for(var i=0;i<result.length;++i){str+=String.fromCharCode(result[i])}}_emscripten_log_js(flags,str)}function abortOnCannotGrowMemory(requestedSize){abort("OOM")}function _emscripten_resize_heap(requestedSize){abortOnCannotGrowMemory(requestedSize)}function _init(){window.AudioContext=window.AudioContext||window.webkitAudioContext;var context=new window.AudioContext;if(/(iPhone|iPad|iPod|iOS|Safari)/i.test(navigator.userAgent)){function _unlock(){context.resume();var source=context.createBufferSource();source.buffer=context.createBuffer(1,1,22050);source.connect(context.destination);if(source.noteOn)source.noteOn(0);else source.start(0)}document.addEventListener("mousedown",_unlock,true);document.addEventListener("touchend",_unlock,true)}function H264bsdCanvas(canvas,forceNoGL,contextOptions){this.canvasElement=canvas;this.contextOptions=contextOptions;if(!forceNoGL)this.initContextGL();if(this.contextGL){this.initProgram();this.initBuffers();this.initTextures()}}H264bsdCanvas.prototype.isWebGL=function(){return!!this.contextGL};H264bsdCanvas.prototype.initContextGL=function(){var canvas=this.canvasElement;var gl=null;var validContextNames=["webgl","experimental-webgl","moz-webgl","webkit-3d"];var nameIndex=0;while(!gl&&nameIndex<validContextNames.length){var contextName=validContextNames[nameIndex];try{if(this.contextOptions){gl=canvas.getContext(contextName,this.contextOptions)}else{gl=canvas.getContext(contextName)}}catch(e){gl=null}if(!gl||typeof gl.getParameter!=="function"){gl=null}++nameIndex}this.contextGL=gl};H264bsdCanvas.prototype.initProgram=function(){var gl=this.contextGL;var vertexShaderScript=["attribute vec4 vertexPos;","attribute vec4 texturePos;","varying vec2 textureCoord;","void main()","{","gl_Position = vertexPos;","textureCoord = texturePos.xy;","}"].join("\n");var fragmentShaderScript=["precision highp float;","varying highp vec2 textureCoord;","uniform sampler2D ySampler;","uniform sampler2D uSampler;","uniform sampler2D vSampler;","const mat4 YUV2RGB = mat4","(","1.1643828125, 0, 1.59602734375, -.87078515625,","1.1643828125, -.39176171875, -.81296875, .52959375,","1.1643828125, 2.017234375, 0, -1.081390625,","0, 0, 0, 1",");","void main(void) {","highp float y = texture2D(ySampler,  textureCoord).r;","highp float u = texture2D(uSampler,  textureCoord).r;","highp float v = texture2D(vSampler,  textureCoord).r;","gl_FragColor = vec4(y, u, v, 1) * YUV2RGB;","}"].join("\n");var vertexShader=gl.createShader(gl.VERTEX_SHADER);gl.shaderSource(vertexShader,vertexShaderScript);gl.compileShader(vertexShader);if(!gl.getShaderParameter(vertexShader,gl.COMPILE_STATUS)){console.log("Vertex shader failed to compile: "+gl.getShaderInfoLog(vertexShader))}var fragmentShader=gl.createShader(gl.FRAGMENT_SHADER);gl.shaderSource(fragmentShader,fragmentShaderScript);gl.compileShader(fragmentShader);if(!gl.getShaderParameter(fragmentShader,gl.COMPILE_STATUS)){console.log("Fragment shader failed to compile: "+gl.getShaderInfoLog(fragmentShader))}var program=gl.createProgram();gl.attachShader(program,vertexShader);gl.attachShader(program,fragmentShader);gl.linkProgram(program);if(!gl.getProgramParameter(program,gl.LINK_STATUS)){console.log("Program failed to compile: "+gl.getProgramInfoLog(program))}gl.useProgram(program);this.shaderProgram=program};H264bsdCanvas.prototype.initBuffers=function(){var gl=this.contextGL;var program=this.shaderProgram;var vertexPosBuffer=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,vertexPosBuffer);gl.bufferData(gl.ARRAY_BUFFER,new Float32Array([1,1,-1,1,1,-1,-1,-1]),gl.STATIC_DRAW);var vertexPosRef=gl.getAttribLocation(program,"vertexPos");gl.enableVertexAttribArray(vertexPosRef);gl.vertexAttribPointer(vertexPosRef,2,gl.FLOAT,false,0,0);var texturePosBuffer=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,texturePosBuffer);gl.bufferData(gl.ARRAY_BUFFER,new Float32Array([1,0,0,0,1,1,0,1]),gl.STATIC_DRAW);var texturePosRef=gl.getAttribLocation(program,"texturePos");gl.enableVertexAttribArray(texturePosRef);gl.vertexAttribPointer(texturePosRef,2,gl.FLOAT,false,0,0);this.texturePosBuffer=texturePosBuffer};H264bsdCanvas.prototype.initTextures=function(){var gl=this.contextGL;var program=this.shaderProgram;var yTextureRef=this.initTexture();var ySamplerRef=gl.getUniformLocation(program,"ySampler");gl.uniform1i(ySamplerRef,0);this.yTextureRef=yTextureRef;var uTextureRef=this.initTexture();var uSamplerRef=gl.getUniformLocation(program,"uSampler");gl.uniform1i(uSamplerRef,1);this.uTextureRef=uTextureRef;var vTextureRef=this.initTexture();var vSamplerRef=gl.getUniformLocation(program,"vSampler");gl.uniform1i(vSamplerRef,2);this.vTextureRef=vTextureRef};H264bsdCanvas.prototype.initTexture=function(){var gl=this.contextGL;var textureRef=gl.createTexture();gl.bindTexture(gl.TEXTURE_2D,textureRef);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.bindTexture(gl.TEXTURE_2D,null);return textureRef};H264bsdCanvas.prototype.drawNextOutputPicture=function(width,height,croppingParams,data){var gl=this.contextGL;if(gl){this.drawNextOuptutPictureGL(width,height,croppingParams,data)}else{this.drawNextOuptutPictureRGBA(width,height,croppingParams,data)}};H264bsdCanvas.prototype.drawNextOuptutPictureGL=function(width,height,croppingParams,data){var gl=this.contextGL;var texturePosBuffer=this.texturePosBuffer;var yTextureRef=this.yTextureRef;var uTextureRef=this.uTextureRef;var vTextureRef=this.vTextureRef;this.contextGL.viewport(0,0,this.canvasElement.width,this.canvasElement.height);gl.activeTexture(gl.TEXTURE0);gl.bindTexture(gl.TEXTURE_2D,yTextureRef);gl.texImage2D(gl.TEXTURE_2D,0,gl.LUMINANCE,width,height,0,gl.LUMINANCE,gl.UNSIGNED_BYTE,data[0]);gl.activeTexture(gl.TEXTURE1);gl.bindTexture(gl.TEXTURE_2D,uTextureRef);gl.texImage2D(gl.TEXTURE_2D,0,gl.LUMINANCE,width/2,height/2,0,gl.LUMINANCE,gl.UNSIGNED_BYTE,data[1]);gl.activeTexture(gl.TEXTURE2);gl.bindTexture(gl.TEXTURE_2D,vTextureRef);gl.texImage2D(gl.TEXTURE_2D,0,gl.LUMINANCE,width/2,height/2,0,gl.LUMINANCE,gl.UNSIGNED_BYTE,data[2]);gl.drawArrays(gl.TRIANGLE_STRIP,0,4)};H264bsdCanvas.prototype.drawNextOuptutPictureRGBA=function(width,height,croppingParams,data){this.imageData.data.set(data);if(!croppingParams){this.ctx2d.putImageData(this.imageData,0,0)}else{this.ctx2d.putImageData(this.imageData,-croppingParams.left,-croppingParams.top,0,0,croppingParams.width,croppingParams.height)}};H264bsdCanvas.prototype.ctx2d=null;H264bsdCanvas.prototype.imageData=null;H264bsdCanvas.prototype.initRGB=function(width,height){this.ctx2d=this.canvasElement.getContext("2d");this.imageData=this.ctx2d.getImageData(0,0,width,height);this.clear=function(){this.ctx2d.clearRect(0,0,width,height)}};H264bsdCanvas.prototype.clear=function(){this.contextGL.clear(this.contextGL.COLOR_BUFFER_BIT)};window.WebGLCanvas=H264bsdCanvas;if(!Date.now)Date.now=function(){return(new Date).getTime()};window.H5LiveClient=Module.H5LCBase.extend("H5LC",{__construct:function(){this.__parent.__construct.call(this,this)},__destruct:function(){this.__parent.__destruct.call(this)},onError:function(err){console.log(this,err)},setStartTime:function(offset){console.log("first timestamp:",offset);var startTime=Date.now()-offset;this.timespan=function(t){return t-(Date.now()-startTime)};function playVideo(_this){_this.decodeVideoBuffer()}this.playVideoBuffer=function(t){return setTimeout(playVideo,t,this)}},timespan:function(t){this.setStartTime(t);return this.timespan(t)},resetTimeSpan:function(){delete this.timespan},play:function(url,canvas,forceNoGL,contextOptions){if(!this.webGLCanvas||this.webGLCanvas.canvasElement!=canvas){this.webGLCanvas=new H264bsdCanvas(canvas,forceNoGL,contextOptions)}var _this=this;var reconnectCount=0;var reconnectTime=2e3;console.log("H5LiverClient play",url);function setWebsocket(){this.$play(url);this.ws.onopen=function(){reconnectCount=0;reconnectTime=2e3;console.log("ws open")};this.ws.onclose=function(){_this.isPlaying=false;_this.ws=null;_this.$close();if(reconnectCount>3)return;reconnectCount++;console.warn("ws reconnect after "+(reconnectTime/1e3>>0)+" second");_this.reconnectId=setTimeout(function(){console.log("ws reconnecting :",reconnectCount);reconnectTime*=2;setWebsocket.call(_this)},reconnectTime)};this.ws.onerror=function(){console.warn("ws error")}}setWebsocket.call(this)},close:function(){clearTimeout(this.reconnectId);if(!this.isPlaying)return;console.log("close H5LiverClient");this.isPlaying=false;this.ws.onmessage=null;this.ws.onclose=null;this.ws.onerror=null;this.ws.close();this.ws=null;this.webGLCanvas.clear();this.$close();delete this.timespan},initAudio:function(frameCount,samplerate,channels,outputPtr){var isPlaying=false;var audioBuffers=[];var allFrameCount=frameCount*channels;if(!context)return false;var resampled=samplerate<22050;var audioBuffer=resampled?context.createBuffer(channels,frameCount<<1,samplerate<<1):context.createBuffer(channels,frameCount,samplerate);var audioOutputArray=HEAP16.subarray(outputPtr,outputPtr+allFrameCount);var playNextBuffer=function(){isPlaying=false;if(audioBuffers.length){playAudio(audioBuffers.shift())}if(audioBuffers.length>1)audioBuffers.shift()};var copyAudioOutputArray=resampled?function(target){for(var i=0;i<allFrameCount;i++){var j=i<<1;target[j]=target[j+1]=audioOutputArray[i]/32768}}:function(target){for(var i=0;i<allFrameCount;i++){target[i]=audioOutputArray[i]/32768}};var copyToCtxBuffer=channels>1?function(fromBuffer){for(var channel=0;channel<channels;channel++){var nowBuffering=audioBuffer.getChannelData(channel);if(fromBuffer){for(var i=0;i<frameCount;i++){nowBuffering[i]=fromBuffer[i*(channel+1)]}}else{for(var i=0;i<frameCount;i++){nowBuffering[i]=audioOutputArray[i*(channel+1)]/32768}}}}:function(fromBuffer){var nowBuffering=audioBuffer.getChannelData(0);if(fromBuffer)nowBuffering.set(fromBuffer);else copyAudioOutputArray(nowBuffering)};var playAudio=function(fromBuffer){if(isPlaying){var buffer=new Float32Array(resampled?allFrameCount*2:allFrameCount);copyAudioOutputArray(buffer);audioBuffers.push(buffer);return}isPlaying=true;copyToCtxBuffer(fromBuffer);var source=context.createBufferSource();source.buffer=audioBuffer;source.connect(context.destination);source.onended=playNextBuffer;source.start()};this.playAudio=playAudio},setVideoSize:function(w,h,dataPtr){if(this.webGLCanvas.isWebGL()){this.draw=function(){var y=HEAPU32[dataPtr];var u=HEAPU32[dataPtr+1];var v=HEAPU32[dataPtr+2];var outputArray=[HEAPU8.subarray(y,y+w*h),HEAPU8.subarray(u,u+(w*h>>2)),HEAPU8.subarray(v,v+(w*h>>2))];this.webGLCanvas.drawNextOutputPicture(w,h,this.croppingParams,outputArray)}}else{var outputArray=HEAPU8.subarray(dataPtr,dataPtr+(w*h<<2));this.webGLCanvas.initRGB(w,h);this.draw=function(){this.webGLCanvas.drawNextOutputPicture(w,h,this.croppingParams,outputArray)}}}})}function _llvm_exp2_f32(x){return Math.pow(2,x)}function _llvm_exp2_f64(a0){return _llvm_exp2_f32(a0)}function _llvm_trap(){abort("trap!")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}init_emval();PureVirtualError=Module["PureVirtualError"]=extendError(Error,"PureVirtualError");embind_init_charCodes();init_embind();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");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;i<array.length;i++){var chr=array[i];if(chr>255){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 decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";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(i<input.length);return output};function intArrayFromBase64(s){if(typeof ENVIRONMENT_IS_NODE==="boolean"&&ENVIRONMENT_IS_NODE){var buf;try{buf=Buffer.from(s,"base64")}catch(_){buf=new Buffer(s,"base64")}return new Uint8Array(buf.buffer,buf.byteOffset,buf.byteLength)}try{var decoded=decodeBase64(s);var bytes=new Uint8Array(decoded.length);for(var i=0;i<decoded.length;++i){bytes[i]=decoded.charCodeAt(i)}return bytes}catch(_){throw new Error("Converting base64 string to bytes failed.")}}function tryParseAsDataURI(filename){if(!isDataURI(filename)){return}return intArrayFromBase64(filename.slice(dataURIPrefix.length))}var asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Float32Array":Float32Array,"Float64Array":Float64Array};var asmLibraryArg={"a":abort,"b":setTempRet0,"c":getTempRet0,"d":ClassHandle,"e":ClassHandle_clone,"f":ClassHandle_delete,"g":ClassHandle_deleteLater,"h":ClassHandle_isAliasOf,"i":ClassHandle_isDeleted,"j":RegisteredClass,"k":RegisteredPointer,"l":RegisteredPointer_deleteObject,"m":RegisteredPointer_destructor,"n":RegisteredPointer_fromWireType,"o":RegisteredPointer_getPointee,"p":__ZSt18uncaught_exceptionv,"q":___assert_fail,"r":___cxa_allocate_exception,"s":___cxa_begin_catch,"t":___cxa_find_matching_catch,"u":___cxa_free_exception,"v":___cxa_pure_virtual,"w":___cxa_throw,"x":___gxx_personality_v0,"y":___resumeException,"z":___setErrNo,"A":___syscall140,"B":___syscall146,"C":___syscall6,"D":__embind_create_inheriting_constructor,"E":__embind_register_bool,"F":__embind_register_class,"G":__embind_register_class_class_function,"H":__embind_register_class_function,"I":__embind_register_class_property,"J":__embind_register_emval,"K":__embind_register_float,"L":__embind_register_integer,"M":__embind_register_memory_view,"N":__embind_register_std_string,"O":__embind_register_std_wstring,"P":__embind_register_void,"Q":__emscripten_traverse_stack,"R":__emval_addMethodCaller,"S":__emval_allocateDestructors,"T":__emval_as,"U":__emval_call,"V":__emval_call_method,"W":__emval_call_void_method,"X":__emval_decref,"Y":__emval_get_global,"Z":__emval_get_method_caller,"_":__emval_get_property,"$":__emval_incref,"aa":__emval_lookupTypes,"ab":__emval_new,"ac":__emval_new_cstring,"ad":__emval_new_object,"ae":__emval_register,"af":__emval_run_destructors,"ag":__emval_set_property,"ah":__emval_take_value,"ai":__formatString,"aj":__reallyNegative,"ak":_abort,"al":_clock,"am":_embind_repr,"an":_emscripten_get_callstack_js,"ao":_emscripten_get_heap_size,"ap":_emscripten_log,"aq":_emscripten_log_js,"ar":_emscripten_memcpy_big,"as":_emscripten_resize_heap,"at":_init,"au":_llvm_exp2_f32,"av":_llvm_exp2_f64,"aw":_llvm_trap,"ax":abortOnCannotGrowMemory,"ay":constNoSmartPtrRawPointerToWireType,"az":count_emval_handles,"aA":craftEmvalAllocator,"aB":craftInvokerFunction,"aC":createNamedFunction,"aD":downcastPointer,"aE":embind__requireFunction,"aF":embind_init_charCodes,"aG":emval_get_global,"aH":ensureOverloadTable,"aI":exposePublicSymbol,"aJ":extendError,"aK":floatReadValueFromPointer,"aL":flushPendingDeletes,"aM":flush_NO_FILESYSTEM,"aN":genericPointerToWireType,"aO":getBasestPointer,"aP":getInheritedInstance,"aQ":getInheritedInstanceCount,"aR":getLiveInheritedInstances,"aS":getShiftFromSize,"aT":getStringOrSymbol,"aU":getTypeName,"aV":get_first_emval,"aW":heap32VectorToArray,"aX":init_ClassHandle,"aY":init_RegisteredPointer,"aZ":init_embind,"a_":init_emval,"a$":integerReadValueFromPointer,"ba":makeClassHandle,"bb":makeLegalFunctionName,"bc":new_,"bd":nonConstNoSmartPtrRawPointerToWireType,"be":readLatin1String,"bf":registerInheritedInstance,"bg":registerType,"bh":replacePublicSymbol,"bi":requireHandle,"bj":requireRegisteredType,"bk":runDestructor,"bl":runDestructors,"bm":setDelayFunction,"bn":shallowCopyInternalPointer,"bo":simpleReadValueFromPointer,"bp":throwBindingError,"bq":throwInstanceAlreadyDeleted,"br":throwInternalError,"bs":throwUnboundTypeError,"bt":unregisterInheritedInstance,"bu":upcastPointer,"bv":validateThis,"bw":whenDependentTypesAreResolved,"bx":tempDoublePtr,"by":DYNAMICTOP_PTR};// EMSCRIPTEN_START_ASM
var asm=(/** @suppress {uselessCode} */ function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer),b=new global.Int16Array(buffer),c=new global.Int32Array(buffer),d=new global.Uint8Array(buffer),e=new global.Uint16Array(buffer),f=new global.Float32Array(buffer),g=new global.Float64Array(buffer),h=env.bx|0,i=env.by|0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=global.Math.sqrt,s=global.Math.pow,t=global.Math.cos,u=global.Math.sin,v=global.Math.log,w=global.Math.imul,x=global.Math.clz32,y=env.a,z=env.b,A=env.c,B=env.d,C=env.e,D=env.f,E=env.g,F=env.h,G=env.i,H=env.j,I=env.k,J=env.l,K=env.m,L=env.n,M=env.o,N=env.p,O=env.q,P=env.r,Q=env.s,R=env.t,S=env.u,T=env.v,U=env.w,V=env.x,W=env.y,X=env.z,Y=env.A,Z=env.B,_=env.C,$=env.D,aa=env.E,ba=env.F,ca=env.G,da=env.H,ea=env.I,fa=env.J,ga=env.K,ha=env.L,ia=env.M,ja=env.N,ka=env.O,la=env.P,ma=env.Q,na=env.R,oa=env.S,pa=env.T,qa=env.U,ra=env.V,sa=env.W,ta=env.X,ua=env.Y,va=env.Z,wa=env._,xa=env.$,ya=env.aa,za=env.ab,Aa=env.ac,Ba=env.ad,Ca=env.ae,Da=env.af,Ea=env.ag,Fa=env.ah,Ga=env.ai,Ha=env.aj,Ia=env.ak,Ja=env.al,Ka=env.am,La=env.an,Ma=env.ao,Na=env.ap,Oa=env.aq,Pa=env.ar,Qa=env.as,Ra=env.at,Sa=env.au,Ta=env.av,Ua=env.aw,Va=env.ax,Wa=env.ay,Xa=env.az,Ya=env.aA,Za=env.aB,_a=env.aC,$a=env.aD,ab=env.aE,bb=env.aF,cb=env.aG,db=env.aH,eb=env.aI,fb=env.aJ,gb=env.aK,hb=env.aL,ib=env.aM,jb=env.aN,kb=env.aO,lb=env.aP,mb=env.aQ,nb=env.aR,ob=env.aS,pb=env.aT,qb=env.aU,rb=env.aV,sb=env.aW,tb=env.aX,ub=env.aY,vb=env.aZ,wb=env.a_,xb=env.a$,yb=env.ba,zb=env.bb,Ab=env.bc,Bb=env.bd,Cb=env.be,Db=env.bf,Eb=env.bg,Fb=env.bh,Gb=env.bi,Hb=env.bj,Ib=env.bk,Jb=env.bl,Kb=env.bm,Lb=env.bn,Mb=env.bo,Nb=env.bp,Ob=env.bq,Pb=env.br,Qb=env.bs,Rb=env.bt,Sb=env.bu,Tb=env.bv,Ub=env.bw,Vb=124256,Wb=5367136,Xb=0.0;
// EMSCRIPTEN_START_FUNCS
function th(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=jg(e)|0;a[f>>0]=0;t=e+8|0;g=c[t>>2]|0;if(!g){g=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}if(!g)g=b+719|0;else{a[f>>0]=1;g=b+719|0;a[g>>0]=1;i=b+724|0;a[i>>0]=0;f=c[t>>2]|0;if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))lg(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}r=f&255;a[b>>0]=r;if(r<<24>>24){f=c[t>>2]|0;if(f>>>0<3){h=3-f|0;h=(c[e>>2]&(1<<f)+-1)<<h|(c[e+4>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>29;do if(!(a[e+20>>0]|0))if(f>>>0>3){c[t>>2]=f+-3;break}else{lg(e,3);break}while(0);f=h&255;a[b+3>>0]=f;r=h&255;a[b+5>>0]=a[117705+r>>0]|0;a[b+6>>0]=a[117713+r>>0]|0;switch(f<<24>>24){case 5:case 2:{a[i>>0]=1;break}default:{}}a[b+27>>0]=f}f=c[t>>2]|0;if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))lg(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}r=f&255;a[b+1>>0]=r;a:do if(r<<24>>24){h=c[t>>2]|0;if(h>>>0<3){f=3-h|0;f=(c[e>>2]&(1<<h)+-1)<<f|(c[e+4>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-h>>>29;do if(!(a[e+20>>0]|0))if(h>>>0>3){c[t>>2]=h+-3;break}else{lg(e,3);break}while(0);r=f&255;a[b+4>>0]=r;a[b+7>>0]=a[117705+(f&255)>>0]|0;switch(r<<24>>24){case 5:case 2:break;default:break a}a[i>>0]=1}while(0);f=c[t>>2]|0;if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))lg(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}a[b+2>>0]=f}if(!(a[g>>0]|0)){u=1;s=0;t=b+718|0;a[t>>0]=s;return u|0}g=c[t>>2]|0;do if(!g){g=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){lg(e,1);h=c[t>>2]|0;i=47;break}else{g=g&255;f=b+8|0;a[f>>0]=g;h=0;i=49;break}}else{h=g+-1|0;c[t>>2]=h;g=(c[e>>2]|0)>>>h&1;i=47}while(0);if((i|0)==47){g=g&255;f=b+8|0;a[f>>0]=g;if(h>>>0<2)i=49;else j=c[e>>2]<<32-h>>>30}if((i|0)==49){j=2-h|0;j=(c[e>>2]&(1<<h)+-1)<<j|(c[e+4>>2]|0)>>>(32-j|0)}r=e+20|0;do if(!(a[r>>0]|0))if(h>>>0>2){c[t>>2]=h+-2;f=g;break}else{lg(e,2);f=a[f>>0]|0;break}else f=g;while(0);g=a[(j&255)+(117721+((f&255)<<2))>>0]|0;q=b+9|0;a[q>>0]=g;if(f<<24>>24)if(!(g<<24>>24))g=0;else{k=e+4|0;j=1;do{i=j&255;f=c[t>>2]|0;if(f>>>0<5){h=5-f|0;h=(c[e>>2]&(1<<f)+-1)<<h|(c[k>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>27;do if(!(a[r>>0]|0))if(f>>>0>5){c[t>>2]=f+-5;break}else{lg(e,5);g=a[q>>0]|0;break}while(0);a[b+10+i>>0]=h+1;j=j+1<<24>>24}while((g&255)>=(j&255))}if(a[b>>0]|0)if(!(g<<24>>24))g=0;else{l=e+4|0;m=b+3|0;n=b+5|0;k=0;j=0;while(1){g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}g=g&255;a[b+16+j>>0]=g;h=a[n>>0]|0;i=b+140+(j*34|0)|0;g=g<<24>>24==0;b:do if((d[m>>0]|0)<3){if(g)f=0;else{if(!(h<<24>>24))break;i=h&255;h=0;while(1){f=0;do{g=c[t>>2]|0;do if(!g){g=(c[l>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);p=a[117729+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+140+(j*34|0)+h>>0]=f+31;h=h+1|0;if((h|0)==(i|0))break b}}do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[117785+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[i>>0]=f+31;if((h&255)>1){i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[117785+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+140+(j*34|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}}else{if(g)f=0;else{if(!(h<<24>>24))break;i=h&255;h=0;while(1){f=0;do{g=c[t>>2]|0;do if(!g){g=(c[l>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);p=a[117841+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+140+(j*34|0)+h>>0]=f+31;h=h+1|0;if((h|0)==(i|0))break b}}do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[117961+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[i>>0]=f+31;if((h&255)>1){i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[117961+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+140+(j*34|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}}while(0);f=k+1<<24>>24;g=a[q>>0]|0;if((f&255)<(g&255)){k=f;j=f&255}else break}}if(!((a[b+1>>0]|0)==0|g<<24>>24==0)){l=e+4|0;m=b+7|0;k=0;j=0;while(1){g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=g&255;a[b+21+j>>0]=p;h=a[m>>0]|0;i=b+310+(j*34|0)|0;if(!(p<<24>>24)){f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[118109+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[i>>0]=f+31;if((h&255)>1){i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[118109+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+310+(j*34|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}}else if(h<<24>>24){i=h&255;h=0;do{f=0;do{g=c[t>>2]|0;if(!g){g=(c[l>>2]|0)>>>31;if(!(a[r>>0]|0))lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}p=a[118081+(f<<1)+g>>0]|0;f=p<<24>>24}while(p<<24>>24>-1);a[b+310+(j*34|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}g=k+1<<24>>24;if((g&255)<(d[q>>0]|0)){k=g;j=g&255}else break}}do if(a[b+2>>0]|0){f=c[t>>2]|0;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[r>>0]|0))if(f>>>0>4){c[t>>2]=f+-4;break}else{lg(e,4);break}while(0);if((g&65535|0)==15){f=c[t>>2]|0;if(f>>>0<8){g=8-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>24;do if(!(a[r>>0]|0))if(f>>>0>8){c[t>>2]=f+-8;break}else{lg(e,8);break}while(0);g=(g&65535)+15|0}f=g<<3;g=f&65528;if(g>>>0>7){n=e+4|0;o=b+26|0;p=b+6|0;do{g=c[t>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[e>>2]&(1<<g)+-1)<<h|(c[n>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-g>>>30;do if(!(a[r>>0]|0))if(g>>>0>2){c[t>>2]=g+-2;break}else{lg(e,2);break}while(0);l=f+65534|0;m=jg(e)|0;do if(!((h&255)<<24>>24)){g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);k=g&255;a[o>>0]=k;do if(k<<24>>24){if(!(a[q>>0]|0))break;else{k=0;j=0}while(1){g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);f=g&255;a[b+28+j>>0]=f;h=a[p>>0]|0;i=b+480+(j*17|0)|0;do if(!(f<<24>>24)){f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[118151+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[i>>0]=f+31;if((h&255)<=1)break;i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[118151+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[b+480+(j*17|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}else{if(!(h<<24>>24))break;i=h&255;h=0;do{f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[118137+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[b+480+(j*17|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}while(0);g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);f=g&255;a[b+33+j>>0]=f;h=a[p>>0]|0;i=b+565+(j*17|0)|0;do if(!(f<<24>>24)){f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[118179+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[i>>0]=f+31;if((h&255)<=1)break;i=h&255;h=1;do{f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[118179+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[b+565+(j*17|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}else{if(!(h<<24>>24))break;i=h&255;h=0;do{f=0;do{g=c[t>>2]|0;do if(!g){g=(c[n>>2]|0)>>>31;if(a[r>>0]|0)break;lg(e,1)}else{g=g+-1|0;c[t>>2]=g;g=(c[e>>2]|0)>>>g&1}while(0);g=a[118165+(f<<1)+g>>0]|0;f=g<<24>>24}while(g<<24>>24>-1);a[b+565+(j*17|0)+h>>0]=f+31;h=h+1|0}while((h|0)!=(i|0))}while(0);g=k+1<<24>>24;if((g&255)<(d[q>>0]|0)){k=g;j=g&255}else break}}while(0);g=c[t>>2]|0;if(g|0){c[t>>2]=g+-1;break}if(a[r>>0]|0)break;lg(e,1)}while(0);f=(l&65535)-((jg(e)|0)-m&65535)|0;g=f&65535}while(g>>>0>7)}if(g|0?(u=c[t>>2]|0,(a[r>>0]|0)==0):0)if(u>>>0>g>>>0){c[t>>2]=u-g;break}else{lg(e,g);break}}while(0);u=(jg(e)|0)-s&65535;s=1;t=b+718|0;a[t>>0]=s;return u|0}function uh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=e&255;l=b+614+k|0;if(!(a[l>>0]|0))return;m=b+19|0;j=0;i=0;while(1){a:do if(!(a[b+53535+(k*3|0)+i>>0]|0)){e=a[m>>0]|0;if((e&255)>1){e=e&255;f=c[b+7388+(k<<9)+(i<<2)>>2]|0;g=1;do{h=b+7388+(k<<9)+(g<<3)+(i<<2)|0;f=f+(c[h>>2]|0)|0;c[h>>2]=f;g=g+1|0}while(g>>>0<e>>>0)}}else{h=a[m>>0]|0;e=h<<24>>24==0;if(!(j<<24>>24)){if(e)break;else{f=0;e=0}while(1){c[b+7388+(k<<9)+(e<<3)+(i<<2)>>2]=(c[b+7388+(k<<9)+(e<<3)>>2]|0)+(c[b+10460+(k<<8)+(e<<2)>>2]|0);e=f+1<<24>>24;if((e&255)<(h&255)){f=e;e=e&255}else break a}}if(!e){g=i+-1|0;e=h&255;f=0;do{h=b+7388+(k<<9)+(f<<3)+(i<<2)|0;c[h>>2]=(c[h>>2]|0)+(c[b+7388+(k<<9)+(f<<3)+(g<<2)>>2]|0);f=f+1|0}while(f>>>0<e>>>0)}}while(0);e=j+1<<24>>24;if((e&255)<(d[l>>0]|0)){j=e;i=e&255}else break}return}function vh(c,f){c=c|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;q=f&255;r=a[c+610+q>>0]|0;if(!(r<<24>>24))return;s=c+646+q|0;t=c+17|0;u=c+18|0;v=c+24|0;p=c+25|0;o=0;n=0;while(1){a:do if(!(a[c+53517+(q*9|0)+n>>0]|0)){h=(d[c+634+(q*6|0)+n>>0]|0)+(c+24)|0;if((d[h>>0]|0)>1){g=1;f=1;while(1){m=c+730+(q*640|0)+(f*10|0)+(n<<1)|0;f=(e[m>>1]|0)+(e[c+730+(q*640|0)+((f+-1|0)*10|0)+(n<<1)>>1]|0)|0;b[m>>1]=(f&32768|0)==0?f&65535:0;f=g+1<<24>>24;if((f&255)<(d[h>>0]|0)){g=f;f=f&255}else break}}}else{h=o<<24>>24==0;m=n+-1|0;f=a[(h?s:c+634+(q*6|0)+m|0)>>0]|0;g=a[c+634+(q*6|0)+n>>0]|0;if(g<<24>>24==f<<24>>24){i=(f&255)+(c+24)|0;if(!(a[i>>0]|0))break;if(h){g=0;f=0;while(1){m=c+730+(q*640|0)+(f*10|0)+(n<<1)|0;b[m>>1]=(e[m>>1]|0)+(e[c+2010+(q<<7)+(f<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(d[i>>0]|0)){g=f;f=f&255}else break a}}else{g=0;f=0;while(1){l=c+730+(q*640|0)+(f*10|0)+(n<<1)|0;b[l>>1]=(e[l>>1]|0)+(e[c+730+(q*640|0)+(f*10|0)+(m<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(d[i>>0]|0)){g=f;f=f&255}else break a}}}if(f<<24>>24==1&g<<24>>24==0){l=a[v>>0]|0;if(!(l<<24>>24))break;k=a[t>>0]|0;if(h){j=0;f=k;g=0;while(1){if(!(f<<24>>24))f=0;else{i=c+730+(q*640|0)+(g*10|0)+(n<<1)|0;h=a[c+90+g>>0]|0;g=0;f=0;while(1){if((a[c+154+f>>0]|0)==h<<24>>24)b[i>>1]=(e[i>>1]|0)+(e[c+2010+(q<<7)+(f<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(k&255)){g=f;f=f&255}else{f=k;break}}}g=j+1<<24>>24;if((g&255)<(l&255)){j=g;g=g&255}else break a}}else{j=0;f=k;g=0;while(1){if(!(f<<24>>24))f=0;else{i=c+730+(q*640|0)+(g*10|0)+(n<<1)|0;h=a[c+90+g>>0]|0;g=0;f=0;while(1){if((a[c+154+f>>0]|0)==h<<24>>24)b[i>>1]=(e[i>>1]|0)+(e[c+730+(q*640|0)+(f*10|0)+(m<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(k&255)){g=f;f=f&255}else{f=k;break}}}g=j+1<<24>>24;if((g&255)<(l&255)){j=g;g=g&255}else break a}}}if(f<<24>>24==0&g<<24>>24==1?(w=a[p>>0]|0,w<<24>>24):0){k=a[u>>0]|0;if(h){j=0;f=k;g=0;while(1){if(!(f<<24>>24))f=0;else{i=c+730+(q*640|0)+(g*10|0)+(n<<1)|0;h=a[c+154+g>>0]|0;g=0;f=0;while(1){if((d[c+90+f>>0]|0)<=(h&255)?(h&255)<(d[f+1+(c+90)>>0]|0):0)b[i>>1]=(e[i>>1]|0)+(e[c+2010+(q<<7)+(f<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(k&255)){g=f;f=f&255}else{f=k;break}}}g=j+1<<24>>24;if((g&255)<(w&255)){j=g;g=g&255}else break}}else{j=0;f=k;g=0;while(1){if(!(f<<24>>24))f=0;else{i=c+730+(q*640|0)+(g*10|0)+(n<<1)|0;h=a[c+154+g>>0]|0;g=0;f=0;while(1){if((d[c+90+f>>0]|0)<=(h&255)?(h&255)<(d[f+1+(c+90)>>0]|0):0)b[i>>1]=(e[i>>1]|0)+(e[c+730+(q*640|0)+(f*10|0)+(m<<1)>>1]|0);f=g+1<<24>>24;if((f&255)<(k&255)){g=f;f=f&255}else{f=k;break}}}g=j+1<<24>>24;if((g&255)<(w&255)){j=g;g=g&255}else break}}}}while(0);f=o+1<<24>>24;if((f&255)<(r&255)){o=f;n=f&255}else break}return}function wh(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=Vb;Vb=Vb+16|0;n=p;o=n+1|0;a[o>>0]=0;a[o+1>>0]=0;a[o+2>>0]=0;a[o+3>>0]=0;a[o+4>>0]=0;o=d[b+8>>0]|0;m=c&255;f=a[b+602+m>>0]|0;a[n>>0]=w(f&255,o)|0;c=a[b+604+m>>0]|0;l=(w(c&255,o)|0)&255;g=a[b+610+m>>0]|0;e=g&255;a[n+e>>0]=l;a:do switch(a[b+53451+m>>0]|0){case 0:switch(g<<24>>24){case 4:{k=(d[b+53417>>0]|0)>>>2;l=k&255;a[n+3>>0]=w(o*3|0,l)|0;a[n+2>>0]=w(k<<1&255,o)|0;a[n+1>>0]=w(o,l)|0;break a}case 2:{a[n+1>>0]=w((d[b+53417>>0]|0)>>>1&255,o)|0;break a}default:break a}case 1:{if((g&255)>1){h=e+-1|0;f=0;e=0;while(1){e=a[b+53453+(m*9|0)+e>>0]|0;if((c&255)<(e&255)){c=1;break}c=(c&255)-(e&255)|0;g=g+-1<<24>>24;a[n+(g<<24>>24)>>0]=w(c&255,o)|0;f=f+1<<24>>24;e=f&255;if((h|0)<=(e|0))break a;else c=c&255}Vb=p;return c|0}break}case 2:{if((g&255)>1){j=d[b+53419>>0]|0;k=(d[b+53418>>0]|0)+(d[b+53416>>0]|0)|0;i=e+-1|0;h=1;c=f;g=0;e=0;while(1){f=(d[b+53453+(m*9|0)+e>>0]|0)+(c&255)|0;c=w(f&255,o)|0;if((c+j|0)>>>0>k>>>0){c=1;break}a[n+(h<<24>>24)>>0]=c;g=g+1<<24>>24;e=g&255;if((i|0)<=(e|0))break a;else{h=h+1<<24>>24;c=f&255}}Vb=p;return c|0}break}case 3:{k=a[b+53513+m>>0]|0;b:do if(k<<24>>24){l=d[b+53419>>0]|0;j=(d[b+53418>>0]|0)+(d[b+53416>>0]|0)|0;i=1;e=f;h=0;while(1){e=(d[(h&255)+(b+53471+(m*9|0))>>0]|0)+(e&255)|0;f=w(e&255,o)|0;if((f+l|0)>>>0>j>>>0){c=1;break}a[n+(i<<24>>24)>>0]=f;h=h+1<<24>>24;if((h&255)>=(k&255))break b;else{i=i+1<<24>>24;e=e&255}}Vb=p;return c|0}while(0);h=a[b+53515+m>>0]|0;if(h<<24>>24){f=0;while(1){e=a[(f&255)+(b+53489+(m*9|0))>>0]|0;if((c&255)<(e&255)){c=1;break}c=(c&255)-(e&255)|0;g=g+-1<<24>>24;a[n+(g<<24>>24)>>0]=w(c&255,o)|0;f=f+1<<24>>24;if((f&255)>=(h&255))break a;else c=c&255}Vb=p;return c|0}break}default:{}}while(0);o=b+((m*6|0)+616)|0;a[o>>0]=a[n>>0]|0;a[o+1>>0]=a[n+1>>0]|0;a[o+2>>0]=a[n+2>>0]|0;a[o+3>>0]=a[n+3>>0]|0;a[o+4>>0]=a[n+4>>0]|0;a[o+5>>0]=a[n+5>>0]|0;o=0;Vb=p;return o|0}function xh(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;e=c&255;a[b+628+(e*3|0)>>0]=a[b+616+(e*6|0)>>0]|0;f=a[b+610+e>>0]|0;if(f<<24>>24==1){a[b+628+(e*3|0)+1>>0]=a[b+616+(e*6|0)+1>>0]|0;f=0;b=b+628+(e*3|0)+2|0;a[b>>0]=f;return}a:do switch(a[b+53451+e>>0]|0){case 0:{c=(f&255)>>>1&255;break}case 2:{c=a[b+53507+e>>0]|0;switch(c<<24>>24){case 0:{c=1;break a}case 1:{c=(f&255)+-1|0;break a}default:{c=(c&255)+-1|0;break a}}}case 3:case 1:{c=a[b+53507+e>>0]|0;d=f&255;if((c&255)>1){c=1-(c&255)+d|0;break a}else{c=d+255|0;break a}}default:c=0}while(0);d=c<<24>>24;a[b+628+(e*3|0)+1>>0]=a[(((d|0)>0?d:0)&255)+(b+616+(e*6|0))>>0]|0;f=a[(f&255)+(b+616+(e*6|0))>>0]|0;b=b+628+(e*3|0)+2|0;a[b>>0]=f;return}function yh(b,c,e){b=b|0;c=c|0;e=e|0;var f=0;f=a[119574+((Bg(e)|0)&255)>>0]|0;e=Bg(e)|0;f=f&255;if(!(c<<24>>24)){c=d[119694+(b&255)>>0]|0;c=c+f|0;c=c&255;return c|0}else{c=a[(b&255)+(119598+(d[119586+(e&255)>>0]<<4))>>0]|0;c=c+f|0;c=c&255;return c|0}return 0}function zh(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;f=b&255;switch(b<<24>>24){case 15:{c=(e&255)*3|0;c=(c>>>0<64?c:64)&255;return c|0}case 14:{if((e&255)>32){c=64;return c|0}c=(e&255)<<1&255;return c|0}default:{e=d[119394+((Bg(c)|0)&255)>>0]|0;g=(Bg(c)|0)&255;b=f>>>0<13?f:13;if(((a[119406+(g*14|0)+b>>0]|0)+e|0)>64){g=64;return g|0}g=(d[119406+(((Bg(c)|0)&255)*14|0)+b>>0]|0)+e&255;return g|0}}return 0}function Ah(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=Vb;Vb=Vb+256|0;k=l;fl(k|0,0,256)|0;if((f&255)<=(e&255)){a[b+16>>0]=0;k=1;Vb=l;return k|0}h=(f&255)-(e&255)|0;if(!(g<<24>>24))f=h&-2;else f=h+2>>2<<1;j=f>>>0<63?f:63;if(!j){k=1;Vb=l;return k|0}i=g<<24>>24?2:1;h=h-(w(j,i)|0)|0;f=0;g=0;do{c[k+(g<<2)>>2]=i;f=f+1<<24>>24;g=f&255}while(j>>>0>g>>>0);if(h|0){f=(h|0)>0;g=f?-1:1;f=f?j+255|0:0;while(1){f=f&255;i=k+(f<<2)|0;c[i>>2]=(c[i>>2]|0)-g;h=h+g|0;if(!h)break;else f=f+g|0}}a[b+26>>0]=e;f=1;h=1;do{e=h+-1|0;a[b+26+h>>0]=(c[k+(e<<2)>>2]|0)+(d[b+26+e>>0]|0);f=f+1<<24>>24;h=f&255}while(j>>>0>=h>>>0);a[b+16>>0]=(j|0)<64?j:64;k=0;Vb=l;return k|0}function Bh(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0.0,l=0.0,m=0,n=0.0,o=0,p=0.0,q=0,r=0,t=0,u=0,w=0,x=0,y=0,z=0;z=Vb;Vb=Vb+1024|0;t=z+768|0;u=z+512|0;w=z+256|0;y=z;fl(t|0,0,256)|0;fl(u|0,0,256)|0;fl(w|0,0,256)|0;fl(y|0,0,256)|0;m=e&255;if((f&255)<=(e&255)){a[b+16>>0]=0;b=1;Vb=z;return b|0}p=+(f&255);l=+(e&255);o=p/l>2.2449;r=o?m<<1&255:f;n=+(d[119391+((g&255)+-1)>>0]|0);i=+(r&255);j=i/l;x=~~(+v(+j)*n/.6931471824645996+.5)<<1&254;x=x>>>0<63?x:63;if((x|0)<1){b=1;Vb=z;return b|0}k=+s(+j,+(1.0/+(x&255)));e=0;f=~~(l+.5);j=l;h=0;do{j=j*k;g=f;f=~~(j+.5);c[t+(h<<2)>>2]=f-g;e=e+1<<24>>24;h=e&255}while((x|0)>=(h|0));mj(t,x,4,3);c[w>>2]=m;h=1;e=1;do{g=e+-1|0;m=c[t+(g<<2)>>2]|0;c[w+(e<<2)>>2]=m+(c[w+(g<<2)>>2]|0);h=h+1<<24>>24;if(!m){h=1;q=26;break}e=h&255}while((x|0)>=(e|0));if((q|0)==26){Vb=z;return h|0}if(!o){h=0;e=0;do{a[b+26+e>>0]=c[w+(e<<2)>>2];h=h+1<<24>>24;e=h&255}while((x|0)>=(e|0));a[b+16>>0]=(x|0)<64?x:64;b=0;Vb=z;return b|0}j=p/i;m=~~(+v(+j)*n/.9010912775993347+.5)<<1&254;m=m>>>0<63?m:63;j=+s(+j,+(1.0/+(m&255)));g=m+-1|0;if((m|0)>0){f=~~(i+.5);h=0;e=0;do{i=i*j;q=f;f=~~(i+.5);c[u+(e<<2)>>2]=f-q;h=h+1<<24>>24;e=h&255}while((m|0)>(e|0));e=u;f=c[u>>2]|0}else{e=u;f=0}h=t+(x+-1<<2)|0;if((f|0)<(c[h>>2]|0)){mj(u,m+1|0,4,3);q=c[h>>2]|0;o=c[e>>2]|0;c[e>>2]=q;t=u+(g<<2)|0;c[t>>2]=o-q+(c[t>>2]|0)}mj(u,m,4,3);c[y>>2]=r&255;a:do if((m|0)>=1){h=1;e=1;while(1){r=e+-1|0;t=c[u+(r<<2)>>2]|0;c[y+(e<<2)>>2]=t+(c[y+(r<<2)>>2]|0);h=h+1<<24>>24;if(!t){h=1;break}e=h&255;if((m|0)<(e|0))break a}Vb=z;return h|0}while(0);f=m+x|0;f=(f>>>0<64?f:64)&255;a[b+16>>0]=f;h=0;e=0;do{a[b+26+e>>0]=c[w+(e<<2)>>2];h=h+1<<24>>24;e=h&255}while((x|0)>=(e|0));e=x+1|0;h=e&255;if((f&255)<(h&255)){b=0;Vb=z;return b|0}while(1){a[b+26+e>>0]=c[y+(e-x<<2)>>2];e=h+1<<24>>24;if((e&255)>(f&255)){h=0;break}else{h=e;e=e&255}}Vb=z;return h|0}function Ch(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=a[b+16>>0]|0;h=c&255;if((f&255)<=(c&255)){b=1;return b|0}i=(f&255)-h|0;g=i&255;a[b+17>>0]=g;l=(i>>>1&127)+(i&1)|0;k=l&255;a[b+18>>0]=k;a[b+24>>0]=k;a[b+25>>0]=g;f=0;c=0;while(1){a[b+154+c>>0]=a[c+h+(b+26)>>0]|0;c=f+1<<24>>24;if((c&255)>(g&255))break;else{f=c;c=c&255}}h=a[b+154>>0]|0;c=h&255;f=(d[(i&255)+(b+154)>>0]|0)-c|0;a[b+15>>0]=f;a[b+14>>0]=h;if((h&255)>32){b=1;return b|0}if(((f&255)+c|0)>>>0>64){b=1;return b|0}g=i&1;f=0;c=0;while(1){j=f<<24>>24==0?0:(c<<1)-g&255;a[b+90+c>>0]=a[(j&255)+(b+154)>>0]|0;c=f+1<<24>>24;if((c&255)>(k&255))break;else{f=c;c=c&255}}k=b+19|0;a[k>>0]=0;c=a[b+53437>>0]|0;if(!(c<<24>>24))h=1;else{h=~~(+v(+(+(e&255)/+(h&255)))*+(c&255)/.6931471824645996+.5);h=((h|0)>1?h:1)&255;a[k>>0]=h;h=(h&255)<5?h:5}a[k>>0]=h;i=h&255;g=0;c=j;f=0;while(1){if(!(g<<24>>24))c=0;else{c=c&255;c=((l-c|0)/(1-f+i|0)|0)+c&255}a[b+218+f>>0]=a[(c&255)+(b+90)>>0]|0;f=g+1<<24>>24;if((f&255)>(h&255)){c=0;break}else{g=f;f=f&255}}while(1){a:do if(h<<24>>24){g=0;f=0;while(1){if(c>>>0>=(d[b+218+f>>0]|0)>>>0?c>>>0<(d[f+1+(b+218)>>0]|0)>>>0:0)break;f=g+1<<24>>24;if((f&255)<(h&255)){g=f;f=f&255}else break a}a[b+538+c>>0]=g}while(0);c=c+1|0;if((c|0)==64){c=0;break}h=a[k>>0]|0}return c|0}function Dh(a,b){a=a|0;b=b|0;return (c[a>>2]|0)-(c[b>>2]|0)|0}function Eh(d){d=d|0;var e=0,f=0,g=0;e=og(8)|0;f=(d&255)*80|0;g=og(f)|0;c[e>>2]=g;fl(g|0,0,f|0)|0;b[e+4>>1]=0;a[e+6>>0]=d;return e|0}function Fh(d){d=d|0;var e=0,f=0,g=0;e=og(8)|0;f=(d&255)*160|0;g=og(f)|0;c[e>>2]=g;fl(g|0,0,f|0)|0;b[e+4>>1]=0;a[e+6>>0]=d;return e|0}function Gh(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=f+8|0;h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[f+20>>0]|0))lg(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}if(h|0){f=32;return f|0}h=c[p>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[f>>2]&(1<<h)+-1)<<i|(c[f+4>>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-h>>>30;o=f+20|0;do if(!(a[o>>0]|0))if(h>>>0>2){h=h+-2|0;c[p>>2]=h;i=i&255;j=e+4|0;a[j>>0]=i;l=14;break}else{lg(f,2);h=c[p>>2]|0;l=13;break}else l=13;while(0);if((l|0)==13){i=i&255;j=e+4|0;a[j>>0]=i;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0)){lg(f,1);k=j;i=a[j>>0]|0}else k=j}else l=14}if((l|0)==14){h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1;k=j}a[e+13>>0]=h;m=b+4|0;if((a[m>>0]|0)==23)if(!(i<<24>>24))l=35;else{f=32;return f|0}else if(i<<24>>24==2){h=c[p>>2]|0;if(h>>>0<4){i=4-h|0;i=(c[f>>2]&(1<<h)+-1)<<i|(c[f+4>>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-h>>>28;do if(!(a[o>>0]|0))if(h>>>0>4){j=h+-4|0;c[p>>2]=j;break}else{lg(f,4);j=c[p>>2]|0;break}else j=h;while(0);a[e>>0]=i;if(j>>>0<7){h=7-j|0;h=(c[f>>2]&(1<<j)+-1)<<h|(c[f+4>>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-j>>>25;do if(!(a[o>>0]|0))if(j>>>0>7){c[p>>2]=j+-7;break}else{lg(f,7);break}while(0);a[e+14>>0]=h}else l=35;if((l|0)==35){i=c[p>>2]|0;if(i>>>0<6){h=6-i|0;h=(c[f>>2]&(1<<i)+-1)<<h|(c[f+4>>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-i>>>26;do if(!(a[o>>0]|0))if(i>>>0>6){c[p>>2]=i+-6;break}else{lg(f,6);break}while(0);a[e>>0]=h}h=Ai(b,e)|0;if(h<<24>>24){f=h;return f|0}if((d[e>>0]|0)>(d[e+1>>0]|0)){f=16;return f|0}if((a[k>>0]|0)==2){f=0;return f|0}h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))lg(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}l=h&255;a[e+9042>>0]=l;if(!(l<<24>>24)){f=0;return f|0}h=a[m>>0]|0;if(h<<24>>24==1){g=a[e>>0]|0;h=b+3|0;if((g&255)<((Dg(a[h>>0]|0)|0)&255))j=a[e>>0]|0;else j=Dg(a[h>>0]|0)|0;a[e+10221>>0]=j;h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))lg(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}b=h&255;a[e+10222>>0]=b;if(b<<24>>24){i=c[p>>2]|0;if(i>>>0<5){h=5-i|0;h=(c[f>>2]&(1<<i)+-1)<<h|(c[f+4>>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-i>>>27;do if(!(a[o>>0]|0))if(i>>>0>5){c[p>>2]=i+-5;break}else{lg(f,5);break}while(0);a[e+10223>>0]=h}if(!(j<<24>>24)){f=0;return f|0}k=f+4|0;j=j&255;i=0;do{h=c[p>>2]|0;if(!h){h=(c[k>>2]|0)>>>31;if(!(a[o>>0]|0))lg(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}a[e+10224+i>>0]=h;i=i+1|0}while((i|0)!=(j|0));h=0;return h|0}do if((h&255)>=17){if(g<<24>>24){f=0;return f|0}}else{h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))lg(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}l=h&255;a[e+10277>>0]=l;if(l<<24>>24?(n=Hh(b,e,e+10276|0,f)|0,n<<24>>24):0){f=n;return f|0}if(!(g<<24>>24)){if((d[m>>0]|0)>16)break;else h=0;return h|0}h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))lg(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}p=h&255;a[e+10359>>0]=p;if(!(p<<24>>24)){f=0;return f|0}f=Hh(b,e,e+10358|0,f)|0;return f|0}while(0);h=c[p>>2]|0;if(!h){h=(c[f+4>>2]|0)>>>31;if(!(a[o>>0]|0))lg(f,1)}else{h=h+-1|0;c[p>>2]=h;h=(c[f>>2]|0)>>>h&1}p=h&255;a[e+10277>>0]=p;if(!(p<<24>>24)){f=0;return f|0}Hh(b,e,e+10276|0,f)|0;f=0;return f|0}function Hh(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=h+2|0;b[n>>1]=0;o=i+8|0;if((a[f+4>>0]|0)==23){k=c[o>>2]|0;if(!k)j=c[i+4>>2]|0;else j=c[i>>2]<<32-k;j=j>>>31;do if(!(a[i+20>>0]|0))if(k>>>0>1){c[o>>2]=k+-1;break}else{lg(i,1);break}while(0);p=j&255;a[h+4>>0]=p;if(!(p<<24>>24))j=b[n>>1]|0;else{l=10;m=11}}else{l=11;m=11}if((m|0)==11){k=c[o>>2]|0;if(k>>>0<l>>>0){j=l-k|0;j=(c[i>>2]&(1<<k)+-1)<<j|(c[i+4>>2]|0)>>>(32-j|0)}else j=c[i>>2]<<32-k>>>(32-l|0);do if(!(a[i+20>>0]|0))if(k>>>0>l>>>0){c[o>>2]=k-l;break}else{lg(i,l);break}while(0);j=j&65535;b[n>>1]=j}if(e[f+10>>1]<<1>>>0<(j&65535)>>>0){i=18;return i|0}f=i+8|0;k=c[f>>2]|0;if(k>>>0<3){j=3-k|0;j=(c[i>>2]&(1<<k)+-1)<<j|(c[i+4>>2]|0)>>>(32-j|0)}else j=c[i>>2]<<32-k>>>29;p=i+20|0;do if(!(a[p>>0]|0))if(k>>>0>3){c[f>>2]=k+-3;break}else{lg(i,3);break}while(0);a[h+5>>0]=j;if((a[g+4>>0]|0)!=2){j=a[g>>0]|0;j=(j&255)<40?j:40;a[h>>0]=j;if(!(j<<24>>24)){i=0;return i|0}n=i+4|0;m=0;do{l=m&255;k=c[f>>2]|0;if(!k){k=(c[n>>2]|0)>>>31;if(!(a[p>>0]|0)){lg(i,1);j=a[h>>0]|0}}else{k=k+-1|0;c[f>>2]=k;k=(c[i>>2]|0)>>>k&1}a[h+6+l>>0]=k;m=m+1<<24>>24}while((m&255)<(j&255));j=0;return j|0}n=g+3|0;if(!(a[n>>0]|0)){i=0;return i|0}o=i+4|0;m=0;l=0;while(1){j=c[f>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[p>>0]|0))lg(i,1)}else{j=j+-1|0;c[f>>2]=j;j=(c[i>>2]|0)>>>j&1}g=j&255;a[h+57+l>>0]=g;if(g<<24>>24){j=c[f>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[p>>0]|0))lg(i,1)}else{j=j+-1|0;c[f>>2]=j;j=(c[i>>2]|0)>>>j&1}g=j&255;a[h+65+l>>0]=g;if(g<<24>>24){k=c[f>>2]|0;if(k>>>0<4){j=4-k|0;j=(c[i>>2]&(1<<k)+-1)<<j|(c[o>>2]|0)>>>(32-j|0)}else j=c[i>>2]<<32-k>>>28;do if(!(a[p>>0]|0))if(k>>>0>4){c[f>>2]=k+-4;break}else{lg(i,4);break}while(0);a[h+73+l>>0]=j}}j=m+1<<24>>24;if((j&255)<(d[n>>0]|0)){m=j;l=j&255}else{j=0;break}}return j|0}function Ih(f,g,h,i,j){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;F=h+8|0;k=c[F>>2]|0;if(k>>>0<8){l=8-k|0;l=(c[h>>2]&(1<<k)+-1)<<l|(c[h+4>>2]|0)>>>(32-l|0)}else l=c[h>>2]<<32-k>>>24;D=h+20|0;do if(!(a[D>>0]|0))if(k>>>0>8){c[F>>2]=k+-8;break}else{lg(h,8);break}while(0);B=i+7810|0;a[B>>0]=l;if((a[g+5>>0]|0)==0?(m=Gh(f,i,h,0)|0,m<<24>>24):0){j=m;return j|0}H=i+4|0;s=(a[H>>0]|0)==2?3:5;G=i+2|0;k=a[G>>0]|0;a:do if(k<<24>>24){u=f+6|0;v=h+4|0;x=i+9038|0;y=32-s|0;z=(1<<s)+255&255;A=i+9037|0;t=0;l=a[i>>0]|0;r=0;b:while(1){if(!(l<<24>>24)){a[i+7802+r>>0]=0;l=0}else{q=0;l=0;o=0;while(1){if(a[D>>0]|0){k=14;C=168;break b}g=(a[u>>0]|0)==0?4:5;m=c[F>>2]|0;if(m>>>0<g>>>0){k=g-m|0;k=(c[h>>2]&(1<<m)+-1)<<k|(c[v>>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-m>>>(32-g|0);if(m>>>0>g>>>0)c[F>>2]=m-g;else lg(h,g);k=k&255;n=q&255;p=i+2042+(r*120|0)+n|0;a[p>>0]=k;switch(k<<24>>24){case 12:{k=32;C=168;break b}case 13:{a[A>>0]=1;k=a[p>>0]|0;break}default:{}}if((k&-2)<<24>>24==14)a[x>>0]=1;if((a[u>>0]|0)!=0?(m=a[p>>0]|0,m<<24>>24==11|(m+-16&255)<17):0)k=1;else C=28;do if((C|0)==28){C=0;g=c[F>>2]|0;if(g>>>0<s>>>0){k=s-g|0;k=(c[h>>2]&(1<<g)+-1)<<k|(c[v>>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-g>>>y;if(!(a[D>>0]|0))if(g>>>0>s>>>0){c[F>>2]=g-s;break}else{lg(h,s);break}}while(0);k=k&255;if((k|0)==(z|0)){k=z;do{m=c[F>>2]|0;if(m>>>0<s>>>0){g=s-m|0;g=(c[h>>2]&(1<<m)+-1)<<g|(c[v>>2]|0)>>>(32-g|0)}else g=c[h>>2]<<32-m>>>y;do if(!(a[D>>0]|0))if(m>>>0>s>>>0){c[F>>2]=m-s;break}else{lg(h,s);break}while(0);m=g&255;k=m+(k&65535)|0}while((m|0)==(z|0))}b[i+3002+(r*240|0)+(n<<1)>>1]=l&255;g=(k&65535)+o|0;b[i+4922+(r*240|0)+(n<<1)>>1]=g;if((a[H>>0]|0)==2){if((q&255)>119|g>>>0>120){k=15;C=168;break b}}else if((q&255)>50|g>>>0>51){k=15;C=168;break b}k=l&255;if(g>>>0>k>>>0)do{a[i+6842+(r*120|0)+k>>0]=a[p>>0]|0;l=l+1<<24>>24;k=l&255}while(g>>>0>k>>>0);l=g&255;q=q+1<<24>>24;k=a[i>>0]|0;if((k&255)<=(l&255))break;else o=g&255}a[i+7802+r>>0]=q;if(k<<24>>24!=l<<24>>24){k=32;C=168;break}k=a[G>>0]|0}g=t+1<<24>>24;if((g&255)<(k&255)){t=g;r=g&255}else{l=k;break a}}if((C|0)==168)return k|0}else l=0;while(0);u=f+7|0;c:do if(!(a[u>>0]|0)){k=a[B>>0]|0;if(l<<24>>24){t=h+4|0;p=0;m=k&255;g=1;s=0;n=(k&255)+65446&65535;k=a[i>>0]|0;r=0;d:while(1){if(!(k<<24>>24))k=0;else{q=0;o=0;while(1){switch(a[i+6842+(r*120|0)+o>>0]|0){case 0:{k=0;break}case 14:case 15:{k=(p&65535)+65476+((mi(h)|0)<<24>>24)&65535;p=k;break}case 13:{if(!(g<<24>>24))k=((mi(h)|0)<<24>>24)+65476|0;else{l=c[F>>2]|0;if(l>>>0<9){k=9-l|0;k=(c[h>>2]&(1<<l)+-1)<<k|(c[t>>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-l>>>23;do if(!(a[D>>0]|0))if(l>>>0>9){c[F>>2]=l+-9;break}else{lg(h,9);break}while(0);k=(k<<16>>16)+-256|0}k=k+(n&65535)&65535;n=k;g=0;break}default:{b[i+7812+(r*102|0)+(o<<1)>>1]=0;C=(m&65535)+65476+((mi(h)|0)<<24>>24)|0;k=C&65535;if(C<<16>>>0>16711680){k=4;break d}else m=k}}b[i+7812+(r*102|0)+(o<<1)>>1]=k;l=q+1<<24>>24;k=a[i>>0]|0;if((l&255)<(k&255)){q=l;o=l&255}else break}l=a[G>>0]|0}o=s+1<<24>>24;if((o&255)<(l&255)){s=o;r=o&255}else break c}return k|0}}else{k=ni(i,h)|0;if(k<<24>>24){j=k;return j|0}}while(0);k=c[F>>2]|0;if(!k){k=(c[h+4>>2]|0)>>>31;if(!(a[D>>0]|0))lg(h,1)}else{k=k+-1|0;c[F>>2]=k;k=(c[h>>2]|0)>>>k&1}C=k&255;x=i+9039|0;a[x>>0]=C;if(C<<24>>24){k=c[F>>2]|0;if(k>>>0<2){l=2-k|0;l=(c[h>>2]&(1<<k)+-1)<<l|(c[h+4>>2]|0)>>>(32-l|0)}else l=c[h>>2]<<32-k>>>30;do if(!(a[D>>0]|0))if(k>>>0>2){k=k+-2|0;c[F>>2]=k;break}else{lg(h,2);k=c[F>>2]|0;break}while(0);o=i+9043|0;a[o>>0]=l;if(k>>>0<6){l=6-k|0;l=(c[h>>2]&(1<<k)+-1)<<l|(c[h+4>>2]|0)>>>(32-l|0)}else l=c[h>>2]<<32-k>>>26;do if(!(a[D>>0]|0))if(k>>>0>6){c[F>>2]=k+-6;break}else{lg(h,6);break}while(0);a[i+9044>>0]=l;if((l&255)>>>0>(d[i+1>>0]|0)>>>0){j=16;return j|0}n=h+4|0;m=0;g=0;while(1){l=c[F>>2]|0;if(l>>>0<5){k=5-l|0;k=(c[h>>2]&(1<<l)+-1)<<k|(c[n>>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-l>>>27;do if(!(a[D>>0]|0))if(l>>>0>5){c[F>>2]=l+-5;break}else{lg(h,5);break}while(0);a[i+9045+g>>0]=k;l=c[F>>2]|0;if(l>>>0<4){k=4-l|0;k=(c[h>>2]&(1<<l)+-1)<<k|(c[n>>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-l>>>28;do if(!(a[D>>0]|0))if(l>>>0>4){c[F>>2]=l+-4;break}else{lg(h,4);break}while(0);a[i+9049+g>>0]=k;k=m+1<<24>>24;if((d[o>>0]|0)<(k&255))break;else{m=k;g=k&255}}}k=c[F>>2]|0;if(!k){k=(c[h+4>>2]|0)>>>31;if(!(a[D>>0]|0))lg(h,1)}else{k=k+-1|0;c[F>>2]=k;k=(c[h>>2]|0)>>>k&1}C=k&255;n=i+9040|0;a[n>>0]=C;if(C<<24>>24?(d[f+4>>0]|0)<17:0)oi(i,i+9053|0,h);k=c[F>>2]|0;if(!k){k=(c[h+4>>2]|0)>>>31;if(!(a[D>>0]|0))lg(h,1)}else{k=k+-1|0;c[F>>2]=k;k=(c[h>>2]|0)>>>k&1}C=k&255;a[i+9041>>0]=C;if(C<<24>>24){j=1;return j|0}m=f+8|0;if(a[m>>0]|0){k=c[F>>2]|0;if(k>>>0<14){l=14-k|0;l=(c[h>>2]&(1<<k)+-1)<<l|(c[h+4>>2]|0)>>>(32-l|0)}else l=c[h>>2]<<32-k>>>18;do if(!(a[D>>0]|0))if(k>>>0>14){c[F>>2]=k+-14;break}else{lg(h,14);break}while(0);g=i+10440|0;b[g>>1]=l;k=l&65535;if((a[f+5>>0]|0)==2){if(k>>>0>6144)b[g>>1]=6144}else if(k>>>0>12288)b[g>>1]=12288;l=c[F>>2]|0;if(l>>>0<6){k=6-l|0;k=(c[h>>2]&(1<<l)+-1)<<k|(c[h+4>>2]|0)>>>(32-k|0)}else k=c[h>>2]<<32-l>>>26;do if(!(a[D>>0]|0))if(l>>>0>6){c[F>>2]=l+-6;break}else{lg(h,6);break}while(0);a[i+10442>>0]=(k&255)>>>0>48?49:k&255}if(a[u>>0]|0?(E=pi(i,h)|0,E<<24>>24):0){j=E;return j|0}if((d[f+4>>0]|0)>16?a[n>>0]|0:0)oi(i,i+9053|0,h);e:do if(!(a[m>>0]|0)){k=a[G>>0]|0;if(k<<24>>24){u=(e[f+10>>1]|0)>>>3&65535;t=0;g=0;v=0;f:while(1){s=g&255;r=i+7802+v|0;l=a[r>>0]|0;if(l<<24>>24){q=0;k=(w(s,u)|0)&65535;g=0;do{p=a[i+2042+(v*120|0)+g>>0]|0;g:do switch(p<<24>>24){case 14:case 15:case 13:case 0:{k=(e[i+16+(v*240|0)+(e[i+4922+(v*240|0)+(g<<1)>>1]<<1)>>1]|0)+(k&65535)-(e[i+16+(v*240|0)+(e[i+3002+(v*240|0)+(g<<1)>>1]<<1)>>1]|0)&65535;break}default:{m=b[i+16+(v*240|0)+(e[i+3002+(v*240|0)+(g<<1)>>1]<<1)>>1]|0;o=i+4922+(v*240|0)+(g<<1)|0;if((m&65535)>=(e[i+16+(v*240|0)+(e[o>>1]<<1)>>1]|0))break g;n=(p&255)>4?2:4;g=m&65535;while(1){l=k&65535;k=ri(p,h,j+(l<<1)|0)|0;if(k<<24>>24)break f;k=n+l&65535;l=g+n|0;if((e[i+16+(v*240|0)+(e[o>>1]<<1)>>1]|0)<=(l&65535))break;else g=l&65535}l=a[r>>0]|0}}while(0);q=q+1<<24>>24;g=q<<24>>24}while((g|0)<(l&255|0));k=a[G>>0]|0}l=t+1<<24>>24;if((l&255)<(k&255)){t=l;g=s+(d[i+5+v>>0]|0)|0;v=l&255}else break e}return k|0}}else{k=qi(f,i,h,j)|0;if(k<<24>>24){j=k;return j|0}}while(0);if(a[x>>0]|0){if((a[H>>0]|0)==2){j=2;return j|0}k=si(i,j,b[f+10>>1]|0)|0;if(k<<24>>24){j=k;return j|0}}j=0;return j|0}function Jh(f,g,h,i,j,k){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=Vb;Vb=Vb+8192|0;r=u+4096|0;s=u;t=f+25|0;if(!(a[(d[t>>0]|0)+(f+74)>>0]|0)){n=b[i+2>>1]|0;m=f+4|0;o=d[i>>0]|0;if((a[m>>0]|0)==1){l=f+1136+(o<<2)|0;if(!(c[l>>2]|0)){q=f+10|0;p=og((e[q>>1]|0)*12|0)|0;c[l>>2]=p;Kh(p,b[q>>1]|0)}l=f+1136+((n&255)<<2)|0;if(!(c[l>>2]|0)){q=f+10|0;p=og((e[q>>1]|0)*12|0)|0;c[l>>2]=p;Kh(p,b[q>>1]|0)}}if((Lh(a[m>>0]|0)|0)<<24>>24){l=f+1392+(o<<2)|0;if(!(c[l>>2]|0)){q=f+10|0;p=og(e[q>>1]<<3)|0;c[l>>2]=p;fl(p|0,0,e[q>>1]<<3|0)|0}l=f+1392+((n&255)<<2)|0;if(!(c[l>>2]|0)){q=f+10|0;p=og(e[q>>1]<<3)|0;c[l>>2]=p;fl(p|0,0,e[q>>1]<<3|0)|0}}m=f+328+(o<<2)|0;if(!(c[m>>2]|0)){l=(d[t>>0]|0)+(f+843)|0;a[l>>0]=0;if((a[f+840>>0]|0)!=1?(a[f+841>>0]|0)!=1:0)l=1;else{a[l>>0]=1;l=2}q=f+10|0;p=l<<2;v=og(w(p,e[q>>1]|0)|0)|0;c[m>>2]=v;fl(v|0,0,w(p,e[q>>1]|0)|0)|0}else l=1;n=n&255;m=f+328+(n<<2)|0;if(!(c[m>>2]|0)){v=f+10|0;q=l<<2;p=og(w(q,e[v>>1]|0)|0)|0;c[m>>2]=p;fl(p|0,0,w(q,e[v>>1]|0)|0)|0}l=f+584+(o<<2)|0;if(!(c[l>>2]|0)){v=f+10|0;q=og(e[v>>1]<<2)|0;c[l>>2]=q;fl(q|0,0,e[v>>1]<<2|0)|0}l=f+584+(n<<2)|0;if(!(c[l>>2]|0)){v=f+10|0;q=og(e[v>>1]<<2)|0;c[l>>2]=q;fl(q|0,0,e[v>>1]<<2|0)|0}a[(d[t>>0]|0)+(f+74)>>0]=1}q=f+10|0;l=Mh(g,j,r)|0;if(l<<24>>24){v=l;Vb=u;return v|0}l=Mh(h,k,s)|0;if(l<<24>>24){v=l;Vb=u;return v|0}l=b[q>>1]|0;k=f+4|0;m=a[k>>0]|0;n=f+1648|0;o=f+1652|0;if(!(a[g+8628>>0]|0)){Nh(g,0,r,0,l,0,m,n,o);Nh(h,0,s,0,b[q>>1]|0,0,a[k>>0]|0,n,o)}else Nh(g,h,r,s,l,1,m,n,o);Oh(g,h,r,s,b[q>>1]|0);Ph(g,h,r,s,b[q>>1]|0);l=a[k>>0]|0;if(l<<24>>24==1){v=f+3|0;Qh(g,r,c[f+1136+(d[i>>0]<<2)>>2]|0,b[q>>1]|0,a[v>>0]|0);l=i+2|0;Qh(h,s,c[f+1136+(b[l>>1]<<2)>>2]|0,b[q>>1]|0,a[v>>0]|0);Rh(g,c[f+1136+(d[i>>0]<<2)>>2]|0);Rh(h,c[f+1136+(b[l>>1]<<2)>>2]|0);l=a[k>>0]|0}if(!((Lh(l)|0)<<24>>24))p=f+3|0;else{o=g+10276|0;j=a[i+5>>0]|0?h+10358|0:h+10276|0;l=a[k>>0]|0;if(l<<24>>24==23){if(a[g+10277>>0]|0?a[g+10280>>0]|0:0)b[f+192+(d[i>>0]<<1)>>1]=b[g+10278>>1]|0;m=a[i>>0]|0;b[g+10278>>1]=b[f+192+((m&255)<<1)>>1]|0;if((a[j+1>>0]|0)!=0?(a[j+4>>0]|0)!=0:0){b[f+192+(b[i+2>>1]<<1)>>1]=b[j+2>>1]|0;l=a[k>>0]|0}else l=23;n=i+2|0;b[j+2>>1]=b[f+192+(b[n>>1]<<1)>>1]|0}else{n=i+2|0;m=a[i>>0]|0}v=m&255;m=f+320|0;p=f+3|0;Sh(g,o,r,c[f+1392+(v<<2)>>2]|0,c[m>>2]|0,a[g+13>>0]|0,a[f+128+v>>0]|0,a[p>>0]|0,l,b[q>>1]|0);v=b[n>>1]|0;Sh(h,j,s,c[f+1392+(v<<2)>>2]|0,c[m>>2]|0,a[h+13>>0]|0,a[f+128+v>>0]|0,a[p>>0]|0,a[k>>0]|0,b[q>>1]|0)}Th(g,g+9053|0,a[p>>0]|0,a[k>>0]|0,r,b[q>>1]|0);Th(h,h+9053|0,a[p>>0]|0,a[k>>0]|0,s,b[q>>1]|0);l=f+324|0;m=c[l>>2]|0;do if(!(a[m>>0]|0))m=i+2|0;else{if(!((a[(d[i>>0]|0)+(m+56)>>0]|0)!=0?(a[m+3>>0]|0)!=0:0)){Uh(m,r);m=c[l>>2]|0}l=i+2|0;if(a[(b[l>>1]|0)+(m+56)>>0]|0?a[m+3>>0]|0:0){m=l;break}Uh(m,s);m=l}while(0);o=f+320|0;j=g+13|0;v=d[i>>0]|0;Vh(c[o>>2]|0,a[g+4>>0]|0,a[j>>0]|0,a[f+128+v>>0]|0,r,c[f+328+(v<<2)>>2]|0,c[f+584+(v<<2)>>2]|0,a[k>>0]|0,b[q>>1]|0);v=h+13|0;r=b[m>>1]|0;Vh(c[o>>2]|0,a[h+4>>0]|0,a[v>>0]|0,a[f+128+r>>0]|0,s,c[f+328+(r<<2)>>2]|0,c[f+584+(r<<2)>>2]|0,a[k>>0]|0,b[q>>1]|0);a[(d[i>>0]|0)+(f+128)>>0]=a[j>>0]|0;a[(b[m>>1]|0)+(f+128)>>0]=a[v>>0]|0;if((Lh(a[k>>0]|0)|0)<<24>>24){v=d[i>>0]|0;Wh(c[f+1392+(v<<2)>>2]|0,c[f+328+(v<<2)>>2]|0,c[f+584+(v<<2)>>2]|0,b[q>>1]|0,a[k>>0]|0);v=b[m>>1]|0;Wh(c[f+1392+(v<<2)>>2]|0,c[f+328+(v<<2)>>2]|0,c[f+584+(v<<2)>>2]|0,b[q>>1]|0,a[k>>0]|0)}l=(a[f+840>>0]|0)==1;if(!l?(a[f+841>>0]|0)!=1:0)k=61;else k=55;do if((k|0)==55){n=d[t>>0]|0;if(!(a[f+843+n>>0]|0))if(l){k=62;break}else{k=61;break}j=d[i>>0]|0;o=b[m>>1]|0;m=f+892+(n<<2)|0;l=c[m>>2]|0;if(!l){r=b[q>>1]|0;s=a[f+2128+n>>0]|0;l=(Cg(a[p>>0]|0)|0)<<1;v=f+842|0;l=ih(r,s,l,a[v>>0]|0)|0;c[m>>2]=l;m=v}else m=f+842|0;s=a[i+6>>0]|0;s=b[i+1942+(((s&255)>1?(s&255)+-1|0:0)<<1)>>1]|0;v=b[i+2046>>1]|0;v=((s&65535)<(v&65535)?s:v)&65535;c[l+4>>2]=(a[i+10>>0]|0)==2?v<<3:v;l=Xh(l,c[f+328+(j<<2)>>2]|0,c[f+328+(o<<2)>>2]|0,a[f+12>>0]|0,a[m>>0]|0)|0;if(l<<24>>24){v=l;Vb=u;return v|0}}while(0);if((k|0)==61?(a[f+841>>0]|0)==1:0)k=62;if((k|0)==62?(a[(d[t>>0]|0)+(f+843)>>0]|0)==0:0){v=23;Vb=u;return v|0}v=0;Vb=u;return v|0}function Kh(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;if(!(c<<16>>16))return;d=c&65535;c=0;do{e=a+(c*12|0)|0;f=e;b[f>>1]=0;b[f+2>>1]=0>>>16;e=e+4|0;b[e>>1]=0;b[e+2>>1]=0>>>16;b[a+(c*12|0)+8>>1]=16256;b[a+(c*12|0)+10>>1]=16256;c=c+1|0}while((c|0)!=(d|0));return}function Lh(a){a=a|0;switch(a<<24>>24){case 23:case 19:case 4:{a=1;break}default:a=0}return a|0}function Mh(c,d,g){c=c|0;d=d|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=a[c+2>>0]|0;if(!(C<<24>>24)){D=0;return D|0}B=a[c+1>>0]|0;D=c+1936+((B&255)<<1)|0;j=0;l=0;h=0;A=0;z=0;i=B;while(1){if(!(i<<24>>24)){m=0;j=j&65535;i=0}else{j=j&65535;x=c+5+z|0;y=e[D>>1]|0;k=a[x>>0]|0;m=0;q=0;w=0;p=k;i=0;while(1){o=(e[c+1936+(i+1<<1)>>1]|0)-(e[c+1936+(i<<1)>>1]|0)|0;s=b[c+7812+(z*102|0)+(i<<1)>>1]|0;t=s<<16>>16;s=(s&65535)>255;v=q&65535;u=+f[60344+((s?0:t>>2)<<2)>>2]*+f[60600+((s?0:t&3)<<2)>>2];if(!(k<<24>>24)){i=o&65535;k=0}else{i=o&65535;t=(i|0)==0;s=0;r=q+j|0;while(1){if(t)k=p;else{k=0;q=0;do{o=k+r|0;p=l&65535;k=b[d+(p<<1)>>1]|0;l=k<<16>>16;if(k<<16>>16<0)if(k<<16>>16>-8192)n=-+f[60616+(0-l<<2)>>2];else{n=0.0;h=17}else if(k<<16>>16<8192)n=+f[60616+(l<<2)>>2];else{n=0.0;h=17}o=o&65535;f[g+(o<<2)>>2]=u*n;k=b[d+(p+1<<1)>>1]|0;l=k<<16>>16;if(k<<16>>16<0)if(k<<16>>16>-8192)n=-+f[60616+(0-l<<2)>>2];else{n=0.0;h=17}else if(k<<16>>16<8192)n=+f[60616+(l<<2)>>2];else{n=0.0;h=17}f[g+(o+1<<2)>>2]=u*n;k=b[d+(p+2<<1)>>1]|0;l=k<<16>>16;if(k<<16>>16<0)if(k<<16>>16>-8192)n=-+f[60616+(0-l<<2)>>2];else{n=0.0;h=17}else if(k<<16>>16<8192)n=+f[60616+(l<<2)>>2];else{n=0.0;h=17}f[g+(o+2<<2)>>2]=u*n;k=b[d+(p+3<<1)>>1]|0;l=k<<16>>16;if(k<<16>>16<0)if(k<<16>>16>-8192)n=-+f[60616+(0-l<<2)>>2];else{n=0.0;h=17}else if(k<<16>>16<8192)n=+f[60616+(l<<2)>>2];else{n=0.0;h=17}f[g+(o+3<<2)>>2]=u*n;m=(m&65535)+4&65535;l=p+4&65535;k=q+4|0;q=k&65535}while(q>>>0<i>>>0);k=a[x>>0]|0}s=s+1<<24>>24;if((s&255)>=(k&255)){p=k;break}else{r=(r&65535)+y|0;p=k}}}o=w+1<<24>>24;if((o&255)<(B&255)){q=i+v|0;w=o;i=o&255}else{i=B;break}}}k=A+1<<24>>24;if((k&255)<(C&255)){j=j+(m&65535)&65535;A=k;z=k&255}else break}return h|0}function Nh(g,h,i,j,k,l,m,n,o){g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0.0,s=0,t=0.0,u=0,v=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.0;J=g+2|0;if(!(a[J>>0]|0))return;I=g+2040|0;H=(k&65535)>>>3&65535;E=l<<24>>24==0;F=g+8628|0;G=h+2040|0;D=0;m=0;C=0;while(1){B=g+5+C|0;k=a[B>>0]|0;if(k<<24>>24){A=0;l=a[g>>0]|0;do{if(!(l<<24>>24))l=0;else{z=w(m&255,H)|0;y=0;x=0;while(1){if((a[g+6842+(C*120|0)+x>>0]|0)==13){a[g+10282+x>>0]=0;a[g+10364+x>>0]=0;a[g+10224+x>>0]=0;u=b[g+1936+(x+1<<1)>>1]|0;s=b[I>>1]|0;v=e[g+1936+(x<<1)>>1]|0;s=(((u&65535)<(s&65535)?u:s)&65535)-v|0;u=s&65535;v=i+(z+v<<2)|0;p=b[g+7812+(C*102|0)+(x<<1)>>1]|0;t=1.0/+(u&65535);u=u<<16>>16==0;if(u)q=0.0;else{l=s&65535;q=0.0;k=0;do{L=t*+(Gg(n,o)|0);f[v+(k<<2)>>2]=L;q=q+L*L;k=k+1|0}while((k|0)!=(l|0))}q=1.0/+r(+q);q=q*+Ta(+(+(p<<16>>16)*.25));if(!u){l=s&65535;k=0;do{u=v+(k<<2)|0;f[u>>2]=q*+f[u>>2];k=k+1|0}while((k|0)!=(l|0))}}a:do if(!E?(a[h+6842+(C*120|0)+x>>0]|0)==13:0){switch(a[F>>0]|0){case 1:{if(a[g+8629+(C*51|0)+x>>0]|0)K=18;break}case 2:{K=18;break}default:{}}if((K|0)==18){K=0;v=b[h+1936+(x+1<<1)>>1]|0;s=b[G>>1]|0;k=e[h+1936+(x<<1)>>1]|0;s=(((v&65535)<(s&65535)?v:s)&65535)-k&65535;if(!s)break;l=z+k|0;k=0;p=0;while(1){x=l+p|0;c[j+(x<<2)>>2]=c[i+(x<<2)>>2];k=k+1<<16>>16;p=k&65535;if(s>>>0<=p>>>0)break a}}a[h+10282+x>>0]=0;a[h+10364+x>>0]=0;a[h+10224+x>>0]=0;s=b[h+1936+(x+1<<1)>>1]|0;u=b[G>>1]|0;v=e[h+1936+(x<<1)>>1]|0;u=(((s&65535)<(u&65535)?s:u)&65535)-v|0;s=u&65535;v=j+(z+v<<2)|0;p=b[h+7812+(C*102|0)+(x<<1)>>1]|0;t=1.0/+(s&65535);s=s<<16>>16==0;if(s)q=0.0;else{l=u&65535;q=0.0;k=0;do{L=t*+(Gg(n,o)|0);f[v+(k<<2)>>2]=L;q=q+L*L;k=k+1|0}while((k|0)!=(l|0))}q=1.0/+r(+q);q=q*+Ta(+(+(p<<16>>16)*.25));if(!s){l=u&65535;k=0;do{x=v+(k<<2)|0;f[x>>2]=q*+f[x>>2];k=k+1|0}while((k|0)!=(l|0))}}while(0);k=y+1<<24>>24;l=a[g>>0]|0;if((k&255)<(l&255)){y=k;x=k&255}else break}k=a[B>>0]|0}m=m+1<<24>>24;A=A+1<<24>>24}while((A&255)<(k&255))}k=D+1<<24>>24;if((k&255)<(d[J>>0]|0)){D=k;C=k&255}else break}return}function Oh(c,d,e,g,h){c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0.0,B=0.0;i=a[c+8628>>0]|0;if(!(i<<24>>24))return;v=a[c+2>>0]|0;if(!(v<<24>>24))return;s=c+2040|0;r=(h&65535)>>>3&65535;j=0;q=0;p=0;while(1){o=c+5+p|0;h=a[o>>0]|0;if(h<<24>>24){n=a[c>>0]|0;m=0;k=n;do{if(!(k<<24>>24))k=0;else{l=w(j&255,r)|0;k=0;h=0;while(1){if(!(a[c+8629+(p*51|0)+h>>0]|0)){if(i<<24>>24==2){i=2;x=10}}else x=10;if((x|0)==10){x=0;if(((a[d+6842+(p*120|0)+h>>0]|1)<<24>>24!=15?(a[c+6842+(p*120|0)+h>>0]|0)!=13:0)?(t=b[c+1936+(h<<1)>>1]|0,u=c+1936+(h+1<<1)|0,y=b[u>>1]|0,h=b[s>>1]|0,(t&65535)<(((y&65535)<(h&65535)?y:h)&65535)):0){h=t;do{z=l+(h&65535)&65535;y=e+(z<<2)|0;B=+f[y>>2];z=g+(z<<2)|0;A=+f[z>>2];f[y>>2]=B+A;f[z>>2]=B-A;h=h+1<<16>>16;z=b[u>>1]|0;y=b[s>>1]|0}while((h&65535)<(((z&65535)<(y&65535)?z:y)&65535))}}h=k+1<<24>>24;if((h&255)<(n&255)){k=h;h=h&255}else break}h=a[o>>0]|0;k=n}j=j+1<<24>>24;m=m+1<<24>>24}while((m&255)<(h&255))}h=q+1<<24>>24;if((h&255)<(v&255)){q=h;p=h&255}else break}return}function Ph(c,e,g,h,i){c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0.0,C=0,D=0,E=0,F=0;E=e+2|0;j=a[E>>0]|0;if(!(j<<24>>24))return;F=c+2040|0;A=(i&65535)>>>3&65535;z=c+8628|0;y=0;i=0;x=0;while(1){v=e+5+x|0;l=a[v>>0]|0;if(l<<24>>24){u=0;k=a[e>>0]|0;j=l;do{if(!(k<<24>>24))k=0;else{t=w(i&255,A)|0;r=0;j=0;while(1){q=e+6842+(x*120|0)+j|0;if((a[q>>0]|1)<<24>>24==15?(a[c+10224+j>>0]=0,a[e+10224+j>>0]=0,B=+s(.5,+(+(b[e+7812+(x*102|0)+(j<<1)>>1]|0)*.25)),C=b[e+1936+(j<<1)>>1]|0,D=e+1936+(j+1<<1)|0,o=b[D>>1]|0,p=b[F>>1]|0,(C&65535)<(((o&65535)<(p&65535)?o:p)&65535)):0){l=c+8629+(x*51|0)+j|0;m=(a[z>>0]|0)==1;k=C;do{o=t+(k&65535)|0;n=+f[g+(o<<2)>>2]*B;o=h+(o<<2)|0;f[o>>2]=n;p=a[q>>0]|0;if(m)j=1-(d[l>>0]<<1)&255;else j=1;if((p<<24>>24==15?1:(p<<24>>24==14)<<31>>31)<<24>>24!=j<<24>>24)f[o>>2]=-n;k=k+1<<16>>16;o=b[D>>1]|0;p=b[F>>1]|0}while((k&65535)<(((o&65535)<(p&65535)?o:p)&65535))}j=r+1<<24>>24;k=a[e>>0]|0;if((j&255)<(k&255)){r=j;j=j&255}else break}j=a[v>>0]|0}i=i+1<<24>>24;u=u+1<<24>>24}while((u&255)<(j&255));j=a[E>>0]|0}k=y+1<<24>>24;if((k&255)<(j&255)){y=k;x=k&255}else break}return}function Qh(g,i,j,k,l){g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0,u=0.0,v=0,w=0.0,x=0,y=0.0,z=0,A=0.0,B=0,C=0.0,D=0,E=0.0,F=0,G=0.0,H=0,I=0,J=0,K=0,L=0,M=0;if((a[g+4>>0]|0)==2){if(!(k<<16>>16))return;n=k&65535;m=0;do{k=j+(m*12|0)|0;g=k;b[g>>1]=0;b[g+2>>1]=0>>>16;k=k+4|0;b[k>>1]=0;b[k+2>>1]=0>>>16;b[j+(m*12|0)+8>>1]=16256;b[j+(m*12|0)+10>>1]=16256;m=m+1|0}while((m|0)!=(n|0));return}if(!((Dg(l)|0)<<24>>24))m=g+9042|0;else{M=g+2040|0;m=g+9042|0;L=0;n=0;while(1){p=b[g+1936+(n<<1)>>1]|0;K=b[g+1936+(n+1<<1)>>1]|0;o=b[M>>1]|0;o=(K&65535)<(o&65535)?K:o;if((p&65535)<(o&65535)){K=g+10224+n|0;I=o&65535;J=(a[m>>0]|0)==0;H=p&65535;do{t=i+(H<<2)|0;q=+f[t>>2];if(J)o=0;else o=(a[K>>0]|0)!=0;v=j+(H*12|0)|0;w=(c[h>>2]=e[v>>1]<<16,+f[h>>2]);x=j+(H*12|0)+2|0;y=(c[h>>2]=e[x>>1]<<16,+f[h>>2]);z=j+(H*12|0)+4|0;A=(c[h>>2]=e[z>>1]<<16,+f[h>>2]);B=j+(H*12|0)+6|0;C=(c[h>>2]=e[B>>1]<<16,+f[h>>2]);D=j+(H*12|0)+8|0;n=b[D>>1]|0;E=(c[h>>2]=(n&65535)<<16,+f[h>>2]);F=j+(H*12|0)+10|0;p=b[F>>1]|0;G=(c[h>>2]=(p&65535)<<16,+f[h>>2]);if((n&65535)>16383)u=+f[59320+((((n&65535)>>>7&65535)<<16)+-8388608>>16<<2)>>2]*A*+f[59832+((n&127)<<2)>>2];else u=0.0;if(o){if((p&65535)>16383)s=+f[59320+((((p&65535)>>>7&65535)<<16)+-8388608>>16<<2)>>2]*C*+f[59832+((p&127)<<2)>>2];else s=0.0;r=u*w;o=(f[h>>2]=r+s*y,c[h>>2]|0);n=o&-65536;if(o&32768){p=o&-8388608;s=(c[h>>2]=n,+f[h>>2]);s=s+(c[h>>2]=p|65536,+f[h>>2]);n=(f[h>>2]=s-(c[h>>2]=p,+f[h>>2]),c[h>>2]|0)}q=q+(c[h>>2]=n,+f[h>>2]);f[t>>2]=q}else r=u*w;s=q-r;b[v>>1]=(f[h>>2]=q*.953125,c[h>>2]|0)>>>16;b[x>>1]=(f[h>>2]=(w-u*q)*.953125,c[h>>2]|0)>>>16;b[z>>1]=(f[h>>2]=A*.90625+q*w,c[h>>2]|0)>>>16;b[B>>1]=(f[h>>2]=C*.90625+s*y,c[h>>2]|0)>>>16;b[D>>1]=(f[h>>2]=E*.90625+(w*w+q*q)*.5,c[h>>2]|0)>>>16;b[F>>1]=(f[h>>2]=G*.90625+(y*y+s*s)*.5,c[h>>2]|0)>>>16;H=H+1|0}while(H>>>0<I>>>0)}n=L+1<<24>>24;if((n&255)<((Dg(l)|0)&255)){L=n;n=n&255}else break}}if(!(a[m>>0]|0))return;if(!(a[g+10222>>0]|0))return;m=(d[g+10223>>0]|0)+65535&65535;n=k&65535;if(m>>>0>=n>>>0)return;do{k=j+(m*12|0)|0;g=k;b[g>>1]=0;b[g+2>>1]=0>>>16;k=k+4|0;b[k>>1]=0;b[k+2>>1]=0>>>16;b[j+(m*12|0)+8>>1]=16256;b[j+(m*12|0)+10>>1]=16256;m=m+30&65535}while(m>>>0<n>>>0);return}function Rh(c,d){c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if((a[c+4>>0]|0)==2)return;o=c+2|0;e=a[o>>0]|0;if(!(e<<24>>24))return;p=c+2040|0;l=0;k=0;while(1){j=c+5+k|0;f=a[j>>0]|0;if(!(f<<24>>24))f=e;else{g=a[c>>0]|0;i=0;e=g;while(1){if(!(e<<24>>24)){h=g;e=0}else{h=0;f=0;e=g;while(1){if((a[c+6842+(k*120|0)+f>>0]|0)==13?(m=b[c+1936+(f<<1)>>1]|0,g=b[c+1936+(f+1<<1)>>1]|0,n=b[p>>1]|0,n=(g&65535)<(n&65535)?g:n,(m&65535)<(n&65535)):0){e=n&65535;f=m&65535;do{g=d+(f*12|0)|0;q=g;b[q>>1]=0;b[q+2>>1]=0>>>16;g=g+4|0;b[g>>1]=0;b[g+2>>1]=0>>>16;b[d+(f*12|0)+8>>1]=16256;b[d+(f*12|0)+10>>1]=16256;f=f+1|0}while(f>>>0<e>>>0);g=a[c>>0]|0}else g=e;e=h+1<<24>>24;if((e&255)<(g&255)){h=e;f=e&255;e=g}else break}f=a[j>>0]|0;h=g;e=g}i=i+1<<24>>24;if((i&255)>=(f&255))break;else g=h}f=a[o>>0]|0}e=l+1<<24>>24;if((e&255)<(f&255)){l=e;k=e&255;e=f}else break}return}function Sh(c,g,h,i,j,k,l,m,n,o){c=c|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0.0,v=0,w=0,x=0,y=0,z=0;z=Vb;Vb=Vb+16384|0;q=z+8192|0;w=z;r=a[c+4>>0]|0;if(r<<24>>24==2){Vb=z;return}if(!(a[g+1>>0]|0)){Vb=z;return}s=(o&65535)<<1&65534;if(s|0){t=e[g+2>>1]|0;u=+f[59288+(d[g+5>>0]<<2)>>2];p=0;v=0;do{f[q+(v<<2)>>2]=u*+(b[i+(v+s-t<<1)>>1]|0);p=p+1<<16>>16;v=p&65535}while(s>>>0>v>>>0)}ji(j,r,k,l,q,w,n,o);ki(c,c+9053|0,m,n,w,o);s=a[g>>0]|0;if(!(s<<24>>24)){Vb=z;return}t=c+2040|0;r=0;p=0;while(1){if(a[g+6+p>>0]|0?(x=b[c+1936+(p<<1)>>1]|0,o=b[c+1936+(p+1<<1)>>1]|0,y=b[t>>1]|0,y=(o&65535)<(y&65535)?o:y,(x&65535)<(y&65535)):0){p=y&65535;q=x&65535;do{o=h+(q<<2)|0;f[o>>2]=+f[w+(q<<2)>>2]+ +f[o>>2];q=q+1|0}while(q>>>0<p>>>0)}p=r+1<<24>>24;if((p&255)<(s&255)){r=p;p=p&255}else break}Vb=z;return}function Th(e,g,h,i,j,k){e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=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;N=Vb;Vb=Vb+336|0;I=N+168|0;J=N+84|0;K=N;if(!(a[e+9040>>0]|0)){Vb=N;return}D=e+3|0;if(!(a[D>>0]|0)){Vb=N;return}F=e+1|0;L=K+4|0;M=J+4|0;G=e+4|0;H=e+2040|0;C=(k&65535)>>>3&65535;B=0;y=0;while(1){x=g+y|0;if(a[x>>0]|0){z=g+8+y|0;A=w(y,C)|0;u=0;v=d[F>>0]|0;r=0;while(1){k=v&65535;l=k-(d[g+16+(y<<2)+r>>0]|0)|0;v=(l|0)>0?l:0;l=a[g+48+(y<<2)+r>>0]|0;l=(l&255)<20?l:20;if(l<<24>>24){m=((d[z>>0]|0)+3&255)<<24>>24==3;m=(a[g+112+(y<<2)+r>>0]|0)==0?(m?59160:59224):m?59032:59096;t=l&255;l=0;do{c[I+(l<<2)>>2]=c[m+(d[g+144+(y<<7)+(r<<5)+l>>0]<<2)>>2];l=l+1|0}while((l|0)!=(t|0));f[K>>2]=1.0;o=0;q=1;while(1){l=((o<<2)+1020&1020)+4|0;m=I+(q+-1<<2)|0;if(q>>>0>1){n=+f[m>>2];p=1;do{f[J+(p<<2)>>2]=+f[K+(p<<2)>>2]+n*+f[K+(q-p<<2)>>2];p=p+1|0}while((p|0)!=(q|0));dl(L|0,M|0,l|0)|0}c[K+(q<<2)>>2]=c[m>>2];if(q>>>0<t>>>0){o=o+1|0;q=q+1|0}else break}l=v&65535;if(l>>>0>=((Eg(h,i,(a[G>>0]|0)==2&1)|0)&255)>>>0)l=(Eg(h,i,(a[G>>0]|0)==2&1)|0)&255;s=d[e>>0]|0;s=b[e+1936+(((l>>>0<s>>>0?l:s)&65535)<<1)>>1]|0;l=b[H>>1]|0;l=(s&65535)<(l&65535)?s:l;if(k>>>0>=((Eg(h,i,(a[G>>0]|0)==2&1)|0)&255)>>>0)k=(Eg(h,i,(a[G>>0]|0)==2&1)|0)&255;q=d[e>>0]|0;q=b[e+1936+(((k>>>0<q>>>0?k:q)&65535)<<1)>>1]|0;k=b[H>>1]|0;k=((q&65535)<(k&65535)?q:k)&65535;q=k-(l&65535)|0;s=q&65535;if((q<<16|0)>=65536?(E=(a[g+80+(y<<2)+r>>0]|0)==0,fl(I|0,0,160)|0,s<<16>>16):0){q=E?1:-1;r=t+255&255;p=0;k=j+(A+((E?l:k+65535&65535)&65535)<<2)|0;l=0;while(1){m=l<<24>>24;n=+f[k>>2];o=0;do{O=o;o=o+1|0;n=n-+f[I+(O+m<<2)>>2]*+f[K+(o<<2)>>2]}while((o|0)!=(t|0));O=l+-1<<24>>24;l=O<<24>>24<0?r:O;O=l<<24>>24;f[I+(O+t<<2)>>2]=n;f[I+(O<<2)>>2]=n;f[k>>2]=n;p=p+1<<16>>16;if((p&65535)>=(s&65535))break;else k=k+(q<<2)|0}}}k=u+1<<24>>24;if((k&255)>=(d[x>>0]|0))break;else{u=k;r=k&255}}}k=B+1<<24>>24;if((k&255)<(d[D>>0]|0)){B=k;y=k&255}else break}Vb=N;return}function Uh(b,c){b=b|0;c=c|0;var e=0,g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=a[b+1>>0]|0;switch(e<<24>>24){case 1:{a[b+4>>0]=-1;break}case 0:return;default:{}}l=b+188|0;m=b+21|0;n=b+184|0;k=e&255;i=0;h=0;e=0;do{j=(d[b+4+e>>0]<<2)+4|0;if(!(a[b+22+e>>0]|0))g=+f[l>>2]*+((d[b+39+e>>0]|0)+-80+(d[m>>0]|0)|0);else g=-(+f[n>>2]*+((d[b+39+e>>0]|0)+-80+(d[m>>0]|0)|0));g=+Ta(+(g/24.0));e=h&65535;if(j>>>0>e>>>0)do{o=c+(e<<2)|0;f[o>>2]=+f[o>>2]*g;h=h+1<<16>>16;e=h&65535}while(j>>>0>e>>>0);h=j&65535;i=i+1<<16>>16;e=i&65535}while(e>>>0<k>>>0);return}function Vh(a,b,d,e,g,h,i,j,k){a=a|0;b=b|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=Vb;Vb=Vb+8192|0;E=F;fl(E|0,0,8192)|0;D=k&65535;o=(k&65535)>>>3;C=o&65535;s=(k&65535)>>>4;m=(D-C|0)/2|0;d=d&255;if(j<<24>>24==23){j=a+16+(d<<2)|0;e=a+16+((e&255)<<2)|0;B=0;t=0}else{t=e&255;j=a+(d<<2)|0;e=a+(t<<2)|0;B=c[a+8+(d<<2)>>2]|0;t=c[a+8+(t<<2)>>2]|0}n=c[j>>2]|0;e=c[e>>2]|0;switch(b<<24>>24){case 0:{switch((D<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;l=8;break}case 960:case 1024:{d=a+28|0;l=8;break}default:d=0}if((l|0)==8)d=c[d>>2]|0;ii(d,g,E);d=k<<16>>16==0;if(d){Vb=F;return}else j=0;do{f[h+(j<<2)>>2]=+f[i+(j<<2)>>2]+ +f[E+(j<<2)>>2]*+f[e+(j<<2)>>2];C=j+1|0;f[h+(C<<2)>>2]=+f[i+(C<<2)>>2]+ +f[E+(C<<2)>>2]*+f[e+(C<<2)>>2];C=j+2|0;f[h+(C<<2)>>2]=+f[i+(C<<2)>>2]+ +f[E+(C<<2)>>2]*+f[e+(C<<2)>>2];C=j+3|0;f[h+(C<<2)>>2]=+f[i+(C<<2)>>2]+ +f[E+(C<<2)>>2]*+f[e+(C<<2)>>2];j=(j<<16)+262144>>16}while((j|0)<(D|0));if(d){Vb=F;return}e=D+-1|0;a=D+-2|0;b=D+-3|0;l=D+-4|0;j=0;d=0;while(1){C=d+D|0;f[i+(d<<2)>>2]=+f[E+(C<<2)>>2]*+f[n+(e+j<<2)>>2];f[i+(d+1<<2)>>2]=+f[E+(C+1<<2)>>2]*+f[n+(a+j<<2)>>2];f[i+(d+2<<2)>>2]=+f[E+(C+2<<2)>>2]*+f[n+(b+j<<2)>>2];f[i+(d+3<<2)>>2]=+f[E+(C+3<<2)>>2]*+f[n+(l+j<<2)>>2];d=(d<<16)+262144>>16;if((d|0)<(D|0))j=0-d|0;else break}Vb=F;return}case 1:{switch((D<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;l=17;break}case 960:case 1024:{d=a+28|0;l=17;break}default:d=0}if((l|0)==17)d=c[d>>2]|0;ii(d,g,E);if(k<<16>>16){d=0;do{f[h+(d<<2)>>2]=+f[i+(d<<2)>>2]+ +f[E+(d<<2)>>2]*+f[e+(d<<2)>>2];A=d+1|0;f[h+(A<<2)>>2]=+f[i+(A<<2)>>2]+ +f[E+(A<<2)>>2]*+f[e+(A<<2)>>2];A=d+2|0;f[h+(A<<2)>>2]=+f[i+(A<<2)>>2]+ +f[E+(A<<2)>>2]*+f[e+(A<<2)>>2];A=d+3|0;f[h+(A<<2)>>2]=+f[i+(A<<2)>>2]+ +f[E+(A<<2)>>2]*+f[e+(A<<2)>>2];d=(d<<16)+262144>>16}while((d|0)<(D|0))}l=m&65535;b=(l|0)==0;if(!b){d=0;j=0;do{c[i+(j<<2)>>2]=c[E+(j+D<<2)>>2];d=d+1<<16>>16;j=d<<16>>16}while((l|0)>(j|0))}if(o<<16>>16){j=l+D|0;e=C+-1|0;d=0;a=0;do{f[i+(a+l<<2)>>2]=+f[E+(j+a<<2)>>2]*+f[B+(e-a<<2)>>2];d=d+1<<16>>16;a=d<<16>>16}while((C|0)>(a|0))}if(b){Vb=F;return}j=l+C|0;d=0;e=0;do{f[i+(j+e<<2)>>2]=0.0;d=d+1<<16>>16;e=d<<16>>16}while((l|0)>(e|0));Vb=F;return}case 2:{A=a+24|0;p=o<<1&65535;ii(c[A>>2]|0,g,E);ii(c[A>>2]|0,g+(C<<2)|0,E+(p<<2)|0);w=o<<2&65535;ii(c[A>>2]|0,g+(p<<2)|0,E+(w<<2)|0);q=C*3|0;ii(c[A>>2]|0,g+(q<<2)|0,E+(p*3<<2)|0);y=k&-8&65535;ii(c[A>>2]|0,g+(w<<2)|0,E+(y<<2)|0);r=C*5|0;ii(c[A>>2]|0,g+(r<<2)|0,E+(p*5<<2)|0);v=C*6|0;ii(c[A>>2]|0,g+(v<<2)|0,E+(p*6<<2)|0);z=C*7|0;ii(c[A>>2]|0,g+(z<<2)|0,E+(p*7<<2)|0);A=m&65535;x=(A|0)==0;if(!x){d=0;j=0;do{c[h+(j<<2)>>2]=c[i+(j<<2)>>2];d=d+1<<16>>16;j=d<<16>>16}while((A|0)>(j|0))}j=o<<16>>16==0;if(!j){e=A+C|0;a=C+-1|0;b=A+p|0;l=A+q|0;m=s&65535;g=A+w|0;d=0;k=0;do{u=k+A|0;f[h+(u<<2)>>2]=+f[i+(u<<2)>>2]+ +f[E+(k<<2)>>2]*+f[t+(k<<2)>>2];u=e+k|0;n=B+(a-k<<2)|0;o=B+(k<<2)|0;f[h+(u<<2)>>2]=+f[i+(u<<2)>>2]+ +f[E+(k+C<<2)>>2]*+f[n>>2]+ +f[E+(k+p<<2)>>2]*+f[o>>2];u=b+k|0;f[h+(u<<2)>>2]=+f[i+(u<<2)>>2]+ +f[E+(k+q<<2)>>2]*+f[n>>2]+ +f[E+(k+w<<2)>>2]*+f[o>>2];u=l+k|0;f[h+(u<<2)>>2]=+f[i+(u<<2)>>2]+ +f[E+(k+r<<2)>>2]*+f[n>>2]+ +f[E+(k+v<<2)>>2]*+f[o>>2];if((k|0)<(m|0)){u=g+k|0;f[h+(u<<2)>>2]=+f[i+(u<<2)>>2]+ +f[E+(k+z<<2)>>2]*+f[n>>2]+ +f[E+(k+y<<2)>>2]*+f[o>>2]}d=d+1<<16>>16;k=d<<16>>16}while((k|0)<(C|0));if(!j){s=s&65535;t=C*9|0;h=C+-1|0;u=C*10|0;p=r-D+A|0;q=C*11|0;r=C*12|0;l=v-D+A|0;m=C*13|0;g=C*14|0;k=z-D+A|0;n=C*15|0;o=y-D+A|0;b=w-D+A|0;a=0;j=0;d=0;while(1){if((d|0)<(s|0)){j=B+(h+j<<2)|0;e=B+(d<<2)|0}else{j=B+(h+j<<2)|0;e=B+(d<<2)|0;f[i+(b+d<<2)>>2]=+f[E+(d+z<<2)>>2]*+f[j>>2]+ +f[E+(d+y<<2)>>2]*+f[e>>2]}f[i+(p+d<<2)>>2]=+f[E+(d+t<<2)>>2]*+f[j>>2]+ +f[E+(d+u<<2)>>2]*+f[e>>2];f[i+(l+d<<2)>>2]=+f[E+(d+q<<2)>>2]*+f[j>>2]+ +f[E+(d+r<<2)>>2]*+f[e>>2];f[i+(k+d<<2)>>2]=+f[E+(d+m<<2)>>2]*+f[j>>2]+ +f[E+(d+g<<2)>>2]*+f[e>>2];f[i+(o+d<<2)>>2]=+f[E+(d+n<<2)>>2]*+f[j>>2];a=a+1<<16>>16;d=a<<16>>16;if((d|0)>=(C|0))break;else j=0-d|0}}}if(x){Vb=F;return}j=A+C|0;d=0;e=0;do{f[i+(j+e<<2)>>2]=0.0;d=d+1<<16>>16;e=d<<16>>16}while((A|0)>(e|0));Vb=F;return}case 3:{switch((D<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;l=47;break}case 960:case 1024:{d=a+28|0;l=47;break}default:d=0}if((l|0)==47)d=c[d>>2]|0;ii(d,g,E);a=m&65535;e=(a|0)==0;if(!e){d=0;j=0;do{c[h+(j<<2)>>2]=c[i+(j<<2)>>2];d=d+1<<16>>16;j=d<<16>>16}while((a|0)>(j|0))}if(o<<16>>16){d=0;j=0;do{B=j+a|0;f[h+(B<<2)>>2]=+f[i+(B<<2)>>2]+ +f[E+(B<<2)>>2]*+f[t+(j<<2)>>2];d=d+1<<16>>16;j=d<<16>>16}while((j|0)<(C|0))}if(!e){j=a+C|0;d=0;e=0;do{C=j+e|0;f[h+(C<<2)>>2]=+f[i+(C<<2)>>2]+ +f[E+(C<<2)>>2];d=d+1<<16>>16;e=d<<16>>16}while((a|0)>(e|0))}if(!(k<<16>>16)){Vb=F;return}j=D+-1|0;d=0;e=0;do{f[i+(e<<2)>>2]=+f[E+(e+D<<2)>>2]*+f[n+(j-e<<2)>>2];d=d+1<<16>>16;e=d<<16>>16}while((e|0)<(D|0));Vb=F;return}default:{Vb=F;return}}}function Wh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0.0,i=0,j=0,k=0,l=0,m=0;l=e&65535;e=e<<16>>16!=0;if(g<<24>>24==23){if(!e)return;j=l<<1;i=l*3|0;k=0;do{e=a+(k+l<<1)|0;b[a+(k<<1)>>1]=b[e>>1]|0;g=a+(k+j<<1)|0;b[e>>1]=b[g>>1]|0;h=+f[c+(k<<2)>>2];if(!(h>=0.0)){h=h+-.5;if(!(h<=-32768.0))m=9;else e=-32768}else{h=h+.5;if(!(h>=32768.0))m=9;else e=32767}if((m|0)==9){m=0;e=~~h&65535}b[g>>1]=e;h=+f[d+(k<<2)>>2];if(!(h>=0.0)){h=h+-.5;if(!(h<=-32768.0))m=13;else e=-32768}else{h=h+.5;if(!(h>=32768.0))m=13;else e=32767}if((m|0)==13){m=0;e=~~h&65535}b[a+(k+i<<1)>>1]=e;k=k+1|0}while((k|0)!=(l|0));return}else{if(!e)return;i=l<<1;j=0;do{g=a+(j+l<<1)|0;b[a+(j<<1)>>1]=b[g>>1]|0;h=+f[c+(j<<2)>>2];if(!(h>=0.0)){h=h+-.5;if(!(h<=-32768.0))m=18;else e=-32768}else{h=h+.5;if(!(h>=32768.0))m=18;else e=32767}if((m|0)==18){m=0;e=~~h&65535}b[g>>1]=e;h=+f[d+(j<<2)>>2];if(!(h>=0.0)){h=h+-.5;if(!(h<=-32768.0))m=22;else e=-32768}else{h=h+.5;if(!(h>=32768.0))m=22;else e=32767}if((m|0)==22){m=0;e=~~h&65535}b[a+(j+i<<1)>>1]=e;j=j+1|0}while((j|0)!=(l|0));return}}function Xh(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;m=Vb;Vb=Vb+16384|0;l=m;if(!b){b=20;Vb=m;return b|0}if((a[b+12436>>0]|0)!=1){b=21;Vb=m;return b|0}j=b+10|0;if(a[j>>0]|0)if(!(a[b+12426>>0]|0))i=1;else{a[b+12412>>0]=-1;i=1}else i=(c[b+12432>>2]|0)==0&1;k=b+9|0;a[k>>0]=g<<24>>24!=0&1;g=(Yh(b,e,l,0,i)|0)&255;a[j>>0]=(d[j>>0]|0)+g;h=h<<24>>24!=0;g=c[b+12448>>2]|0;if(h)Zh(b,g,l,e);else _h(b,g,l,e);g=(Yh(b,f,l,1,i)|0)&255;a[j>>0]=(d[j>>0]|0)+g;g=c[b+12452>>2]|0;if(h)Zh(b,g,l,f);else _h(b,g,l,f);if(a[b+53426>>0]|0)a[k>>0]=0;if(c[b+12432>>2]|0?(a[j>>0]|0)==0:0){g=$h(b,0)|0;if(g<<24>>24){b=g;Vb=m;return b|0}g=$h(b,1)|0;if(g<<24>>24){b=g;Vb=m;return b|0}}f=b+53418|0;if(a[f>>0]|0){e=b+53416|0;h=0;g=0;while(1){el(b+12456+(g<<9)|0,b+12456+(g+(d[e>>0]|0)<<9)|0,512)|0;i=h+1<<24>>24;g=a[f>>0]|0;if((i&255)<(g&255)){h=i;g=i&255}else break}if((g&255)<40)j=23;else j=25}else{g=0;j=23}if((j|0)==23){fl(b+(((g&255)<<9)+12456)|0,0,((39-g&255)<<9)+512|0)|0;if(!(a[f>>0]|0)){g=0;j=27}else{e=b+53416|0;j=25}}if((j|0)==25){h=0;g=0;while(1){el(b+32936+(g<<9)|0,b+32936+(g+(d[e>>0]|0)<<9)|0,512)|0;i=h+1<<24>>24;g=a[f>>0]|0;if((i&255)<(g&255)){h=i;g=i&255}else break}if((g&255)<40)j=27}if((j|0)==27)fl(b+(((g&255)<<9)+32936)|0,0,((39-g&255)<<9)+512|0)|0;b=b+12428|0;c[b>>2]=(c[b>>2]|0)+1;b=0;Vb=m;return b|0}function Yh(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=b+12421|0;a[B>>0]=0;C=g&255;k=c[b+12440+(C<<2)>>2]|0;i=b+12456+(C*20480|0)|0;j=a[b+53418>>0]|0;if(!(h<<24>>24)){A=b+14|0;di(b,k,e,i,j,a[A>>0]|0);ei(b,i,i,g);h=fi(b,i,g)|0;if(!((h|a[b+9>>0])<<24>>24)){t=b+53416|0;e=a[t>>0]|0;if(!(e<<24>>24)){C=h;return C|0}u=b+616+(C*6|0)|0;v=b+12420|0;w=b+12423|0;x=b+12422|0;y=b+15|0;z=b+53419|0;s=0;r=0;do{q=s<<16>>16;p=(r|0)<(d[u>>0]|0);l=a[(p?x:B)>>0]|0;m=a[(p?w:y)>>0]|0;p=a[(p?v:A)>>0]|0;o=p&255;n=o+(l&255)|0;if(n|0){j=r+(d[z>>0]|0)|0;i=0;g=0;do{c[f+(r<<9)+(g<<3)>>2]=c[b+12456+(C*20480|0)+(j<<9)+(g<<3)>>2];c[f+(r<<9)+(g<<3)+4>>2]=c[b+12456+(C*20480|0)+(j<<9)+(g<<3)+4>>2];i=i+1<<16>>16;g=i<<16>>16}while((n|0)>(g|0))}j=o+(m&255)|0;if(j>>>0>n>>>0){g=r+(d[z>>0]|0)|0;i=n&65535;k=n;do{c[f+(r<<9)+(k<<3)>>2]=c[b+12456+(C*20480|0)+(g<<9)+(k<<3)>>2];c[f+(r<<9)+(k<<3)+4>>2]=c[b+12456+(C*20480|0)+(g<<9)+(k<<3)+4>>2];i=i+1<<16>>16;k=i<<16>>16}while((j|0)>(k|0))}j=n>>>0>j>>>0?l:m;i=(j&255)+o|0;if((i&65535)<<16>>16<64){fl(f+(q<<9)+(i<<3)|0,0,(63-(j&255)-(p&255)<<3&524280)+8|0)|0;e=a[t>>0]|0}s=s+1<<16>>16;r=s<<16>>16}while((r|0)<(e&255|0));return h|0}}else{di(b,k,e,i,j,32);h=0}i=b+53416|0;if(!(a[i>>0]|0)){C=h;return C|0}j=b+53419|0;e=0;g=0;do{B=g+(d[j>>0]|0)|0;c[f+(g<<9)>>2]=c[b+12456+(C*20480|0)+(B<<9)>>2];c[f+(g<<9)+4>>2]=c[b+12456+(C*20480|0)+(B<<9)+4>>2];c[f+(g<<9)+8>>2]=c[b+12456+(C*20480|0)+(B<<9)+8>>2];c[f+(g<<9)+12>>2]=c[b+12456+(C*20480|0)+(B<<9)+12>>2];c[f+(g<<9)+16>>2]=c[b+12456+(C*20480|0)+(B<<9)+16>>2];c[f+(g<<9)+20>>2]=c[b+12456+(C*20480|0)+(B<<9)+20>>2];c[f+(g<<9)+24>>2]=c[b+12456+(C*20480|0)+(B<<9)+24>>2];c[f+(g<<9)+28>>2]=c[b+12456+(C*20480|0)+(B<<9)+28>>2];c[f+(g<<9)+32>>2]=c[b+12456+(C*20480|0)+(B<<9)+32>>2];c[f+(g<<9)+36>>2]=c[b+12456+(C*20480|0)+(B<<9)+36>>2];c[f+(g<<9)+40>>2]=c[b+12456+(C*20480|0)+(B<<9)+40>>2];c[f+(g<<9)+44>>2]=c[b+12456+(C*20480|0)+(B<<9)+44>>2];c[f+(g<<9)+48>>2]=c[b+12456+(C*20480|0)+(B<<9)+48>>2];c[f+(g<<9)+52>>2]=c[b+12456+(C*20480|0)+(B<<9)+52>>2];c[f+(g<<9)+56>>2]=c[b+12456+(C*20480|0)+(B<<9)+56>>2];c[f+(g<<9)+60>>2]=c[b+12456+(C*20480|0)+(B<<9)+60>>2];c[f+(g<<9)+64>>2]=c[b+12456+(C*20480|0)+(B<<9)+64>>2];c[f+(g<<9)+68>>2]=c[b+12456+(C*20480|0)+(B<<9)+68>>2];c[f+(g<<9)+72>>2]=c[b+12456+(C*20480|0)+(B<<9)+72>>2];c[f+(g<<9)+76>>2]=c[b+12456+(C*20480|0)+(B<<9)+76>>2];c[f+(g<<9)+80>>2]=c[b+12456+(C*20480|0)+(B<<9)+80>>2];c[f+(g<<9)+84>>2]=c[b+12456+(C*20480|0)+(B<<9)+84>>2];c[f+(g<<9)+88>>2]=c[b+12456+(C*20480|0)+(B<<9)+88>>2];c[f+(g<<9)+92>>2]=c[b+12456+(C*20480|0)+(B<<9)+92>>2];c[f+(g<<9)+96>>2]=c[b+12456+(C*20480|0)+(B<<9)+96>>2];c[f+(g<<9)+100>>2]=c[b+12456+(C*20480|0)+(B<<9)+100>>2];c[f+(g<<9)+104>>2]=c[b+12456+(C*20480|0)+(B<<9)+104>>2];c[f+(g<<9)+108>>2]=c[b+12456+(C*20480|0)+(B<<9)+108>>2];c[f+(g<<9)+112>>2]=c[b+12456+(C*20480|0)+(B<<9)+112>>2];c[f+(g<<9)+116>>2]=c[b+12456+(C*20480|0)+(B<<9)+116>>2];c[f+(g<<9)+120>>2]=c[b+12456+(C*20480|0)+(B<<9)+120>>2];c[f+(g<<9)+124>>2]=c[b+12456+(C*20480|0)+(B<<9)+124>>2];c[f+(g<<9)+128>>2]=c[b+12456+(C*20480|0)+(B<<9)+128>>2];c[f+(g<<9)+132>>2]=c[b+12456+(C*20480|0)+(B<<9)+132>>2];c[f+(g<<9)+136>>2]=c[b+12456+(C*20480|0)+(B<<9)+136>>2];c[f+(g<<9)+140>>2]=c[b+12456+(C*20480|0)+(B<<9)+140>>2];c[f+(g<<9)+144>>2]=c[b+12456+(C*20480|0)+(B<<9)+144>>2];c[f+(g<<9)+148>>2]=c[b+12456+(C*20480|0)+(B<<9)+148>>2];c[f+(g<<9)+152>>2]=c[b+12456+(C*20480|0)+(B<<9)+152>>2];c[f+(g<<9)+156>>2]=c[b+12456+(C*20480|0)+(B<<9)+156>>2];c[f+(g<<9)+160>>2]=c[b+12456+(C*20480|0)+(B<<9)+160>>2];c[f+(g<<9)+164>>2]=c[b+12456+(C*20480|0)+(B<<9)+164>>2];c[f+(g<<9)+168>>2]=c[b+12456+(C*20480|0)+(B<<9)+168>>2];c[f+(g<<9)+172>>2]=c[b+12456+(C*20480|0)+(B<<9)+172>>2];c[f+(g<<9)+176>>2]=c[b+12456+(C*20480|0)+(B<<9)+176>>2];c[f+(g<<9)+180>>2]=c[b+12456+(C*20480|0)+(B<<9)+180>>2];c[f+(g<<9)+184>>2]=c[b+12456+(C*20480|0)+(B<<9)+184>>2];c[f+(g<<9)+188>>2]=c[b+12456+(C*20480|0)+(B<<9)+188>>2];c[f+(g<<9)+192>>2]=c[b+12456+(C*20480|0)+(B<<9)+192>>2];c[f+(g<<9)+196>>2]=c[b+12456+(C*20480|0)+(B<<9)+196>>2];c[f+(g<<9)+200>>2]=c[b+12456+(C*20480|0)+(B<<9)+200>>2];c[f+(g<<9)+204>>2]=c[b+12456+(C*20480|0)+(B<<9)+204>>2];c[f+(g<<9)+208>>2]=c[b+12456+(C*20480|0)+(B<<9)+208>>2];c[f+(g<<9)+212>>2]=c[b+12456+(C*20480|0)+(B<<9)+212>>2];c[f+(g<<9)+216>>2]=c[b+12456+(C*20480|0)+(B<<9)+216>>2];c[f+(g<<9)+220>>2]=c[b+12456+(C*20480|0)+(B<<9)+220>>2];c[f+(g<<9)+224>>2]=c[b+12456+(C*20480|0)+(B<<9)+224>>2];c[f+(g<<9)+228>>2]=c[b+12456+(C*20480|0)+(B<<9)+228>>2];c[f+(g<<9)+232>>2]=c[b+12456+(C*20480|0)+(B<<9)+232>>2];c[f+(g<<9)+236>>2]=c[b+12456+(C*20480|0)+(B<<9)+236>>2];c[f+(g<<9)+240>>2]=c[b+12456+(C*20480|0)+(B<<9)+240>>2];c[f+(g<<9)+244>>2]=c[b+12456+(C*20480|0)+(B<<9)+244>>2];c[f+(g<<9)+248>>2]=c[b+12456+(C*20480|0)+(B<<9)+248>>2];c[f+(g<<9)+252>>2]=c[b+12456+(C*20480|0)+(B<<9)+252>>2];fl(f+256+(e<<16>>16<<7<<2)|0,0,256)|0;e=e+1<<16>>16;g=e<<16>>16}while((g|0)<(d[i>>0]|0));return h|0}function Zh(e,g,h,i){e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0;u=Vb;Vb=Vb+256|0;s=u+128|0;t=u;q=e+53416|0;if(!(a[q>>0]|0)){Vb=u;return}r=g+4|0;o=0;p=0;j=0;while(1){e=0;do{w=+f[h+(j<<9)+(e<<3)>>2];x=+f[54652+(e<<3)>>2];y=+f[h+(j<<9)+(e<<3)+4>>2];v=+f[54652+(e<<3)+4>>2];f[s+(e<<2)>>2]=(w*x-y*v)*.015625;f[t+(e<<2)>>2]=(y*x+w*v)*.015625;e=e+1|0}while((e|0)!=32);bi(s,s);ci(t,t);l=c[g>>2]|0;m=b[r>>1]|0;n=m<<16>>16;e=0;j=0;while(1){z=s+(j<<2)|0;k=t+(j<<2)|0;y=+f[k>>2]-+f[z>>2];f[l+(j+640+n<<2)>>2]=y;f[l+(j+n<<2)>>2]=y;y=+f[z>>2]+ +f[k>>2];f[l+(e+703+n<<2)>>2]=y;f[l+(e+63+n<<2)>>2]=y;k=j+1|0;if((k|0)==32){e=p;j=0;break}else{e=~j;j=k}}while(1){z=j<<1;f[i+(e<<2)>>2]=+f[l+(j+n<<2)>>2]*+f[51196+(z<<2)>>2]+ +f[l+(j+96+n<<2)>>2]*+f[51196+(z+64<<2)>>2]+ +f[l+(j+128+n<<2)>>2]*+f[51196+(z+128<<2)>>2]+ +f[l+(j+224+n<<2)>>2]*+f[51196+(z+192<<2)>>2]+ +f[l+(j+256+n<<2)>>2]*+f[51196+(z+256<<2)>>2]+ +f[l+(j+352+n<<2)>>2]*+f[51196+(z+320<<2)>>2]+ +f[l+(j+384+n<<2)>>2]*+f[51196+(z+384<<2)>>2]+ +f[l+(j+480+n<<2)>>2]*+f[51196+(z+448<<2)>>2]+ +f[l+(j+512+n<<2)>>2]*+f[51196+(z+512<<2)>>2]+ +f[l+(j+608+n<<2)>>2]*+f[51196+(z+576<<2)>>2];j=j+1|0;if((j|0)==32)break;else e=e+1|0}b[r>>1]=m+-64<<16>>16<<16>>16<0?576:(m&65535)+65472&65535;e=o+1<<24>>24;if((e&255)<(d[q>>0]|0)){o=e;p=p+32|0;j=e&255}else break}Vb=u;return}function _h(e,g,h,i){e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,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.0,F=0,G=0,H=0;C=Vb;Vb=Vb+1024|0;w=C+896|0;x=C+768|0;y=C+640|0;z=C+512|0;A=C+384|0;B=C+256|0;u=C+128|0;v=C;o=e+53416|0;if(!(a[o>>0]|0)){Vb=C;return}p=x+124|0;q=B+124|0;r=w+124|0;s=A+124|0;t=g+4|0;m=0;n=0;while(1){j=n&255;f[p>>2]=+f[h+(j<<9)+8>>2]*.015625;f[w>>2]=+f[h+(j<<9)>>2]*.015625;f[q>>2]=+f[h+(j<<9)+500>>2]*.015625;f[A>>2]=+f[h+(j<<9)+508>>2]*.015625;e=1;do{l=e<<1;D=l|1;k=31-e|0;f[x+(k<<2)>>2]=+f[h+(j<<9)+(D<<3)>>2]*.015625;f[w+(e<<2)>>2]=+f[h+(j<<9)+(l<<3)>>2]*.015625;f[B+(k<<2)>>2]=+f[h+(j<<9)+(63-D<<3)+4>>2]*.015625;f[A+(e<<2)>>2]=+f[h+(j<<9)+(63-l<<3)+4>>2]*.015625;e=e+1|0}while((e|0)!=31);f[x>>2]=+f[h+(j<<9)+504>>2]*.015625;f[r>>2]=+f[h+(j<<9)+496>>2]*.015625;f[B>>2]=+f[h+(j<<9)+4>>2]*.015625;f[s>>2]=+f[h+(j<<9)+12>>2]*.015625;ai(w,x,y,z);ai(A,B,u,v);k=b[t>>1]|0;l=(c[g>>2]|0)+(k<<16>>16<<2)|0;j=l+5120|0;e=0;do{G=u+(e<<2)|0;F=y+(e<<2)|0;E=+f[G>>2]-+f[F>>2];D=e<<1;f[j+(D<<2)>>2]=E;f[l+(D<<2)>>2]=E;E=+f[G>>2]+ +f[F>>2];F=127-D|0;f[j+(F<<2)>>2]=E;f[l+(F<<2)>>2]=E;F=31-e|0;G=v+(F<<2)|0;F=z+(F<<2)|0;E=+f[G>>2]+ +f[F>>2];D=D|1;f[j+(D<<2)>>2]=E;f[l+(D<<2)>>2]=E;E=+f[G>>2]-+f[F>>2];D=127-D|0;f[j+(D<<2)>>2]=E;f[l+(D<<2)>>2]=E;e=e+1|0}while((e|0)!=32);e=0;j=m;while(1){H=e+192|0;D=e+256|0;F=e+448|0;G=e+512|0;f[i+(j<<2)>>2]=+f[l+(e<<2)>>2]*+f[51196+(e<<2)>>2]+ +f[l+(H<<2)>>2]*+f[51196+(e+64<<2)>>2]+ +f[l+(D<<2)>>2]*+f[51196+(e+128<<2)>>2]+ +f[l+(F<<2)>>2]*+f[51196+(H<<2)>>2]+ +f[l+(G<<2)>>2]*+f[51196+(D<<2)>>2]+ +f[l+(e+704<<2)>>2]*+f[51196+(e+320<<2)>>2]+ +f[l+(e+768<<2)>>2]*+f[51196+(e+384<<2)>>2]+ +f[l+(e+960<<2)>>2]*+f[51196+(F<<2)>>2]+ +f[l+(e+1024<<2)>>2]*+f[51196+(G<<2)>>2]+ +f[l+(e+1216<<2)>>2]*+f[51196+(e+576<<2)>>2];e=e+1|0;if((e|0)==64)break;else j=j+1|0}b[t>>1]=k+-128<<16>>16<<16>>16<0?1152:(k&65535)+65408&65535;n=n+1<<24>>24;if((n&255)>=(d[o>>0]|0))break;else m=m+64|0}Vb=C;return}function $h(e,f){e=e|0;f=f|0;var g=0,h=0,i=0;a[e+12420>>0]=a[e+14>>0]|0;a[e+12423>>0]=a[e+15>>0]|0;a[e+12422>>0]=a[e+12421>>0]|0;g=f&255;h=e+610+g|0;f=a[h>>0]|0;a[e+612+g>>0]=f;if(!(f<<24>>24)){e=19;return e|0}a[e+646+g>>0]=a[(f&255)+-1+(e+634+(g*6|0))>>0]|0;i=e+614+g|0;b[e+2010+(g<<7)>>1]=b[e+730+(g*640|0)+((f&255)+-1<<1)>>1]|0;c[e+10460+(g<<8)>>2]=c[e+7388+(g<<9)+((d[i>>0]|0)+-1<<2)>>2];f=1;do{b[e+2010+(g<<7)+(f<<1)>>1]=b[e+730+(g*640|0)+(f*10|0)+((d[h>>0]|0)+-1<<1)>>1]|0;c[e+10460+(g<<8)+(f<<2)>>2]=c[e+7388+(g<<9)+(f<<3)+((d[i>>0]|0)+-1<<2)>>2];f=f+1|0}while((f|0)!=49);a[e+12277+(g<<6)>>0]=a[e+12149+(g<<6)>>0]|0;a[e+12277+(g<<6)+1>>0]=a[e+12149+(g<<6)+1>>0]|0;a[e+12277+(g<<6)+2>>0]=a[e+12149+(g<<6)+2>>0]|0;a[e+12277+(g<<6)+3>>0]=a[e+12149+(g<<6)+3>>0]|0;a[e+12277+(g<<6)+4>>0]=a[e+12149+(g<<6)+4>>0]|0;a[e+12277+(g<<6)+5>>0]=a[e+12149+(g<<6)+5>>0]|0;a[e+12277+(g<<6)+6>>0]=a[e+12149+(g<<6)+6>>0]|0;a[e+12277+(g<<6)+7>>0]=a[e+12149+(g<<6)+7>>0]|0;a[e+12277+(g<<6)+8>>0]=a[e+12149+(g<<6)+8>>0]|0;a[e+12277+(g<<6)+9>>0]=a[e+12149+(g<<6)+9>>0]|0;a[e+12277+(g<<6)+10>>0]=a[e+12149+(g<<6)+10>>0]|0;a[e+12277+(g<<6)+11>>0]=a[e+12149+(g<<6)+11>>0]|0;a[e+12277+(g<<6)+12>>0]=a[e+12149+(g<<6)+12>>0]|0;a[e+12277+(g<<6)+13>>0]=a[e+12149+(g<<6)+13>>0]|0;a[e+12277+(g<<6)+14>>0]=a[e+12149+(g<<6)+14>>0]|0;a[e+12277+(g<<6)+15>>0]=a[e+12149+(g<<6)+15>>0]|0;a[e+12277+(g<<6)+16>>0]=a[e+12149+(g<<6)+16>>0]|0;a[e+12277+(g<<6)+17>>0]=a[e+12149+(g<<6)+17>>0]|0;a[e+12277+(g<<6)+18>>0]=a[e+12149+(g<<6)+18>>0]|0;a[e+12277+(g<<6)+19>>0]=a[e+12149+(g<<6)+19>>0]|0;a[e+12277+(g<<6)+20>>0]=a[e+12149+(g<<6)+20>>0]|0;a[e+12277+(g<<6)+21>>0]=a[e+12149+(g<<6)+21>>0]|0;a[e+12277+(g<<6)+22>>0]=a[e+12149+(g<<6)+22>>0]|0;a[e+12277+(g<<6)+23>>0]=a[e+12149+(g<<6)+23>>0]|0;a[e+12277+(g<<6)+24>>0]=a[e+12149+(g<<6)+24>>0]|0;a[e+12277+(g<<6)+25>>0]=a[e+12149+(g<<6)+25>>0]|0;a[e+12277+(g<<6)+26>>0]=a[e+12149+(g<<6)+26>>0]|0;a[e+12277+(g<<6)+27>>0]=a[e+12149+(g<<6)+27>>0]|0;a[e+12277+(g<<6)+28>>0]=a[e+12149+(g<<6)+28>>0]|0;a[e+12277+(g<<6)+29>>0]=a[e+12149+(g<<6)+29>>0]|0;a[e+12277+(g<<6)+30>>0]=a[e+12149+(g<<6)+30>>0]|0;a[e+12277+(g<<6)+31>>0]=a[e+12149+(g<<6)+31>>0]|0;a[e+12277+(g<<6)+32>>0]=a[e+12149+(g<<6)+32>>0]|0;a[e+12277+(g<<6)+33>>0]=a[e+12149+(g<<6)+33>>0]|0;a[e+12277+(g<<6)+34>>0]=a[e+12149+(g<<6)+34>>0]|0;a[e+12277+(g<<6)+35>>0]=a[e+12149+(g<<6)+35>>0]|0;a[e+12277+(g<<6)+36>>0]=a[e+12149+(g<<6)+36>>0]|0;a[e+12277+(g<<6)+37>>0]=a[e+12149+(g<<6)+37>>0]|0;a[e+12277+(g<<6)+38>>0]=a[e+12149+(g<<6)+38>>0]|0;a[e+12277+(g<<6)+39>>0]=a[e+12149+(g<<6)+39>>0]|0;a[e+12277+(g<<6)+40>>0]=a[e+12149+(g<<6)+40>>0]|0;a[e+12277+(g<<6)+41>>0]=a[e+12149+(g<<6)+41>>0]|0;a[e+12277+(g<<6)+42>>0]=a[e+12149+(g<<6)+42>>0]|0;a[e+12277+(g<<6)+43>>0]=a[e+12149+(g<<6)+43>>0]|0;a[e+12277+(g<<6)+44>>0]=a[e+12149+(g<<6)+44>>0]|0;a[e+12277+(g<<6)+45>>0]=a[e+12149+(g<<6)+45>>0]|0;a[e+12277+(g<<6)+46>>0]=a[e+12149+(g<<6)+46>>0]|0;a[e+12277+(g<<6)+47>>0]=a[e+12149+(g<<6)+47>>0]|0;a[e+12277+(g<<6)+48>>0]=a[e+12149+(g<<6)+48>>0]|0;a[e+53445+g>>0]=a[e+53443+g>>0]|0;a[e+12418+g>>0]=((a[e+10972+g>>0]|0)!=(d[h>>0]|0))<<31>>31;e=0;return e|0}function ai(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;var g=0,h=0,i=0,j=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0.0,p=0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0;g=0;do{h=a+(g<<2)|0;j=+f[h>>2];i=b+(g<<2)|0;l=+f[i>>2];k=(j+l)*+f[53756+(g<<2)>>2];f[h>>2]=k+l*+f[53756+(g+64<<2)>>2];f[i>>2]=k+j*+f[53756+(g+32<<2)>>2];g=g+1|0}while((g|0)!=32);g=0;do{p=a+(g<<2)|0;r=+f[p>>2];n=b+(g<<2)|0;i=g+16|0;h=a+(i<<2)|0;q=+f[h>>2];i=b+(i<<2)|0;o=+f[i>>2];j=+f[54524+(g<<2)>>2];l=+f[54588+(g<<2)>>2];k=r-q;m=+f[n>>2]-o;f[p>>2]=r+q;f[n>>2]=o+ +f[n>>2];f[h>>2]=k*j-m*l;f[i>>2]=m*j+k*l;g=g+1|0}while((g|0)!=16);g=0;h=0;while(1){q=+f[54524+(h<<2)>>2];m=+f[54588+(h<<2)>>2];n=a+(g<<2)|0;r=+f[n>>2];p=b+(g<<2)|0;i=g+8|0;s=a+(i<<2)|0;o=+f[s>>2];i=b+(i<<2)|0;l=+f[i>>2];k=r-o;j=+f[p>>2]-l;f[n>>2]=r+o;f[p>>2]=l+ +f[p>>2];f[s>>2]=q*k-m*j;f[i>>2]=m*k+q*j;i=g+16|0;s=a+(i<<2)|0;j=+f[s>>2];i=b+(i<<2)|0;p=g+24|0;n=a+(p<<2)|0;k=+f[n>>2];p=b+(p<<2)|0;l=+f[p>>2];o=j-k;r=+f[i>>2]-l;f[s>>2]=j+k;f[i>>2]=l+ +f[i>>2];f[n>>2]=q*o-m*r;f[p>>2]=m*o+q*r;g=g+1|0;if((g|0)==8)break;else h=h+2|0}r=+f[a>>2];q=+f[b>>2];sa=a+16|0;o=+f[sa>>2];ra=b+16|0;m=+f[ra>>2];f[a>>2]=r+o;f[b>>2]=m+ +f[b>>2];f[sa>>2]=r-o;f[ra>>2]=q-m;oa=a+32|0;m=+f[oa>>2];na=b+32|0;q=+f[na>>2];ka=a+48|0;o=+f[ka>>2];ja=b+48|0;r=+f[ja>>2];f[oa>>2]=m+o;f[na>>2]=r+ +f[na>>2];f[ka>>2]=m-o;f[ja>>2]=q-r;ga=a+64|0;r=+f[ga>>2];fa=b+64|0;q=+f[fa>>2];ca=a+80|0;o=+f[ca>>2];ba=b+80|0;m=+f[ba>>2];f[ga>>2]=r+o;f[fa>>2]=m+ +f[fa>>2];f[ca>>2]=r-o;f[ba>>2]=q-m;_=a+96|0;m=+f[_>>2];Z=b+96|0;q=+f[Z>>2];W=a+112|0;o=+f[W>>2];V=b+112|0;r=+f[V>>2];f[_>>2]=m+o;f[Z>>2]=r+ +f[Z>>2];f[W>>2]=m-o;f[V>>2]=q-r;h=a+4|0;r=+f[h>>2];i=b+4|0;Q=a+20|0;q=+f[Q>>2];P=b+20|0;o=+f[P>>2];m=r-q;l=+f[i>>2]-o;f[h>>2]=r+q;f[i>>2]=o+ +f[i>>2];f[Q>>2]=(m+l)*.7071067690849304;f[P>>2]=(l-m)*.7071067690849304;M=a+36|0;m=+f[M>>2];L=b+36|0;I=a+52|0;l=+f[I>>2];H=b+52|0;o=+f[H>>2];q=m-l;r=+f[L>>2]-o;f[M>>2]=m+l;f[L>>2]=o+ +f[L>>2];f[I>>2]=(q+r)*.7071067690849304;f[H>>2]=(r-q)*.7071067690849304;E=a+68|0;q=+f[E>>2];D=b+68|0;A=a+84|0;r=+f[A>>2];z=b+84|0;o=+f[z>>2];l=q-r;m=+f[D>>2]-o;f[E>>2]=q+r;f[D>>2]=o+ +f[D>>2];f[A>>2]=(l+m)*.7071067690849304;f[z>>2]=(m-l)*.7071067690849304;w=a+100|0;l=+f[w>>2];v=b+100|0;n=a+116|0;m=+f[n>>2];p=b+116|0;o=+f[p>>2];r=l-m;q=+f[v>>2]-o;f[w>>2]=l+m;f[v>>2]=o+ +f[v>>2];f[n>>2]=(r+q)*.7071067690849304;f[p>>2]=(q-r)*.7071067690849304;ua=a+8|0;r=+f[ua>>2];ta=b+8|0;q=+f[ta>>2];qa=a+24|0;o=+f[qa>>2];pa=b+24|0;m=+f[pa>>2];f[ua>>2]=r+o;f[ta>>2]=m+ +f[ta>>2];f[qa>>2]=q-m;f[pa>>2]=o-r;ma=a+40|0;r=+f[ma>>2];la=b+40|0;o=+f[la>>2];ia=a+56|0;m=+f[ia>>2];ha=b+56|0;q=+f[ha>>2];f[ma>>2]=r+m;f[la>>2]=q+ +f[la>>2];f[ia>>2]=o-q;f[ha>>2]=m-r;ea=a+72|0;r=+f[ea>>2];da=b+72|0;m=+f[da>>2];aa=a+88|0;q=+f[aa>>2];$=b+88|0;o=+f[$>>2];f[ea>>2]=r+q;f[da>>2]=o+ +f[da>>2];f[aa>>2]=m-o;f[$>>2]=q-r;Y=a+104|0;r=+f[Y>>2];X=b+104|0;q=+f[X>>2];U=a+120|0;o=+f[U>>2];T=b+120|0;m=+f[T>>2];f[Y>>2]=r+o;f[X>>2]=m+ +f[X>>2];f[U>>2]=q-m;f[T>>2]=o-r;S=a+12|0;r=+f[S>>2];R=b+12|0;O=a+28|0;o=+f[O>>2];N=b+28|0;m=+f[N>>2];q=r-o;l=+f[R>>2]-m;f[S>>2]=r+o;f[R>>2]=m+ +f[R>>2];f[O>>2]=(q-l)*-.7071068286895752;f[N>>2]=(q+l)*-.7071068286895752;K=a+44|0;l=+f[K>>2];J=b+44|0;G=a+60|0;q=+f[G>>2];F=b+60|0;m=+f[F>>2];o=l-q;r=+f[J>>2]-m;f[K>>2]=l+q;f[J>>2]=m+ +f[J>>2];f[G>>2]=(o-r)*-.7071068286895752;f[F>>2]=(o+r)*-.7071068286895752;C=a+76|0;r=+f[C>>2];B=b+76|0;y=a+92|0;o=+f[y>>2];x=b+92|0;m=+f[x>>2];q=r-o;l=+f[B>>2]-m;f[C>>2]=r+o;f[B>>2]=m+ +f[B>>2];f[y>>2]=(q-l)*-.7071068286895752;f[x>>2]=(q+l)*-.7071068286895752;u=a+108|0;l=+f[u>>2];t=b+108|0;s=a+124|0;q=+f[s>>2];g=b+124|0;m=+f[g>>2];o=l-q;r=+f[t>>2]-m;f[u>>2]=l+q;f[t>>2]=m+ +f[t>>2];f[s>>2]=(o-r)*-.7071068286895752;f[g>>2]=(o+r)*-.7071068286895752;r=+f[a>>2];o=+f[b>>2];m=+f[ua>>2];q=+f[ta>>2];f[a>>2]=r+m;f[b>>2]=q+ +f[b>>2];f[ua>>2]=r-m;f[ta>>2]=o-q;q=+f[sa>>2];o=+f[ra>>2];m=+f[qa>>2];r=+f[pa>>2];f[sa>>2]=q+m;f[ra>>2]=r+ +f[ra>>2];f[qa>>2]=q-m;f[pa>>2]=o-r;r=+f[oa>>2];o=+f[na>>2];m=+f[ma>>2];q=+f[la>>2];f[oa>>2]=r+m;f[na>>2]=q+ +f[na>>2];f[ma>>2]=r-m;f[la>>2]=o-q;q=+f[ka>>2];o=+f[ja>>2];m=+f[ia>>2];r=+f[ha>>2];f[ka>>2]=q+m;f[ja>>2]=r+ +f[ja>>2];f[ia>>2]=q-m;f[ha>>2]=o-r;r=+f[ga>>2];o=+f[fa>>2];m=+f[ea>>2];q=+f[da>>2];f[ga>>2]=r+m;f[fa>>2]=q+ +f[fa>>2];f[ea>>2]=r-m;f[da>>2]=o-q;q=+f[ca>>2];o=+f[ba>>2];m=+f[aa>>2];r=+f[$>>2];f[ca>>2]=q+m;f[ba>>2]=r+ +f[ba>>2];f[aa>>2]=q-m;f[$>>2]=o-r;r=+f[_>>2];o=+f[Z>>2];m=+f[Y>>2];q=+f[X>>2];f[_>>2]=r+m;f[Z>>2]=q+ +f[Z>>2];f[Y>>2]=r-m;f[X>>2]=o-q;q=+f[W>>2];o=+f[V>>2];m=+f[U>>2];r=+f[T>>2];f[W>>2]=q+m;f[V>>2]=r+ +f[V>>2];f[U>>2]=q-m;f[T>>2]=o-r;r=+f[h>>2];o=+f[i>>2];m=+f[S>>2];q=+f[R>>2];f[h>>2]=r+m;f[i>>2]=q+ +f[i>>2];f[S>>2]=o-q;f[R>>2]=m-r;r=+f[Q>>2];m=+f[P>>2];q=+f[O>>2];o=+f[N>>2];f[Q>>2]=r+q;f[P>>2]=o+ +f[P>>2];f[O>>2]=m-o;f[N>>2]=q-r;r=+f[M>>2];q=+f[L>>2];o=+f[K>>2];m=+f[J>>2];f[M>>2]=r+o;f[L>>2]=m+ +f[L>>2];f[K>>2]=q-m;f[J>>2]=o-r;r=+f[I>>2];o=+f[H>>2];m=+f[G>>2];q=+f[F>>2];f[I>>2]=r+m;f[H>>2]=q+ +f[H>>2];f[G>>2]=o-q;f[F>>2]=m-r;r=+f[E>>2];m=+f[D>>2];q=+f[C>>2];o=+f[B>>2];f[E>>2]=r+q;f[D>>2]=o+ +f[D>>2];f[C>>2]=m-o;f[B>>2]=q-r;r=+f[A>>2];q=+f[z>>2];o=+f[y>>2];m=+f[x>>2];f[A>>2]=r+o;f[z>>2]=m+ +f[z>>2];f[y>>2]=q-m;f[x>>2]=o-r;r=+f[w>>2];o=+f[v>>2];m=+f[u>>2];q=+f[t>>2];f[w>>2]=r+m;f[v>>2]=q+ +f[v>>2];f[u>>2]=o-q;f[t>>2]=m-r;r=+f[n>>2];m=+f[p>>2];q=+f[s>>2];o=+f[g>>2];f[n>>2]=r+q;f[p>>2]=o+ +f[p>>2];f[s>>2]=m-o;f[g>>2]=q-r;g=0;do{ua=g|1;ra=a+(g<<2)|0;m=+f[ra>>2];sa=b+(g<<2)|0;q=+f[sa>>2];ta=a+(ua<<2)|0;o=+f[ta>>2];ua=b+(ua<<2)|0;r=+f[ua>>2];f[ra>>2]=m+o;f[sa>>2]=r+ +f[sa>>2];f[ta>>2]=m-o;f[ua>>2]=q-r;g=g+2|0}while(g>>>0<32);g=0;do{ua=d[119710+g>>0]|0;r=+f[a+(ua<<2)>>2];o=+f[b+(ua<<2)>>2];q=(r+o)*+f[53756+(g+96<<2)>>2];f[c+(g<<2)>>2]=q+o*+f[53756+(g+160<<2)>>2];f[e+(g<<2)>>2]=q+r*+f[53756+(g+128<<2)>>2];g=g+1|0}while((g|0)!=16);f[e+64>>2]=(+f[i>>2]-+f[h>>2])*.7071067690849304;f[c+64>>2]=(+f[h>>2]+ +f[i>>2])*.7071067690849304;g=17;do{ua=d[119710+g>>0]|0;r=+f[a+(ua<<2)>>2];o=+f[b+(ua<<2)>>2];q=(r+o)*+f[53756+(g+96<<2)>>2];f[c+(g<<2)>>2]=q+o*+f[53756+(g+160<<2)>>2];f[e+(g<<2)>>2]=q+r*+f[53756+(g+128<<2)>>2];g=g+1|0}while((g|0)!=32);return}function bi(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0;e=+f[b+60>>2];h=+f[b+64>>2];c=(e+h)*.7071067690849304;h=(e-h)*.7071067690849304;e=+f[b+32>>2];p=+f[b+92>>2];i=(e+p)*.7071067690849304;p=(e-p)*.7071067690849304;e=+f[b+48>>2];r=+f[b+76>>2];I=(e+r)*.7071067690849304;r=(e-r)*.7071067690849304;e=+f[b+44>>2];s=+f[b+80>>2];o=(e+s)*.7071067690849304;s=(e-s)*.7071067690849304;e=+f[b+56>>2];v=+f[b+68>>2];u=(e+v)*.7071067690849304;v=(e-v)*.7071067690849304;e=+f[b+36>>2];D=+f[b+88>>2];A=(e+D)*.7071067690849304;D=(e-D)*.7071067690849304;e=+f[b+52>>2];F=+f[b+72>>2];l=(e+F)*.7071067690849304;F=(e-F)*.7071067690849304;e=+f[b+40>>2];j=+f[b+84>>2];G=(e+j)*.7071067690849304;j=(e-j)*.7071067690849304;e=+f[b>>2];z=e-c;e=c+e;c=+f[b+124>>2];k=c-h;c=h+c;h=+f[b+28>>2];t=h-i;h=i+h;i=+f[b+96>>2];g=i-p;i=p+i;p=+f[b+12>>2];n=p-I;p=I+p;I=+f[b+112>>2];w=I-r;I=r+I;r=+f[b+16>>2];x=r-o;r=o+r;o=+f[b+108>>2];m=o-s;o=s+o;s=+f[b+4>>2];J=s-u;s=u+s;u=+f[b+120>>2];C=u-v;u=v+u;v=+f[b+24>>2];H=v-A;v=A+v;A=+f[b+100>>2];y=A-D;A=D+A;D=+f[b+8>>2];B=D-l;D=l+D;l=+f[b+116>>2];q=l-F;l=F+l;F=+f[b+20>>2];d=F-G;F=G+F;G=+f[b+104>>2];E=G-j;G=j+G;j=(h+i)*.9238795042037964;i=j-i*.5411961078643799;j=h*1.3065630197525024-j;h=(t+g)*-.3826834261417389;g=g*1.3065630197525024+h;h=t*.5411961078643799-h;t=(r+o)*.9238795042037964;o=t-o*.5411961078643799;t=r*1.3065630197525024-t;r=(x+m)*-.3826834261417389;m=m*1.3065630197525024+r;r=x*.5411961078643799-r;x=(v+A)*.9238795042037964;A=x-A*.5411961078643799;x=v*1.3065630197525024-x;v=(H+y)*-.3826834261417389;y=y*1.3065630197525024+v;v=H*.5411961078643799-v;H=(F+G)*.9238795042037964;G=H-G*.5411961078643799;H=F*1.3065630197525024-H;F=(d+E)*-.3826834261417389;E=E*1.3065630197525024+F;F=d*.5411961078643799-F;d=e-i;i=e+i;e=c-j;j=c+j;c=z-g;g=z+g;z=k-h;h=k+h;k=p-o;o=p+o;p=I-t;t=I+t;I=n-m;m=n+m;n=w-r;r=w+r;w=s-A;A=s+A;s=u-x;x=u+x;u=J-y;y=J+y;J=C-v;v=C+v;C=D-G;G=D+G;D=l-H;H=l+H;l=B-E;E=B+E;B=q-F;F=q+F;q=(t+o)*.9807852506637573;t=q-t*.78569495677948;q=o*1.1758755445480347-q;o=(r+m)*.5555702447891235;r=r*.27589938044548035+o;o=m*1.3870398998260498-o;m=(p+k)*-.19509032368659973;p=p*1.1758755445480347+m;m=k*.78569495677948-m;k=(n+I)*-.8314695954322815;n=n*1.3870398998260498+k;k=I*-.27589938044548035-k;I=(H+G)*.9807852506637573;H=I-H*.78569495677948;I=G*1.1758755445480347-I;G=(F+E)*.5555702447891235;F=F*.27589938044548035+G;G=E*1.3870398998260498-G;E=(D+C)*-.19509032368659973;D=D*1.1758755445480347+E;E=C*.78569495677948-E;C=(B+l)*-.8314695954322815;B=B*1.3870398998260498+C;C=l*-.27589938044548035-C;l=i-t;t=i+t;i=j-q;q=j+q;j=g-r;r=g+r;g=h-o;o=h+o;h=d-p;p=d+p;d=e-m;m=e+m;e=c-n;n=c+n;c=z-k;k=z+k;z=A-H;H=A+H;A=x-I;I=x+I;x=y-F;F=y+F;y=v-G;G=v+G;v=w-D;D=w+D;w=s-E;E=s+E;s=u-B;B=u+B;u=J-C;C=J+C;J=(I+H)*.9951847195625305;I=J-I*.8971675634384155;J=H*1.0932018756866455-J;H=(G+F)*.8819212913513184;G=H-G*.41052451729774475;H=F*1.3533179759979248-H;F=(E+D)*.6343932747840881;E=E*.13861717283725739+F;F=D*1.4074037075042725-F;D=(C+B)*.290284663438797;C=C*.6666556596755981+D;D=B*1.247225046157837-D;B=(A+z)*-.0980171412229538;A=A*1.0932018756866455+B;B=z*.8971675634384155-B;z=(y+x)*-.4713967442512512;y=y*1.3533179759979248+z;z=x*.41052451729774475-z;x=(w+v)*-.7730104327201843;w=w*1.4074037075042725+x;x=v*-.13861717283725739-x;v=(u+s)*-.9569403529167175;u=u*1.247225046157837+v;v=s*-.6666556596755981-v;s=t-I;I=t+I;t=q-J;J=q+J;q=r-G;G=r+G;r=o-H;H=o+H;o=p-E;E=p+E;p=m-F;F=m+F;m=n-C;C=n+C;n=k-D;D=k+D;k=l-A;A=l+A;l=i-B;B=i+B;i=j-y;y=j+y;j=g-z;z=g+z;g=h-w;w=h+w;h=d-x;x=d+x;d=e-u;u=e+u;e=c-v;v=c+v;c=(J+I)*.99969881772995;f[a>>2]=c-J*.975157618522644;f[a+124>>2]=I*1.0242400169372559-c;c=(H+G)*.9924795627593994;f[a+8>>2]=c-H*.8700688481330872;f[a+116>>2]=G*1.114890217781067-c;c=(F+E)*.9757021069526672;f[a+16>>2]=c-F*.7566009163856506;f[a+108>>2]=E*1.1948033571243286-c;c=(D+C)*.949528157711029;f[a+24>>2]=c-D*.6358464360237122;f[a+100>>2]=C*1.2632099390029907-c;c=(B+A)*.91420978307724;f[a+32>>2]=c-B*.5089684128761292;f[a+92>>2]=A*1.319451093673706-c;c=(z+y)*.8700869679450989;f[a+40>>2]=c-z*.3771888017654419;f[a+84>>2]=y*1.3629851341247559-c;c=(x+w)*.8175848126411438;f[a+48>>2]=c-x*.24177661538124084;f[a+76>>2]=w*1.3933930397033691-c;c=(v+u)*.7572088241577148;f[a+56>>2]=c-v*.10403600335121155;f[a+68>>2]=u*1.4103816747665405-c;c=(t+s)*.6895405650138855;f[a+64>>2]=t*.034706536680459976+c;f[a+60>>2]=s*1.413787603378296-c;c=(r+q)*.6152315735816956;f[a+72>>2]=r*.1731148362159729+c;f[a+52>>2]=q*1.4035780429840088-c;c=(p+o)*.5349976420402527;f[a+80>>2]=p*.30985593795776367+c;f[a+44>>2]=o*1.379851222038269-c;c=(n+m)*.4496113359928131;f[a+88>>2]=n*.4436129629611969+c;f[a+36>>2]=m*1.3428356647491455-c;c=(l+k)*.3598950505256653;f[a+96>>2]=l*.5730977654457092+c;f[a+28>>2]=k*1.292887806892395-c;c=(j+i)*.2667127549648285;f[a+104>>2]=j*.6970633268356323+c;f[a+20>>2]=i*1.2304887771606445-c;c=(h+g)*.1709618866443634;f[a+112>>2]=h*.8143157362937927+c;f[a+12>>2]=g*1.1562395095825195-c;c=(e+d)*.0735645666718483;f[a+120>>2]=e*.9237259030342102+c;f[a+4>>2]=d*1.0708550214767456-c;return}function ci(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0,g=0.0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0.0,I=0.0,J=0.0,K=0.0;u=+f[b>>2];q=+f[b+4>>2];H=u-q;F=+f[b+8>>2];q=F-q;K=+f[b+12>>2];F=F-K;D=+f[b+16>>2];K=D-K;s=+f[b+20>>2];D=D-s;r=+f[b+24>>2];s=r-s;w=+f[b+28>>2];r=r-w;J=+f[b+32>>2];w=J-w;o=+f[b+36>>2];J=J-o;l=+f[b+40>>2];o=l-o;E=+f[b+44>>2];l=l-E;e=+f[b+48>>2];E=e-E;g=+f[b+52>>2];e=e-g;n=+f[b+56>>2];g=n-g;y=+f[b+60>>2];n=n-y;C=+f[b+64>>2];i=+f[b+68>>2];j=C-i;z=+f[b+72>>2];i=z-i;A=+f[b+76>>2];z=z-A;t=+f[b+80>>2];A=t-A;m=+f[b+84>>2];t=t-m;B=+f[b+88>>2];m=B-m;k=+f[b+92>>2];B=B-k;x=+f[b+96>>2];k=x-k;I=+f[b+100>>2];x=x-I;p=+f[b+104>>2];I=p-I;G=+f[b+108>>2];p=p-G;v=+f[b+112>>2];G=v-G;d=+f[b+116>>2];v=v-d;h=+f[b+120>>2];d=h-d;h=h-+f[b+124>>2];y=(C-y)*.7071067690849304;C=u-y;y=u+y;u=(w+k)*-.9238795042037964;w=w*1.3065630197525024+u;u=k*-.5411961078643799-u;k=y-u;u=y+u;y=C-w;w=C+w;C=(E+A)*.7071067690849304;c=K-C;C=K+C;A=(E-A)*.7071067690849304;E=A-G;G=A+G;A=(C+G)*.9807852506637573;G=A-G*.78569495677948;A=C*1.1758755445480347-A;C=(c+E)*.8314695954322815;E=C-E*.27589938044548035;C=c*1.3870398998260498-C;c=u-G;G=u+G;u=w-E;E=w+E;w=y-C;C=y+C;y=k-A;A=k+A;k=s-o;o=s+o;s=m-I;I=m+I;m=(g+i)*.7071067690849304;K=q-m;m=q+m;q=(o+I)*-.9238795042037964;o=o*1.3065630197525024+q;q=I*-.5411961078643799-q;I=m-q;q=m+q;m=K-o;o=K+o;i=(g-i)*.7071067690849304;g=d-i;d=i+d;i=(k+s)*-.9238795042037964;s=s*1.3065630197525024+i;i=k*-.5411961078643799-i;k=d-i;d=i+d;i=g-s;g=s+g;s=(q+d)*.9951847195625305;d=s-d*.8971675634384155;s=q*1.0932018756866455-s;q=(o-g)*.9569403529167175;g=g*.6666556596755981+q;q=o*1.247225046157837-q;o=(m+i)*.8819212913513184;i=o-i*.41052451729774475;o=m*1.3533179759979248-o;m=(I-k)*.7730104327201843;k=k*.13861717283725739+m;m=I*1.4074037075042725-m;I=G-d;d=G+d;G=E-g;g=E+g;E=C-i;i=C+i;C=A-k;k=A+k;A=y-m;m=y+m;y=w-o;o=w+o;w=u-q;q=u+q;u=c-s;s=c+s;c=(H+h)*-.9987954497337341;H=H*1.0478631258010864+c;c=h*-.9497277736663818-c;h=(D+p)*-.9700312614440918;D=D*1.213011384010315+h;h=p*-.7270510792732239-h;p=(J+B)*-.903989315032959;J=J*1.3315443992614746+p;p=B*-.47643420100212097-p;B=(e+z)*-.803207516670227;e=e*1.3989068269729614+B;B=z*-.20750822126865387-B;z=(n+j)*-.6715589761734009;j=j*1.4125100374221802+z;z=n*.06939216703176498-z;n=(l+t)*-.5141027569770813;t=t*1.3718312978744507+n;n=l*.34362587332725525-n;l=(r+x)*-.3368898630142212;x=x*1.278433918952942+l;l=r*.6046541929244995-l;r=(F+v)*-.1467304676771164;v=v*1.1359069347381592+r;r=F*.8424460291862488-r;F=c-z;c=z+c;z=H-j;H=j+H;j=h-n;h=n+h;n=D-t;D=t+D;t=p-l;l=p+l;p=J-x;x=J+x;J=B-r;r=B+r;B=e-v;v=e+v;e=(F+z)*-.9807852506637573;F=F*1.1758755445480347+e;e=z*-.78569495677948-e;z=(j+n)*-.5555702447891235;j=j*1.3870398998260498+z;z=n*.27589938044548035-z;n=(t+p)*.19509032368659973;t=t*.78569495677948+n;n=p*1.1758755445480347-n;p=(J+B)*.8314695954322815;J=p-J*.27589938044548035;p=B*1.3870398998260498-p;B=c-l;c=l+c;l=H-x;H=x+H;x=h-r;r=h+r;h=D-v;v=D+v;D=e-n;e=n+e;n=F-t;F=t+F;t=z-p;p=z+p;z=j-J;J=j+J;j=(B+l)*-.9238795042037964;B=B*1.3065630197525024+j;j=l*-.5411961078643799-j;l=(x+h)*.3826834261417389;x=x*.5411961078643799+l;l=h*1.3065630197525024-l;h=(D+n)*-.9238795042037964;D=D*1.3065630197525024+h;h=n*-.5411961078643799-h;n=(t+z)*.3826834261417389;t=t*.5411961078643799+n;n=z*1.3065630197525024-n;z=c-r;c=r+c;r=H-v;H=v+H;v=j-l;j=l+j;l=B-x;B=x+B;x=e-p;e=p+e;p=F-J;F=J+F;J=h-n;h=n+h;n=D-t;D=t+D;t=(z-r)*.7071067690849304;r=(z+r)*.7071067690849304;z=(v-l)*.7071067690849304;l=(v+l)*.7071067690849304;v=(x-p)*.7071067690849304;p=(x+p)*.7071067690849304;x=(J-n)*.7071067690849304;n=(J+n)*.7071067690849304;f[a+124>>2]=(d+c)*.5001506209373474;f[a+120>>2]=(g+e)*.5013584494590759;f[a+116>>2]=(i+h)*.5037887096405029;f[a+112>>2]=(k+j)*.5074711441993713;f[a+108>>2]=(m+l)*.5124514698982239;f[a+104>>2]=(o+n)*.5187926888465881;f[a+100>>2]=(q+p)*.5265772938728333;f[a+96>>2]=(s+r)*.5359098315238953;f[a+92>>2]=(u+t)*.5469204187393188;f[a+88>>2]=(w+v)*.5597698092460632;f[a+84>>2]=(y+x)*.5746551752090454;f[a+80>>2]=(A+z)*.5918185114860535;f[a+76>>2]=(C+B)*.6115573644638062;f[a+72>>2]=(E+D)*.6342389583587646;f[a+68>>2]=(G+F)*.6603198051452637;f[a+64>>2]=(I+H)*.690372109413147;f[a+60>>2]=(I-H)*.7251205444335938;f[a+56>>2]=(G-F)*.765494167804718;f[a+52>>2]=(E-D)*.8127021193504333;f[a+48>>2]=(C-B)*.8683447241783142;f[a+44>>2]=(A-z)*.9345836043357849;f[a+40>>2]=(y-x)*1.0144082307815552;f[a+36>>2]=(w-v)*1.1120716333389282;f[a+32>>2]=(u-t)*1.2338327169418335;f[a+28>>2]=(s-r)*1.389293909072876;f[a+24>>2]=(q-p)*1.5939723253250122;f[a+20>>2]=(o-n)*1.874675989151001;f[a+16>>2]=(m-l)*2.282050132751465;f[a+12>>2]=(k-j)*2.924628496170044;f[a+8>>2]=(i-h)*4.084610939025879;f[a+4>>2]=(g-e)*6.796750545501709;f[a>>2]=(d-c)*20.373878479003906;return}function di(e,g,h,i,j,k){e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;G=Vb;Vb=Vb+768|0;C=G+512|0;D=G+384|0;E=G+256|0;F=G+128|0;B=G;u=e+53416|0;if(!(a[u>>0]|0)){Vb=G;return}v=g+4|0;w=C+4|0;x=E+124|0;y=C+128|0;z=C+132|0;A=D+124|0;t=k&255;r=j&255;p=0;q=0;o=0;s=32;while(1){j=c[g>>2]|0;m=b[v>>1]|0;n=m<<16>>16;e=q;k=31;while(1){H=c[h+(e<<2)>>2]|0;e=e+1|0;c[j+(k+320+n<<2)>>2]=H;c[j+(k+n<<2)>>2]=H;if(s<<16>>16==(e&65535)<<16>>16){e=0;break}else k=k+-1|0}do{k=e+n|0;H=e<<1;f[C+(e<<2)>>2]=+f[j+(k<<2)>>2]*+f[51196+(H<<2)>>2]+ +f[j+(k+64<<2)>>2]*+f[51196+(H+128<<2)>>2]+ +f[j+(k+128<<2)>>2]*+f[51196+(H+256<<2)>>2]+ +f[j+(k+192<<2)>>2]*+f[51196+(H+384<<2)>>2]+ +f[j+(k+256<<2)>>2]*+f[51196+(H+512<<2)>>2];e=e+1|0}while((e|0)!=64);b[v>>1]=m+-32<<16>>16<<16>>16<0?288:(m&65535)+65504&65535;c[x>>2]=c[w>>2];c[D>>2]=c[C>>2];e=1;do{H=e;e=e+1|0;c[E+(31-H<<2)>>2]=c[C+(e<<2)>>2];f[D+(H<<2)>>2]=-+f[C+(64-H<<2)>>2]}while((e|0)!=31);c[E>>2]=c[y>>2];f[A>>2]=-+f[z>>2];ai(D,E,F,B);k=o+r|0;m=0;do{e=m<<1;j=e|1;if((j|0)<(t|0)){f[i+(k<<9)+(e<<3)>>2]=+f[F+(m<<2)>>2]*2.0;f[i+(k<<9)+(e<<3)+4>>2]=+f[B+(m<<2)>>2]*2.0;H=31-m|0;f[i+(k<<9)+(j<<3)>>2]=+f[B+(H<<2)>>2]*-2.0;l=+f[F+(H<<2)>>2]*-2.0}else{if((e|0)<(t|0)){f[i+(k<<9)+(e<<3)>>2]=+f[F+(m<<2)>>2]*2.0;l=+f[B+(m<<2)>>2]*2.0}else{f[i+(k<<9)+(e<<3)>>2]=0.0;l=0.0}f[i+(k<<9)+(e<<3)+4>>2]=l;f[i+(k<<9)+(j<<3)>>2]=0.0;l=0.0}f[i+(k<<9)+(j<<3)+4>>2]=l;m=m+1|0}while((m|0)!=16);e=p+1<<24>>24;if((e&255)<(d[u>>0]|0)){p=e;q=q+32|0;o=e&255;s=s+32<<16>>16}else break}Vb=G;return}function ei(b,e,g,i){b=b|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0,z=0.0,A=0.0,B=0.0,C=0.0,D=0,E=0,F=0.0,G=0,H=0.0,I=0.0,J=0,K=0,L=0.0,M=0.0,N=0,O=0.0,P=0.0,Q=0.0,R=0.0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0;_=Vb;Vb=Vb+512|0;X=_;Y=b+53419|0;J=a[Y>>0]|0;Z=i&255;K=a[b+616+(Z*6|0)>>0]|0;N=a[(d[b+610+Z>>0]|0)+(b+616+(Z*6|0))>>0]|0;j=a[b+19>>0]|0;a:do if(j<<24>>24){q=j&255;p=0;while(1){n=a[b+10976+(Z*5|0)+p>>0]|0;o=b+10986+(Z*5|0)+p|0;j=a[o>>0]|0;switch(n<<24>>24){case 1:{l=j<<24>>24==0?.6000000238418579:.75;break}case 2:{l=.8999999761581421;break}case 3:{l=.9800000190734863;break}default:l=j<<24>>24==1?.6000000238418579:0.0}k=b+10996+(Z<<8)+(p<<2)|0;m=b+11508+(Z<<8)+(p<<2)|0;R=+f[m>>2];W=l<R;l=l*(W?.75:.90625)+R*(W?.25:.09375);f[k>>2]=l;if(!(l<.015625))if(!(l>=.99609375))j=(f[h>>2]=l,c[h>>2]|0);else{j=1065287680;r=9}else{j=0;r=9}if((r|0)==9){r=0;c[k>>2]=j}c[m>>2]=j;a[o>>0]=n;p=p+1|0;if((p|0)==(q|0))break a}}while(0);do if(i<<24>>24==0?a[b+12426>>0]|0:0){o=b+13|0;q=a[o>>0]|0;D=b+14|0;p=a[D>>0]|0;k=a[119750+((Bg(c[b>>2]|0)|0)&255)>>0]|0;G=b+12020|0;a[G>>0]=0;D=a[D>>0]|0;E=(d[b+15>>0]|0)+(D&255)|0;if(E>>>0>(k&255)>>>0)if((d[b+26>>0]|0)<(k&255)){j=0;n=0;while(1){j=j+1<<24>>24;m=j&255;if((d[b+26+m>>0]|0)>=(k&255))break;else n=m}j=n+1&255}else j=0;else j=a[b+16>>0]|0;y=a[b+16>>0]|0;if(!(y<<24>>24)){a[G>>0]=0;a[b+12021>>0]=0;a[b+12085>>0]=0;break}s=d[o>>0]|0;t=s+-2|0;u=s+-1|0;k=q;q=j;o=0;while(1){i=q&255;k=u+(k&255)|0;j=i+1&255;do{j=j+-1<<24>>24;n=a[(j&255)+(b+26)>>0]|0;r=n&255;m=(t+r|0)%2|0}while((k-(m&255)|0)<(r|0));V=r-(p&255)|0;V=(V|0)>0?V:0;W=V&255;j=o&255;a[b+12021+j>>0]=W;a[b+12085+j>>0]=s-m-V;j=o+1<<24>>24;if(!(W<<24>>24)){k=D;j=o}else{a[G>>0]=j;p=n;k=n}if((E|0)==(r|0))break;else{q=((d[b+26+i>>0]|0)-r|0)<3?y:q;o=j}}k=j+-1<<24>>24;if((j&255)>1?(d[(j&255)+-1+(b+12021)>>0]|0)<3:0){a[G>>0]=k;j=k}a[G>>0]=(j&255)<5?j:5}while(0);U=a[b+12020>>0]|0;if(U<<24>>24){V=b+14|0;T=b+53416|0;W=K&255;G=J&255;J=G+-2+W|0;S=G+-1+W|0;D=(K&255)<(N&255);E=N&255;y=N&255;k=0;j=0;while(1){t=b+12021+k|0;if(a[t>>0]|0){u=j<<24>>24==0;i=b+12085+k|0;r=d[V>>0]|0;s=j&255;q=0;n=0;while(1){k=n+r|0;if(!u){m=0;do{k=(k&255)+(d[b+12021+m>>0]|0)|0;m=m+1|0}while((m|0)!=(s|0))}m=n+(d[i>>0]|0)|0;p=k&255;Q=+f[b+10996+(Z<<8)+(d[b+538+p>>0]<<2)>>2];R=Q*Q;if(R>0.0){k=a[Y>>0]|0;n=k&255;N=n+-2|0;o=m&255;O=+f[e+(N<<9)+(o<<3)>>2];P=+f[e+(N<<9)+(o<<3)+4>>2];m=n+-1|0;L=+f[e+(m<<9)+(o<<3)>>2];M=+f[e+(m<<9)+(o<<3)+4>>2];m=k<<24>>24;n=((a[T>>0]|0)+6&255)+n|0;if((n|0)>(m|0)){H=0.0;I=0.0;A=0.0;B=0.0;C=0.0;z=O;v=M;x=L;F=P;while(1){l=+f[e+(m<<9)+(o<<3)>>2];w=+f[e+(m<<9)+(o<<3)+4>>2];H=H+(x*l+v*w);I=I+(x*w-v*l);A=A+(z*l+F*w);B=B+(z*w-F*l);C=C+(v*v+x*x);k=k+1<<24>>24;m=k<<24>>24;if((n|0)<=(m|0))break;else{F=v;z=x;v=w;x=l}}}else{H=0.0;I=0.0;A=0.0;B=0.0;C=0.0;x=O;w=M;l=L;v=P}z=O*L+P*M+(H-(v*w+l*x));w=O*M-P*L+(I-(w*x-v*l));l=C*(O*O+P*P+(C-(v*v+x*x)))-(w*w+z*z)*.9999990463256836;if(l==0.0){v=0.0;x=0.0}else{x=1.0/l;v=(H*z-I*w-C*A)*x;x=(H*w+I*z-C*B)*x}if(C==0.0){m=X+(o<<3)|0;f[m>>2]=0.0;w=0.0;l=0.0}else{P=1.0/C;l=-(P*(w*x+(H+z*v)));m=X+(o<<3)|0;f[m>>2]=l;w=-(P*(I+z*x-w*v))}k=X+(o<<3)+4|0;f[k>>2]=w;if(!(!(l*l+w*w>=16.0)?!(v*v+x*x>=16.0):0)){f[m>>2]=0.0;f[k>>2]=0.0;l=+f[X+(o<<3)>>2];v=0.0;w=0.0;x=0.0}H=Q*l;F=R*v;C=Q*w;z=R*x;if(D){l=+f[e+(J<<9)+(o<<3)+4>>2];v=+f[e+(S<<9)+(o<<3)>>2];w=+f[e+(J<<9)+(o<<3)>>2];x=+f[e+(S<<9)+(o<<3)+4>>2];k=W;while(1){N=k+G|0;A=+f[e+(N<<9)+(o<<3)>>2];B=+f[e+(N<<9)+(o<<3)+4>>2];f[g+(N<<9)+(p<<3)>>2]=F*w+(H*v-C*x)-z*l+A;f[g+(N<<9)+(p<<3)+4>>2]=F*l+(z*w+(C*v+H*x))+B;k=k+1|0;if((k|0)==(E|0))break;else{w=v;l=x;v=A;x=B}}}}else if(D){k=m&255;m=W;do{N=m+G|0;c[g+(N<<9)+(p<<3)>>2]=c[e+(N<<9)+(k<<3)>>2];c[g+(N<<9)+(p<<3)+4>>2]=c[e+(N<<9)+(k<<3)+4>>2];m=m+1|0}while((m|0)!=(y|0))}k=q+1<<24>>24;if((k&255)<(d[t>>0]|0)){q=k;n=k&255}else break}}j=j+1<<24>>24;if((j&255)<(U&255))k=j&255;else break}}if(!(a[b+12426>>0]|0)){Vb=_;return}hi(b);Vb=_;return}function fi(e,g,h){e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0.0,m=0,n=0,o=0.0,p=0,q=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0,I=0.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,$=0.0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=Vb;Vb=Vb+3536|0;aa=ia+3332|0;ba=ia+3136|0;ca=ia+2940|0;ga=ia;fl(ga|0,0,2940)|0;ha=h&255;k=a[e+53451+ha>>0]|0;do if(k<<24>>24){i=a[e+53507+ha>>0]|0;j=i&255;if(k<<24>>24==2){if((i&255)<=1){i=-1;break}i=j+255&255;break}else{if(!(i<<24>>24)){i=-1;break}i=1-j+(d[e+610+ha>>0]|0)&255;break}}else i=-1;while(0);fa=e+10972+ha|0;a[fa>>0]=i;ea=e+610+ha|0;j=a[ea>>0]|0;i=j<<24>>24!=0;if((a[e+53440>>0]|0)==1)if(i){x=e+53419|0;y=e+14|0;v=a[e+15>>0]|0;z=v&255;u=j&255;i=v;t=0;do{s=t;t=t+1|0;p=d[e+616+(ha*6|0)+t>>0]|0;q=d[e+616+(ha*6|0)+s>>0]|0;Z=p-q|0;o=(Z|0)==0?1.0:+(Z|0);if(!(i<<24>>24))i=0;else{n=0;do{k=d[x>>0]|0;i=k+q|0;j=i&255;k=k+p|0;if(k>>>0>j>>>0){m=n+(d[y>>0]|0)|0;i=i&255;l=0.0;do{_=+f[g+(j<<9)+(m<<3)>>2];$=+f[g+(j<<9)+(m<<3)+4>>2];l=l+(_*_+$*$);i=i+1<<24>>24;j=i&255}while(k>>>0>j>>>0)}else l=0.0;f[e+4828+(ha*1280|0)+(n*20|0)+(s<<2)>>2]=l/o;n=n+1|0}while(n>>>0<z>>>0);i=v}}while((t|0)!=(u|0));Z=a[ea>>0]|0}else Z=0;else if(i){A=e+53419|0;B=e+14|0;z=0;i=j;y=0;while(1){x=e+634+(ha*6|0)+y|0;j=a[x>>0]|0;k=j&255;if(a[e+24+k>>0]|0){u=e+616+(ha*6|0)+y|0;v=y+1+(e+616+(ha*6|0))|0;t=0;i=j;j=0;while(1){m=a[e+90+(k<<6)+j>>0]|0;j=a[j+1+(e+90+(k<<6))>>0]|0;if((m&255)<(j&255)){s=j&255;n=m&255;p=s-n|0;q=n;do{m=d[v>>0]|0;i=d[u>>0]|0;Z=w(m-i|0,p)|0;o=(Z|0)==0?1.0:+(Z|0);Z=d[A>>0]|0;i=Z+i|0;j=i&255;m=Z+m|0;if(m>>>0>j>>>0){k=i&255;l=0.0;do{i=n;do{_=+f[g+(j<<9)+(i<<3)>>2];$=+f[g+(j<<9)+(i<<3)+4>>2];l=l+(_*_+$*$);i=i+1|0}while((i|0)!=(s|0));k=k+1<<24>>24;j=k&255}while(m>>>0>j>>>0)}else l=0.0;f[e+4828+(ha*1280|0)+((q-(d[B>>0]|0)|0)*20|0)+(y<<2)>>2]=l/o;q=q+1|0}while((q|0)!=(s|0));i=a[x>>0]|0}j=t+1<<24>>24;k=i&255;if((j&255)>=(d[e+24+k>>0]|0))break;else{t=j;j=j&255}}i=a[ea>>0]|0}j=z+1<<24>>24;if((j&255)<(i&255)){z=j;y=j&255}else{Z=i;break}}}else Z=0;if(Z<<24>>24){R=e+53439|0;S=e+14|0;T=e+53445+ha|0;U=e+12418+ha|0;V=a[fa>>0]|0;W=d[e+53438>>0]|0;X=a[e+20+W>>0]|0;Y=X<<24>>24==0;P=0;Q=0;O=0;j=Z;while(1){N=(O|0)==(V|0);if(N)i=1;else i=(O|0)==(a[U>>0]|0);M=i^1;Q=Q+((d[O+1+(e+616+(ha*6|0))>>0]|0)>(d[(Q&255)+1+(e+628+(ha*3|0))>>0]|0)&1)<<24>>24;if(!Y){q=gi(e,h,P,0)|0;J=e+634+(ha*6|0)+O|0;K=Q&255;$=+f[54908+(d[R>>0]<<2)>>2];L=(O|0)<(V|0);H=0;s=0;t=0;u=0;j=0;i=0;while(1){z=a[e+282+(W<<6)+i>>0]|0;A=a[i+1+(e+282+(W<<6))>>0]|0;B=(z&255)<(A&255);i=z&255;if(B){m=d[S>>0]|0;n=d[J>>0]|0;p=A&255;o=0.0;l=0.0;k=i;do{j=j+((k+m|0)==(d[(j&255)+1+(e+90+(n<<6))>>0]|0)&1)<<24>>24;l=l+ +f[e+2268+(ha*1280|0)+((j&255)*20|0)+(O<<2)>>2];o=o+ +f[e+4828+(ha*1280|0)+(k*20|0)+(O<<2)>>2];k=k+1|0}while((k|0)!=(p|0));z=j}else{o=0.0;l=0.0;z=j}_=l+1.0e-12;I=_/(o+1.0e-12)*$;I=I<1.0e10?I:1.0e10;if(B){v=d[S>>0]|0;x=d[J>>0]|0;y=A&255;l=0.0;p=q;j=s;m=t;k=u;s=i;while(1){q=s+v|0;n=j+((q|0)==(d[(j&255)+1+(e+218)>>0]|0)&1)<<24>>24;j=k+1<<24>>24;if((q|0)==(d[(k&255)+1+(e+90+(x<<6))>>0]|0)){p=gi(e,h,P,j)|0;k=j}m=m+((q|0)==(d[(m&255)+1+(e+154)>>0]|0)&1)<<24>>24;j=m&255;if(L)if((a[e+12277+(ha<<6)+j>>0]|0)!=0?(a[T>>0]|0)!=0:0)da=49;else j=0;else da=49;if((da|0)==49){da=0;if((q|0)==(((d[e+154+j>>0]|0)+(d[j+1+(e+154)>>0]|0)|0)>>>1|0))j=a[e+12149+(ha<<6)+j>>0]|0;else j=0}u=n&255;C=+f[e+8412+(ha<<9)+(u<<3)+(K<<2)>>2];D=+f[e+9436+(ha<<9)+(u<<3)+(K<<2)>>2];o=+f[e+2268+(ha*1280|0)+((k&255)*20|0)+(O<<2)>>2];G=D*o;j=j<<24>>24==0;E=C*o;f[ca+(s<<2)>>2]=j?0.0:E;F=+f[e+4828+(ha*1280|0)+(s*20|0)+(O<<2)>>2];o=o/(F+1.0);if(p<<24>>24==0&M)o=C*o;else o=p<<24>>24==1?D*o:o;u=o<I;G=u?G:G*I/o;D=u?o:I;f[aa+(s<<2)>>2]=G;f[ba+(s<<2)>>2]=D;l=(j?l:l+E)+F*D;l=j?(N?l:G+l):l;s=s+1|0;if((s|0)==(y|0))break;else j=n}}else{l=0.0;p=q;n=s;m=t;k=u}o=_/(l+1.0e-12);o=o<2.51188643?o:2.51188643;if(B){j=A&255;do{f[ga+(O*196|0)+(i<<2)>>2]=+r(+(+f[ba+(i<<2)>>2]*o));f[ga+980+(O*196|0)+(i<<2)>>2]=+r(+(+f[aa+(i<<2)>>2]*o));l=+f[ca+(i<<2)>>2];if(l!=0.0)l=+r(+(l*o));else l=0.0;f[ga+1960+(O*196|0)+(i<<2)>>2]=l;i=i+1|0}while((i|0)!=(j|0))}i=H+1<<24>>24;if((i&255)<(X&255)){H=i;q=p;s=n;t=m;u=k;j=z;i=i&255}else{j=Z;break}}}i=P+1<<24>>24;if((i&255)>=(j&255))break;else{P=i;O=i&255}}}if((a[e+12426>>0]|0)==1){i=0;k=1}else{i=b[e+12406+(ha<<1)>>1]|0;k=0}h=e+12410+ha|0;j=a[h>>0]|0;if(!(Z<<24>>24)){ga=j;g=i;ha=e+12406+(ha<<1)|0;b[ha>>1]=g;a[h>>0]=ga;Vb=ia;return 0}K=e+53441|0;L=e+728+ha|0;M=e+15|0;N=e+53419|0;O=e+14|0;P=e+53448|0;Q=e+53449|0;R=e+12418+ha|0;S=e+648+(ha*20|0)|0;T=e+688+(ha*20|0)|0;U=e+648+(ha*20|0)+4|0;V=e+688+(ha*20|0)+4|0;W=e+648+(ha*20|0)+8|0;X=e+688+(ha*20|0)+8|0;Y=e+648+(ha*20|0)+12|0;Z=e+688+(ha*20|0)+12|0;J=0;A=0;while(1){if((A|0)==(a[fa>>0]|0))H=1;else H=(A|0)==(a[R>>0]|0);B=H|(a[K>>0]|0)==1;if(k<<24>>24){ca=ga+(A*196|0)|0;da=ga+980+(A*196|0)|0;dl(c[S>>2]|0,ca|0,d[M>>0]<<2|0)|0;dl(c[T>>2]|0,da|0,d[M>>0]<<2|0)|0;dl(c[U>>2]|0,ca|0,d[M>>0]<<2|0)|0;dl(c[V>>2]|0,da|0,d[M>>0]<<2|0)|0;dl(c[W>>2]|0,ca|0,d[M>>0]<<2|0)|0;dl(c[X>>2]|0,da|0,d[M>>0]<<2|0)|0;dl(c[Y>>2]|0,ca|0,d[M>>0]<<2|0)|0;dl(c[Z>>2]|0,da|0,d[M>>0]<<2|0)|0;a[L>>0]=4}k=a[e+616+(ha*6|0)+A>>0]|0;x=A+1+(e+616+(ha*6|0))|0;if((k&255)<(d[x>>0]|0)){y=ga+(A*196|0)|0;z=ga+980+(A*196|0)|0;v=k;n=a[L>>0]|0;m=a[M>>0]|0;u=k&255;while(1){dl(c[e+648+(ha*20|0)+(n<<24>>24<<2)>>2]|0,y|0,(m&255)<<2|0)|0;dl(c[e+688+(ha*20|0)+(a[L>>0]<<2)>>2]|0,z|0,d[M>>0]<<2|0)|0;m=a[M>>0]|0;if(!(m<<24>>24))m=0;else{t=j&255;E=+(a[119742+t>>0]|0);F=+(a[119746+t>>0]|0);t=m&255;s=0;do{k=a[L>>0]|0;if(B){da=k<<24>>24;l=+f[(c[e+688+(ha*20|0)+(da<<2)>>2]|0)+(s<<2)>>2];C=+f[(c[e+648+(ha*20|0)+(da<<2)>>2]|0)+(s<<2)>>2]}else{da=k+1<<24>>24;da=(da&255)>4?(da&255)+251&255:da;q=da&255;da=da+1<<24>>24;da=(da&255)>4?(da&255)+251&255:da;aa=da&255;da=da+1<<24>>24;da=(da&255)>4?(da&255)+251&255:da;ba=da&255;da=da+1<<24>>24;da=(da&255)>4?(da&255)+251&255:da;ca=da&255;da=da+1<<24>>24;da=((da&255)>4?(da&255)+251&255:da)&255;l=+f[(c[e+688+(ha*20|0)+(q<<2)>>2]|0)+(s<<2)>>2]*.031830500811338425+0.0+ +f[(c[e+688+(ha*20|0)+(aa<<2)>>2]|0)+(s<<2)>>2]*.11516383290290833+ +f[(c[e+688+(ha*20|0)+(ba<<2)>>2]|0)+(s<<2)>>2]*.21816949546337128+ +f[(c[e+688+(ha*20|0)+(ca<<2)>>2]|0)+(s<<2)>>2]*.3015028238296509+ +f[(c[e+688+(ha*20|0)+(da<<2)>>2]|0)+(s<<2)>>2]*.3333333432674408;C=+f[(c[e+648+(ha*20|0)+(q<<2)>>2]|0)+(s<<2)>>2]*.031830500811338425+0.0+ +f[(c[e+648+(ha*20|0)+(aa<<2)>>2]|0)+(s<<2)>>2]*.11516383290290833+ +f[(c[e+648+(ha*20|0)+(ba<<2)>>2]|0)+(s<<2)>>2]*.21816949546337128+ +f[(c[e+648+(ha*20|0)+(ca<<2)>>2]|0)+(s<<2)>>2]*.3015028238296509+ +f[(c[e+648+(ha*20|0)+(da<<2)>>2]|0)+(s<<2)>>2]*.3333333432674408}D=+f[ga+1960+(A*196|0)+(s<<2)>>2];o=H|D!=0.0?0.0:l;i=i+1&511;k=u+(d[N>>0]|0)|0;n=s+(d[O>>0]|0)|0;p=g+(k<<9)+(n<<3)|0;q=i&65535;l=C*+f[p>>2]+o*+f[54924+(q<<3)>>2];f[p>>2]=l;if((a[P>>0]|0)==3?(a[Q>>0]|0)==42:0){f[p>>2]=16428320.0;l=16428320.0}da=g+(k<<9)+(n<<3)+4|0;$=C*+f[da>>2]+o*+f[54924+(q<<3)+4>>2];f[p>>2]=l+D*E;f[da>>2]=$+D*+((n<<25&33554432^33554432)+-16777216>>24|0)*F;s=s+1|0}while((s|0)!=(t|0))}j=j+1&3;n=(a[L>>0]|0)+1<<24>>24;n=n<<24>>24>4?0:n;a[L>>0]=n;k=v+1<<24>>24;if((k&255)>=(d[x>>0]|0))break;else{v=k;u=k&255}}}m=J+1<<24>>24;if((m&255)<(d[ea>>0]|0)){J=m;k=0;A=m&255}else break}ha=e+12406+(ha<<1)|0;b[ha>>1]=i;a[h>>0]=j;Vb=ia;return 0}function gi(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=c&255;f=d&255;if((a[b+634+(i*6|0)+f>>0]|0)==1){c=e&255;if((f|0)<(a[b+10972+i>>0]|0)){if(!(a[b+12277+(i<<6)+c>>0]|0)){b=0;return b|0}if(!(a[b+53445+i>>0]|0)){b=0;return b|0}}b=a[b+12149+(i<<6)+c>>0]|0;return b|0}g=(e&255)<<1;e=a[b+17>>0]&1;c=g-e|0;d=c&255;c=c&255;e=g+2-e&255;if(e>>>0<=c>>>0){b=0;return b|0}g=b+53445+i|0;if((f|0)>=(a[b+10972+i>>0]|0)){while(1){if((a[b+12149+(i<<6)+c>>0]|0)==1){c=1;d=14;break}d=d+1<<24>>24;c=d&255;if(e>>>0<=c>>>0){c=0;d=14;break}}if((d|0)==14)return c|0}else{h=d;j=c}while(1){if((a[b+12277+(i<<6)+j>>0]|0?a[g>>0]|0:0)?(a[b+12149+(i<<6)+j>>0]|0)==1:0){c=1;d=14;break}h=h+1<<24>>24;j=h&255;if(e>>>0<=j>>>0){c=0;d=14;break}}if((d|0)==14)return c|0;return 0}function hi(b){b=b|0;var e=0,g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=Vb;Vb=Vb+464|0;t=A;v=A+400|0;y=b+14|0;i=a[y>>0]|0;w=i&255;a[b+282>>0]=(d[b+90>>0]|0)-w;u=b+18|0;a[b+283>>0]=(d[(d[u>>0]|0)+(b+90)>>0]|0)-w;a[b+20>>0]=1;w=b+12020|0;x=v+1|0;e=1;while(1){fl(t|0,0,400)|0;g=x;h=g+63|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));a[v>>0]=i;k=a[w>>0]|0;if(k<<24>>24){h=1;g=1;while(1){s=g+-1|0;a[v+g>>0]=(d[b+12021+s>>0]|0)+(d[v+s>>0]|0);g=h+1<<24>>24;if((g&255)>(k&255))break;else{h=g;g=g&255}}}i=a[u>>0]|0;h=0;g=0;while(1){c[t+(g<<2)>>2]=d[b+90+g>>0];g=h+1<<24>>24;if((g&255)>(i&255))break;else{h=g;g=g&255}}if((k&255)>1){i=i&255;g=k&255;h=1;do{c[t+(h+i<<2)>>2]=d[v+h>>0];h=h+1|0}while(h>>>0<g>>>0);h=i}else{h=i&255;g=k&255}mj(t,h+g|0,4,3);g=(d[w>>0]|0)+255+(d[u>>0]|0)|0;h=g&255;if(g&128|0)break;g=g<<24;a:do if((g|0)<16777216)i=g>>24;else{s=59020+(e+-1<<2)|0;q=1;r=1;do{n=t+(r+-1<<2)|0;o=t+(r<<2)|0;p=t+((q&255)<<2)|0;while(1){m=c[n>>2]|0;if(!m)j=0.0;else j=+(c[o>>2]|0)/+(m|0);if(!(j<+f[s>>2]))break;k=c[o>>2]|0;if((k|0)!=(m|0)){l=a[w>>0]|0;g=0;i=0;do{g=(k|0)==(d[v+(i&255)>>0]|0|0)?1:g;i=i+1<<24>>24}while((i&255)<=(l&255));if(g<<24>>24){g=0;i=0;do{g=(m|0)==(d[v+(i&255)>>0]|0|0)?1:g;i=i+1<<24>>24}while((i&255)<=(l&255));if(g<<24>>24)break;m=d[u>>0]|0;c[n>>2]=d[b+90+m>>0];mj(t,m+(l&255)|0,4,3)}else z=24}else z=24;if((z|0)==24){z=0;c[p>>2]=d[(d[u>>0]|0)+(b+90)>>0];mj(t,h<<24>>24,4,3)}h=h+-1<<24>>24;i=h<<24>>24;if((r|0)>(i|0))break a}q=q+1<<24>>24;r=q&255;i=h<<24>>24}while((r|0)<=(i|0))}while(0);a[b+20+e>>0]=h;if((i|0)>=0){g=0;h=0;do{a[b+282+(e<<6)+h>>0]=(c[t+(h<<2)>>2]|0)-(d[y>>0]|0);g=g+1<<24>>24;h=g&255}while((i|0)>=(h|0))}e=e+1|0;if(e>>>0>=4){z=32;break}i=a[y>>0]|0}if((z|0)==32){Vb=A;return}Vb=A;return}function ii(a,d,e){a=a|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0.0,D=0.0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;z=Vb;Vb=Vb+4096|0;y=z;j=c[a+8>>2]|0;k=b[a>>1]|0;l=(k&65535)>>>1;g=(k&65535)>>>2;k=(k&65535)>>>3;x=g&65535;g=g<<16>>16==0;if(!g){h=(l&65535)+-1|0;i=0;do{w=i<<1;B=+f[d+(w<<2)>>2];D=+f[d+(h-w<<2)>>2];C=+f[j+(i<<3)>>2];A=+f[j+(i<<3)+4>>2];f[y+(i<<3)+4>>2]=B*C+D*A;f[y+(i<<3)>>2]=D*C-B*A;i=i+1|0}while(i>>>0<x>>>0);vg(c[a+4>>2]|0,y);if(!g){a=0;do{w=y+(a<<3)|0;A=+f[w>>2];v=y+(a<<3)+4|0;C=+f[v>>2];B=+f[j+(a<<3)>>2];D=+f[j+(a<<3)+4>>2];f[v>>2]=C*B+A*D;f[w>>2]=A*B-C*D;a=a+1|0}while(a>>>0<x>>>0)}}else vg(c[a+4>>2]|0,y);w=k&65535;if(!(k<<16>>16)){Vb=z;return}o=w+1|0;p=w+-1|0;q=w+-2|0;r=x+2|0;s=x+-1|0;t=x+1|0;u=x+-2|0;v=x+3|0;g=l&65535;h=g+2|0;i=g+1|0;j=g+3|0;k=g+x|0;l=k+2|0;m=k+1|0;n=k+3|0;d=0;a=0;while(1){K=a+w|0;E=a<<1;c[e+(E<<2)>>2]=c[y+(K<<3)+4>>2];J=o+a|0;c[e+(E+2<<2)>>2]=c[y+(J<<3)+4>>2];I=p+d|0;f[e+((E|1)<<2)>>2]=-+f[y+(I<<3)>>2];H=q+d|0;f[e+(E+3<<2)>>2]=-+f[y+(H<<3)>>2];c[e+(E+x<<2)>>2]=c[y+(a<<3)>>2];G=a+1|0;c[e+(r+E<<2)>>2]=c[y+(G<<3)>>2];F=s+d|0;f[e+(t+E<<2)>>2]=-+f[y+(F<<3)+4>>2];d=u+d|0;f[e+(v+E<<2)>>2]=-+f[y+(d<<3)+4>>2];c[e+(E+g<<2)>>2]=c[y+(K<<3)>>2];c[e+(h+E<<2)>>2]=c[y+(J<<3)>>2];f[e+(i+E<<2)>>2]=-+f[y+(I<<3)+4>>2];f[e+(j+E<<2)>>2]=-+f[y+(H<<3)+4>>2];f[e+(E+k<<2)>>2]=-+f[y+(a<<3)+4>>2];f[e+(l+E<<2)>>2]=-+f[y+(G<<3)+4>>2];c[e+(m+E<<2)>>2]=c[y+(F<<3)>>2];c[e+(n+E<<2)>>2]=c[y+(d<<3)>>2];a=a+2&65535;if(a>>>0<w>>>0)d=0-a|0;else break}Vb=z;return}function ji(a,b,d,e,g,h,i,j){a=a|0;b=b|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,p=0,q=0,r=0,s=0,t=0,u=0;u=Vb;Vb=Vb+8192|0;s=u;fl(s|0,0,8192)|0;r=j&65535;o=(j&65535)>>>3;q=o&65535;l=(r-q|0)/2|0;if(b<<24>>24==2)O(119762,119802,353,119813);k=d&255;if(i<<24>>24==23){d=a+16+(k<<2)|0;i=a+16+((e&255)<<2)|0;m=0;n=0}else{m=e&255;d=a+(k<<2)|0;i=a+(m<<2)|0;m=c[a+8+(m<<2)>>2]|0;n=c[a+8+(k<<2)>>2]|0}p=c[d>>2]|0;k=c[i>>2]|0;switch(b<<24>>24){case 0:{e=r+-1|0;d=e&65535;if(d<<16>>16>-1){i=e<<16>>16;while(1){f[s+(i<<2)>>2]=+f[g+(i<<2)>>2]*+f[k+(i<<2)>>2];q=i+r|0;f[s+(q<<2)>>2]=+f[g+(q<<2)>>2]*+f[p+(e-i<<2)>>2];i=d+-1<<16>>16;if(i<<16>>16>-1){d=i;i=i<<16>>16}else break}}switch((r<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;t=16;break}case 240:case 256:{d=a+24|0;t=16;break}case 960:case 1024:{d=a+28|0;t=16;break}default:d=0}if((t|0)==16)d=c[d>>2]|0;li(d,s,h);Vb=u;return}case 1:{if(j<<16>>16){d=0;i=0;do{f[s+(i<<2)>>2]=+f[g+(i<<2)>>2]*+f[k+(i<<2)>>2];d=d+1<<16>>16;i=d<<16>>16}while((i|0)<(r|0))}l=l&65535;b=(l|0)==0;if(!b){d=0;i=0;do{p=i+r|0;c[s+(p<<2)>>2]=c[g+(p<<2)>>2];d=d+1<<16>>16;i=d<<16>>16}while((l|0)>(i|0))}if(o<<16>>16){i=l+r|0;e=q+-1|0;d=0;k=0;do{p=i+k|0;f[s+(p<<2)>>2]=+f[g+(p<<2)>>2]*+f[n+(e-k<<2)>>2];d=d+1<<16>>16;k=d<<16>>16}while((k|0)<(q|0))}if(!b){i=q+r+l|0;d=0;e=0;do{f[s+(i+e<<2)>>2]=0.0;d=d+1<<16>>16;e=d<<16>>16}while((l|0)>(e|0))}switch((r<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;t=31;break}case 240:case 256:{d=a+24|0;t=31;break}case 960:case 1024:{d=a+28|0;t=31;break}default:d=0}if((t|0)==31)d=c[d>>2]|0;li(d,s,h);Vb=u;return}case 3:{k=l&65535;e=(k|0)==0;if(!e){d=0;i=0;do{f[s+(i<<2)>>2]=0.0;d=d+1<<16>>16;i=d<<16>>16}while((k|0)>(i|0))}if(o<<16>>16){d=0;i=0;do{o=i+k|0;f[s+(o<<2)>>2]=+f[g+(o<<2)>>2]*+f[m+(i<<2)>>2];d=d+1<<16>>16;i=d<<16>>16}while((i|0)<(q|0))}if(!e){i=k+q|0;d=0;e=0;do{q=i+e|0;c[s+(q<<2)>>2]=c[g+(q<<2)>>2];d=d+1<<16>>16;e=d<<16>>16}while((k|0)>(e|0))}if(j<<16>>16){i=r+-1|0;d=0;e=0;do{q=e+r|0;f[s+(q<<2)>>2]=+f[g+(q<<2)>>2]*+f[p+(i-e<<2)>>2];d=d+1<<16>>16;e=d<<16>>16}while((e|0)<(r|0))}switch((r<<1&65535)<<16>>16){case 1920:case 2048:{d=a+32|0;t=46;break}case 240:case 256:{d=a+24|0;t=46;break}case 960:case 1024:{d=a+28|0;t=46;break}default:d=0}if((t|0)==46)d=c[d>>2]|0;li(d,s,h);Vb=u;return}default:{Vb=u;return}}}function ki(e,g,h,i,j,k){e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0.0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=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;O=Vb;Vb=Vb+336|0;J=O+168|0;K=O+84|0;L=O;if(!(a[e+9040>>0]|0)){Vb=O;return}E=e+3|0;if(!(a[E>>0]|0)){Vb=O;return}G=e+1|0;M=L+4|0;N=K+4|0;H=e+4|0;I=e+2040|0;D=(k&65535)>>>3&65535;C=0;z=0;while(1){y=g+z|0;if(a[y>>0]|0){A=g+8+z|0;B=w(z,D)|0;v=0;x=d[G>>0]|0;s=0;while(1){k=x&65535;l=k-(d[g+16+(z<<2)+s>>0]|0)|0;x=(l|0)>0?l:0;l=a[g+48+(z<<2)+s>>0]|0;l=(l&255)<20?l:20;if(l<<24>>24){m=((d[A>>0]|0)+3&255)<<24>>24==3;m=(a[g+112+(z<<2)+s>>0]|0)==0?(m?59160:59224):m?59032:59096;u=l&255;l=0;do{c[J+(l<<2)>>2]=c[m+(d[g+144+(z<<7)+(s<<5)+l>>0]<<2)>>2];l=l+1|0}while((l|0)!=(u|0));f[L>>2]=1.0;o=0;q=1;while(1){l=((o<<2)+1020&1020)+4|0;m=J+(q+-1<<2)|0;if(q>>>0>1){n=+f[m>>2];p=1;do{f[K+(p<<2)>>2]=+f[L+(p<<2)>>2]+n*+f[L+(q-p<<2)>>2];p=p+1|0}while((p|0)!=(q|0));dl(M|0,N|0,l|0)|0}c[L+(q<<2)>>2]=c[m>>2];if(q>>>0<u>>>0){o=o+1|0;q=q+1|0}else break}l=x&65535;if(l>>>0>=((Eg(h,i,(a[H>>0]|0)==2&1)|0)&255)>>>0)l=(Eg(h,i,(a[H>>0]|0)==2&1)|0)&255;t=d[e>>0]|0;t=b[e+1936+(((l>>>0<t>>>0?l:t)&65535)<<1)>>1]|0;l=b[I>>1]|0;l=(t&65535)<(l&65535)?t:l;if(k>>>0>=((Eg(h,i,(a[H>>0]|0)==2&1)|0)&255)>>>0)k=(Eg(h,i,(a[H>>0]|0)==2&1)|0)&255;q=d[e>>0]|0;q=b[e+1936+(((k>>>0<q>>>0?k:q)&65535)<<1)>>1]|0;k=b[I>>1]|0;k=((q&65535)<(k&65535)?q:k)&65535;q=k-(l&65535)|0;t=q&65535;if((q<<16|0)>=65536?(F=(a[g+80+(z<<2)+s>>0]|0)==0,fl(J|0,0,160)|0,t<<16>>16):0){q=F?1:-1;s=u+255&255;p=0;k=j+(B+((F?l:k+65535&65535)&65535)<<2)|0;l=0;while(1){r=+f[k>>2];m=l<<24>>24;n=r;o=0;do{P=o;o=o+1|0;n=n+ +f[J+(P+m<<2)>>2]*+f[L+(o<<2)>>2]}while((o|0)!=(u|0));P=l+-1<<24>>24;l=P<<24>>24<0?s:P;P=l<<24>>24;f[J+(P+u<<2)>>2]=r;f[J+(P<<2)>>2]=r;f[k>>2]=n;p=p+1<<16>>16;if((p&65535)>=(t&65535))break;else k=k+(q<<2)|0}}}k=v+1<<24>>24;if((k&255)>=(d[y>>0]|0))break;else{v=k;s=k&255}}}k=C+1<<24>>24;if((k&255)<(d[E>>0]|0)){C=k;z=k&255}else break}Vb=O;return}function li(a,d,e){a=a|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.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0.0,z=0.0,A=0.0;v=Vb;Vb=Vb+4096|0;t=v;u=c[a+8>>2]|0;o=b[a>>1]|0;r=o&65535;q=(o&65535)>>>1;s=(o&65535)>>>2;g=(o&65535)>>>3;p=+(o&65535);if(g<<16>>16){g=g&65535;h=s&65535;i=r-h|0;j=i+-1|0;k=h+-1|0;l=q&65535;m=l+-1|0;n=r+-1|0;o=0;do{w=o<<1;A=+f[d+(j-w<<2)>>2]+ +f[d+(w+i<<2)>>2];x=+f[d+(w+h<<2)>>2]-+f[d+(k-w<<2)>>2];z=+f[u+(o<<3)>>2];y=+f[u+(o<<3)+4>>2];f[t+(o<<3)>>2]=(A*z+x*y)*p;f[t+(o<<3)+4>>2]=(x*z-A*y)*p;y=+f[d+(m-w<<2)>>2]-+f[d+(w<<2)>>2];A=+f[d+(w+l<<2)>>2]+ +f[d+(n-w<<2)>>2];w=o+g|0;z=+f[u+(w<<3)>>2];x=+f[u+(w<<3)+4>>2];f[t+(w<<3)>>2]=(y*z+A*x)*p;f[t+(w<<3)+4>>2]=(A*z-y*x)*p;o=o+1|0}while(o>>>0<g>>>0)}qg(c[a+4>>2]|0,t);if(!(s<<16>>16)){Vb=v;return}j=q&65535;k=j+-1|0;i=r+-1|0;g=s&65535;h=0;do{w=h<<1;y=+f[t+(h<<3)>>2];p=+f[t+(h<<3)+4>>2];x=+f[u+(h<<3)>>2];z=+f[u+(h<<3)+4>>2];A=y*x+p*z;z=p*x-y*z;f[e+(w<<2)>>2]=-A;f[e+(k-w<<2)>>2]=z;f[e+(w+j<<2)>>2]=-z;f[e+(i-w<<2)>>2]=A;h=h+1|0}while(h>>>0<g>>>0);Vb=v;return}function mi(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=b+8|0;h=b+4|0;i=b+20|0;e=0;while(1){f=e&65535;if(!(a[120694+(f<<1)+1>>0]|0))break;e=c[g>>2]|0;if(!e){e=(c[h>>2]|0)>>>31;if(!(a[i>>0]|0))lg(b,1)}else{e=e+-1|0;c[g>>2]=e;e=(c[b>>2]|0)>>>e&1}e=f+(d[120694+(f<<1)+e>>0]|0)|0;if((e&65535)>>>0>=241){e=-1;j=9;break}}if((j|0)==9)return e|0;j=a[120694+(f<<1)>>0]|0;return j|0}function ni(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=e+8|0;f=c[l>>2]|0;do if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){lg(e,1);g=c[l>>2]|0;h=6;break}else{a[d+10443>>0]=f;f=0;h=8;break}}else{g=f+-1|0;c[l>>2]=g;f=(c[e>>2]|0)>>>g&1;h=6}while(0);if((h|0)==6){a[d+10443>>0]=f;if(g>>>0<8){f=g;h=8}else{i=c[e>>2]<<32-g>>>24;f=g}}if((h|0)==8){i=8-f|0;i=(c[e>>2]&(1<<f)+-1)<<i|(c[e+4>>2]|0)>>>(32-i|0)}k=e+20|0;do if(!(a[k>>0]|0))if(f>>>0>8){f=f+-8|0;c[l>>2]=f;break}else{lg(e,8);f=c[l>>2]|0;break}while(0);a[d+10444>>0]=i;g=(a[d+4>>0]|0)==2?11:9;if(f>>>0<g>>>0){h=g-f|0;h=(c[e>>2]&(1<<f)+-1)<<h|(c[e+4>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>(32-g|0);do if(!(a[k>>0]|0))if(f>>>0>g>>>0){c[l>>2]=f-g;break}else{lg(e,g);break}while(0);f=h&65535;i=d+10446|0;b[i>>1]=f;j=d+9037|0;if(a[j>>0]|0){g=c[l>>2]|0;if(g>>>0<9){h=9-g|0;h=(c[e>>2]&(1<<g)+-1)<<h|(c[e+4>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-g>>>23;do if(!(a[k>>0]|0))if(g>>>0>9){c[l>>2]=g+-9;break}else{lg(e,9);f=b[i>>1]|0;break}while(0);b[d+10448>>1]=h;b[i>>1]=(f&65535)+65527}f=c[l>>2]|0;if(!f){f=(c[e+4>>2]|0)>>>31;if(!(a[k>>0]|0))lg(e,1)}else{f=f+-1|0;c[l>>2]=f;f=(c[e>>2]|0)>>>f&1}i=f&255;a[d+10450>>0]=i;if(i<<24>>24){g=c[l>>2]|0;if(g>>>0<8){f=8-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[e+4>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>24;do if(!(a[k>>0]|0))if(g>>>0>8){c[l>>2]=g+-8;break}else{lg(e,8);break}while(0);a[d+10451>>0]=f}if(!(a[j>>0]|0))return 0;g=c[l>>2]|0;if(g>>>0<9){f=9-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[e+4>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>23;do if(!(a[k>>0]|0))if(g>>>0>9){c[l>>2]=g+-9;break}else{lg(e,9);break}while(0);b[d+10452>>1]=f;return 0}function oi(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=(a[b+4>>0]|0)==2;z=B?1:2;A=B?4:6;B=B?3:5;x=b+3|0;if(!(a[x>>0]|0))return;y=f+8|0;s=f+4|0;t=f+20|0;u=32-B|0;v=32-A|0;w=32-z|0;r=0;q=0;while(1){g=c[y>>2]|0;if(g>>>0<z>>>0){b=z-g|0;b=(c[f>>2]&(1<<g)+-1)<<b|(c[s>>2]|0)>>>(32-b|0)}else b=c[f>>2]<<32-g>>>w;do if(!(a[t>>0]|0))if(g>>>0>z>>>0){c[y>>2]=g-z;break}else{lg(f,z);break}while(0);o=b&255;p=e+q|0;a[p>>0]=o;if(o<<24>>24){b=c[y>>2]|0;if(!b){b=(c[s>>2]|0)>>>31;if(!(a[t>>0]|0))lg(f,1)}else{b=b+-1|0;c[y>>2]=b;b=(c[f>>2]|0)>>>b&1}b=b&255;a[e+8+q>>0]=b;if(a[p>>0]|0){o=b<<24>>24==0?3:4;n=0;m=0;while(1){g=c[y>>2]|0;if(g>>>0<A>>>0){b=A-g|0;b=(c[f>>2]&(1<<g)+-1)<<b|(c[s>>2]|0)>>>(32-b|0)}else b=c[f>>2]<<32-g>>>v;do if(!(a[t>>0]|0))if(g>>>0>A>>>0){c[y>>2]=g-A;break}else{lg(f,A);break}while(0);a[e+16+(q<<2)+m>>0]=b;g=c[y>>2]|0;if(g>>>0<B>>>0){b=B-g|0;b=(c[f>>2]&(1<<g)+-1)<<b|(c[s>>2]|0)>>>(32-b|0)}else b=c[f>>2]<<32-g>>>u;do if(!(a[t>>0]|0))if(g>>>0>B>>>0){c[y>>2]=g-B;break}else{lg(f,B);break}while(0);k=b&255;l=e+48+(q<<2)+m|0;a[l>>0]=k;a:do if(k<<24>>24){b=c[y>>2]|0;if(!b){b=(c[s>>2]|0)>>>31;if(!(a[t>>0]|0))lg(f,1)}else{b=b+-1|0;c[y>>2]=b;b=(c[f>>2]|0)>>>b&1}a[e+80+(q<<2)+m>>0]=b;b=c[y>>2]|0;if(!b){b=(c[s>>2]|0)>>>31;if(!(a[t>>0]|0))lg(f,1)}else{b=b+-1|0;c[y>>2]=b;b=(c[f>>2]|0)>>>b&1}a[e+112+(q<<2)+m>>0]=b;g=a[l>>0]|0;if(g<<24>>24){j=o-b&255;k=32-j|0;if(!j){b=0;while(1){a[(b&255)+(e+144+(q<<7)+(m<<5))>>0]=0;b=b+1<<24>>24;if((b&255)>=(g&255))break a}}else g=0;do{h=g&255;i=c[y>>2]|0;if(i>>>0<j>>>0){b=j-i|0;b=(c[f>>2]&(1<<i)+-1)<<b|(c[s>>2]|0)>>>(32-b|0)}else b=c[f>>2]<<32-i>>>k;do if(!(a[t>>0]|0))if(i>>>0>j>>>0){c[y>>2]=i-j;break}else{lg(f,j);break}while(0);a[e+144+(q<<7)+(m<<5)+h>>0]=b;g=g+1<<24>>24}while((g&255)<(d[l>>0]|0))}}while(0);b=n+1<<24>>24;if((b&255)<(d[p>>0]|0)){n=b;m=b&255}else break}}}b=r+1<<24>>24;if((b&255)<(d[x>>0]|0)){r=b;q=b&255}else break}return}function pi(c,f){c=c|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=Vb;Vb=Vb+80|0;v=y+36|0;w=y;x=c+10446|0;g=b[x>>1]|0;if(!(g<<16>>16))t=0;else{t=ng(f,g&65535)|0;hg(v,t,((e[x>>1]|0)+7|0)>>>3)}u=c+10450|0;if(!(a[u>>0]|0))s=0;else{r=c+10451|0;s=ng(f,d[r>>0]|0)|0;hg(w,s,((d[r>>0]|0)+7|0)>>>3)}g=a[c+7810>>0]|0;q=c+2|0;f=a[q>>0]|0;a:do if(!(f<<24>>24))g=0;else{r=c+10448|0;m=(g&255)+65190&65535;j=0;k=g&255;l=1;i=0;h=0;o=0;g=a[c>>0]|0;p=0;while(1){if(!(g<<24>>24))g=0;else{n=0;g=i;f=h;h=m;m=0;while(1){if(!(g<<24>>24)){switch(a[c+6842+(p*120|0)+m>>0]|0){case 0:{g=0;break}case 14:case 15:{f=zi(v,w)|0;g=(f<<24>>24)+(j&65535)&65535;j=g;break}case 13:{if(!(l<<24>>24)){f=zi(v,w)|0;g=(f<<24>>24)+(h&65535)|0}else g=(b[r>>1]|0)+(h<<16>>16)|0;g=g&65535;h=g;l=0;break}default:{f=zi(v,w)|0;k=(f<<24>>24)+(k&65535)|0;g=k&65535;if(!(k&32768))k=g;else{g=4;break a}}}b[c+7812+(p*102|0)+(m<<1)>>1]=g;i=f<<24>>24==99&1}else{b[c+7812+(p*102|0)+(m<<1)>>1]=0;i=g}n=n+1<<24>>24;m=n<<24>>24;g=a[c>>0]|0;if((m|0)>=(g&255|0))break;else g=i}m=h;h=f;f=a[q>>0]|0}o=o+1<<24>>24;p=o<<24>>24;if((p|0)>=(f&255|0)){g=0;break}}}while(0);if(s|0)Ag(s);if(t|0)Ag(t);if(!(a[u>>0]|0)){Vb=y;return g|0}Vb=y;return g|0}
function qi(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0;ya=Vb;Vb=Vb+14352|0;ta=ya+6144|0;xa=ya;pa=ya+14336|0;j=(e[f+10>>1]|0)>>>3;la=b[g+10440>>1]|0;ma=la&65535;if(!(la<<16>>16)){xa=0;Vb=ya;return xa|0}na=g+10442|0;oa=a[na>>0]|0;if(oa<<24>>24==0|ma>>>0<(oa&255)>>>0){xa=10;Vb=ya;return xa|0}b[pa>>1]=0;oa=g+2|0;n=a[oa>>0]|0;if((n&255)>1){k=j&65535;l=n&255;j=1;m=1;do{ka=m+-1|0;b[pa+(m<<1)>>1]=(w(d[g+5+ka>>0]|0,k)|0)+(e[pa+(ka<<1)>>1]|0);j=j+1<<16>>16;m=j&65535}while(m>>>0<l>>>0)}da=(a[f+6>>0]|0)==0;ba=da?6:22;da=da?120634:120640;ea=g+2040|0;fa=h+8|0;ga=h+4|0;ha=h+20|0;ia=ta+2|0;ja=ta+1|0;ka=ta+12|0;m=0;o=0;f=0;ca=0;k=0;j=n;l=0;while(1){_=a[da+l>>0]|0;if(!(a[g>>0]|0))C=o;else{$=(_&255)<11;aa=(_&255)+1|0;Z=0;W=0;while(1){V=W+1|0;X=g+1936+(V<<1)|0;T=b[X>>1]|0;U=b[ea>>1]|0;Y=g+1936+(W<<1)|0;if((((T&65535)<(U&65535)?T:U)&65535)>(e[Y>>1]|0)){U=0;T=0;do{if(!(j<<24>>24))j=0;else{S=0;R=0;do{M=g+7802+R|0;j=a[M>>0]|0;if(j<<24>>24){N=g+16+(R*240|0)+(V<<1)|0;O=g+16+(R*240|0)+(W<<1)|0;P=g+5+R|0;Q=pa+(R<<1)|0;L=0;l=0;do{do if((W>>>0>=(e[g+3002+(R*240|0)+(l<<1)>>1]|0)>>>0?W>>>0<(e[g+4922+(R*240|0)+(l<<1)>>1]|0)>>>0:0)?(qa=a[g+2042+(R*120|0)+l>>0]|0,ra=qa&255,(qa+-1&255)<11|(qa&-16)<<24>>24==16):0){if(!(qa<<24>>24==_<<24>>24|$&(aa|0)==(ra|0)))break;K=(qa&255)<5;J=K?4:2;K=d[P>>0]<<2>>>(K?2:1);H=a[120662+ra>>0]|0;G=a[na>>0]|0;G=(H&255)<(G&255)?H:G;H=G&255;I=w(K,T)|0;if((K|0)<=0)break;z=(e[N>>1]|0)-(e[O>>1]|0)&65535;A=(G&255)>32;B=H+-32|0;C=(B|0)==0;D=64-H|0;E=G<<24>>24==0;F=32-H|0;y=0;j=0;do{j=j+I|0;if(j>>>0>=z>>>0)break;n=(w(j,J)|0)+(e[Q>>1]|0)+(e[O>>1]|0)|0;x=n&65535;do if(!(m<<16>>16)){j=k&65535;p=j+H|0;if(p>>>0<=ma>>>0){l=o&65535;m=xa+(l*12|0)|0;a[xa+(l*12|0)+8>>0]=G;if(A){do if(!C){k=c[fa>>2]|0;if(k>>>0<B>>>0){j=B-k|0;j=(c[h>>2]&(1<<k)+-1)<<j|(c[ga>>2]|0)>>>(32-j|0)}else j=c[h>>2]<<32-k>>>D;if(a[ha>>0]|0){sa=31;break}if(k>>>0>B>>>0){k=k-B|0;c[fa>>2]=k;break}else{lg(h,B);sa=31;break}}else{j=0;sa=31}while(0);if((sa|0)==31){sa=0;k=c[fa>>2]|0}c[xa+(l*12|0)+4>>2]=j;if(k>>>0<32)j=(c[h>>2]&(1<<k)+-1)<<32-k|(c[ga>>2]|0)>>>k;else j=c[h>>2]<<32-k;do if(!(a[ha>>0]|0))if(k>>>0>32){c[fa>>2]=k+-32;break}else{lg(h,32);break}while(0);c[m>>2]=j}else{do if(!E){k=c[fa>>2]|0;if(k>>>0<H>>>0){j=H-k|0;j=(c[h>>2]&(1<<k)+-1)<<j|(c[ga>>2]|0)>>>(32-j|0)}else j=c[h>>2]<<32-k>>>F;if(a[ha>>0]|0)break;if(k>>>0>H>>>0){c[fa>>2]=k-H;break}else{lg(h,H);break}}else j=0;while(0);c[m>>2]=j;c[xa+(l*12|0)+4>>2]=0}xi(qa,m,i+((n&65535)<<1)|0)|0;yi(m);m=0;o=o+1<<16>>16;k=p&65535;break}if((la&65535)>(k&65535)){v=ma-j|0;t=v&255;p=o&65535;u=xa+(p*12|0)|0;n=xa+(p*12|0)+8|0;a[n>>0]=t;m=v&255;if((t&255)>32){k=m+-32|0;do if(k){l=c[fa>>2]|0;if(l>>>0<k>>>0){j=k-l|0;j=(c[h>>2]&(1<<l)+-1)<<j|(c[ga>>2]|0)>>>(32-j|0)}else j=c[h>>2]<<32-l>>>(64-m|0);if(a[ha>>0]|0){sa=60;break}if(l>>>0>k>>>0){k=l-k|0;c[fa>>2]=k;break}else{lg(h,k);sa=60;break}}else{j=0;sa=60}while(0);if((sa|0)==60){sa=0;k=c[fa>>2]|0}c[xa+(p*12|0)+4>>2]=j;if(k>>>0<32)j=(c[h>>2]&(1<<k)+-1)<<32-k|(c[ga>>2]|0)>>>k;else j=c[h>>2]<<32-k;do if(!(a[ha>>0]|0))if(k>>>0>32){c[fa>>2]=k+-32;break}else{lg(h,32);break}while(0);c[u>>2]=j}else{do if(m){k=c[fa>>2]|0;if(k>>>0<m>>>0){j=m-k|0;j=(c[h>>2]&(1<<k)+-1)<<j|(c[ga>>2]|0)>>>(32-j|0)}else j=c[h>>2]<<32-k>>>(32-m|0);if(a[ha>>0]|0)break;if(k>>>0>m>>>0){c[fa>>2]=k-m;break}else{lg(h,m);break}}else j=0;while(0);c[u>>2]=j;c[xa+(p*12|0)+4>>2]=0}s=p+-1|0;k=xa+(s*12|0)|0;t=xa+(s*12|0)+8|0;a[n>>0]=(d[n>>0]|0)+(d[t>>0]|0);yi(u);r=a[t>>0]|0;if(r<<24>>24>32){j=r&255;p=c[xa+(p*12|0)+4>>2]|0;l=r+-32&255;q=r<<24>>24;do if((j+224&255)<<24>>24){m=q-l|0;n=c[xa+(s*12|0)+4>>2]|0;if((m|0)<32){l=(c[k>>2]|0)>>>m|(n&-1>>>(64-q|0))<<l+32-q;break}else{l=n>>>(m+-32|0)&-1>>>(32-l|0);break}}else l=0;while(0);l=l+p|0;c[xa+(s*12|0)+4>>2]=l;if(r<<24>>24<64){s=64-q|0;l=(c[k>>2]|0)>>>(q+-32|0)|(l&-1>>>s)<<s}else l=l>>>(q+-64|0);c[k>>2]=l+(c[u>>2]|0)}else{n=c[u>>2]|0;j=r&255;do if(r<<24>>24){l=r<<24>>24;m=c[k>>2]|0;if((l|0)<(j|0)){l=m<<j-l&-1>>>(32-j|0);break}else{l=m>>>(l-j|0)&-1>>>(32-j|0);break}}else l=0;while(0);c[k>>2]=l+n;c[xa+(s*12|0)+4>>2]=c[xa+(p*12|0)+4>>2]}a[t>>0]=v+j}b[ia>>1]=x;a[ta>>0]=qa;a[ja>>0]=0;a[ka>>0]=0;m=1;k=la}else{v=(f&65535)-(o&65535)&65535;b[ta+(v<<4)+2>>1]=x;a[ta+(v<<4)>>0]=qa;a[ta+(v<<4)+1>>0]=0;a[ta+(v<<4)+12>>0]=0}while(0);f=f+1<<16>>16;y=y+1<<16>>16;j=y&65535}while((K|0)>(j|0));j=a[M>>0]|0}while(0);L=L+1<<16>>16;l=L&65535}while(l>>>0<(j&255)>>>0)}S=S+1<<16>>16;R=S&65535;j=a[oa>>0]|0}while(R>>>0<(j&255)>>>0)}U=U+1<<24>>24;T=U&255;R=b[X>>1]|0;S=b[ea>>1]|0}while((T<<2|0)<((((R&65535)<(S&65535)?R:S)&65535)-(e[Y>>1]|0)|0))}l=Z+1<<24>>24;if((l&255)<(d[g>>0]|0)){Z=l;W=l&255}else{C=o;break}}}ca=ca+1<<16>>16;l=ca&65535;if(ba>>>0<=l>>>0)break;else o=C}A=C&65535;if(!(C<<16>>16)){xa=10;Vb=ya;return xa|0}B=(f&65535)/(C&65535)|0;if((C&65535)>(f&65535)){xa=0;Vb=ya;return xa|0}z=(f&65535)-A|0;y=1;j=1;while(1){v=(w(j,A)|0)-A|0;x=0;do{u=0;j=0;while(1){o=((j+x|0)>>>0)%(A>>>0)|0;q=v+j&65535;if((q|0)>=(z|0))break;r=ta+(q<<4)+1|0;do if((a[r>>0]|0)==0?(ua=xa+(o*12|0)|0,va=xa+(o*12|0)+8|0,wa=a[va>>0]|0,wa<<24>>24>0):0){s=ta+(q<<4)+4|0;t=ta+(q<<4)+12|0;p=a[t>>0]|0;if(!(p<<24>>24))j=wa;else{j=c[s>>2]|0;l=wa<<24>>24;k=c[ua>>2]|0;if(wa<<24>>24>32){sa=xa+(o*12|0)+4|0;f=l+-32|0;n=j<<f;m=0;f=c[sa>>2]&(1<<f)+-1;j=sa}else{n=c[ta+(q<<4)+8>>2]<<l|j>>>(32-l|0);m=j<<l;f=0;k=(1<<l)+-1&k;j=xa+(o*12|0)+4|0}c[ua>>2]=m|k;c[j>>2]=n|f;j=(wa&255)+(p&255)&255;a[va>>0]=j}if((xi(a[ta+(q<<4)>>0]|0,ua,i+(e[ta+(q<<4)+2>>1]<<1)|0)|0)<<24>>24>-1){a[r>>0]=1;break}else{c[s>>2]=c[ua>>2];c[s+4>>2]=c[ua+4>>2];c[s+8>>2]=c[ua+8>>2];a[t>>0]=j;break}}while(0);j=u+1<<16>>16;if((j&65535)<(C&65535)){u=j;j=j&65535}else break}x=x+1|0}while((x|0)!=(A|0));j=0;do{yi(xa+(j*12|0)|0);j=j+1|0}while((j|0)!=(A|0));j=y+1<<16>>16;if((j&65535)>(B&65535)){j=0;break}else{y=j;j=j&65535}}Vb=ya;return j|0}function ri(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;do switch(d<<24>>24){case 2:case 1:{f=ti(d,f,g)|0;return f|0}case 3:{j=f+8|0;k=f+4|0;l=f+20|0;h=0;do{d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))lg(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}h=h+(a[119829+(h*5|0)+1+d>>0]|0)&65535}while(!(a[119829+(h*5|0)>>0]|0));if((h|0)>161){i=10;d=b[g>>1]|0}else{d=a[119829+(h*5|0)+1>>0]|0;b[g>>1]=d;b[g+2>>1]=a[119829+(h*5|0)+2>>0]|0;b[g+4>>1]=a[119829+(h*5|0)+3>>0]|0;b[g+6>>1]=a[119829+(h*5|0)+4>>0]|0;i=0}if(d<<16>>16){d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))lg(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[g>>1]=0-(e[g>>1]|0)}h=g+2|0;if(b[h>>1]|0){d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))lg(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[h>>1]=0-(e[h>>1]|0)}h=g+4|0;if(b[h>>1]|0){d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))lg(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[h>>1]=0-(e[h>>1]|0)}h=g+6|0;if(!(b[h>>1]|0)){f=i;return f|0}d=c[j>>2]|0;if(!d){d=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))lg(f,1)}else{d=d+-1|0;c[j>>2]=d;d=(c[f>>2]|0)>>>d&1}if(!d){f=i;return f|0}b[h>>1]=0-(e[h>>1]|0);f=i;return f|0}case 4:{l=ti(4,f,g)|0;i=f+8|0;j=f+4|0;k=f+20|0;if(b[g>>1]|0){d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))lg(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[g>>1]=0-(e[g>>1]|0)}h=g+2|0;if(b[h>>1]|0){d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))lg(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[h>>1]=0-(e[h>>1]|0)}h=g+4|0;if(b[h>>1]|0){d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))lg(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[h>>1]=0-(e[h>>1]|0)}h=g+6|0;if(!(b[h>>1]|0)){f=l;return f|0}d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))lg(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(!d){f=l;return f|0}b[h>>1]=0-(e[h>>1]|0);f=l;return f|0}case 5:{if(!(a[115405]|0)){j=f+8|0;k=f+4|0;l=f+20|0;h=0;d=115405;do{i=c[j>>2]|0;if(!i){i=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0)){lg(f,1);d=115405}}else{i=i+-1|0;c[j>>2]=i;i=(c[f>>2]|0)>>>i&1}h=h+(a[d+(h*3|0)+1+i>>0]|0)&65535}while((a[d+(h*3|0)>>0]|0)==0)}else{h=0;d=115405}if((h|0)>161){f=10;return f|0}b[g>>1]=a[d+(h*3|0)+1>>0]|0;b[g+2>>1]=a[d+(h*3|0)+2>>0]|0;f=0;return f|0}case 6:{f=ui(6,f,g)|0;return f|0}case 9:case 7:{n=d&255;j=5216+(n<<2)|0;d=c[j>>2]|0;if(!(a[d>>0]|0)){k=f+8|0;l=f+4|0;m=f+20|0;h=0;do{i=c[k>>2]|0;if(!i){i=(c[l>>2]|0)>>>31;if(!(a[m>>0]|0)){lg(f,1);d=c[j>>2]|0}}else{i=i+-1|0;c[k>>2]=i;i=(c[f>>2]|0)>>>i&1}h=h+(a[d+(h*3|0)+1+i>>0]|0)&65535}while((a[d+(h*3|0)>>0]|0)==0)}else h=0;if((h|0)>(c[5360+(n<<2)>>2]|0)){l=10;d=b[g>>1]|0}else{n=a[d+(h*3|0)+1>>0]|0;b[g>>1]=n;b[g+2>>1]=a[d+(h*3|0)+2>>0]|0;l=0;d=n}i=f+8|0;j=f+4|0;k=f+20|0;if(d<<16>>16){d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))lg(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[g>>1]=0-(e[g>>1]|0)}h=g+2|0;if(!(b[h>>1]|0)){f=l;return f|0}d=c[i>>2]|0;if(!d){d=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))lg(f,1)}else{d=d+-1|0;c[i>>2]=d;d=(c[f>>2]|0)>>>d&1}if(!d){f=l;return f|0}b[h>>1]=0-(e[h>>1]|0);f=l;return f|0}case 10:case 8:{f=vi(d,f,g)|0;return f|0}case 12:{f=ui(11,f,g)|0;b[g>>1]=250;b[g+2>>1]=-21216;return f|0}case 11:{n=vi(11,f,g)|0;b[g>>1]=wi(f,b[g>>1]|0)|0;g=g+2|0;b[g>>1]=wi(f,b[g>>1]|0)|0;f=n;return f|0}case 31:case 30:case 29:case 28:case 27:case 26:case 25:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:{i=vi(11,f,g)|0;b[g>>1]=wi(f,b[g>>1]|0)|0;j=g+2|0;h=wi(f,b[j>>1]|0)|0;b[j>>1]=h;if((d&-16)<<24>>24!=16){f=i;return f|0}n=b[g>>1]|0;f=n<<16>>16;d=e[104372+((d&255)+-16<<1)>>1]|0;if(((n<<16>>16>-1?f:0-f|0)|0)<=(d|0)?(f=h<<16>>16,((h<<16>>16>-1?f:0-f|0)|0)<=(d|0)):0){f=i;return f|0}b[g>>1]=0;b[j>>1]=0;f=i;return f|0}default:{f=11;return f|0}}while(0);return 0}function si(a,c,e){a=a|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=b[a+1936+((d[a+9044>>0]|0)<<1)>>1]|0;h=b[a+2040>>1]|0;j=a+9043|0;i=e&65535;e=(f&65535)<(h&65535)?f:h;h=0;f=0;while(1){g=(d[a+9045+f>>0]|0)+(e&65535)|0;e=g&65535;if(e>>>0>=i>>>0){e=15;f=4;break}e=c+(e<<1)|0;k=b[e>>1]|0;f=d[a+9049+f>>0]|0;b[e>>1]=(k<<16>>16>0?f:0-f|0)+(k&65535);f=h+1<<24>>24;if((f&255)>(d[j>>0]|0)){e=0;f=4;break}else{e=g&65535;h=f;f=f&255}}if((f|0)==4)return e|0;return 0}function ti(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e&255;l=117280+n|0;h=d[l>>0]|0;m=f+8|0;i=c[m>>2]|0;if(i>>>0<h>>>0){e=h-i|0;e=(c[f>>2]&(1<<i)+-1)<<e|(c[f+4>>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-i>>>(32-h|0);k=c[5072+(n<<2)>>2]|0;j=a[k+(e<<1)>>0]|0;e=a[k+(e<<1)+1>>0]|0;do if(!(e<<24>>24)){e=j&255;h=d[(c[5120+(n<<2)>>2]|0)+(e*5|0)>>0]|0;if(!(a[f+20>>0]|0))if(i>>>0>h>>>0){c[m>>2]=i-h;break}else{lg(f,h);break}}else{k=f+20|0;do if(!(a[k>>0]|0))if(i>>>0>h>>>0){i=i-h|0;c[m>>2]=i;break}else{lg(f,h);i=c[m>>2]|0;break}while(0);e=e&255;if(i>>>0<e>>>0){e=e-i|0;e=(c[f>>2]&(1<<i)+-1)<<e|(c[f+4>>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-i>>>(32-e|0);e=e+(j&255)|0;h=(d[(c[5120+(n<<2)>>2]|0)+((e&65535)*5|0)>>0]|0)-(d[l>>0]|0)|0;if(!(a[k>>0]|0))if(i>>>0>h>>>0){c[m>>2]=i-h;break}else{lg(f,h);break}}while(0);e=e&65535;if((c[5264+(n<<2)>>2]|0)<(e|0)){g=10;return g|0}n=c[5120+(n<<2)>>2]|0;b[g>>1]=a[n+(e*5|0)+1>>0]|0;b[g+2>>1]=a[n+(e*5|0)+2>>0]|0;b[g+4>>1]=a[n+(e*5|0)+3>>0]|0;b[g+6>>1]=a[n+(e*5|0)+4>>0]|0;g=0;return g|0}function ui(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=e&255;l=117280+n|0;h=d[l>>0]|0;m=f+8|0;i=c[m>>2]|0;if(i>>>0<h>>>0){e=h-i|0;e=(c[f>>2]&(1<<i)+-1)<<e|(c[f+4>>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-i>>>(32-h|0);k=c[5072+(n<<2)>>2]|0;j=a[k+(e<<1)>>0]|0;e=a[k+(e<<1)+1>>0]|0;do if(!(e<<24>>24)){e=j&255;h=d[(c[5168+(n<<2)>>2]|0)+(e*3|0)>>0]|0;if(!(a[f+20>>0]|0))if(i>>>0>h>>>0){c[m>>2]=i-h;break}else{lg(f,h);break}}else{k=f+20|0;do if(!(a[k>>0]|0))if(i>>>0>h>>>0){i=i-h|0;c[m>>2]=i;break}else{lg(f,h);i=c[m>>2]|0;break}while(0);e=e&255;if(i>>>0<e>>>0){e=e-i|0;e=(c[f>>2]&(1<<i)+-1)<<e|(c[f+4>>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-i>>>(32-e|0);e=e+(j&255)|0;h=(d[(c[5168+(n<<2)>>2]|0)+((e&65535)*3|0)>>0]|0)-(d[l>>0]|0)|0;if(!(a[k>>0]|0))if(i>>>0>h>>>0){c[m>>2]=i-h;break}else{lg(f,h);break}}while(0);e=e&65535;if((c[5312+(n<<2)>>2]|0)<(e|0)){g=10;return g|0}n=c[5168+(n<<2)>>2]|0;b[g>>1]=a[n+(e*3|0)+1>>0]|0;b[g+2>>1]=a[n+(e*3|0)+2>>0]|0;g=0;return g|0}function vi(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=ui(d,f,g)|0;h=f+8|0;i=f+4|0;j=f+20|0;if(b[g>>1]|0){d=c[h>>2]|0;if(!d){d=(c[i>>2]|0)>>>31;if(!(a[j>>0]|0))lg(f,1)}else{d=d+-1|0;c[h>>2]=d;d=(c[f>>2]|0)>>>d&1}if(d|0)b[g>>1]=0-(e[g>>1]|0)}g=g+2|0;if(!(b[g>>1]|0))return k|0;d=c[h>>2]|0;if(!d){d=(c[i>>2]|0)>>>31;if(!(a[j>>0]|0))lg(f,1)}else{d=d+-1|0;c[h>>2]=d;d=(c[f>>2]|0)>>>d&1}if(!d)return k|0;b[g>>1]=0-(e[g>>1]|0);return k|0}function wi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(d<<16>>16<0)if(d<<16>>16==-16)j=1;else{b=d;return b|0}else if(d<<16>>16==16)j=0;else{b=d;return b|0}h=b+8|0;g=b+4|0;i=b+20|0;e=4;while(1){d=c[h>>2]|0;if(!d){d=(c[g>>2]|0)>>>31;if(!(a[i>>0]|0))lg(b,1)}else{d=d+-1|0;c[h>>2]=d;d=(c[b>>2]|0)>>>d&1}if(!d)break;else e=e+1<<24>>24}f=e&255;do if(e<<24>>24){e=c[h>>2]|0;if(e>>>0<f>>>0){d=f-e|0;d=(c[b>>2]&(1<<e)+-1)<<d|(c[g>>2]|0)>>>(32-d|0)}else d=c[b>>2]<<32-e>>>(32-f|0);if(!(a[i>>0]|0))if(e>>>0>f>>>0){c[h>>2]=e-f;break}else{lg(b,f);break}}else d=0;while(0);b=d&65535|1<<f;b=(j<<24>>24==0?b:0-b|0)&65535;return b|0}function xi(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=f&255;a:do switch(f<<24>>24){case 4:case 2:case 1:{p=117280+q|0;r=a[p>>0]|0;l=r&255;do if(r<<24>>24){r=a[g+8>>0]|0;k=r<<24>>24;if(r<<24>>24<33){i=c[g>>2]|0;if((k|0)<(l|0)){i=i<<l-k&-1>>>(32-l|0);break}else{i=i>>>(k-l|0)&-1>>>(32-l|0);break}}else{i=k-l|0;j=c[g+4>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-k|0))<<l+32-k;break}else{i=j>>>(i+-32|0)&-1>>>(32-l|0);break}}}else i=0;while(0);r=c[5072+(q<<2)>>2]|0;n=a[r+(i<<1)>>0]|0;i=a[r+(i<<1)+1>>0]|0;if(!(i<<24>>24)){j=n&255;i=5120+(q<<2)|0;q=g+8|0;p=(d[q>>0]|0)-(d[(c[i>>2]|0)+(j*5|0)>>0]|0)|0;r=(p&128|0)==0;a[q>>0]=r?p&255:0;if(!r){h=-1;return h|0}}else{o=g+8|0;m=(d[o>>0]|0)-l|0;r=(m&128|0)==0;m=r?m&255:0;a[o>>0]=m;if(!r){h=-1;return h|0}k=i&255;l=m<<24>>24;do if(m<<24>>24<33){i=c[g>>2]|0;if((l|0)<(k|0)){i=i<<k-l&-1>>>(32-k|0);break}else{i=i>>>(l-k|0)&-1>>>(32-k|0);break}}else{i=l-k|0;j=c[g+4>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-l|0))<<k+32-l;break}else{i=j>>>(i+-32|0)&-1>>>(32-k|0);break}}while(0);j=i+(n&255)|0;i=5120+(q<<2)|0;q=(m&255)-((d[(c[i>>2]|0)+((j&65535)*5|0)>>0]|0)-(d[p>>0]|0)&255)|0;r=(q&128|0)==0;a[o>>0]=r?q&255:0;if(!r){h=-1;return h|0}}r=c[i>>2]|0;i=j&65535;b[h>>1]=a[r+(i*5|0)+1>>0]|0;b[h+2>>1]=a[r+(i*5|0)+2>>0]|0;b[h+4>>1]=a[r+(i*5|0)+3>>0]|0;k=f;l=0;i=r+(i*5|0)+4|0;j=3;r=61;break}case 31:case 30:case 29:case 28:case 27:case 26:case 25:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 11:case 10:case 8:case 6:{k=(f&255)>15;l=k?f:0;k=k?11:f;f=k&255;r=117280+f|0;q=a[r>>0]|0;n=q&255;do if(q<<24>>24){q=a[g+8>>0]|0;m=q<<24>>24;if(q<<24>>24<33){i=c[g>>2]|0;if((m|0)<(n|0)){i=i<<n-m&-1>>>(32-n|0);break}else{i=i>>>(m-n|0)&-1>>>(32-n|0);break}}else{i=m-n|0;j=c[g+4>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-m|0))<<n+32-m;break}else{i=j>>>(i+-32|0)&-1>>>(32-n|0);break}}}else i=0;while(0);q=c[5072+(f<<2)>>2]|0;p=a[q+(i<<1)>>0]|0;i=a[q+(i<<1)+1>>0]|0;if(!(i<<24>>24)){j=p&255;i=5168+(f<<2)|0;f=g+8|0;q=(d[f>>0]|0)-(d[(c[i>>2]|0)+(j*3|0)>>0]|0)|0;r=(q&128|0)==0;a[f>>0]=r?q&255:0;if(!r){h=-1;return h|0}}else{q=g+8|0;o=(d[q>>0]|0)-n|0;n=(o&128|0)==0;o=n?o&255:0;a[q>>0]=o;if(!n){h=-1;return h|0}m=i&255;n=o<<24>>24;do if(o<<24>>24<33){i=c[g>>2]|0;if((n|0)<(m|0)){i=i<<m-n&-1>>>(32-m|0);break}else{i=i>>>(n-m|0)&-1>>>(32-m|0);break}}else{i=n-m|0;j=c[g+4>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-n|0))<<m+32-n;break}else{i=j>>>(i+-32|0)&-1>>>(32-m|0);break}}while(0);j=i+(p&255)|0;i=5168+(f<<2)|0;f=(o&255)-((d[(c[i>>2]|0)+((j&65535)*3|0)>>0]|0)-(d[r>>0]|0)&255)|0;r=(f&128|0)==0;a[q>>0]=r?f&255:0;if(!r){h=-1;return h|0}}r=c[i>>2]|0;i=j&65535;b[h>>1]=a[r+(i*3|0)+1>>0]|0;i=r+(i*3|0)+2|0;j=1;r=61;break}case 3:{k=g+8|0;m=g+4|0;l=a[k>>0]|0;n=0;while(1){i=l<<24>>24;do if(l<<24>>24<33){j=c[g>>2]|0;if(l<<24>>24<1){i=j<<1-i;break}else{i=j>>>(i+-1|0);break}}else i=(c[m>>2]|0)>>>(i+-33|0);while(0);r=l+-1<<24>>24<<24>>24>-1;l=(l&255)+255&255;a[k>>0]=r?l:0;if(!r){i=-1;r=100;break}n=n+(a[(i&1)+(119829+(n*5|0)+1)>>0]|0)&65535;if(a[119829+(n*5|0)>>0]|0){r=52;break}}if((r|0)==52){b[h>>1]=a[119829+(n*5|0)+1>>0]|0;b[h+2>>1]=a[119829+(n*5|0)+2>>0]|0;b[h+4>>1]=a[119829+(n*5|0)+3>>0]|0;k=3;l=0;i=119829+(n*5|0)+4|0;j=3;r=61;break a}else if((r|0)==100)return i|0;break}case 9:case 7:case 5:{o=5216+(q<<2)|0;i=c[o>>2]|0;b:do if(!(a[i>>0]|0)){l=g+8|0;n=g+4|0;m=a[l>>0]|0;j=0;while(1){i=m<<24>>24;do if(m<<24>>24<33){k=c[g>>2]|0;if(m<<24>>24<1){k=k<<1-i;break}else{k=k>>>(i+-1|0);break}}else k=(c[n>>2]|0)>>>(i+-33|0);while(0);r=m+-1<<24>>24<<24>>24>-1;m=(m&255)+255&255;a[l>>0]=r?m:0;if(!r){i=-1;break}i=c[o>>2]|0;j=j+(a[(k&1)+(i+(j*3|0)+1)>>0]|0)&65535;if(a[i+(j*3|0)>>0]|0)break b}return i|0}else j=0;while(0);b[h>>1]=a[i+(j*3|0)+1>>0]|0;k=f;l=0;i=i+(j*3|0)+2|0;j=1;r=61;break}default:{k=f;l=0}}while(0);if((r|0)==61)b[h+(j<<1)>>1]=a[i>>0]|0;c:do if(a[117292+(k&255)>>0]|0){q=(k&255)<5?4:2;p=g+8|0;f=g+4|0;o=0;i=0;while(1){n=h+(i<<1)|0;if(b[n>>1]|0){m=a[p>>0]|0;i=m<<24>>24;do if(m<<24>>24<33){j=c[g>>2]|0;if(m<<24>>24<1){i=j<<1-i;break}else{i=j>>>(i+-1|0);break}}else i=(c[f>>2]|0)>>>(i+-33|0);while(0);j=m+-1<<24>>24<<24>>24>-1;a[p>>0]=j?(m&255)+255&255:0;if(!j){i=-1;break}if(i&1|0)b[n>>1]=0-(e[n>>1]|0)}o=o+1<<24>>24;i=o&255;if(q>>>0<=i>>>0)break c}return i|0}while(0);f=g+8|0;do if(k<<24>>24==11|(k&255)>15){q=g+4|0;o=b[h>>1]|0;d:do switch(o<<16>>16){case -16:case 16:{k=a[f>>0]|0;m=4;e:while(1){i=k<<24>>24;do if(k<<24>>24<33){j=c[g>>2]|0;if(k<<24>>24<1){i=j<<1-i;break}else{i=j>>>(i+-1|0);break}}else i=(c[q>>2]|0)>>>(i+-33|0);while(0);p=k+-1<<24>>24<<24>>24>-1;k=p?(k&255)+255&255:0;i=p?((i&1|0)==0?13:0):1;switch(i&15){case 13:break e;case 0:break;default:{r=94;break e}}m=m+1<<24>>24}if((r|0)==94){a[f>>0]=k;if(!i)break d;else i=-1;return i|0}a[f>>0]=k;n=m&255;do if(m<<24>>24){m=k<<24>>24;if(k<<24>>24<33){i=c[g>>2]|0;if((m|0)<(n|0)){i=i<<n-m&-1>>>(32-n|0);break}else{i=i>>>(m-n|0)&-1>>>(32-n|0);break}}else{i=m-n|0;j=c[q>>2]|0;if((i|0)<32){i=(c[g>>2]|0)>>>i|(j&-1>>>(64-m|0))<<n+32-m;break}else{i=j>>>(i+-32|0)&-1>>>(32-n|0);break}}}else i=0;while(0);m=(k&255)-n|0;p=(m&128|0)==0;a[f>>0]=p?m&255:0;i=i+(1<<n)|0;if(p){b[h>>1]=o<<16>>16<0?0-i|0:i;break d}else{h=-1;return h|0}}default:{}}while(0);p=h+2|0;o=b[p>>1]|0;f:do switch(o<<16>>16){case -16:case 16:{k=a[f>>0]|0;m=4;g:while(1){i=k<<24>>24;do if(k<<24>>24<33){j=c[g>>2]|0;if(k<<24>>24<1){i=j<<1-i;break}else{i=j>>>(i+-1|0);break}}else i=(c[q>>2]|0)>>>(i+-33|0);while(0);n=k+-1<<24>>24<<24>>24>-1;k=n?(k&255)+255&255:0;i=n?((i&1|0)==0?13:0):1;switch(i&15){case 13:break g;case 0:break;default:{r=119;break g}}m=m+1<<24>>24}if((r|0)==119){a[f>>0]=k;if(!i)break f;else i=-1;return i|0}a[f>>0]=k;n=m&255;do if(m<<24>>24){m=k<<24>>24;if(k<<24>>24<33){i=c[g>>2]|0;if((m|0)<(n|0)){i=i<<n-m&-1>>>(32-n|0);break}else{i=i>>>(m-n|0)&-1>>>(32-n|0);break}}else{j=m-n|0;i=c[q>>2]|0;if((j|0)<32){i=(c[g>>2]|0)>>>j|(i&-1>>>(64-m|0))<<n+32-m;break}else{i=i>>>(j+-32|0)&-1>>>(32-n|0);break}}}else i=0;while(0);r=(k&255)-n|0;g=(r&128|0)==0;a[f>>0]=g?r&255:0;i=i+(1<<n)|0;if(g){b[p>>1]=o<<16>>16<0?0-i|0:i;break f}else{h=-1;return h|0}}default:{}}while(0);if(l<<24>>24!=0&(l&-16)<<24>>24==16){r=b[h>>1]|0;g=r<<16>>16;i=e[104372+((l&255)+-16<<1)>>1]|0;if(((r<<16>>16>-1?g:0-g|0)|0)<=(i|0)?(r=b[p>>1]|0,g=r<<16>>16,((r<<16>>16>-1?g:0-g|0)|0)<=(i|0)):0)break;b[h>>1]=0;b[p>>1]=0}}while(0);h=a[f>>0]|0;return h|0}function yi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a[b+8>>0]|0;if(!(d<<24>>24))return;f=b+4|0;e=d&255;if((d&255)<33){c[f>>2]=0;d=c[b>>2]|0;d=d>>>1&1431655765|d<<1&-1431655766;d=d>>>2&858993459|d<<2&-858993460;d=d>>>4&252645135|d<<4&-252645136;d=d>>>8&16711935|d<<8&-16711936;d=(d>>>16|d<<16)>>>(32-e|0)}else{h=c[f>>2]|0;g=c[b>>2]|0;g=g>>>1&1431655765|g<<1&-1431655766;h=h>>>1&1431655765|h<<1&-1431655766;g=g>>>2&858993459|g<<2&-858993460;h=h>>>2&858993459|h<<2&-858993460;g=g>>>4&252645135|g<<4&-252645136;h=h>>>4&252645135|h<<4&-252645136;g=g>>>8&16711935|g<<8&-16711936;h=h>>>8&16711935|h<<8&-16711936;g=g>>>16|g<<16;d=64-e|0;c[b>>2]=g<<e+-32|(h>>>16|h<<16)>>>d;d=g>>>d;b=f}c[b>>2]=d;return}function zi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=b+8|0;f=c[n>>2]|0;if(!f)e=c[b+4>>2]|0;else e=c[b>>2]<<32-f;m=b+20|0;do if(!(a[m>>0]|0))if(f>>>0>1){c[n>>2]=f+-1;break}else{lg(b,1);break}while(0);if((e|0)>-1)e=93384;else{l=b+4|0;j=1;k=93384;f=1;while(1){h=j;j=a[k+9>>0]|0;h=(j&255)-(h&255)&255;e=k+8|0;i=f<<h;do if(h){g=c[n>>2]|0;if(g>>>0<h>>>0){f=h-g|0;f=(c[b>>2]&(1<<g)+-1)<<f|(c[l>>2]|0)>>>(32-f|0)}else f=c[b>>2]<<32-g>>>(32-h|0);if(!(a[m>>0]|0))if(g>>>0>h>>>0){c[n>>2]=g-h;break}else{lg(b,h);break}}else f=0;while(0);f=f|i;if(!((j&255)<10?(f|0)!=(c[k+12>>2]|0):0))break;else k=e}}e=a[e>>0]|0;n=e&255;do if(e<<24>>24==7){b=d+8|0;e=c[b>>2]|0;if(e>>>0<2){f=2-e|0;f=(c[d>>2]&(1<<e)+-1)<<f|(c[d+4>>2]|0)>>>(32-f|0)}else f=c[d>>2]<<32-e>>>30;m=d+20|0;do if(!(a[m>>0]|0))if(e>>>0>2){c[b>>2]=e+-2;break}else{lg(d,2);break}while(0);if(!f)e=93576;else{l=d+4|0;j=2;k=93576;while(1){h=j;j=a[k+9>>0]|0;h=(j&255)-(h&255)&255;e=k+8|0;i=f<<h;do if(h){g=c[b>>2]|0;if(g>>>0<h>>>0){f=h-g|0;f=(c[d>>2]&(1<<g)+-1)<<f|(c[l>>2]|0)>>>(32-f|0)}else f=c[d>>2]<<32-g>>>(32-h|0);if(!(a[m>>0]|0))if(g>>>0>h>>>0){c[b>>2]=g-h;break}else{lg(d,h);break}}else f=0;while(0);f=f|i;if(!((j&255)<21?(f|0)!=(c[k+12>>2]|0):0))break;else k=e}}e=a[e>>0]|0;if(e<<24>>24==99){d=99;return d|0}else{e=(e&255)+n&255;break}}while(0);n=e&255;if(e<<24>>24!=-7){d=e;return d|0}b=d+8|0;e=c[b>>2]|0;if(e>>>0<2){f=2-e|0;f=(c[d>>2]&(1<<e)+-1)<<f|(c[d+4>>2]|0)>>>(32-f|0)}else f=c[d>>2]<<32-e>>>30;m=d+20|0;do if(!(a[m>>0]|0))if(e>>>0>2){c[b>>2]=e+-2;break}else{lg(d,2);break}while(0);if(!f)e=93576;else{l=d+4|0;j=2;k=93576;while(1){h=j;j=a[k+9>>0]|0;h=(j&255)-(h&255)&255;e=k+8|0;i=f<<h;do if(h){g=c[b>>2]|0;if(g>>>0<h>>>0){f=h-g|0;f=(c[d>>2]&(1<<g)+-1)<<f|(c[l>>2]|0)>>>(32-f|0)}else f=c[d>>2]<<32-g>>>(32-h|0);if(!(a[m>>0]|0))if(g>>>0>h>>>0){c[b>>2]=g-h;break}else{lg(d,h);break}}else f=0;while(0);f=f|i;if(!((j&255)<21?(f|0)!=(c[k+12>>2]|0):0))break;else k=e}}e=a[e>>0]|0;if(e<<24>>24==99){d=99;return d|0}d=n-(e&255)&255;return d|0}function Ai(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=a[f+3>>0]|0;switch(a[g+4>>0]|0){case 3:case 1:case 0:{a[g+3>>0]=1;a[g+2>>0]=1;a[g+5>>0]=1;j=(a[f+4>>0]|0)==23;l=f+10|0;h=b[l>>1]|0;do if(j){i=k&255;if(h<<16>>16==512){i=121176+i|0;break}else{i=121188+i|0;break}}else{i=k&255;if(h<<16>>16==1024){i=121200+i|0;break}else{i=121212+i|0;break}}while(0);f=a[i>>0]|0;a[g+1>>0]=f;if((d[g>>0]|0)>(f&255)){g=32;return g|0}if(j){i=f<<24>>24!=0;if(h<<16>>16==512){if(i){j=c[94112+((k&255)<<2)>>2]|0;i=0;h=0;while(1){s=j+(h<<1)|0;b[g+16+(h<<1)>>1]=b[s>>1]|0;b[g+1936+(h<<1)>>1]=b[s>>1]|0;h=i+1<<24>>24;if((h&255)<(f&255)){i=h;h=h&255}else break}}}else if(i){j=c[94064+((k&255)<<2)>>2]|0;i=0;h=0;while(1){s=j+(h<<1)|0;b[g+16+(h<<1)>>1]=b[s>>1]|0;b[g+1936+(h<<1)>>1]=b[s>>1]|0;h=i+1<<24>>24;if((h&255)<(f&255)){i=h;h=h&255}else break}}h=f&255;b[g+16+(h<<1)>>1]=b[l>>1]|0}else{if(!(f<<24>>24))i=0;else{j=c[94016+((k&255)<<2)>>2]|0;i=0;h=0;while(1){s=j+(h<<1)|0;b[g+16+(h<<1)>>1]=b[s>>1]|0;b[g+1936+(h<<1)>>1]=b[s>>1]|0;h=i+1<<24>>24;if((h&255)<(f&255)){i=h;h=h&255}else break}i=f;h=b[l>>1]|0}b[g+16+((i&255)<<1)>>1]=h;h=f&255}b[g+1936+(h<<1)>>1]=b[l>>1]|0;b[g+2040>>1]=b[l>>1]|0;g=0;return g|0}case 2:{a[g+3>>0]=8;l=g+2|0;a[l>>0]=1;a[g+5>>0]=1;k=k&255;s=a[121224+k>>0]|0;a[g+1>>0]=s;if((d[g>>0]|0)>(s&255)){g=32;return g|0}j=c[94160+(k<<2)>>2]|0;i=0;h=0;while(1){b[g+1936+(h<<1)>>1]=b[j+(h<<1)>>1]|0;h=i+1<<24>>24;if((h&255)<(s&255)){i=h;h=h&255}else break}r=f+10|0;b[g+1936+((s&255)<<1)>>1]=(e[r>>1]|0)>>>3;b[g+2040>>1]=(e[r>>1]|0)>>>3;j=g+14|0;if(!(a[j>>0]&64)){a[l>>0]=2;a[g+6>>0]=1;i=2}else{i=g+5|0;a[i>>0]=(d[i>>0]|0)+1;i=1}h=i&255;if(!(a[j>>0]&32)){q=h+1&255;a[l>>0]=q;a[(i&255)+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&16)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&8)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&4)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&2)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}h=i&255;if(!(a[j>>0]&1)){q=h+1&255;a[l>>0]=q;a[(i+1&255)+-1+(g+5)>>0]=1;i=q}else{q=h+-1+(g+5)|0;a[q>>0]=(d[q>>0]|0)+1}if(!(i<<24>>24)){g=0;return g|0}p=94160+(k<<2)|0;q=s&255;o=0;j=s;n=0;while(1){if(!(j<<24>>24)){f=0;h=0;j=0}else{m=g+5+n|0;if(j<<24>>24==1){h=(e[r>>1]|0)>>>3&65535;j=c[p>>2]|0}else{j=c[p>>2]|0;h=e[j+2>>1]|0}f=w(h-(e[j>>1]|0)&65535,d[m>>0]|0)|0;b[g+16+(n*240|0)>>1]=0;l=1;f=f&65535;k=1;while(1){h=k+1|0;if((h|0)==(q|0)){h=(e[r>>1]|0)>>>3&65535;j=c[p>>2]|0}else{j=c[p>>2]|0;h=e[j+(h<<1)>>1]|0}k=w(h-(e[j+(k<<1)>>1]|0)&65535,d[m>>0]|0)|0;h=l+1<<24>>24;b[g+16+(n*240|0)+((l&255)<<1)>>1]=f;f=k+(f&65535)&65535;if((h&255)<(s&255)){l=h;k=h&255}else{j=s;break}}}b[g+16+(n*240|0)+((h&255)<<1)>>1]=f;h=o+1<<24>>24;if((h&255)<(i&255)){o=h;n=h&255}else{h=0;break}}return h|0}default:{g=32;return g|0}}return 0}function Bi(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Vb;Vb=Vb+4096|0;q=s;r=f+25|0;m=d[r>>0]|0;p=(a[f+1084+m>>0]|0)==0;j=p?1:2;k=f+26+m|0;l=a[k>>0]|0;if(l<<24>>24){if((j|0)!=(l&255|0)){a[f+74+m>>0]=0;o=4}}else o=4;if((o|0)==4)a[k>>0]=j;if(!(a[f+74+m>>0]|0)){l=f+4|0;j=a[l>>0]|0;n=d[h>>0]|0;if(j<<24>>24==1){j=f+1136+(n<<2)|0;k=c[j>>2]|0;if(k|0){Ag(k);c[j>>2]=0}o=f+10|0;m=og((e[o>>1]|0)*12|0)|0;c[j>>2]=m;Kh(m,b[o>>1]|0);j=a[l>>0]|0}if((Lh(j)|0)<<24>>24){j=f+1392+(n<<2)|0;k=c[j>>2]|0;if(k|0){Ag(k);c[j>>2]=0}o=f+10|0;m=og(e[o>>1]<<3)|0;c[j>>2]=m;fl(m|0,0,e[o>>1]<<3|0)|0}k=f+328+(n<<2)|0;j=c[k>>2]|0;if(j|0){Ag(j);c[k>>2]=0}j=(d[r>>0]|0)+(f+843)|0;a[j>>0]=0;if((a[f+840>>0]|0)!=1?(a[f+841>>0]|0)!=1:0)l=4;else{a[j>>0]=1;l=8}m=f+10|0;o=og(w(l,e[m>>1]|0)|0)|0;c[k>>2]=o;fl(o|0,0,w(l,e[m>>1]|0)|0)|0;if(!p){j=f+328+(n+1<<2)|0;k=c[j>>2]|0;if(k|0){Ag(k);c[j>>2]=0}p=og(w(l,e[m>>1]|0)|0)|0;c[j>>2]=p;fl(p|0,0,w(l,e[m>>1]|0)|0)|0}j=f+584+(n<<2)|0;k=c[j>>2]|0;if(k|0){Ag(k);c[j>>2]=0}p=og(e[m>>1]<<2)|0;c[j>>2]=p;fl(p|0,0,e[m>>1]<<2|0)|0;a[(d[r>>0]|0)+(f+74)>>0]=1;p=m}else p=f+10|0;j=Mh(g,i,q)|0;if(j<<24>>24){h=j;Vb=s;return h|0}l=f+4|0;Nh(g,0,q,0,b[p>>1]|0,0,a[l>>0]|0,f+1648|0,f+1652|0);j=a[l>>0]|0;do if(j<<24>>24==1){j=c[f+1136+(d[h>>0]<<2)>>2]|0;if(!j){h=33;Vb=s;return h|0}else{Qh(g,q,j,b[p>>1]|0,a[f+3>>0]|0);Rh(g,c[f+1136+(d[h>>0]<<2)>>2]|0);j=a[l>>0]|0;break}}while(0);if(!((Lh(j)|0)<<24>>24))n=f+3|0;else{j=a[l>>0]|0;if(j<<24>>24==23){if(a[g+10277>>0]|0?a[g+10280>>0]|0:0)b[f+192+(d[h>>0]<<1)>>1]=b[g+10278>>1]|0;k=a[h>>0]|0;b[g+10278>>1]=b[f+192+((k&255)<<1)>>1]|0}else k=a[h>>0]|0;i=k&255;n=f+3|0;Sh(g,g+10276|0,q,c[f+1392+(i<<2)>>2]|0,c[f+320>>2]|0,a[g+13>>0]|0,a[f+128+i>>0]|0,a[n>>0]|0,j,b[p>>1]|0)}Th(g,g+9053|0,a[n>>0]|0,a[l>>0]|0,q,b[p>>1]|0);j=c[f+324>>2]|0;do if(a[j>>0]|0){if(a[(d[h>>0]|0)+(j+56)>>0]|0?a[j+3>>0]|0:0)break;Uh(j,q)}while(0);i=g+13|0;o=d[h>>0]|0;Vh(c[f+320>>2]|0,a[g+4>>0]|0,a[i>>0]|0,a[f+128+o>>0]|0,q,c[f+328+(o<<2)>>2]|0,c[f+584+(o<<2)>>2]|0,a[l>>0]|0,b[p>>1]|0);a[(d[h>>0]|0)+(f+128)>>0]=a[i>>0]|0;if((Lh(a[l>>0]|0)|0)<<24>>24){q=d[h>>0]|0;Wh(c[f+1392+(q<<2)>>2]|0,c[f+328+(q<<2)>>2]|0,c[f+584+(q<<2)>>2]|0,b[p>>1]|0,a[l>>0]|0)}j=(a[f+840>>0]|0)==1;if(!j?(a[f+841>>0]|0)!=1:0)o=56;else o=48;do if((o|0)==48){m=d[r>>0]|0;if(!(a[f+843+m>>0]|0))if(j){o=57;break}else{o=56;break}l=d[h>>0]|0;k=f+892+(m<<2)|0;j=c[k>>2]|0;if(!j){g=b[p>>1]|0;q=a[f+2128+m>>0]|0;j=(Cg(a[n>>0]|0)|0)<<1;j=ih(g,q,j,a[f+842>>0]|0)|0;c[k>>2]=j}q=a[h+6>>0]|0;q=b[h+1942+(((q&255)>1?(q&255)+-1|0:0)<<1)>>1]|0;k=b[h+2046>>1]|0;k=((q&65535)<(k&65535)?q:k)&65535;c[j+4>>2]=(a[h+10>>0]|0)==2?k<<3:k;k=c[f+328+(l<<2)>>2]|0;if(!(a[f+1084+m>>0]|0))j=Ci(j,k,a[f+12>>0]|0,a[f+842>>0]|0)|0;else j=Di(j,k,c[f+328+(l+1<<2)>>2]|0,a[f+12>>0]|0,a[f+842>>0]|0)|0;if(j<<24>>24){h=j;Vb=s;return h|0}}while(0);if((o|0)==56?(a[f+841>>0]|0)==1:0)o=57;if((o|0)==57?(a[(d[r>>0]|0)+(f+843)>>0]|0)==0:0){h=23;Vb=s;return h|0}j=d[r>>0]|0;if(a[f+1084+j>>0]|0){h=0;Vb=s;return h|0}if((a[f+26+j>>0]|0)!=2){h=0;Vb=s;return h|0}r=d[h>>0]|0;h=w(e[p>>1]<<2,a[f+843+j>>0]|0?2:1)|0;dl(c[f+328+(r+1<<2)>>2]|0,c[f+328+(r<<2)>>2]|0,h|0)|0;h=0;Vb=s;return h|0}function Ci(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=Vb;Vb=Vb+16384|0;k=n;if(!b){m=20;Vb=n;return m|0}switch(a[b+12436>>0]|0){case 3:case 0:break;default:{m=21;Vb=n;return m|0}}l=b+10|0;if(a[l>>0]|0)if(!(a[b+12426>>0]|0))h=1;else{a[b+12412>>0]=-1;h=1}else h=(c[b+12432>>2]|0)==0&1;i=b+9|0;a[i>>0]=f<<24>>24!=0&1;h=(Yh(b,e,k,0,h)|0)&255;a[l>>0]=(d[l>>0]|0)+h;h=c[b+12448>>2]|0;if(!(g<<24>>24))_h(b,h,k,e);else Zh(b,h,k,e);if(a[b+53426>>0]|0)a[i>>0]=0;if((c[b+12432>>2]|0?(a[l>>0]|0)==0:0)?(j=$h(b,0)|0,j<<24>>24):0){m=j;Vb=n;return m|0}i=b+53418|0;if(a[i>>0]|0){g=b+53416|0;f=0;h=0;while(1){el(b+12456+(h<<9)|0,b+12456+(h+(d[g>>0]|0)<<9)|0,512)|0;e=f+1<<24>>24;h=a[i>>0]|0;if((e&255)<(h&255)){f=e;h=e&255}else break}if((h&255)<40)m=18}else{h=0;m=18}if((m|0)==18)fl(b+(((h&255)<<9)+12456)|0,0,((39-h&255)<<9)+512|0)|0;m=b+12428|0;c[m>>2]=(c[m>>2]|0)+1;m=0;Vb=n;return m|0}function Di(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=Vb;Vb=Vb+38912|0;o=t+19456|0;p=t;fl(o|0,0,19456)|0;fl(p|0,0,19456)|0;if(!b){s=20;Vb=t;return s|0}switch(a[b+12436>>0]|0){case 3:case 0:break;default:{s=21;Vb=t;return s|0}}m=b+10|0;if(a[m>>0]|0)if(!(a[b+12426>>0]|0))i=1;else{a[b+12412>>0]=-1;i=1}else i=(c[b+12432>>2]|0)==0&1;n=b+9|0;a[n>>0]=g<<24>>24!=0&1;l=b+12452|0;if(!(c[l>>2]|0))c[l>>2]=Fh(h<<24>>24?32:64)|0;r=(Yh(b,e,o,0,i)|0)&255;a[m>>0]=(d[m>>0]|0)+r;r=b+53416|0;g=a[r>>0]|0;k=g&255;i=k+6|0;j=d[b+53419>>0]|0;do{u=k+j|0;c[o+(k<<9)>>2]=c[b+12456+(u<<9)>>2];c[o+(k<<9)+4>>2]=c[b+12456+(u<<9)+4>>2];c[o+(k<<9)+8>>2]=c[b+12456+(u<<9)+8>>2];c[o+(k<<9)+12>>2]=c[b+12456+(u<<9)+12>>2];c[o+(k<<9)+16>>2]=c[b+12456+(u<<9)+16>>2];c[o+(k<<9)+20>>2]=c[b+12456+(u<<9)+20>>2];c[o+(k<<9)+24>>2]=c[b+12456+(u<<9)+24>>2];c[o+(k<<9)+28>>2]=c[b+12456+(u<<9)+28>>2];c[o+(k<<9)+32>>2]=c[b+12456+(u<<9)+32>>2];c[o+(k<<9)+36>>2]=c[b+12456+(u<<9)+36>>2];g=g+1<<24>>24;k=g&255}while(i>>>0>k>>>0);Ei(c[b+53420>>2]|0,o,p)|0;g=c[b+12448>>2]|0;if(!(h<<24>>24)){_h(b,g,o,e);_h(b,c[l>>2]|0,p,f)}else{Zh(b,g,o,e);Zh(b,c[l>>2]|0,p,f)}if(a[b+53426>>0]|0)a[n>>0]=0;if((c[b+12432>>2]|0?(a[m>>0]|0)==0:0)?(q=$h(b,0)|0,q<<24>>24):0){u=q;Vb=t;return u|0}k=b+53418|0;if(a[k>>0]|0){i=0;g=0;while(1){el(b+12456+(g<<9)|0,b+12456+(g+(d[r>>0]|0)<<9)|0,512)|0;j=i+1<<24>>24;g=a[k>>0]|0;if((j&255)<(g&255)){i=j;g=j&255}else break}if((g&255)<40)s=21}else{g=0;s=21}if((s|0)==21)fl(b+(((g&255)<<9)+12456)|0,0,((39-g&255)<<9)+512|0)|0;u=b+12428|0;c[u>>2]=(c[u>>2]|0)+1;u=0;Vb=t;return u|0}function Ei(e,g,i){e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0,s=0,t=0,u=0,v=0,x=0,y=0.0,z=0,A=0,B=0,C=0,D=0.0,E=0.0,F=0.0,G=0.0,H=0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,P=0,Q=0.0,R=0.0,S=0.0,T=0.0,U=0.0,V=0.0,W=0.0,X=0.0,Y=0.0,Z=0.0,_=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.0,oa=0.0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0.0,xa=0.0,ya=0.0,za=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.0,Xa=0.0,Ya=0.0,Za=0.0,_a=0.0;Na=Vb;Vb=Vb+25088|0;ga=Na+20736|0;Ea=Na+16384|0;La=Na+8192|0;Ma=Na;fl(La|0,0,8192)|0;fl(Ma|0,0,8192)|0;P=e+718|0;Ka=e+9|0;if(a[P>>0]|0)if(a[Ka>>0]|0){v=e+3|0;x=e+38|0;z=e+72|0;j=e+106|0;k=e+123|0;A=e+5|0;B=e+1|0;C=e+7|0;H=e+4|0;I=e+26|0;J=e+6|0;u=0;t=0;while(1){Ia=a[v>>0]|0;l=(Ia&255)<3?7:15;Ja=u<<24>>24==0;m=t+-1|0;q=Ja?j:e+480+(m*17|0)|0;s=Ja?k:e+565+(m*17|0)|0;Fi(a[e>>0]|0,e+140+(t*34|0)|0,Ja?x:e+140+(m*34|0)|0,a[e+16+t>>0]|0,a[A>>0]|0,Ia<<24>>24==0|Ia<<24>>24==3?2:1,0-(l&255)&255,l);l=a[H>>0]|0;Fi(a[B>>0]|0,e+310+(t*34|0)|0,Ja?z:e+310+(m*34|0)|0,a[e+21+t>>0]|0,a[C>>0]|0,l<<24>>24==0|l<<24>>24==3?2:1,0,7);l=e+480+(t*17|0)|0;m=a[J>>0]|0;do if((a[I>>0]|0)==1)if(!(a[e+28+t>>0]|0)){a[l>>0]=a[l>>0]&7;n=m&255;if((m&255)>1){l=1;m=1}else{ea=13;break}do{Ja=e+480+(t*17|0)+m|0;a[Ja>>0]=(d[Ja>>0]|0)+(d[m+-1+(e+480+(t*17|0))>>0]|0)&7;l=l+1<<24>>24;m=l<<24>>24}while((m|0)<(n|0));ea=13}else{n=m&255;if(!(m<<24>>24)){ea=13;break}else{l=0;m=0}do{Ja=e+480+(t*17|0)+m|0;a[Ja>>0]=(d[Ja>>0]|0)+(d[q+m>>0]|0)&7;l=l+1<<24>>24;m=l<<24>>24}while((m|0)<(n|0));ea=13}else{n=m&255;if(m<<24>>24){l=0;m=0;do{a[e+480+(t*17|0)+m>>0]=0;l=l+1<<24>>24;m=l<<24>>24}while((m|0)<(n|0));ea=13}}while(0);a:do if((ea|0)==13){ea=0;m=a[J>>0]|0;l=e+565+(t*17|0)|0;if((a[I>>0]|0)!=1){n=m&255;if(!(m<<24>>24))break;else{l=0;m=0}while(1){a[e+565+(t*17|0)+m>>0]=0;l=l+1<<24>>24;m=l<<24>>24;if((m|0)>=(n|0))break a}}if(!(a[e+33+t>>0]|0)){a[l>>0]=a[l>>0]&7;n=m&255;if((m&255)>1){l=1;m=1}else break;do{Ja=e+565+(t*17|0)+m|0;a[Ja>>0]=(d[Ja>>0]|0)+(d[m+-1+(e+565+(t*17|0))>>0]|0)&7;l=l+1<<24>>24;m=l<<24>>24}while((m|0)<(n|0))}else{n=m&255;if(!(m<<24>>24))break;else{l=0;m=0}do{Ja=e+565+(t*17|0)+m|0;a[Ja>>0]=(d[Ja>>0]|0)+(d[s+m>>0]|0)&7;l=l+1<<24>>24;m=l<<24>>24}while((m|0)<(n|0))}}while(0);m=u+1<<24>>24;l=a[Ka>>0]|0;if((m&255)<(l&255)){u=m;t=m&255}else break}if(!(l<<24>>24))ea=24}else ea=24;else{a[Ka>>0]=0;ea=24}do if((ea|0)==24){a[Ka>>0]=1;if(!(a[e>>0]|0)){n=e+140|0;m=n+34|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(m|0))}else{a[e+140>>0]=a[e+38>>0]|0;a[e+141>>0]=a[e+39>>0]|0;a[e+142>>0]=a[e+40>>0]|0;a[e+143>>0]=a[e+41>>0]|0;a[e+144>>0]=a[e+42>>0]|0;a[e+145>>0]=a[e+43>>0]|0;a[e+146>>0]=a[e+44>>0]|0;a[e+147>>0]=a[e+45>>0]|0;a[e+148>>0]=a[e+46>>0]|0;a[e+149>>0]=a[e+47>>0]|0;a[e+150>>0]=a[e+48>>0]|0;a[e+151>>0]=a[e+49>>0]|0;a[e+152>>0]=a[e+50>>0]|0;a[e+153>>0]=a[e+51>>0]|0;a[e+154>>0]=a[e+52>>0]|0;a[e+155>>0]=a[e+53>>0]|0;a[e+156>>0]=a[e+54>>0]|0;a[e+157>>0]=a[e+55>>0]|0;a[e+158>>0]=a[e+56>>0]|0;a[e+159>>0]=a[e+57>>0]|0;a[e+160>>0]=a[e+58>>0]|0;a[e+161>>0]=a[e+59>>0]|0;a[e+162>>0]=a[e+60>>0]|0;a[e+163>>0]=a[e+61>>0]|0;a[e+164>>0]=a[e+62>>0]|0;a[e+165>>0]=a[e+63>>0]|0;a[e+166>>0]=a[e+64>>0]|0;a[e+167>>0]=a[e+65>>0]|0;a[e+168>>0]=a[e+66>>0]|0;a[e+169>>0]=a[e+67>>0]|0;a[e+170>>0]=a[e+68>>0]|0;a[e+171>>0]=a[e+69>>0]|0;a[e+172>>0]=a[e+70>>0]|0;a[e+173>>0]=a[e+71>>0]|0}if(!(a[e+1>>0]|0)){n=e+310|0;m=n+34|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(m|0))}else{a[e+310>>0]=a[e+72>>0]|0;a[e+311>>0]=a[e+73>>0]|0;a[e+312>>0]=a[e+74>>0]|0;a[e+313>>0]=a[e+75>>0]|0;a[e+314>>0]=a[e+76>>0]|0;a[e+315>>0]=a[e+77>>0]|0;a[e+316>>0]=a[e+78>>0]|0;a[e+317>>0]=a[e+79>>0]|0;a[e+318>>0]=a[e+80>>0]|0;a[e+319>>0]=a[e+81>>0]|0;a[e+320>>0]=a[e+82>>0]|0;a[e+321>>0]=a[e+83>>0]|0;a[e+322>>0]=a[e+84>>0]|0;a[e+323>>0]=a[e+85>>0]|0;a[e+324>>0]=a[e+86>>0]|0;a[e+325>>0]=a[e+87>>0]|0;a[e+326>>0]=a[e+88>>0]|0;a[e+327>>0]=a[e+89>>0]|0;a[e+328>>0]=a[e+90>>0]|0;a[e+329>>0]=a[e+91>>0]|0;a[e+330>>0]=a[e+92>>0]|0;a[e+331>>0]=a[e+93>>0]|0;a[e+332>>0]=a[e+94>>0]|0;a[e+333>>0]=a[e+95>>0]|0;a[e+334>>0]=a[e+96>>0]|0;a[e+335>>0]=a[e+97>>0]|0;a[e+336>>0]=a[e+98>>0]|0;a[e+337>>0]=a[e+99>>0]|0;a[e+338>>0]=a[e+100>>0]|0;a[e+339>>0]=a[e+101>>0]|0;a[e+340>>0]=a[e+102>>0]|0;a[e+341>>0]=a[e+103>>0]|0;a[e+342>>0]=a[e+104>>0]|0;a[e+343>>0]=a[e+105>>0]|0}if(!(a[e+26>>0]|0)){j=e+565|0;n=e+480|0;m=n+17|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(m|0));n=j;m=n+17|0;do{a[n>>0]=0;n=n+1|0}while((n|0)<(m|0));k=e+123|0;j=e+106|0;break}else{j=e+106|0;a[e+480>>0]=a[j>>0]|0;k=e+123|0;a[e+565>>0]=a[k>>0]|0;a[e+481>>0]=a[e+107>>0]|0;a[e+566>>0]=a[e+124>>0]|0;a[e+482>>0]=a[e+108>>0]|0;a[e+567>>0]=a[e+125>>0]|0;a[e+483>>0]=a[e+109>>0]|0;a[e+568>>0]=a[e+126>>0]|0;a[e+484>>0]=a[e+110>>0]|0;a[e+569>>0]=a[e+127>>0]|0;a[e+485>>0]=a[e+111>>0]|0;a[e+570>>0]=a[e+128>>0]|0;a[e+486>>0]=a[e+112>>0]|0;a[e+571>>0]=a[e+129>>0]|0;a[e+487>>0]=a[e+113>>0]|0;a[e+572>>0]=a[e+130>>0]|0;a[e+488>>0]=a[e+114>>0]|0;a[e+573>>0]=a[e+131>>0]|0;a[e+489>>0]=a[e+115>>0]|0;a[e+574>>0]=a[e+132>>0]|0;a[e+490>>0]=a[e+116>>0]|0;a[e+575>>0]=a[e+133>>0]|0;a[e+491>>0]=a[e+117>>0]|0;a[e+576>>0]=a[e+134>>0]|0;a[e+492>>0]=a[e+118>>0]|0;a[e+577>>0]=a[e+135>>0]|0;a[e+493>>0]=a[e+119>>0]|0;a[e+578>>0]=a[e+136>>0]|0;a[e+494>>0]=a[e+120>>0]|0;a[e+579>>0]=a[e+137>>0]|0;a[e+495>>0]=a[e+121>>0]|0;a[e+580>>0]=a[e+138>>0]|0;a[e+496>>0]=a[e+122>>0]|0;a[e+581>>0]=a[e+139>>0]|0;break}}while(0);Ja=(d[Ka>>0]|0)+-1|0;a[e+38>>0]=a[e+140+(Ja*34|0)>>0]|0;a[e+39>>0]=a[e+140+(Ja*34|0)+1>>0]|0;a[e+40>>0]=a[e+140+(Ja*34|0)+2>>0]|0;a[e+41>>0]=a[e+140+(Ja*34|0)+3>>0]|0;a[e+42>>0]=a[e+140+(Ja*34|0)+4>>0]|0;a[e+43>>0]=a[e+140+(Ja*34|0)+5>>0]|0;a[e+44>>0]=a[e+140+(Ja*34|0)+6>>0]|0;a[e+45>>0]=a[e+140+(Ja*34|0)+7>>0]|0;a[e+46>>0]=a[e+140+(Ja*34|0)+8>>0]|0;a[e+47>>0]=a[e+140+(Ja*34|0)+9>>0]|0;a[e+48>>0]=a[e+140+(Ja*34|0)+10>>0]|0;a[e+49>>0]=a[e+140+(Ja*34|0)+11>>0]|0;a[e+50>>0]=a[e+140+(Ja*34|0)+12>>0]|0;a[e+51>>0]=a[e+140+(Ja*34|0)+13>>0]|0;a[e+52>>0]=a[e+140+(Ja*34|0)+14>>0]|0;a[e+53>>0]=a[e+140+(Ja*34|0)+15>>0]|0;a[e+54>>0]=a[e+140+(Ja*34|0)+16>>0]|0;a[e+55>>0]=a[e+140+(Ja*34|0)+17>>0]|0;a[e+56>>0]=a[e+140+(Ja*34|0)+18>>0]|0;a[e+57>>0]=a[e+140+(Ja*34|0)+19>>0]|0;a[e+58>>0]=a[e+140+(Ja*34|0)+20>>0]|0;a[e+59>>0]=a[e+140+(Ja*34|0)+21>>0]|0;a[e+60>>0]=a[e+140+(Ja*34|0)+22>>0]|0;a[e+61>>0]=a[e+140+(Ja*34|0)+23>>0]|0;a[e+62>>0]=a[e+140+(Ja*34|0)+24>>0]|0;a[e+63>>0]=a[e+140+(Ja*34|0)+25>>0]|0;a[e+64>>0]=a[e+140+(Ja*34|0)+26>>0]|0;a[e+65>>0]=a[e+140+(Ja*34|0)+27>>0]|0;a[e+66>>0]=a[e+140+(Ja*34|0)+28>>0]|0;a[e+67>>0]=a[e+140+(Ja*34|0)+29>>0]|0;a[e+68>>0]=a[e+140+(Ja*34|0)+30>>0]|0;a[e+69>>0]=a[e+140+(Ja*34|0)+31>>0]|0;a[e+70>>0]=a[e+140+(Ja*34|0)+32>>0]|0;a[e+71>>0]=a[e+140+(Ja*34|0)+33>>0]|0;Ja=(d[Ka>>0]|0)+-1|0;a[e+72>>0]=a[e+310+(Ja*34|0)>>0]|0;a[e+73>>0]=a[e+310+(Ja*34|0)+1>>0]|0;a[e+74>>0]=a[e+310+(Ja*34|0)+2>>0]|0;a[e+75>>0]=a[e+310+(Ja*34|0)+3>>0]|0;a[e+76>>0]=a[e+310+(Ja*34|0)+4>>0]|0;a[e+77>>0]=a[e+310+(Ja*34|0)+5>>0]|0;a[e+78>>0]=a[e+310+(Ja*34|0)+6>>0]|0;a[e+79>>0]=a[e+310+(Ja*34|0)+7>>0]|0;a[e+80>>0]=a[e+310+(Ja*34|0)+8>>0]|0;a[e+81>>0]=a[e+310+(Ja*34|0)+9>>0]|0;a[e+82>>0]=a[e+310+(Ja*34|0)+10>>0]|0;a[e+83>>0]=a[e+310+(Ja*34|0)+11>>0]|0;a[e+84>>0]=a[e+310+(Ja*34|0)+12>>0]|0;a[e+85>>0]=a[e+310+(Ja*34|0)+13>>0]|0;a[e+86>>0]=a[e+310+(Ja*34|0)+14>>0]|0;a[e+87>>0]=a[e+310+(Ja*34|0)+15>>0]|0;a[e+88>>0]=a[e+310+(Ja*34|0)+16>>0]|0;a[e+89>>0]=a[e+310+(Ja*34|0)+17>>0]|0;a[e+90>>0]=a[e+310+(Ja*34|0)+18>>0]|0;a[e+91>>0]=a[e+310+(Ja*34|0)+19>>0]|0;a[e+92>>0]=a[e+310+(Ja*34|0)+20>>0]|0;a[e+93>>0]=a[e+310+(Ja*34|0)+21>>0]|0;a[e+94>>0]=a[e+310+(Ja*34|0)+22>>0]|0;a[e+95>>0]=a[e+310+(Ja*34|0)+23>>0]|0;a[e+96>>0]=a[e+310+(Ja*34|0)+24>>0]|0;a[e+97>>0]=a[e+310+(Ja*34|0)+25>>0]|0;a[e+98>>0]=a[e+310+(Ja*34|0)+26>>0]|0;a[e+99>>0]=a[e+310+(Ja*34|0)+27>>0]|0;a[e+100>>0]=a[e+310+(Ja*34|0)+28>>0]|0;a[e+101>>0]=a[e+310+(Ja*34|0)+29>>0]|0;a[e+102>>0]=a[e+310+(Ja*34|0)+30>>0]|0;a[e+103>>0]=a[e+310+(Ja*34|0)+31>>0]|0;a[e+104>>0]=a[e+310+(Ja*34|0)+32>>0]|0;a[e+105>>0]=a[e+310+(Ja*34|0)+33>>0]|0;Ja=(d[Ka>>0]|0)+-1|0;a[j>>0]=a[e+480+(Ja*17|0)>>0]|0;a[k>>0]=a[e+565+(Ja*17|0)>>0]|0;a[e+107>>0]=a[e+480+(Ja*17|0)+1>>0]|0;a[e+124>>0]=a[e+565+(Ja*17|0)+1>>0]|0;a[e+108>>0]=a[e+480+(Ja*17|0)+2>>0]|0;a[e+125>>0]=a[e+565+(Ja*17|0)+2>>0]|0;a[e+109>>0]=a[e+480+(Ja*17|0)+3>>0]|0;a[e+126>>0]=a[e+565+(Ja*17|0)+3>>0]|0;a[e+110>>0]=a[e+480+(Ja*17|0)+4>>0]|0;a[e+127>>0]=a[e+565+(Ja*17|0)+4>>0]|0;a[e+111>>0]=a[e+480+(Ja*17|0)+5>>0]|0;a[e+128>>0]=a[e+565+(Ja*17|0)+5>>0]|0;a[e+112>>0]=a[e+480+(Ja*17|0)+6>>0]|0;a[e+129>>0]=a[e+565+(Ja*17|0)+6>>0]|0;a[e+113>>0]=a[e+480+(Ja*17|0)+7>>0]|0;a[e+130>>0]=a[e+565+(Ja*17|0)+7>>0]|0;a[e+114>>0]=a[e+480+(Ja*17|0)+8>>0]|0;a[e+131>>0]=a[e+565+(Ja*17|0)+8>>0]|0;a[e+115>>0]=a[e+480+(Ja*17|0)+9>>0]|0;a[e+132>>0]=a[e+565+(Ja*17|0)+9>>0]|0;a[e+116>>0]=a[e+480+(Ja*17|0)+10>>0]|0;a[e+133>>0]=a[e+565+(Ja*17|0)+10>>0]|0;a[e+117>>0]=a[e+480+(Ja*17|0)+11>>0]|0;a[e+134>>0]=a[e+565+(Ja*17|0)+11>>0]|0;a[e+118>>0]=a[e+480+(Ja*17|0)+12>>0]|0;a[e+135>>0]=a[e+565+(Ja*17|0)+12>>0]|0;a[e+119>>0]=a[e+480+(Ja*17|0)+13>>0]|0;a[e+136>>0]=a[e+565+(Ja*17|0)+13>>0]|0;a[e+120>>0]=a[e+480+(Ja*17|0)+14>>0]|0;a[e+137>>0]=a[e+565+(Ja*17|0)+14>>0]|0;a[e+121>>0]=a[e+480+(Ja*17|0)+15>>0]|0;a[e+138>>0]=a[e+565+(Ja*17|0)+15>>0]|0;a[e+122>>0]=a[e+480+(Ja*17|0)+16>>0]|0;a[e+139>>0]=a[e+565+(Ja*17|0)+16>>0]|0;a[P>>0]=0;Ja=(a[e+8>>0]|0)==0;Ca=e+10|0;a[Ca>>0]=0;k=a[Ka>>0]|0;m=k&255;if(!Ja){q=e+725|0;if((d[e+10+m>>0]|0)<(d[q>>0]|0)){j=m+-1|0;k=0;do{a[e+140+(m*34|0)+k>>0]=a[e+140+(j*34|0)+k>>0]|0;a[e+310+(m*34|0)+k>>0]=a[e+310+(j*34|0)+k>>0]|0;k=k+1|0}while((k|0)!=34);j=a[Ka>>0]|0;Ja=j&255;Ia=Ja+-1|0;a[e+480+(Ja*17|0)>>0]=a[e+480+(Ia*17|0)>>0]|0;a[e+565+(Ja*17|0)>>0]=a[e+565+(Ia*17|0)>>0]|0;a[e+480+(Ja*17|0)+1>>0]=a[e+480+(Ia*17|0)+1>>0]|0;a[e+565+(Ja*17|0)+1>>0]=a[e+565+(Ia*17|0)+1>>0]|0;a[e+480+(Ja*17|0)+2>>0]=a[e+480+(Ia*17|0)+2>>0]|0;a[e+565+(Ja*17|0)+2>>0]=a[e+565+(Ia*17|0)+2>>0]|0;a[e+480+(Ja*17|0)+3>>0]=a[e+480+(Ia*17|0)+3>>0]|0;a[e+565+(Ja*17|0)+3>>0]=a[e+565+(Ia*17|0)+3>>0]|0;a[e+480+(Ja*17|0)+4>>0]=a[e+480+(Ia*17|0)+4>>0]|0;a[e+565+(Ja*17|0)+4>>0]=a[e+565+(Ia*17|0)+4>>0]|0;a[e+480+(Ja*17|0)+5>>0]=a[e+480+(Ia*17|0)+5>>0]|0;a[e+565+(Ja*17|0)+5>>0]=a[e+565+(Ia*17|0)+5>>0]|0;a[e+480+(Ja*17|0)+6>>0]=a[e+480+(Ia*17|0)+6>>0]|0;a[e+565+(Ja*17|0)+6>>0]=a[e+565+(Ia*17|0)+6>>0]|0;a[e+480+(Ja*17|0)+7>>0]=a[e+480+(Ia*17|0)+7>>0]|0;a[e+565+(Ja*17|0)+7>>0]=a[e+565+(Ia*17|0)+7>>0]|0;a[e+480+(Ja*17|0)+8>>0]=a[e+480+(Ia*17|0)+8>>0]|0;a[e+565+(Ja*17|0)+8>>0]=a[e+565+(Ia*17|0)+8>>0]|0;a[e+480+(Ja*17|0)+9>>0]=a[e+480+(Ia*17|0)+9>>0]|0;a[e+565+(Ja*17|0)+9>>0]=a[e+565+(Ia*17|0)+9>>0]|0;a[e+480+(Ja*17|0)+10>>0]=a[e+480+(Ia*17|0)+10>>0]|0;a[e+565+(Ja*17|0)+10>>0]=a[e+565+(Ia*17|0)+10>>0]|0;a[e+480+(Ja*17|0)+11>>0]=a[e+480+(Ia*17|0)+11>>0]|0;a[e+565+(Ja*17|0)+11>>0]=a[e+565+(Ia*17|0)+11>>0]|0;a[e+480+(Ja*17|0)+12>>0]=a[e+480+(Ia*17|0)+12>>0]|0;a[e+565+(Ja*17|0)+12>>0]=a[e+565+(Ia*17|0)+12>>0]|0;a[e+480+(Ja*17|0)+13>>0]=a[e+480+(Ia*17|0)+13>>0]|0;a[e+565+(Ja*17|0)+13>>0]=a[e+565+(Ia*17|0)+13>>0]|0;a[e+480+(Ja*17|0)+14>>0]=a[e+480+(Ia*17|0)+14>>0]|0;a[e+565+(Ja*17|0)+14>>0]=a[e+565+(Ia*17|0)+14>>0]|0;a[e+480+(Ja*17|0)+15>>0]=a[e+480+(Ia*17|0)+15>>0]|0;a[e+565+(Ja*17|0)+15>>0]=a[e+565+(Ia*17|0)+15>>0]|0;a[e+480+(Ja*17|0)+16>>0]=a[e+480+(Ia*17|0)+16>>0]|0;a[e+565+(Ja*17|0)+16>>0]=a[e+565+(Ia*17|0)+16>>0]|0;j=j+1<<24>>24;a[Ka>>0]=j;a[(j&255)+(e+10)>>0]=a[q>>0]|0}else j=k;if((j&255)>1){l=j&255;n=1;do{j=n-l+(d[q>>0]|0)|0;m=e+10+n|0;k=d[m>>0]|0;if((j<<24>>24|0)>=(k|0)){j=(d[n+-1+(e+10)>>0]|0)+1|0;if((j<<24>>24|0)>(k|0))ea=45}else ea=45;if((ea|0)==45){ea=0;a[m>>0]=j}n=n+1|0}while((n|0)!=(l|0))}}else{l=e+725|0;j=a[l>>0]|0;if((k&255)>1?(a[e+11>>0]=(j&255)/(k&255)|0,k<<24>>24!=2):0){k=2;do{a[e+10+k>>0]=((w(k,j&255)|0)>>>0)/(m>>>0)|0;k=k+1|0;j=a[l>>0]|0}while(k>>>0<m>>>0)}a[e+10+m>>0]=j}Ja=e+724|0;j=a[Ja>>0]|0;do if(!(j<<24>>24)){t=3;s=20;q=10;n=22;m=105756;l=121287;k=e+732|0;j=0}else{k=a[Ka>>0]|0;if(k<<24>>24){m=e+4|0;n=e+27|0;l=a[e+3>>0]|0;k=k&255;b:do if(l<<24>>24==2){j=0;while(1){switch(a[m>>0]|0){case 5:case 2:break;default:{Ia=e+310+(j*34|0)+1|0;fl(Ia|0,(((a[Ia>>0]|0)+(a[e+310+(j*34|0)>>0]|0)|0)/2|0)&255|0,33)|0}}switch(a[n>>0]|0){case 5:case 2:break;default:{Ia=e+480+(j*17|0)+1|0;fl(Ia|0,(((a[Ia>>0]|0)+(a[e+480+(j*17|0)>>0]|0)|0)/2|0)&255|0,16)|0;Ia=e+565+(j*17|0)+1|0;fl(Ia|0,(((a[Ia>>0]|0)+(a[e+565+(j*17|0)>>0]|0)|0)/2|0)&255|0,16)|0}}j=j+1|0;if((j|0)==(k|0))break b}}else{j=0;while(1){switch(l<<24>>24){case 5:case 2:break;default:{Ia=e+140+(j*34|0)+1|0;fl(Ia|0,(((a[Ia>>0]|0)+(a[e+140+(j*34|0)>>0]|0)|0)/2|0)&255|0,33)|0}}switch(a[m>>0]|0){case 5:case 2:break;default:{Ia=e+310+(j*34|0)+1|0;fl(Ia|0,(((a[Ia>>0]|0)+(a[e+310+(j*34|0)>>0]|0)|0)/2|0)&255|0,33)|0}}switch(a[n>>0]|0){case 5:case 2:break;default:{Ia=e+480+(j*17|0)+1|0;fl(Ia|0,(((a[Ia>>0]|0)+(a[e+480+(j*17|0)>>0]|0)|0)/2|0)&255|0,16)|0;Ia=e+565+(j*17|0)+1|0;fl(Ia|0,(((a[Ia>>0]|0)+(a[e+565+(j*17|0)>>0]|0)|0)/2|0)&255|0,16)|0}}j=j+1|0;if((j|0)==(k|0))break b}}while(0);j=a[Ja>>0]|0;k=e+732|0;if(!(j<<24>>24)){t=3;s=20;q=10;n=22;m=105756;l=121287;j=0;break}}else k=e+732|0;t=5;s=34;q=32;n=50;m=105656;l=121236}while(0);c[k>>2]=l;Ia=e+736|0;c[Ia>>2]=m;Ha=e+726|0;a[Ha>>0]=n;Ga=e+727|0;a[Ga>>0]=q;fa=e+728|0;a[fa>>0]=s;Ba=e+730|0;a[Ba>>0]=t;Fa=e+720|0;z=c[Fa>>2]|0;A=a[e+725>>0]|0;P=j<<24>>24!=0;B=P?z+4|0:z+1|0;C=P?5:3;H=z+12|0;I=z+16|0;J=z+20|0;P=P?94208:94236;_=P+24|0;$=P+20|0;aa=P+16|0;ba=P+4|0;ca=P+12|0;da=P+8|0;t=0;x=0;s=0;while(1){n=c[H>>2]|0;l=c[(c[I>>2]|0)+(s<<2)>>2]|0;m=n+96|0;do{c[n>>2]=c[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(m|0));l=a[z>>0]|0;q=c[H>>2]|0;if(!(l<<24>>24))l=0;else{m=l&255;n=0;do{va=n+6|0;Aa=n+12|0;c[q+(Aa<<3)>>2]=c[g+(va<<9)+(s<<3)>>2];c[q+(Aa<<3)+4>>2]=c[g+(va<<9)+(s<<3)+4>>2];n=n+1|0}while((n|0)!=(m|0))}n=c[(c[I>>2]|0)+(s<<2)>>2]|0;l=q+((l&255)<<3)|0;m=n+96|0;do{c[n>>2]=c[l>>2];n=n+4|0;l=l+4|0}while((n|0)<(m|0));v=B+s|0;l=a[v>>0]|0;Aa=(l&255)+-2|0;switch(Aa>>>1|Aa<<31|0){case 0:{m=a[z>>0]|0;n=c[H>>2]|0;q=c[J>>2]|0;if(!(m<<24>>24))ea=85;else{m=m&255;l=0;do{ja=l+12|0;T=(+f[n+(l<<3)>>2]+ +f[n+(ja<<3)>>2])*0.0;Aa=l;l=l+1|0;ka=Aa+11|0;U=(+f[n+(l<<3)>>2]+ +f[n+(ka<<3)>>2])*.018994875252246857;la=Aa+2|0;ma=Aa+10|0;V=(+f[n+(la<<3)>>2]+ +f[n+(ma<<3)>>2])*0.0;pa=Aa+3|0;qa=Aa+9|0;W=(+f[n+(pa<<3)>>2]+ +f[n+(qa<<3)>>2])*-.07293139398097992;ra=Aa+4|0;sa=Aa+8|0;X=(+f[n+(ra<<3)>>2]+ +f[n+(sa<<3)>>2])*0.0;ta=Aa+5|0;ua=Aa+7|0;Y=(+f[n+(ta<<3)>>2]+ +f[n+(ua<<3)>>2])*.305966317653656;va=Aa+6|0;S=+f[n+(va<<3)>>2]*.5;na=(+f[n+(Aa<<3)+4>>2]+ +f[n+(ja<<3)+4>>2])*0.0;oa=(+f[n+(l<<3)+4>>2]+ +f[n+(ka<<3)+4>>2])*.018994875252246857;wa=(+f[n+(la<<3)+4>>2]+ +f[n+(ma<<3)+4>>2])*0.0;xa=(+f[n+(pa<<3)+4>>2]+ +f[n+(qa<<3)+4>>2])*-.07293139398097992;ya=(+f[n+(ra<<3)+4>>2]+ +f[n+(sa<<3)+4>>2])*0.0;za=(+f[n+(ta<<3)+4>>2]+ +f[n+(ua<<3)+4>>2])*.305966317653656;Z=+f[n+(va<<3)+4>>2]*.5;Aa=c[q+(Aa<<2)>>2]|0;f[Aa>>2]=S+(T+U+V+W+X+Y);f[Aa+4>>2]=Z+(na+oa+wa+xa+ya+za);f[Aa+8>>2]=S+(T-U+V-W+X-Y);f[Aa+12>>2]=Z+(na-oa+wa-xa+ya-za)}while((l|0)!=(m|0));ea=83}break}case 1:{m=a[z>>0]|0;n=c[H>>2]|0;q=c[J>>2]|0;if(!(m<<24>>24))ea=85;else{m=m&255;l=0;do{ua=l+2|0;va=l+10|0;ta=l+6|0;X=+f[n+(ta<<3)>>2]*.25-(+f[n+(ua<<3)>>2]+ +f[n+(va<<3)>>2])*0.0;Aa=l;l=l+1|0;O=+f[n+(l<<3)>>2];ja=Aa+11|0;Q=+f[n+(ja<<3)>>2];ka=Aa+3|0;R=+f[n+(ka<<3)>>2];la=Aa+9|0;S=+f[n+(la<<3)>>2];ma=Aa+5|0;za=+f[n+(ma<<3)>>2];pa=Aa+7|0;xa=+f[n+(pa<<3)>>2];Y=((R+S)*.07778724282979965-(O+Q)*.04871498420834541-(za+xa)*.23279856145381927)*-.7071067690849304;qa=Aa+12|0;ra=Aa+4|0;sa=Aa+8|0;na=(+f[n+(Aa<<3)+4>>2]-+f[n+(qa<<3)+4>>2])*-.059082113206386566-(+f[n+(ra<<3)+4>>2]-+f[n+(sa<<3)+4>>2])*.16486303508281708;V=+f[n+(l<<3)+4>>2];W=+f[n+(ja<<3)+4>>2];T=+f[n+(ka<<3)+4>>2];U=+f[n+(la<<3)+4>>2];Z=+f[n+(ma<<3)+4>>2];wa=+f[n+(pa<<3)+4>>2];oa=((V-W)*-.04871498420834541-(T-U)*.07778724282979965-(Z-wa)*.23279856145381927)*.7071067690849304;ya=(+f[n+(Aa<<3)>>2]-+f[n+(qa<<3)>>2])*-.059082113206386566-(+f[n+(ra<<3)>>2]-+f[n+(sa<<3)>>2])*.16486303508281708;xa=((O-Q)*-.04871498420834541-(R-S)*.07778724282979965-(za-xa)*.23279856145381927)*.7071067690849304;za=+f[n+(ta<<3)+4>>2]*.25-(+f[n+(ua<<3)+4>>2]+ +f[n+(va<<3)+4>>2])*0.0;wa=((T+U)*.07778724282979965-(V+W)*.04871498420834541-(Z+wa)*.23279856145381927)*-.7071067690849304;Z=X+Y;Aa=c[q+(Aa<<2)>>2]|0;f[Aa>>2]=Z+na+oa;f[Aa+4>>2]=wa+(-ya-xa+za);Y=X-Y;f[Aa+8>>2]=Y-na+oa;f[Aa+12>>2]=ya-xa+za-wa;f[Aa+16>>2]=Y+na-oa;f[Aa+20>>2]=xa-ya+za-wa;f[Aa+24>>2]=Z-na-oa;f[Aa+28>>2]=wa+(xa+ya+za)}while((l|0)!=(m|0));ea=83}break}case 3:{m=a[z>>0]|0;n=c[H>>2]|0;q=c[J>>2]|0;if(!(m<<24>>24))ea=85;else{m=m&255;o=+f[_>>2];p=+f[$>>2];y=+f[P>>2];D=+f[aa>>2];E=+f[ba>>2];F=+f[ca>>2];G=+f[da>>2];l=0;do{Ua=l+6|0;ya=o*+f[n+(Ua<<3)>>2];Ta=l+5|0;ja=n+(Ta<<3)|0;Sa=l+7|0;ia=n+(Sa<<3)|0;xa=p*(+f[ja>>2]+ +f[ia>>2]);la=n+(l<<3)|0;Oa=l+12|0;ka=n+(Oa<<3)|0;Ra=l+4|0;pa=n+(Ra<<3)|0;Qa=l+8|0;ma=n+(Qa<<3)|0;na=D*(+f[pa>>2]+ +f[ma>>2])-y*(+f[la>>2]+ +f[ka>>2]);Aa=l;l=l+1|0;ra=n+(l<<3)|0;ha=Aa+11|0;qa=n+(ha<<3)|0;s=Aa+3|0;ta=n+(s<<3)|0;u=Aa+9|0;sa=n+(u<<3)|0;za=F*(+f[ta>>2]+ +f[sa>>2])-E*(+f[ra>>2]+ +f[qa>>2]);Sa=n+(Sa<<3)+4|0;Ta=n+(Ta<<3)+4|0;oa=p*(+f[Sa>>2]-+f[Ta>>2]);Oa=n+(Oa<<3)+4|0;Pa=n+(Aa<<3)+4|0;Qa=n+(Qa<<3)+4|0;Ra=n+(Ra<<3)+4|0;Y=y*(+f[Oa>>2]-+f[Pa>>2])+D*(+f[Qa>>2]-+f[Ra>>2]);ha=n+(ha<<3)+4|0;ea=n+(l<<3)+4|0;u=n+(u<<3)+4|0;s=n+(s<<3)+4|0;wa=E*(+f[ha>>2]-+f[ea>>2])+F*(+f[u>>2]-+f[s>>2]);ua=Aa+10|0;va=Aa+2|0;Z=G*(+f[n+(ua<<3)+4>>2]-+f[n+(va<<3)+4>>2]);V=ya-Z;U=xa-wa;W=za-oa;T=(na-Y)*.7071067690849304;X=V-T;V=T+V;T=(W+U)*-.9238795042037964;U=U*1.3065630197525024+T;T=W*-.5411961078643799-T;Aa=q+(Aa<<2)|0;Va=c[Aa>>2]|0;f[Va+56>>2]=V+T;f[Va+40>>2]=X-U;f[Va+24>>2]=V-T;f[Va+8>>2]=X+U;Z=ya+Z;wa=xa+wa;oa=za+oa;Y=(na+Y)*.7071067690849304;na=Z-Y;Z=Y+Z;Y=(oa+wa)*-.9238795042037964;wa=wa*1.3065630197525024+Y;Y=oa*-.5411961078643799-Y;f[Va+48>>2]=na+wa;f[Va+32>>2]=Z-Y;f[Va+16>>2]=na-wa;f[Va>>2]=Z+Y;Y=o*+f[n+(Ua<<3)+4>>2];Z=p*(+f[Ta>>2]+ +f[Sa>>2]);wa=D*(+f[Ra>>2]+ +f[Qa>>2])-y*(+f[Pa>>2]+ +f[Oa>>2]);na=F*(+f[s>>2]+ +f[u>>2])-E*(+f[ea>>2]+ +f[ha>>2]);oa=p*(+f[ia>>2]-+f[ja>>2]);za=y*(+f[ka>>2]-+f[la>>2])+D*(+f[ma>>2]-+f[pa>>2]);xa=E*(+f[qa>>2]-+f[ra>>2])+F*(+f[sa>>2]-+f[ta>>2]);ya=G*(+f[n+(ua<<3)>>2]-+f[n+(va<<3)>>2]);U=Y+ya;X=Z+xa;T=na+oa;V=(wa+za)*.7071067690849304;W=U-V;U=V+U;V=(T+X)*-.9238795042037964;X=X*1.3065630197525024+V;V=T*-.5411961078643799-V;Aa=c[Aa>>2]|0;f[Aa+60>>2]=U+V;f[Aa+44>>2]=W-X;f[Aa+28>>2]=U-V;f[Aa+12>>2]=W+X;ya=Y-ya;xa=Z-xa;oa=na-oa;za=(wa-za)*.7071067690849304;wa=ya-za;ya=za+ya;za=(oa+xa)*-.9238795042037964;xa=xa*1.3065630197525024+za;za=oa*-.5411961078643799-za;f[Aa+52>>2]=wa+xa;f[Aa+36>>2]=ya-za;f[Aa+20>>2]=wa-xa;f[Aa+4>>2]=ya+za}while((l|0)!=(m|0));ea=83}break}case 5:{m=a[z>>0]|0;n=c[H>>2]|0;q=c[J>>2]|0;if(!(m<<24>>24))ea=85;else{m=m&255;l=0;do{Ua=l+6|0;N=+f[n+(Ua<<3)>>2]*.0833333358168602;Va=l+12|0;V=+f[n+(Ua<<3)+4>>2]*.0833333358168602;p=(+f[n+(l<<3)>>2]-+f[n+(Va<<3)>>2])*.040811799466609955;X=(+f[n+(l<<3)+4>>2]-+f[n+(Va<<3)+4>>2])*.040811799466609955;Va=l;l=l+1|0;y=+f[n+(l<<3)>>2];Ua=Va+11|0;Wa=+f[n+(Ua<<3)>>2];W=(y+Wa)*.03812811151146889;S=+f[n+(l<<3)+4>>2];Ya=+f[n+(Ua<<3)+4>>2];_a=(S+Ya)*.03812811151146889;Wa=(y-Wa)*.03812811151146889;Ya=(S-Ya)*.03812811151146889;Ua=Va+2|0;S=+f[n+(Ua<<3)>>2];Ta=Va+10|0;y=+f[n+(Ta<<3)>>2];wa=(S+y)*.05144908279180527;R=+f[n+(Ua<<3)+4>>2];G=+f[n+(Ta<<3)+4>>2];ya=(R+G)*.05144908279180527;Ta=Va+3|0;o=+f[n+(Ta<<3)>>2];Ua=Va+9|0;D=+f[n+(Ua<<3)>>2];Xa=+f[n+(Ta<<3)+4>>2];O=+f[n+(Ua<<3)+4>>2];Ua=Va+4|0;Q=+f[n+(Ua<<3)>>2];Ta=Va+8|0;Za=+f[n+(Ta<<3)>>2];T=+f[n+(Ua<<3)+4>>2];F=+f[n+(Ta<<3)+4>>2];za=(Q-Za)*.07428313791751862;xa=(T-F)*.07428313791751862;Ta=Va+5|0;K=+f[n+(Ta<<3)>>2];Ua=Va+7|0;na=+f[n+(Ua<<3)>>2];Y=(K+na)*.08100347965955734;M=+f[n+(Ta<<3)+4>>2];Z=+f[n+(Ua<<3)+4>>2];oa=(M+Z)*.08100347965955734;na=(K-na)*.08100347965955734;Z=(M-Z)*.08100347965955734;M=(o+D)*.06399831175804138*.7071067690849304;K=N+M;M=N-M;N=(Y-W)*.7071067690849304;Za=wa*.5+(Q+Za)*.07428313791751862*.8660253882408142;Q=Za-wa;Y=W*.258819043636322+Y*.9659258127212524;W=Y-N;L=Za+(K+Y);E=M+N-wa;U=M+W-Q;Q=K-W-Q;wa=K-N-wa;Y=Za+(M-Y);M=(Xa+O)*.06399831175804138*.7071067690849304;Za=V+M;M=V-M;V=(oa-_a)*.7071067690849304;F=ya*.5+(T+F)*.07428313791751862*.8660253882408142;T=F-ya;oa=_a*.258819043636322+oa*.9659258127212524;_a=oa-V;N=F+(Za+oa);K=M+V-ya;W=M+_a-T;T=Za-_a-T;ya=Za-V-ya;oa=F+(M-oa);O=(Xa-O)*.06399831175804138*.7071067690849304;Xa=X+O;O=X-O;X=(Ya-Z)*.7071067690849304;G=(R-G)*.05144908279180527*.8660253882408142+xa*.5;R=G-xa;Z=Ya*.9659258127212524+Z*.258819043636322;Ya=Z-X;M=G+(Xa+Z);F=O+X-xa;V=O+Ya-R;R=Xa-Ya-R;xa=Xa-X-xa;Z=G+(O-Z);D=(o-D)*.06399831175804138*.7071067690849304;o=p+D;D=p-D;p=(Wa-na)*.7071067690849304;y=(S-y)*.05144908279180527*.8660253882408142+za*.5;S=y-za;na=Wa*.9659258127212524+na*.258819043636322;Wa=na-p;O=y+(o+na);G=D+p-za;X=D+Wa-S;S=o-Wa-S;za=o-p-za;na=y+(D-na);Va=c[q+(Va<<2)>>2]|0;f[Va>>2]=L-M;f[Va+4>>2]=O+N;f[Va+8>>2]=E+F;f[Va+12>>2]=K-G;f[Va+80>>2]=E-F;f[Va+84>>2]=G+K;f[Va+88>>2]=L+M;f[Va+92>>2]=N-O;f[Va+16>>2]=U-V;f[Va+20>>2]=X+W;f[Va+24>>2]=Q+R;f[Va+28>>2]=T-S;f[Va+64>>2]=Q-R;f[Va+68>>2]=S+T;f[Va+72>>2]=U+V;f[Va+76>>2]=W-X;f[Va+32>>2]=wa-xa;f[Va+36>>2]=za+ya;f[Va+40>>2]=Y+Z;f[Va+44>>2]=oa-na;f[Va+48>>2]=Y-Z;f[Va+52>>2]=na+oa;f[Va+56>>2]=wa+xa;f[Va+60>>2]=ya-za}while((l|0)!=(m|0));ea=83}break}default:ea=83}do if((ea|0)==83){ea=0;l=a[z>>0]|0;if(!(l<<24>>24)){l=a[v>>0]|0;ea=85;break}m=t&255;t=a[v>>0]|0;u=l&255;n=t;l=t;t=0;do{if(!(n<<24>>24))n=0;else{q=c[(c[J>>2]|0)+(t<<2)>>2]|0;s=a[v>>0]|0;n=0;l=0;while(1){Va=l+m|0;c[La+(t<<8)+(Va<<3)>>2]=c[q+(l<<3)>>2];c[La+(t<<8)+(Va<<3)+4>>2]=c[q+(l<<3)+4>>2];l=n+1<<24>>24;if((l&255)<(s&255)){n=l;l=l&255}else{l=s;n=s;break}}}t=t+1|0}while((t|0)!=(u|0))}while(0);if((ea|0)==85)m=t&255;x=x+1<<24>>24;s=x&255;if(C>>>0<=s>>>0)break;else t=m+(l&255)&255}if(j<<24>>24==0&A<<24>>24!=0){l=A&255;j=0;do{Va=La+(j<<8)+32|0;Ua=La+(j<<8)+24|0;f[Ua>>2]=+f[Va>>2]+ +f[Ua>>2];Ua=La+(j<<8)+36|0;Ta=La+(j<<8)+28|0;f[Ta>>2]=+f[Ua>>2]+ +f[Ta>>2];f[Va>>2]=0.0;f[Ua>>2]=0.0;Ua=La+(j<<8)+40|0;Va=La+(j<<8)+16|0;f[Va>>2]=+f[Ua>>2]+ +f[Va>>2];Va=La+(j<<8)+44|0;Ta=La+(j<<8)+20|0;f[Ta>>2]=+f[Va>>2]+ +f[Ta>>2];f[Ua>>2]=0.0;f[Va>>2]=0.0;j=j+1|0}while((j|0)!=(l|0))}fl(Ea|0,0,4352)|0;Aa=(a[Ja>>0]|0)==0;fl(ga|0,0,4352)|0;Aa=Aa?94264:94360;z=a[Ha>>0]|0;H=z<<24>>24==0;if(!H){v=c[Ia>>2]|0;x=c[k>>2]|0;A=d[Ga>>0]|0;B=z&255;C=0;do{m=C>>>0<A>>>0;if(m){l=a[x+C>>0]|0;j=l;l=(l&255)+1|0}else{j=a[x+C>>0]|0;l=d[x+(C+1)>>0]|0}n=j&255;u=l&255;c:do if(u>>>0>n>>>0){Va=a[Ca>>0]|0;s=Va&255;l=a[(d[Ka>>0]|0)+(e+10)>>0]|0;t=b[v+(C<<1)>>1]&255;if((Va&255)>=(l&255))while(1){j=j+1<<24>>24;if(u>>>0<=(j&255)>>>0)break c}q=l&255;if(m){l=n;do{m=s;do{Za=+f[La+(m<<8)+(l<<3)>>2];_a=+f[La+(m<<8)+(l<<3)+4>>2];Va=ga+(m*136|0)+(t<<2)|0;f[Va>>2]=+f[Va>>2]+(Za*Za+_a*_a);m=m+1|0}while((m|0)!=(q|0));j=j+1<<24>>24;l=j&255}while(u>>>0>l>>>0)}else{l=n;do{m=s;do{Za=+f[g+(m<<9)+(l<<3)>>2];_a=+f[g+(m<<9)+(l<<3)+4>>2];Va=ga+(m*136|0)+(t<<2)|0;f[Va>>2]=+f[Va>>2]+(Za*Za+_a*_a);m=m+1|0}while((m|0)!=(q|0));j=j+1<<24>>24;l=j&255}while(u>>>0>l>>>0)}}while(0);C=C+1|0}while((C|0)!=(B|0))}j=a[fa>>0]|0;if(j<<24>>24){A=e+20076|0;B=e+20080|0;x=a[Ca>>0]|0;v=(d[Ka>>0]|0)+(e+10)|0;C=x&255;u=j&255;j=a[v>>0]|0;t=0;do{if((x&255)<(j&255)){n=e+20084+(t<<2)|0;q=e+20356+(t<<2)|0;s=e+20220+(t<<2)|0;y=+f[A>>2];m=x;o=+f[n>>2];j=C;while(1){o=y*o;f[n>>2]=o;p=+f[ga+(j*136|0)+(t<<2)>>2];if(o<p){f[n>>2]=p;o=p}_a=+f[q>>2];Ya=+f[B>>2];_a=_a+Ya*(o-p-_a);f[q>>2]=_a;Za=+f[s>>2];Za=Za+Ya*(p-Za);f[s>>2]=Za;_a=_a*1.5;f[Ea+(j*136|0)+(t<<2)>>2]=!(_a<=Za)?Za/_a:1.0;l=m+1<<24>>24;j=a[v>>0]|0;if((l&255)<(j&255)){m=l;j=l&255}else break}}t=t+1|0}while((t|0)!=(u|0))}va=e+740|0;if(H){t=0;s=0;q=e+742|0;n=0;m=e+743|0;l=0;j=e+741|0}else{ra=e+729|0;j=e+741|0;sa=e+744|0;ta=e+745|0;ua=e+746|0;q=e+742|0;m=e+743|0;t=0;qa=0;s=0;n=0;l=0;pa=0;while(1){x=a[Ga>>0]|0;u=c[k>>2]|0;if((qa&255)<(x&255)){u=a[u+pa>>0]|0;v=(u&255)+1&255}else{v=a[u+(pa+1)>>0]|0;u=a[u+pa>>0]|0}if((u&255)<(v&255)){ma=v&255;u=u&255;while(1){if((qa&255)>=(x&255)?(Da=d[Ba>>0]|0,u>>>0>Da>>>0):0){Va=Da-u<<24;o=(Va|0)<-318767104?0.0:+(Va>>24|0)*.05000000074505806+1.0}else o=1.0;K=o*.6514390707015991;L=o*.5647181272506714;G=o*.4895416498184204;t=a[va>>0]|0;s=a[j>>0]|0;n=a[q>>0]|0;l=a[m>>0]|0;v=a[Ca>>0]|0;d:do if((v&255)<(d[(d[Ka>>0]|0)+(e+10)>>0]|0)){J=Aa+(u<<3)|0;P=94616+(u*24|0)|0;_=94904+(u*24|0)|0;$=95672+(u*24|0)|0;aa=97208+(u<<3)|0;ba=e+811+u|0;ca=e+747+u|0;da=94616+(u*24|0)|0;ea=94904+(u*24|0)|0;fa=94616+(u*24|0)+8|0;ga=94904+(u*24|0)+8|0;ha=94616+(u*24|0)+16|0;ia=94904+(u*24|0)+16|0;ja=95672+(u*24|0)+16|0;ka=95672+(u*24|0)+8|0;la=95672+(u*24|0)|0;I=v;H=v&255;while(1){x=(qa&255)<(x&255);z=x?La+(H<<8)+(u<<3)|0:g+(H<<9)+(u<<3)|0;v=c[z>>2]|0;z=c[z+4>>2]|0;if(x|u>>>0<=(d[ra>>0]|0)>>>0){Va=t&255;C=x?e+8044+(Va<<8)+(u<<3)+4|0:e+876+(Va<<9)+(u<<3)+4|0;Va=x?e+8044+(Va<<8)+(u<<3)|0:e+876+(Va<<9)+(u<<3)|0;B=x?J:aa;_a=+f[Va>>2];Ya=+f[C>>2];c[Va>>2]=v;c[C>>2]=z;Za=+f[B>>2];p=+f[B+4>>2];o=_a*Za+Ya*p;p=Ya*Za-_a*p;B=(qa&255)<(d[Ga>>0]|0);C=s&255;if(B){x=(a[Ja>>0]|0)==0;v=x?P:_;x=x?da:ea;z=e+16236+(C<<8)+(u<<3)|0;A=e+16236+(C<<8)+(u<<3)+4|0}else{v=$;x=la;z=e+8556+(C<<9)+(u<<3)|0;A=e+8556+(C<<9)+(u<<3)+4|0}_a=+f[z>>2];Ya=+f[A>>2];Za=+f[x>>2];E=+f[v+4>>2];y=_a*Za+Ya*E-K*o;E=Ya*Za-_a*E-K*p;o=o+K*y;if(B){f[e+16236+(C<<8)+(u<<3)>>2]=o;v=e+16236+(C<<8)+(u<<3)|0}else{f[e+8556+(C<<9)+(u<<3)>>2]=o;v=e+8556+(C<<9)+(u<<3)|0}f[v+4>>2]=p+K*E;B=(qa&255)<(d[Ga>>0]|0);C=n&255;if(B){x=(a[Ja>>0]|0)==0;v=x?P:_;x=x?fa:ga;z=e+17516+(C<<8)+(u<<3)|0;A=e+17516+(C<<8)+(u<<3)+4|0}else{v=$;x=ka;z=e+11116+(C<<9)+(u<<3)|0;A=e+11116+(C<<9)+(u<<3)+4|0}o=+f[z>>2];Za=+f[A>>2];_a=+f[x>>2];F=+f[v+12>>2];D=o*_a+Za*F-L*y;F=Za*_a-o*F-L*E;o=y+L*D;if(B){f[e+17516+(C<<8)+(u<<3)>>2]=o;v=e+17516+(C<<8)+(u<<3)|0}else{f[e+11116+(C<<9)+(u<<3)>>2]=o;v=e+11116+(C<<9)+(u<<3)|0}f[v+4>>2]=E+L*F;B=(qa&255)<(d[Ga>>0]|0);C=l&255;if(B){x=(a[Ja>>0]|0)==0;v=x?P:_;x=x?ha:ia;z=e+18796+(C<<8)+(u<<3)|0;A=e+18796+(C<<8)+(u<<3)+4|0}else{v=$;x=ja;z=e+13676+(C<<9)+(u<<3)|0;A=e+13676+(C<<9)+(u<<3)+4|0}y=+f[z>>2];Za=+f[A>>2];_a=+f[x>>2];o=+f[v+20>>2];p=y*_a+Za*o-G*D;o=Za*_a-y*o-G*F;y=D+G*p;if(B){f[e+18796+(C<<8)+(u<<3)>>2]=y;v=e+18796+(C<<8)+(u<<3)|0}else{f[e+13676+(C<<9)+(u<<3)>>2]=y;v=e+13676+(C<<9)+(u<<3)|0}f[v+4>>2]=F+G*o}else{Ua=d[ba>>0]|0;p=+f[e+876+(Ua<<9)+(u<<3)>>2];Va=e+876+(Ua<<9)+(u<<3)+4|0;o=+f[Va>>2];c[e+876+(Ua<<9)+(u<<3)>>2]=v;c[Va>>2]=z}_a=+f[Ea+(H*136|0)+((b[(c[Ia>>2]|0)+(pa<<1)>>1]&255)<<2)>>2];Va=(qa&255)<(d[Ga>>0]|0);Ua=Va?Ma+(H<<8)+(u<<3)|0:i+(H<<9)+(u<<3)|0;f[Ua>>2]=p*_a;f[Ua+4>>2]=o*_a;t=t+1<<24>>24;t=(t&255)>1?0:t;if(!(Va|u>>>0<=(d[ra>>0]|0)>>>0)){Va=(a[ba>>0]|0)+1<<24>>24;a[ba>>0]=(Va&255)<(d[ca>>0]|0)?Va:0}s=s+1<<24>>24;s=(s&255)<(d[sa>>0]|0)?s:0;n=n+1<<24>>24;n=(n&255)<(d[ta>>0]|0)?n:0;l=l+1<<24>>24;l=(l&255)<(d[ua>>0]|0)?l:0;v=I+1<<24>>24;if((v&255)>=(d[(d[Ka>>0]|0)+(e+10)>>0]|0))break d;I=v;x=a[Ga>>0]|0;H=v&255}}while(0);u=u+1|0;if((u|0)==(ma|0))break;x=a[Ga>>0]|0}v=a[Ha>>0]|0}else v=z;u=qa+1<<24>>24;if((u&255)<(v&255)){qa=u;pa=u&255;z=v}else break}}a[va>>0]=t;a[j>>0]=s;a[q>>0]=n;a[m>>0]=l;ja=e+3|0;j=(d[ja>>0]|0)>2;ia=j?97720:97844;switch(a[e+27>>0]|0){case 3:case 0:{l=11;break}default:l=a[e+6>>0]|0}if(a[Ha>>0]|0){ka=e+4|0;fa=j?15:7;ga=e+26|0;ha=e+22092|0;ea=l&255;da=c[k>>2]|0;ca=0;O=0.0;N=0.0;M=0.0;L=0.0;K=0.0;G=0.0;F=0.0;E=0.0;D=0.0;y=0.0;p=0.0;o=0.0;J=0;while(1){if((ca&255)<(d[Ga>>0]|0))j=(d[da+J>>0]|0)+1|0;else j=d[da+(J+1)>>0]|0;if(a[Ka>>0]|0){P=b[(c[Ia>>2]|0)+(J<<1)>>1]&255;_=e+20492+(J<<3)|0;$=e+20892+(J<<3)|0;aa=e+21292+(J<<3)|0;ba=e+21692+(J<<3)|0;x=j&255;z=P>>>0<ea>>>0;A=e+20492+(J<<3)+4|0;B=e+20892+(J<<3)+4|0;C=e+21292+(J<<3)+4|0;H=e+21692+(J<<3)+4|0;I=da+J|0;v=0;na=O;s=0;while(1){if((d[ka>>0]|0)<3){j=a[e+140+(s*34|0)+P>>0]|0;k=j<<24>>24;S=+f[ia+(fa+k<<2)>>2];T=+f[ia+(fa-k<<2)>>2];l=a[e+310+(s*34|0)+P>>0]|0;Q=+f[97904+(l<<2)>>2];R=+f[97936+(l<<2)>>2];j=j<<24>>24<0;do if((d[ja>>0]|0)>2)if(j){j=0-k|0;O=-+f[98480+(j<<5)+(l<<2)>>2];j=97968+(j<<5)+(l<<2)|0;break}else{O=+f[98480+(k<<5)+(l<<2)>>2];j=97968+(k<<5)+(l<<2)|0;break}else if(j){j=0-k|0;O=-+f[99248+(j<<5)+(l<<2)>>2];j=98992+(j<<5)+(l<<2)|0;break}else{O=+f[99248+(k<<5)+(l<<2)>>2];j=98992+(k<<5)+(l<<2)|0;break}while(0);V=+f[j>>2];Za=Q*V;_a=R*O;W=Q*O;V=R*V;U=S*(W-V);V=T*(W+V);W=S*(_a+Za);T=T*(Za-_a)}else{j=a[e+140+(s*34|0)+P>>0]|0;n=j<<24>>24;j=j<<24>>24>-1?n:0-n|0;n=fa+n|0;q=a[e+310+(s*34|0)+P>>0]|0;if((d[ja>>0]|0)>2){l=j&255;k=101008+(l<<5)+(q<<2)|0;l=100496+(l<<5)+(q<<2)|0;m=99504+(n<<5)+(q<<2)|0;j=99504+(30-n<<5)+(q<<2)|0}else{l=j&255;k=102256+(l<<5)+(q<<2)|0;l=102e3+(l<<5)+(q<<2)|0;m=101520+(n<<5)+(q<<2)|0;j=101520+(14-n<<5)+(q<<2)|0}V=+f[k>>2];_a=+f[l>>2];T=+f[m>>2];W=+f[j>>2];U=V*W*1.4142135381698608;V=V*T*-1.4142135381698608;W=_a*W*1.4142135381698608;T=_a*T*1.4142135381698608}j=a[ga>>0]|0;if(j<<24>>24)if(z){Va=a[ha>>0]|0;Qa=Va<<24>>24;Sa=e+22096+(P<<4)+(Qa<<3)|0;y=+f[Sa>>2]*.25;Pa=e+22096+(P<<4)+(Qa<<3)+4|0;D=+f[Pa>>2]*.25;Ua=e+22416+(P<<4)+(Qa<<3)|0;O=+f[Ua>>2]*.25;Qa=e+22416+(P<<4)+(Qa<<3)+4|0;Q=+f[Qa>>2]*.25;Oa=e+480+(s*17|0)+P|0;Ta=a[Oa>>0]|0;Ra=Ta<<24>>24;Ra=c[102512+((Ta<<24>>24>-1?Ra:0-Ra|0)<<2)>>2]|0;c[Sa>>2]=Ra;Oa=a[Oa>>0]|0;Sa=Oa<<24>>24;Sa=c[102548+((Oa<<24>>24>-1?Sa:0-Sa|0)<<2)>>2]|0;c[Pa>>2]=Sa;Pa=e+565+(s*17|0)+P|0;Oa=a[Pa>>0]|0;Ta=Oa<<24>>24;Ta=c[102512+((Oa<<24>>24>-1?Ta:0-Ta|0)<<2)>>2]|0;c[Ua>>2]=Ta;Pa=a[Pa>>0]|0;Ua=Pa<<24>>24;Ua=c[102548+((Pa<<24>>24>-1?Ua:0-Ua|0)<<2)>>2]|0;c[Qa>>2]=Ua;y=y+(c[h>>2]=Ra,+f[h>>2]);D=D+(c[h>>2]=Sa,+f[h>>2]);O=O+(c[h>>2]=Ta,+f[h>>2]);Va=Va<<24>>24==0?1:Va+-1<<24>>24<<24>>24;y=y+ +f[e+22096+(P<<4)+(Va<<3)>>2]*.5;D=D+ +f[e+22096+(P<<4)+(Va<<3)+4>>2]*.5;O=O+ +f[e+22416+(P<<4)+(Va<<3)>>2]*.5;Q=Q+(c[h>>2]=Ua,+f[h>>2])+ +f[e+22416+(P<<4)+(Va<<3)+4>>2]*.5;o=+r(+(O*O+Q*Q));p=+r(+(y*y+D*D));if(o!=0.0){S=Q/o;R=O/o}else{S=0.0;R=0.0}o=o*p;if(o!=0.0){p=(y*O+D*Q)/o;o=(y*Q-D*O)/o}else{p=0.0;o=0.0}Y=U*p;Z=V*R;X=W*p;Q=T*R;D=U*o;y=V*S;p=W*o;o=T*S;j=a[ga>>0]|0}else{Y=U;Z=V;X=W;Q=T}else{Y=U;Z=V;X=W;Q=T;j=0}u=s+1+(e+10)|0;k=e+10+s|0;O=+((d[u>>0]|0)-(d[k>>0]|0)|0);U=+f[_>>2];wa=(Q-U)/O;T=+f[$>>2];xa=(X-T)/O;S=+f[aa>>2];ya=(Z-S)/O;R=+f[ba>>2];za=(Y-R)/O;f[_>>2]=Q;f[$>>2]=X;f[aa>>2]=Z;f[ba>>2]=Y;t=j<<24>>24==0;if(!t?z:0){E=+f[A>>2];L=(o-E)/O;F=+f[B>>2];M=(p-F)/O;G=+f[C>>2];N=(y-G)/O;K=+f[H>>2];O=(D-K)/O;if(b[(c[Ia>>2]|0)+(J<<1)>>1]&4096){O=-O;N=-N;M=-M;L=-L;K=-K;G=-G;F=-F;E=-E}f[A>>2]=o;f[B>>2]=p;f[C>>2]=y;f[H>>2]=D}else O=na;j=a[k>>0]|0;if((j&255)<(d[u>>0]|0)){s=j;oa=R;na=S;Z=T;Y=U;q=j&255;while(1){Y=wa+Y;Z=xa+Z;na=ya+na;oa=za+oa;if(!t){K=z?O+K:K;G=z?N+G:G;F=z?M+F:F;E=z?L+E:E}j=a[I>>0]|0;k=j&255;e:do if(x>>>0>k>>>0)if((ca&255)<(d[Ga>>0]|0)){if(t)while(1){Sa=La+(q<<8)+(k<<3)|0;Ta=La+(q<<8)+(k<<3)+4|0;Ua=Ma+(q<<8)+(k<<3)|0;Xa=+f[Ua>>2];Ya=+f[Sa>>2];Za=+f[Ta>>2];Va=Ma+(q<<8)+(k<<3)+4|0;_a=+f[Va>>2];f[Sa>>2]=na*Xa+Y*Ya;f[Ta>>2]=Y*Za+na*_a;f[Ua>>2]=oa*Xa+Z*Ya;f[Va>>2]=Z*Za+oa*_a;j=j+1<<24>>24;k=j&255;if(x>>>0<=k>>>0)break e}do{m=La+(q<<8)+(k<<3)|0;n=La+(q<<8)+(k<<3)+4|0;l=Ma+(q<<8)+(k<<3)|0;W=+f[l>>2];X=+f[m>>2];V=+f[n>>2];k=Ma+(q<<8)+(k<<3)+4|0;U=+f[k>>2];S=na*W+Y*X;R=Y*V+na*U;T=oa*W+Z*X;Q=Z*V+oa*U;if(z){T=T-(F*V+K*U);S=S-(E*V+G*U);R=G*W+E*X+R;Q=K*W+F*X+Q}f[m>>2]=S;f[n>>2]=R;f[l>>2]=T;f[k>>2]=Q;j=j+1<<24>>24;k=j&255}while(x>>>0>k>>>0)}else{if(t)while(1){Sa=g+(q<<9)+(k<<3)|0;Ta=g+(q<<9)+(k<<3)+4|0;Ua=i+(q<<9)+(k<<3)|0;Xa=+f[Ua>>2];Ya=+f[Sa>>2];Za=+f[Ta>>2];Va=i+(q<<9)+(k<<3)+4|0;_a=+f[Va>>2];f[Sa>>2]=na*Xa+Y*Ya;f[Ta>>2]=Y*Za+na*_a;f[Ua>>2]=oa*Xa+Z*Ya;f[Va>>2]=Z*Za+oa*_a;j=j+1<<24>>24;k=j&255;if(x>>>0<=k>>>0)break e}do{m=g+(q<<9)+(k<<3)|0;n=g+(q<<9)+(k<<3)+4|0;l=i+(q<<9)+(k<<3)|0;W=+f[l>>2];X=+f[m>>2];V=+f[n>>2];k=i+(q<<9)+(k<<3)+4|0;U=+f[k>>2];S=na*W+Y*X;R=Y*V+na*U;T=oa*W+Z*X;Q=Z*V+oa*U;if(z){T=T-(F*V+K*U);S=S-(E*V+G*U);R=G*W+E*X+R;Q=K*W+F*X+Q}f[m>>2]=S;f[n>>2]=R;f[l>>2]=T;f[k>>2]=Q;j=j+1<<24>>24;k=j&255}while(x>>>0>k>>>0)}while(0);j=s+1<<24>>24;if((j&255)>=(d[u>>0]|0))break;else{s=j;q=j&255}}}j=(a[ha>>0]|0)+1<<24>>24;a[ha>>0]=j<<24>>24==2?0:j;j=v+1<<24>>24;if((j&255)<(d[Ka>>0]|0)){v=j;na=O;s=j&255}else break}}j=ca+1<<24>>24;if((j&255)<(d[Ha>>0]|0)){ca=j;J=j&255}else break}}v=c[Fa>>2]|0;z=(a[Ja>>0]|0)!=0;x=z?v+4|0:v+1|0;z=z?5:3;v=a[v>>0]|0;A=v&255;k=0;t=0;j=v;u=0;while(1){s=x+u|0;if(!(j<<24>>24)){l=k&255;k=a[s>>0]|0;j=0}else{l=k&255;q=0;do{m=g+(q<<9)+(u<<3)|0;f[m>>2]=0.0;n=g+(q<<9)+(u<<3)+4|0;f[n>>2]=0.0;if(!(a[s>>0]|0))k=0;else{j=0;o=0.0;p=0.0;do{k=(j&255)+l|0;o=o+ +f[La+(q<<8)+(k<<3)>>2];f[m>>2]=o;p=p+ +f[La+(q<<8)+(k<<3)+4>>2];f[n>>2]=p;j=j+1<<24>>24;k=a[s>>0]|0}while((j&255)<(k&255))}q=q+1|0}while(q>>>0<A>>>0);j=v}t=t+1<<24>>24;u=t&255;if(z>>>0<=u>>>0){k=0;t=0;j=v;u=0;break}else k=l+(k&255)&255}while(1){s=x+u|0;if(!(j<<24>>24)){l=k&255;k=a[s>>0]|0;j=0}else{l=k&255;q=0;do{m=i+(q<<9)+(u<<3)|0;f[m>>2]=0.0;n=i+(q<<9)+(u<<3)+4|0;f[n>>2]=0.0;if(!(a[s>>0]|0))k=0;else{j=0;o=0.0;p=0.0;do{k=(j&255)+l|0;o=o+ +f[Ma+(q<<8)+(k<<3)>>2];f[m>>2]=o;p=p+ +f[Ma+(q<<8)+(k<<3)+4>>2];f[n>>2]=p;j=j+1<<24>>24;k=a[s>>0]|0}while((j&255)<(k&255))}q=q+1|0}while(q>>>0<A>>>0);j=v}t=t+1<<24>>24;u=t&255;if(z>>>0<=u>>>0)break;else k=l+(k&255)&255}Vb=Na;return 0}function Fi(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0;a:do if(b<<24>>24==1){if(!(f<<24>>24)){f=a[c>>0]|0;a[c>>0]=f<<24>>24<i<<24>>24?i:f<<24>>24>j<<24>>24?j:f;f=g&255;if((g&255)>1){b=1;k=1}else break;while(1){e=c+k|0;l=(d[e>>0]|0)+(d[c+(k+-1)>>0]|0)&255;a[e>>0]=l<<24>>24<i<<24>>24?i:l<<24>>24>j<<24>>24?j:l;b=b+1<<24>>24;k=b<<24>>24;if((k|0)>=(f|0))break a}}f=g&255;if(g<<24>>24){k=h&255;b=0;l=0;do{n=d[e+(w(l,k)|0)>>0]|0;m=c+l|0;n=(d[m>>0]|0)+n&255;a[m>>0]=n<<24>>24<i<<24>>24?i:n<<24>>24>j<<24>>24?j:n;b=b+1<<24>>24;l=b<<24>>24}while((l|0)<(f|0))}}else{k=g&255;if(g<<24>>24){b=0;f=0;do{a[c+f>>0]=0;b=b+1<<24>>24;f=b<<24>>24}while((f|0)<(k|0))}}while(0);if(h<<24>>24!=2)return;f=((g&255)<<1)+255|0;b=f&255;if(b<<24>>24<=0)return;f=f<<24>>24;while(1){a[c+f>>0]=a[c+(f>>1)>>0]|0;f=b+-1<<24>>24;if(f<<24>>24>0){b=f;f=f<<24>>24}else break}return}function Gi(){Hi(0);return}function Hi(a){a=a|0;la(1168,121310);aa(1184,121315,1,1,0);ha(1192,121320,1,-128,127);ha(1208,121325,1,-128,127);ha(1200,121337,1,0,255);ha(1216,121351,2,-32768,32767);ha(1224,121357,2,0,65535);ha(1232,121372,4,-2147483648,2147483647);ha(1240,121376,4,0,-1);ha(1248,121389,4,-2147483648,2147483647);ha(1256,121394,4,0,-1);ga(1264,121408,4);ga(1272,121414,8);ja(552,121421);ja(736,121433);ka(760,4,121466);fa(576,121479);ia(784,0,121495);ia(792,0,121525);ia(800,1,121562);ia(808,2,121601);ia(816,3,121632);ia(824,4,121672);ia(832,5,121701);ia(840,4,121739);ia(848,5,121769);ia(792,0,121808);ia(800,1,121840);ia(808,2,121873);ia(816,3,121906);ia(824,4,121940);ia(832,5,121973);ia(856,6,122007);ia(864,7,122038);ia(872,7,122070);return}function Ii(a){a=a|0;return wj(c[a+4>>2]|0)|0}function Ji(a){a=a|0;var b=0,d=0;b=Vb;Vb=Vb+16|0;d=b;c[d>>2]=Oi(c[a+60>>2]|0)|0;a=Mi(_(6,d|0)|0)|0;Vb=b;return a|0}function Ki(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=Vb;Vb=Vb+48|0;k=m+32|0;g=m+16|0;f=m;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=Mi(Z(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;o=c[f+4>>2]|0;n=g>>>0>o>>>0;f=n?f+8|0:f;b=b+(n<<31>>31)|0;o=g-(n?o:0)|0;c[f>>2]=(c[f>>2]|0)+o;n=f+4|0;c[n>>2]=(c[n>>2]|0)-o;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=Mi(Z(146,k|0)|0)|0;if((e|0)==(g|0)){l=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else l=3;while(0);if((l|0)==3){o=c[a+44>>2]|0;c[a+16>>2]=o+(c[a+48>>2]|0);c[i>>2]=o;c[j>>2]=o}Vb=m;return d|0}function Li(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=Vb;Vb=Vb+32|0;h=g+8|0;f=g;c[h>>2]=c[a+60>>2];c[h+4>>2]=d;c[h+8>>2]=b;c[h+12>>2]=f;c[h+16>>2]=e;if((Mi(Y(140,h|0)|0)|0)<0){a=f;c[a>>2]=-1;c[a+4>>2]=-1;a=-1;b=-1}else{b=f;a=c[b+4>>2]|0;b=c[b>>2]|0}z(a|0);Vb=g;return b|0}function Mi(a){a=a|0;if(a>>>0>4294963200){c[(Ni()|0)>>2]=0-a;a=-1}return a|0}function Ni(){return 123504}function Oi(a){a=a|0;return a|0}function Pi(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function Qi(a){a=a|0;return (a+-48|0)>>>0<10|0}function Ri(a,b,c){a=a|0;b=b|0;c=c|0;return Ui(a,b,c,1,17)|0}function Si(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=Vb;Vb=Vb+560|0;l=H+32|0;u=H+536|0;G=H;F=G;m=H+540|0;c[u>>2]=0;E=m+12|0;kj(e)|0;j=A()|0;if((j|0)<0){e=-e;kj(e)|0;D=1;C=122622;j=A()|0}else{D=(h&2049|0)!=0&1;C=(h&2048|0)==0?((h&1|0)==0?122623:122628):122625}do if(0==0&(j&2146435072|0)==2146435072){G=(i&32|0)!=0;j=D+3|0;dj(b,32,f,j,h&-65537);Yi(b,C,D);Yi(b,e!=e|0.0!=0.0?(G?122649:122653):G?122641:122645,3);dj(b,32,f,j,h^8192)}else{q=+lj(e,u)*2.0;j=q!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;t=i|32;if((t|0)==97){o=i&32;r=(o|0)==0?C:C+9|0;p=D|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[r>>0]|0)==45){e=-(e+(-q-e));break}else{e=q+e-e;break}}else e=q;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=bj(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=m+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;n=j+-2|0;a[n>>0]=i+15;k=(g|0)<1;l=(h&8|0)==0;m=G;do{D=~~e;j=m+1|0;a[m>>0]=o|d[528+D>>0];e=(e-+(D|0))*16.0;if((j-F|0)==1?!(l&(k&e==0.0)):0){a[j>>0]=46;m=m+2|0}else m=j}while(e!=0.0);if((g|0)!=0?(-2-F+m|0)<(g|0):0){k=E;l=n;j=g+2+k-l|0}else{k=E;l=n;j=k-F-l+m|0}E=j+p|0;dj(b,32,f,E,h);Yi(b,r,p);dj(b,48,f,E,h^65536);F=m-F|0;Yi(b,G,F);G=k-l|0;dj(b,48,j-(F+G)|0,0,0);Yi(b,n,G);dj(b,32,f,E,h^8192);j=E;break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=q*268435456.0}else{e=q;j=c[u>>2]|0}B=(j|0)<0?l:l+288|0;l=B;do{y=~~e>>>0;c[l>>2]=y;l=l+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);y=B;if((j|0)>0){o=B;while(1){n=(j|0)<29?j:29;j=l+-4|0;if(j>>>0>=o>>>0){m=0;do{s=cl(c[j>>2]|0,0,n|0)|0;s=Yk(s|0,A()|0,m|0,0)|0;v=A()|0;m=al(s|0,v|0,1e9,0)|0;x=Xk(m|0,A()|0,1e9,0)|0;x=Zk(s|0,v|0,x|0,A()|0)|0;A()|0;c[j>>2]=x;j=j+-4|0}while(j>>>0>=o>>>0);if(m){x=o+-4|0;c[x>>2]=m;m=x}else m=o}else m=o;a:do if(l>>>0>m>>>0){j=l;while(1){l=j+-4|0;if(c[l>>2]|0){l=j;break a}if(l>>>0>m>>>0)j=l;else break}}while(0);j=(c[u>>2]|0)-n|0;c[u>>2]=j;if((j|0)>0)o=m;else break}}else m=B;if((j|0)<0){g=((k+25|0)/9|0)+1|0;s=(t|0)==102;do{r=0-j|0;r=(r|0)<9?r:9;if(m>>>0<l>>>0){n=(1<<r)+-1|0;o=1e9>>>r;p=0;j=m;do{x=c[j>>2]|0;c[j>>2]=(x>>>r)+p;p=w(x&n,o)|0;j=j+4|0}while(j>>>0<l>>>0);m=(c[m>>2]|0)==0?m+4|0:m;if(p){c[l>>2]=p;l=l+4|0}}else m=(c[m>>2]|0)==0?m+4|0:m;j=s?B:m;l=(l-j>>2|0)>(g|0)?j+(g<<2)|0:l;j=(c[u>>2]|0)+r|0;c[u>>2]=j}while((j|0)<0);s=m}else s=m;if(s>>>0<l>>>0){j=(y-s>>2)*9|0;n=c[s>>2]|0;if(n>>>0>=10){m=10;do{m=m*10|0;j=j+1|0}while(n>>>0>=m>>>0)}}else j=0;v=(t|0)==103;x=(k|0)!=0;m=k-((t|0)==102?0:j)+((x&v)<<31>>31)|0;if((m|0)<(((l-y>>2)*9|0)+-9|0)){u=m+9216|0;m=(u|0)/9|0;g=B+4+(m+-1024<<2)|0;m=u-(m*9|0)|0;if((m|0)<8){n=10;while(1){n=n*10|0;if((m|0)<7)m=m+1|0;else break}}else n=10;p=c[g>>2]|0;m=(p>>>0)/(n>>>0)|0;r=p-(w(m,n)|0)|0;o=(g+4|0)==(l|0);if(!(o&(r|0)==0)){q=(m&1|0)==0?9007199254740992.0:9007199254740994.0;u=n>>>1;e=r>>>0<u>>>0?.5:o&(r|0)==(u|0)?1.0:1.5;if(D){u=(a[C>>0]|0)==45;e=u?-e:e;q=u?-q:q}m=p-r|0;c[g>>2]=m;if(q+e!=q){u=m+n|0;c[g>>2]=u;if(u>>>0>999999999){n=g;j=s;while(1){m=n+-4|0;c[n>>2]=0;if(m>>>0<j>>>0){j=j+-4|0;c[j>>2]=0}u=(c[m>>2]|0)+1|0;c[m>>2]=u;if(u>>>0>999999999)n=m;else{n=j;break}}}else{m=g;n=s}j=(y-n>>2)*9|0;p=c[n>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;j=j+1|0}while(p>>>0>=o>>>0)}}else{m=g;n=s}}else{m=g;n=s}u=m+4|0;l=l>>>0>u>>>0?u:l}else n=s;g=0-j|0;b:do if(l>>>0>n>>>0)while(1){m=l+-4|0;if(c[m>>2]|0){u=l;t=1;break b}if(m>>>0>n>>>0)l=m;else{u=m;t=0;break}}else{u=l;t=0}while(0);do if(v){k=k+((x^1)&1)|0;if((k|0)>(j|0)&(j|0)>-5){o=i+-1|0;k=k+-1-j|0}else{o=i+-2|0;k=k+-1|0}if(!(h&8)){if(t?(z=c[u+-4>>2]|0,(z|0)!=0):0)if(!((z>>>0)%10|0)){m=0;l=10;do{l=l*10|0;m=m+1|0}while(!((z>>>0)%(l>>>0)|0|0))}else m=0;else m=9;l=((u-y>>2)*9|0)+-9|0;if((o|32|0)==102){i=l-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=l+j-m|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else o=i;while(0);s=(k|0)!=0;p=s?1:h>>>3&1;r=(o|32|0)==102;if(r){v=0;j=(j|0)>0?j:0}else{l=(j|0)<0?g:j;l=bj(l,((l|0)<0)<<31>>31,E)|0;m=E;if((m-l|0)<2)do{l=l+-1|0;a[l>>0]=48}while((m-l|0)<2);a[l+-1>>0]=(j>>31&2)+43;j=l+-2|0;a[j>>0]=o;v=j;j=m-j|0}j=D+1+k+p+j|0;dj(b,32,f,j,h);Yi(b,C,D);dj(b,48,f,j,h^65536);if(r){p=n>>>0>B>>>0?B:n;r=G+9|0;n=r;o=G+8|0;m=p;do{l=bj(c[m>>2]|0,0,r)|0;if((m|0)==(p|0)){if((l|0)==(r|0)){a[o>>0]=48;l=o}}else if(l>>>0>G>>>0){fl(G|0,48,l-F|0)|0;do l=l+-1|0;while(l>>>0>G>>>0)}Yi(b,l,n-l|0);m=m+4|0}while(m>>>0<=B>>>0);if(!((h&8|0)==0&(s^1)))Yi(b,122657,1);if(m>>>0<u>>>0&(k|0)>0)while(1){l=bj(c[m>>2]|0,0,r)|0;if(l>>>0>G>>>0){fl(G|0,48,l-F|0)|0;do l=l+-1|0;while(l>>>0>G>>>0)}Yi(b,l,(k|0)<9?k:9);m=m+4|0;l=k+-9|0;if(!(m>>>0<u>>>0&(k|0)>9)){k=l;break}else k=l}dj(b,48,k+9|0,9,0)}else{u=t?u:n+4|0;if(n>>>0<u>>>0&(k|0)>-1){g=G+9|0;s=(h&8|0)==0;t=g;p=0-F|0;r=G+8|0;o=n;do{l=bj(c[o>>2]|0,0,g)|0;if((l|0)==(g|0)){a[r>>0]=48;l=r}do if((o|0)==(n|0)){m=l+1|0;Yi(b,l,1);if(s&(k|0)<1){l=m;break}Yi(b,122657,1);l=m}else{if(l>>>0<=G>>>0)break;fl(G|0,48,l+p|0)|0;do l=l+-1|0;while(l>>>0>G>>>0)}while(0);F=t-l|0;Yi(b,l,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0<u>>>0&(k|0)>-1)}dj(b,48,k+18|0,18,0);Yi(b,v,E-v|0)}dj(b,32,f,j,h^8192)}while(0);Vb=H;return ((j|0)<(f|0)?f:j)|0}function Ti(a,b){a=a|0;b=b|0;var d=0.0,e=0;e=(c[b>>2]|0)+(8-1)&~(8-1);d=+g[e>>3];c[b>>2]=e+8;g[a>>3]=d;return}function Ui(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=Vb;Vb=Vb+224|0;p=t+208|0;q=t+160|0;r=t+80|0;s=t;h=q;i=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[p>>2]=c[e>>2];if((Vi(0,d,p,r,q,f,g)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=Wi(b)|0;else o=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;h=b+48|0;if(!(c[h>>2]|0)){i=b+44|0;j=c[i>>2]|0;c[i>>2]=s;k=b+28|0;c[k>>2]=s;l=b+20|0;c[l>>2]=s;c[h>>2]=80;m=b+16|0;c[m>>2]=s+80;e=Vi(b,d,p,r,q,f,g)|0;if(j){$b[c[b+36>>2]&7](b,0,0)|0;e=(c[l>>2]|0)==0?-1:e;c[i>>2]=j;c[h>>2]=0;c[m>>2]=0;c[k>>2]=0;c[l>>2]=0}}else e=Vi(b,d,p,r,q,f,g)|0;h=c[b>>2]|0;c[b>>2]=h|n;if(o|0)Xi(b);e=(h&32|0)==0?e:-1}Vb=t;return e|0}function Vi(d,e,f,h,i,j,k){d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=Vb;Vb=Vb+64|0;G=J+56|0;I=J+40|0;B=J;D=J+48|0;E=J+60|0;c[G>>2]=e;x=(d|0)!=0;y=B+40|0;z=y;B=B+39|0;C=D+4|0;l=0;e=0;n=0;a:while(1){do{do if((e|0)>-1)if((l|0)>(2147483647-e|0)){c[(Ni()|0)>>2]=75;e=-1;break}else{e=l+e|0;break}while(0);r=c[G>>2]|0;l=a[r>>0]|0;if(!(l<<24>>24)){w=92;break a}m=r;b:while(1){switch(l<<24>>24){case 37:{w=10;break b}case 0:{l=m;break b}default:{}}v=m+1|0;c[G>>2]=v;l=a[v>>0]|0;m=v}c:do if((w|0)==10){w=0;l=m;do{if((a[m+1>>0]|0)!=37)break c;l=l+1|0;m=m+2|0;c[G>>2]=m}while((a[m>>0]|0)==37)}while(0);l=l-r|0;if(x)Yi(d,r,l)}while((l|0)!=0);v=(Qi(a[(c[G>>2]|0)+1>>0]|0)|0)==0;m=c[G>>2]|0;if(!v?(a[m+2>>0]|0)==36:0){t=(a[m+1>>0]|0)+-48|0;p=1;l=3}else{t=-1;p=n;l=1}l=m+l|0;c[G>>2]=l;m=a[l>>0]|0;n=(m<<24>>24)+-32|0;if(n>>>0>31|(1<<n&75913|0)==0)o=0;else{o=0;do{o=1<<n|o;l=l+1|0;c[G>>2]=l;m=a[l>>0]|0;n=(m<<24>>24)+-32|0}while(!(n>>>0>31|(1<<n&75913|0)==0))}if(m<<24>>24==42){if((Qi(a[l+1>>0]|0)|0)!=0?(H=c[G>>2]|0,(a[H+2>>0]|0)==36):0){l=H+1|0;c[i+((a[l>>0]|0)+-48<<2)>>2]=10;l=c[h+((a[l>>0]|0)+-48<<3)>>2]|0;n=1;m=H+3|0}else{if(p|0){e=-1;break}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);l=c[v>>2]|0;c[f>>2]=v+4}else l=0;n=0;m=(c[G>>2]|0)+1|0}c[G>>2]=m;v=(l|0)<0;u=v?0-l|0:l;o=v?o|8192:o;v=n}else{l=Zi(G)|0;if((l|0)<0){e=-1;break}u=l;v=p;m=c[G>>2]|0}do if((a[m>>0]|0)==46){l=m+1|0;if((a[l>>0]|0)!=42){c[G>>2]=l;l=Zi(G)|0;m=c[G>>2]|0;break}if(Qi(a[m+2>>0]|0)|0?(F=c[G>>2]|0,(a[F+3>>0]|0)==36):0){l=F+2|0;c[i+((a[l>>0]|0)+-48<<2)>>2]=10;l=c[h+((a[l>>0]|0)+-48<<3)>>2]|0;m=F+4|0;c[G>>2]=m;break}if(v|0){e=-1;break a}if(x){s=(c[f>>2]|0)+(4-1)&~(4-1);l=c[s>>2]|0;c[f>>2]=s+4}else l=0;m=(c[G>>2]|0)+2|0;c[G>>2]=m}else l=-1;while(0);s=0;while(1){if(((a[m>>0]|0)+-65|0)>>>0>57){e=-1;break a}n=m;m=m+1|0;c[G>>2]=m;n=a[(a[n>>0]|0)+-65+(64+(s*58|0))>>0]|0;p=n&255;if((p+-1|0)>>>0>=8)break;else s=p}if(!(n<<24>>24)){e=-1;break}q=(t|0)>-1;do if(n<<24>>24==19)if(q){e=-1;break a}else w=54;else{if(q){c[i+(t<<2)>>2]=p;q=h+(t<<3)|0;t=c[q+4>>2]|0;w=I;c[w>>2]=c[q>>2];c[w+4>>2]=t;w=54;break}if(!x){e=0;break a}_i(I,p,f,k);m=c[G>>2]|0;w=55}while(0);if((w|0)==54){w=0;if(x)w=55;else l=0}d:do if((w|0)==55){w=0;m=a[m+-1>>0]|0;m=(s|0)!=0&(m&15|0)==3?m&-33:m;n=o&-65537;t=(o&8192|0)==0?o:n;e:do switch(m|0){case 110:switch((s&255)<<24>>24){case 0:{c[c[I>>2]>>2]=e;l=0;break d}case 1:{c[c[I>>2]>>2]=e;l=0;break d}case 2:{l=c[I>>2]|0;c[l>>2]=e;c[l+4>>2]=((e|0)<0)<<31>>31;l=0;break d}case 3:{b[c[I>>2]>>1]=e;l=0;break d}case 4:{a[c[I>>2]>>0]=e;l=0;break d}case 6:{c[c[I>>2]>>2]=e;l=0;break d}case 7:{l=c[I>>2]|0;c[l>>2]=e;c[l+4>>2]=((e|0)<0)<<31>>31;l=0;break d}default:{l=0;break d}}case 112:{m=120;l=l>>>0>8?l:8;n=t|8;w=67;break}case 88:case 120:{n=t;w=67;break}case 111:{q=I;q=aj(c[q>>2]|0,c[q+4>>2]|0,y)|0;n=z-q|0;o=0;p=122605;l=(t&8|0)==0|(l|0)>(n|0)?l:n+1|0;n=t;w=73;break}case 105:case 100:{n=I;m=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){m=Zk(0,0,m|0,n|0)|0;n=A()|0;o=I;c[o>>2]=m;c[o+4>>2]=n;o=1;p=122605;w=72;break e}else{o=(t&2049|0)!=0&1;p=(t&2048|0)==0?((t&1|0)==0?122605:122607):122606;w=72;break e}}case 117:{n=I;o=0;p=122605;m=c[n>>2]|0;n=c[n+4>>2]|0;w=72;break}case 99:{a[B>>0]=c[I>>2];r=B;o=0;p=122605;q=1;m=n;l=z;break}case 115:{s=c[I>>2]|0;s=(s|0)==0?122615:s;t=cj(s,0,l)|0;K=(t|0)==0;r=s;o=0;p=122605;q=K?l:t-s|0;m=n;l=K?s+l|0:t;break}case 67:{c[D>>2]=c[I>>2];c[C>>2]=0;c[I>>2]=D;p=-1;w=79;break}case 83:{if(!l){dj(d,32,u,0,t);l=0;w=89}else{p=l;w=79}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{l=Zb[j&1](d,+g[I>>3],u,l,t,m)|0;break d}default:{o=0;p=122605;q=l;m=t;l=z}}while(0);f:do if((w|0)==67){q=I;q=$i(c[q>>2]|0,c[q+4>>2]|0,y,m&32)|0;p=I;p=(n&8|0)==0|(c[p>>2]|0)==0&(c[p+4>>2]|0)==0;o=p?0:2;p=p?122605:122605+(m>>>4)|0;w=73}else if((w|0)==72){q=bj(m,n,y)|0;n=t;w=73}else if((w|0)==79){w=0;o=c[I>>2]|0;l=0;while(1){m=c[o>>2]|0;if(!m)break;m=ej(E,m)|0;n=(m|0)<0;if(n|m>>>0>(p-l|0)>>>0){w=83;break}l=m+l|0;if(p>>>0>l>>>0)o=o+4|0;else break}if((w|0)==83){w=0;if(n){e=-1;break a}}dj(d,32,u,l,t);if(!l){l=0;w=89}else{n=c[I>>2]|0;o=0;while(1){m=c[n>>2]|0;if(!m){w=89;break f}m=ej(E,m)|0;o=m+o|0;if((o|0)>(l|0)){w=89;break f}Yi(d,E,m);if(o>>>0>=l>>>0){w=89;break}else n=n+4|0}}}while(0);if((w|0)==73){w=0;m=I;m=(c[m>>2]|0)!=0|(c[m+4>>2]|0)!=0;K=(l|0)!=0|m;m=z-q+((m^1)&1)|0;r=K?q:y;q=K?((l|0)>(m|0)?l:m):0;m=(l|0)>-1?n&-65537:n;l=z}else if((w|0)==89){w=0;dj(d,32,u,l,t^8192);l=(u|0)>(l|0)?u:l;break}t=l-r|0;s=(q|0)<(t|0)?t:q;K=s+o|0;l=(u|0)<(K|0)?K:u;dj(d,32,l,K,m);Yi(d,p,o);dj(d,48,l,K,m^65536);dj(d,48,s,t,0);Yi(d,r,t);dj(d,32,l,K,m^8192)}while(0);n=v}g:do if((w|0)==92)if(!d)if(!n)e=0;else{e=1;while(1){l=c[i+(e<<2)>>2]|0;if(!l)break;_i(h+(e<<3)|0,l,f,k);e=e+1|0;if(e>>>0>=10){e=1;break g}}while(1){if(c[i+(e<<2)>>2]|0){e=-1;break g}e=e+1|0;if(e>>>0>=10){e=1;break}}}while(0);Vb=J;return e|0}function Wi(a){a=a|0;return 1}function Xi(a){a=a|0;return}function Yi(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))ij(b,d,a)|0;return}function Zi(b){b=b|0;var d=0,e=0;if(!(Qi(a[c[b>>2]>>0]|0)|0))d=0;else{d=0;do{e=c[b>>2]|0;d=(d*10|0)+-48+(a[e>>0]|0)|0;e=e+1|0;c[b>>2]=e}while((Qi(a[e>>0]|0)|0)!=0)}return d|0}function _i(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{b=(c[d>>2]|0)+(4-1)&~(4-1);e=c[b>>2]|0;c[d>>2]=b+4;c[a>>2]=e;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);h=+g[f>>3];c[d>>2]=f+8;g[a>>3]=h;break a}case 18:{dc[e&31](a,d);break a}default:break a}while(0);while(0);return}function $i(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[528+(b&15)>>0]|0|f;b=bl(b|0,c|0,4)|0;c=A()|0}while(!((b|0)==0&(c|0)==0));return e|0}function aj(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=bl(b|0,c|0,3)|0;c=A()|0}while(!((b|0)==0&(c|0)==0));return d|0}function bj(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){do{e=b;b=al(b|0,c|0,10,0)|0;f=c;c=A()|0;g=Xk(b|0,c|0,10,0)|0;g=Zk(e|0,f|0,g|0,A()|0)|0;A()|0;d=d+-1|0;a[d>>0]=g&255|48}while(f>>>0>9|(f|0)==9&e>>>0>4294967295);c=b}else c=b;if(c)do{g=c;c=(c>>>0)/10|0;d=d+-1|0;a[d>>0]=g-(c*10|0)|48}while(g>>>0>=10);return d|0}function cj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else i=16;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)==g<<24>>24)if(!e){i=16;break}else break;f=w(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break c;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break}}else i=11;while(0);if((i|0)==11)if(!e){i=16;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;e=e+-1|0;if(!e){i=16;break}else b=b+1|0}}while(0);if((i|0)==16)b=0;return b|0}function dj(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=Vb;Vb=Vb+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;fl(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Yi(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Yi(a,f,e)}Vb=g;return}function ej(a,b){a=a|0;b=b|0;if(!a)a=0;else a=fj(a,b,0)|0;return a|0}function fj(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(gj()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(Ni()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Ni()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function gj(){return hj()|0}function hj(){return 102588}function ij(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(jj(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0<d>>>0){f=$b[c[e+36>>2]&7](e,b,d)|0;break}b:do if((a[e+75>>0]|0)<0|(d|0)==0){h=0;g=b}else{i=d;while(1){g=i+-1|0;if((a[b+g>>0]|0)==10)break;if(!g){h=0;g=b;break b}else i=g}f=$b[c[e+36>>2]&7](e,b,i)|0;if(f>>>0<i>>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}while(0);dl(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function jj(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function kj(a){a=+a;var b=0;g[h>>3]=a;b=c[h>>2]|0;z(c[h+4>>2]|0);return b|0}function lj(a,b){a=+a;b=b|0;var d=0,e=0,f=0;g[h>>3]=a;d=c[h>>2]|0;e=c[h+4>>2]|0;f=bl(d|0,e|0,52)|0;A()|0;switch(f&2047){case 0:{if(a!=0.0){a=+lj(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[h>>2]=d;c[h+4>>2]=e&-2146435073|1071644672;a=+g[h>>3]}}return +a}function mj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=Vb;Vb=Vb+208|0;j=m;k=m+192|0;h=w(d,b)|0;i=k;c[i>>2]=1;c[i+4>>2]=0;a:do if(h|0){i=0-d|0;c[j+4>>2]=d;c[j>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[j+(f<<2)>>2]=b;if(b>>>0<h>>>0){n=g;f=f+1|0;g=b;b=n}else break}g=a+h+i|0;if(g>>>0>a>>>0){h=g;f=1;b=1;do{do if((b&3|0)!=3){b=f+-1|0;if((c[j+(b<<2)>>2]|0)>>>0<(h-a|0)>>>0)nj(a,d,e,f,j);else pj(a,d,e,k,f,0,j);if((f|0)==1){qj(k,1);f=0;break}else{qj(k,b);f=1;break}}else{nj(a,d,e,f,j);oj(k,2);f=f+2|0}while(0);b=c[k>>2]|1;c[k>>2]=b;a=a+d|0}while(a>>>0<g>>>0)}else{f=1;b=1}pj(a,d,e,k,f,0,j);g=k+4|0;while(1){if((f|0)==1&(b|0)==1)if(!(c[g>>2]|0))break a;else l=19;else if((f|0)<2)l=19;else{qj(k,2);n=f+-2|0;c[k>>2]=c[k>>2]^7;oj(k,1);pj(a+(0-(c[j+(n<<2)>>2]|0))+i|0,d,e,k,f+-1|0,1,j);qj(k,1);b=c[k>>2]|1;c[k>>2]=b;a=a+i|0;pj(a,d,e,k,n,1,j);f=n}if((l|0)==19){l=0;b=rj(k)|0;oj(k,b);a=a+i|0;f=b+f|0;b=c[k>>2]|0}}}while(0);Vb=m;return}function nj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=Vb;Vb=Vb+240|0;l=m;c[l>>2]=a;a:do if((e|0)>1){k=0-b|0;i=a;g=e;e=1;h=a;while(1){i=i+k|0;j=g+-2|0;a=i+(0-(c[f+(j<<2)>>2]|0))|0;if((_b[d&3](h,a)|0)>-1?(_b[d&3](h,i)|0)>-1:0)break a;h=l+(e<<2)|0;if((_b[d&3](a,i)|0)>-1){c[h>>2]=a;g=g+-1|0}else{c[h>>2]=i;a=i;g=j}e=e+1|0;if((g|0)<=1)break a;i=a;h=c[l>>2]|0}}else e=1;while(0);tj(b,l,e);Vb=m;return}function oj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function pj(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=Vb;Vb=Vb+240|0;m=o+232|0;n=o;p=c[e>>2]|0;c[m>>2]=p;j=c[e+4>>2]|0;k=m+4|0;c[k>>2]=j;c[n>>2]=a;a:do if((p|0)!=1|(j|0)!=0?(l=0-b|0,i=a+(0-(c[h+(f<<2)>>2]|0))|0,(_b[d&3](i,a)|0)>=1):0){e=1;g=(g|0)==0;j=i;while(1){if(g&(f|0)>1){g=a+l|0;i=c[h+(f+-2<<2)>>2]|0;if((_b[d&3](g,j)|0)>-1){i=10;break a}if((_b[d&3](g+(0-i)|0,j)|0)>-1){i=10;break a}}g=e+1|0;c[n+(e<<2)>>2]=j;p=rj(m)|0;oj(m,p);f=p+f|0;if(!((c[m>>2]|0)!=1|(c[k>>2]|0)!=0)){e=g;a=j;i=10;break a}a=j+(0-(c[h+(f<<2)>>2]|0))|0;if((_b[d&3](a,c[n>>2]|0)|0)<1){a=j;e=g;g=0;i=9;break}else{p=j;e=g;g=1;j=a;a=p}}}else{e=1;i=9}while(0);if((i|0)==9?(g|0)==0:0)i=10;if((i|0)==10){tj(b,n,e);nj(a,b,d,f,h)}Vb=o;return}function qj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<<b;c[a>>2]=d<<b;return}function rj(a){a=a|0;var b=0;b=sj((c[a>>2]|0)+-1|0)|0;if(!b){b=sj(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function sj(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;while(1){a=a+1|0;if(!(b&2))b=b>>>1;else break}}else a=0;else a=32;return a|0}function tj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=Vb;Vb=Vb+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;dl(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;dl(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);Vb=h;return}function uj(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=5;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=5;break}}}while(0);if((e|0)==5){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function vj(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Vb;Vb=Vb+16|0;j=l;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(jj(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0<h>>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if(($b[c[b+36>>2]&7](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);Vb=l;return f|0}function wj(a){a=a|0;var b=0,c=0;b=(uj(a)|0)+1|0;c=yj(b)|0;if(!c)a=0;else a=dl(c|0,a|0,b|0)|0;return a|0}function xj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if((c[d+76>>2]|0)>=0?(Wi(d)|0)!=0:0){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(i=d+20|0,j=c[i>>2]|0,j>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=j+1;a[j>>0]=f}else e=vj(d,b)|0;Xi(d)}else k=3;do if((k|0)==3){f=b&255;e=b&255;if((e|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=f;break}e=vj(d,b)|0}while(0);return e|0}function yj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=Vb;Vb=Vb+16|0;n=w;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=c[30877]|0;d=m>>>a;if(d&3|0){b=(d&1^1)+a|0;a=123548+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((g|0)==(a|0))c[30877]=m&~(1<<b);else{c[g+12>>2]=a;c[d>>2]=g}v=b<<3;c[e+4>>2]=v|3;v=e+v+4|0;c[v>>2]=c[v>>2]|1;v=f;Vb=w;return v|0}l=c[30879]|0;if(k>>>0>l>>>0){if(d|0){b=2<<a;b=d<<a&(b|0-b);b=(b&0-b)+-1|0;i=b>>>12&16;b=b>>>i;d=b>>>5&8;b=b>>>d;g=b>>>2&4;b=b>>>g;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|i|g|a|e)+(b>>>e)|0;b=123548+(e<<1<<2)|0;a=b+8|0;g=c[a>>2]|0;i=g+8|0;d=c[i>>2]|0;if((d|0)==(b|0)){a=m&~(1<<e);c[30877]=a}else{c[d+12>>2]=b;c[a>>2]=d;a=m}v=e<<3;h=v-k|0;c[g+4>>2]=k|3;f=g+k|0;c[f+4>>2]=h|1;c[g+v>>2]=h;if(l|0){e=c[30882]|0;b=l>>>3;d=123548+(b<<1<<2)|0;b=1<<b;if(!(a&b)){c[30877]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[30879]=h;c[30882]=f;v=i;Vb=w;return v|0}g=c[30878]|0;if(g){d=(g&0-g)+-1|0;f=d>>>12&16;d=d>>>f;e=d>>>5&8;d=d>>>e;h=d>>>2&4;d=d>>>h;i=d>>>1&2;d=d>>>i;j=d>>>1&1;j=c[123812+((e|f|h|i|j)+(d>>>j)<<2)>>2]|0;d=j;i=j;j=(c[j+4>>2]&-8)-k|0;while(1){a=c[d+16>>2]|0;if(!a){a=c[d+20>>2]|0;if(!a)break}h=(c[a+4>>2]&-8)-k|0;f=h>>>0<j>>>0;d=a;i=f?a:i;j=f?h:j}h=i+k|0;if(h>>>0>i>>>0){f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;d=b}else{d=c[i+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[i+28>>2]|0;a=123812+(b<<2)|0;if((i|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[30878]=g&~(1<<b);break}}else{v=f+16|0;c[((c[v>>2]|0)==(i|0)?v:f+20|0)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[i+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[i+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(j>>>0<16){v=j+k|0;c[i+4>>2]=v|3;v=i+v+4|0;c[v>>2]=c[v>>2]|1}else{c[i+4>>2]=k|3;c[h+4>>2]=j|1;c[h+j>>2]=j;if(l|0){e=c[30882]|0;b=l>>>3;d=123548+(b<<1<<2)|0;b=1<<b;if(!(b&m)){c[30877]=b|m;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[30879]=j;c[30882]=h}v=i+8|0;Vb=w;return v|0}else m=k}else m=k}else m=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;e=c[30878]|0;if(e){f=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)j=31;else{m=(a+1048320|0)>>>16&8;q=a<<m;i=(q+520192|0)>>>16&4;q=q<<i;j=(q+245760|0)>>>16&2;j=14-(i|m|j)+(q<<j>>>15)|0;j=k>>>(j+7|0)&1|j<<1}else j=0;d=c[123812+(j<<2)>>2]|0;a:do if(!d){d=0;a=0;q=61}else{a=0;i=k<<((j|0)==31?0:25-(j>>>1)|0);g=0;while(1){h=(c[d+4>>2]&-8)-k|0;if(h>>>0<f>>>0)if(!h){a=d;f=0;q=65;break a}else{a=d;f=h}q=c[d+20>>2]|0;d=c[d+16+(i>>>31<<2)>>2]|0;g=(q|0)==0|(q|0)==(d|0)?g:q;if(!d){d=g;q=61;break}else i=i<<1}}while(0);if((q|0)==61){if((d|0)==0&(a|0)==0){a=2<<j;a=(a|0-a)&e;if(!a){m=k;break}m=(a&0-a)+-1|0;h=m>>>12&16;m=m>>>h;g=m>>>5&8;m=m>>>g;i=m>>>2&4;m=m>>>i;j=m>>>1&2;m=m>>>j;d=m>>>1&1;a=0;d=c[123812+((g|h|i|j|d)+(m>>>d)<<2)>>2]|0}if(!d){i=a;h=f}else q=65}if((q|0)==65){g=d;while(1){m=(c[g+4>>2]&-8)-k|0;d=m>>>0<f>>>0;f=d?m:f;a=d?g:a;d=c[g+16>>2]|0;if(!d)d=c[g+20>>2]|0;if(!d){i=a;h=f;break}else g=d}}if(((i|0)!=0?h>>>0<((c[30879]|0)-k|0)>>>0:0)?(l=i+k|0,l>>>0>i>>>0):0){g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){f=b+20|0;d=c[f>>2]|0;if(!d){f=b+16|0;d=c[f>>2]|0;if(!d)break;else{b=d;a=f}}else{b=d;a=f}}c[a>>2]=0}else{v=c[i+8>>2]|0;c[v+12>>2]=b;c[b+8>>2]=v}while(0);do if(g){a=c[i+28>>2]|0;d=123812+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=e&~(1<<a);c[30878]=e;break}}else{v=g+16|0;c[((c[v>>2]|0)==(i|0)?v:g+20|0)>>2]=b;if(!b)break}c[b+24>>2]=g;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);b:do if(h>>>0<16){v=h+k|0;c[i+4>>2]=v|3;v=i+v+4|0;c[v>>2]=c[v>>2]|1}else{c[i+4>>2]=k|3;c[l+4>>2]=h|1;c[l+h>>2]=h;b=h>>>3;if(h>>>0<256){d=123548+(b<<1<<2)|0;a=c[30877]|0;b=1<<b;if(!(a&b)){c[30877]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=l;c[b+12>>2]=l;c[l+8>>2]=b;c[l+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)d=31;else{u=(b+1048320|0)>>>16&8;v=b<<u;t=(v+520192|0)>>>16&4;v=v<<t;d=(v+245760|0)>>>16&2;d=14-(t|u|d)+(v<<d>>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;b=123812+(d<<2)|0;c[l+28>>2]=d;a=l+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<<d;if(!(e&a)){c[30878]=e|a;c[b>>2]=l;c[l+24>>2]=b;c[l+12>>2]=l;c[l+8>>2]=l;break}b=c[b>>2]|0;c:do if((c[b+4>>2]&-8|0)!=(h|0)){e=h<<((d|0)==31?0:25-(d>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(h|0)){b=a;break c}else{e=e<<1;b=a}}c[d>>2]=l;c[l+24>>2]=b;c[l+12>>2]=l;c[l+8>>2]=l;break b}while(0);u=b+8|0;v=c[u>>2]|0;c[v+12>>2]=l;c[u>>2]=l;c[l+8>>2]=v;c[l+12>>2]=b;c[l+24>>2]=0}while(0);v=i+8|0;Vb=w;return v|0}else m=k}else m=k}else m=-1;while(0);d=c[30879]|0;if(d>>>0>=m>>>0){b=d-m|0;a=c[30882]|0;if(b>>>0>15){v=a+m|0;c[30882]=v;c[30879]=b;c[v+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=m|3}else{c[30879]=0;c[30882]=0;c[a+4>>2]=d|3;v=a+d+4|0;c[v>>2]=c[v>>2]|1}v=a+8|0;Vb=w;return v|0}h=c[30880]|0;if(h>>>0>m>>>0){t=h-m|0;c[30880]=t;v=c[30883]|0;u=v+m|0;c[30883]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;Vb=w;return v|0}if(!(c[30995]|0)){c[30997]=4096;c[30996]=4096;c[30998]=-1;c[30999]=-1;c[31e3]=0;c[30988]=0;c[30995]=n&-16^1431655768;a=4096}else a=c[30997]|0;i=m+48|0;j=m+47|0;g=a+j|0;f=0-a|0;k=g&f;if(k>>>0<=m>>>0){v=0;Vb=w;return v|0}a=c[30987]|0;if(a|0?(l=c[30985]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){v=0;Vb=w;return v|0}d:do if(!(c[30988]&4)){d=c[30883]|0;e:do if(d){e=123956;while(1){n=c[e>>2]|0;if(n>>>0<=d>>>0?(n+(c[e+4>>2]|0)|0)>>>0>d>>>0:0)break;a=c[e+8>>2]|0;if(!a){q=128;break e}else e=a}b=g-h&f;if(b>>>0<2147483647){a=gl(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[e+4>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;q=145;break d}}else{e=a;q=136}}else b=0}else q=128;while(0);do if((q|0)==128){d=gl(0)|0;if((d|0)!=(-1|0)?(b=d,o=c[30996]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=c[30985]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){n=c[30987]|0;if(n|0?p>>>0<=o>>>0|p>>>0>n>>>0:0){b=0;break}a=gl(b|0)|0;if((a|0)==(d|0)){h=b;g=d;q=145;break d}else{e=a;q=136}}else b=0}while(0);do if((q|0)==136){d=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;q=145;break d}a=c[30997]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;q=145;break d}if((gl(a|0)|0)==(-1|0)){gl(d|0)|0;b=0;break}else{h=a+b|0;g=e;q=145;break d}}while(0);c[30988]=c[30988]|4;q=143}else{b=0;q=143}while(0);if(((q|0)==143?k>>>0<2147483647:0)?(t=gl(k|0)|0,p=gl(0)|0,r=p-t|0,s=r>>>0>(m+40|0)>>>0,!((t|0)==(-1|0)|s^1|t>>>0<p>>>0&((t|0)!=(-1|0)&(p|0)!=(-1|0))^1)):0){h=s?r:b;g=t;q=145}if((q|0)==145){b=(c[30985]|0)+h|0;c[30985]=b;if(b>>>0>(c[30986]|0)>>>0)c[30986]=b;j=c[30883]|0;f:do if(j){b=123956;while(1){a=c[b>>2]|0;d=c[b+4>>2]|0;if((g|0)==(a+d|0)){q=154;break}e=c[b+8>>2]|0;if(!e)break;else b=e}if(((q|0)==154?(u=b+4|0,(c[b+12>>2]&8|0)==0):0)?g>>>0>j>>>0&a>>>0<=j>>>0:0){c[u>>2]=d+h;v=(c[30880]|0)+h|0;t=j+8|0;t=(t&7|0)==0?0:0-t&7;u=j+t|0;t=v-t|0;c[30883]=u;c[30880]=t;c[u+4>>2]=t|1;c[j+v+4>>2]=40;c[30884]=c[30999];break}if(g>>>0<(c[30881]|0)>>>0)c[30881]=g;d=g+h|0;b=123956;while(1){if((c[b>>2]|0)==(d|0)){q=162;break}a=c[b+8>>2]|0;if(!a)break;else b=a}if((q|0)==162?(c[b+12>>2]&8|0)==0:0){c[b>>2]=g;l=b+4|0;c[l>>2]=(c[l>>2]|0)+h;l=g+8|0;l=g+((l&7|0)==0?0:0-l&7)|0;b=d+8|0;b=d+((b&7|0)==0?0:0-b&7)|0;k=l+m|0;i=b-l-m|0;c[l+4>>2]=m|3;g:do if((j|0)==(b|0)){v=(c[30880]|0)+i|0;c[30880]=v;c[30883]=k;c[k+4>>2]=v|1}else{if((c[30882]|0)==(b|0)){v=(c[30879]|0)+i|0;c[30879]=v;c[30882]=k;c[k+4>>2]=v|1;c[k+v>>2]=v;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;h:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[30877]=c[30877]&~(1<<e);break}else{c[a+12>>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){d=b+16|0;e=d+4|0;a=c[e>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}}else d=e;while(1){f=a+20|0;e=c[f>>2]|0;if(!e){f=a+16|0;e=c[f>>2]|0;if(!e)break;else{a=e;d=f}}else{a=e;d=f}}c[d>>2]=0}else{v=c[b+8>>2]|0;c[v+12>>2]=a;c[a+8>>2]=v}while(0);if(!g)break;d=c[b+28>>2]|0;e=123812+(d<<2)|0;do if((c[e>>2]|0)!=(b|0)){v=g+16|0;c[((c[v>>2]|0)==(b|0)?v:g+20|0)>>2]=a;if(!a)break h}else{c[e>>2]=a;if(a|0)break;c[30878]=c[30878]&~(1<<d);break h}while(0);c[a+24>>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=123548+(b<<1<<2)|0;a=c[30877]|0;b=1<<b;if(!(a&b)){c[30877]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)e=0;else{if(f>>>0>16777215){e=31;break}u=(b+1048320|0)>>>16&8;v=b<<u;t=(v+520192|0)>>>16&4;v=v<<t;e=(v+245760|0)>>>16&2;e=14-(t|u|e)+(v<<e>>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);b=123812+(e<<2)|0;c[k+28>>2]=e;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[30878]|0;d=1<<e;if(!(a&d)){c[30878]=a|d;c[b>>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break}b=c[b>>2]|0;i:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break i}else{e=e<<1;b=a}}c[d>>2]=k;c[k+24>>2]=b;c[k+12>>2]=k;c[k+8>>2]=k;break g}while(0);u=b+8|0;v=c[u>>2]|0;c[v+12>>2]=k;c[u>>2]=k;c[k+8>>2]=v;c[k+12>>2]=b;c[k+24>>2]=0}while(0);v=l+8|0;Vb=w;return v|0}b=123956;while(1){a=c[b>>2]|0;if(a>>>0<=j>>>0?(v=a+(c[b+4>>2]|0)|0,v>>>0>j>>>0):0)break;b=c[b+8>>2]|0}f=v+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0<f>>>0?j:a;b=a+8|0;d=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;t=d-t|0;c[30883]=u;c[30880]=t;c[u+4>>2]=t|1;c[g+d+4>>2]=40;c[30884]=c[30999];d=a+4|0;c[d>>2]=27;c[b>>2]=c[30989];c[b+4>>2]=c[30990];c[b+8>>2]=c[30991];c[b+12>>2]=c[30992];c[30989]=g;c[30990]=h;c[30992]=0;c[30991]=b;b=a+24|0;do{u=b;b=b+4|0;c[b>>2]=7}while((u+8|0)>>>0<v>>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=123548+(b<<1<<2)|0;a=c[30877]|0;b=1<<b;if(!(a&b)){c[30877]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)e=31;else{u=(b+1048320|0)>>>16&8;v=b<<u;t=(v+520192|0)>>>16&4;v=v<<t;e=(v+245760|0)>>>16&2;e=14-(t|u|e)+(v<<e>>>15)|0;e=g>>>(e+7|0)&1|e<<1}else e=0;d=123812+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[f>>2]=0;b=c[30878]|0;a=1<<e;if(!(b&a)){c[30878]=b|a;c[d>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}b=c[d>>2]|0;j:do if((c[b+4>>2]&-8|0)!=(g|0)){e=g<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(g|0)){b=a;break j}else{e=e<<1;b=a}}c[d>>2]=j;c[j+24>>2]=b;c[j+12>>2]=j;c[j+8>>2]=j;break f}while(0);u=b+8|0;v=c[u>>2]|0;c[v+12>>2]=j;c[u>>2]=j;c[j+8>>2]=v;c[j+12>>2]=b;c[j+24>>2]=0}}else{v=c[30881]|0;if((v|0)==0|g>>>0<v>>>0)c[30881]=g;c[30989]=g;c[30990]=h;c[30992]=0;c[30886]=c[30995];c[30885]=-1;c[30890]=123548;c[30889]=123548;c[30892]=123556;c[30891]=123556;c[30894]=123564;c[30893]=123564;c[30896]=123572;c[30895]=123572;c[30898]=123580;c[30897]=123580;c[30900]=123588;c[30899]=123588;c[30902]=123596;c[30901]=123596;c[30904]=123604;c[30903]=123604;c[30906]=123612;c[30905]=123612;c[30908]=123620;c[30907]=123620;c[30910]=123628;c[30909]=123628;c[30912]=123636;c[30911]=123636;c[30914]=123644;c[30913]=123644;c[30916]=123652;c[30915]=123652;c[30918]=123660;c[30917]=123660;c[30920]=123668;c[30919]=123668;c[30922]=123676;c[30921]=123676;c[30924]=123684;c[30923]=123684;c[30926]=123692;c[30925]=123692;c[30928]=123700;c[30927]=123700;c[30930]=123708;c[30929]=123708;c[30932]=123716;c[30931]=123716;c[30934]=123724;c[30933]=123724;c[30936]=123732;c[30935]=123732;c[30938]=123740;c[30937]=123740;c[30940]=123748;c[30939]=123748;c[30942]=123756;c[30941]=123756;c[30944]=123764;c[30943]=123764;c[30946]=123772;c[30945]=123772;c[30948]=123780;c[30947]=123780;c[30950]=123788;c[30949]=123788;c[30952]=123796;c[30951]=123796;v=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;t=v-t|0;c[30883]=u;c[30880]=t;c[u+4>>2]=t|1;c[g+v+4>>2]=40;c[30884]=c[30999]}while(0);b=c[30880]|0;if(b>>>0>m>>>0){t=b-m|0;c[30880]=t;v=c[30883]|0;u=v+m|0;c[30883]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;Vb=w;return v|0}}c[(Ni()|0)>>2]=12;v=0;Vb=w;return v|0}
function ug(a,b,c,d,e,g,h,i,j){a=a|0;b=b|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,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0.0,E=0.0,F=0.0,G=0.0,H=0,I=0,J=0;s=a&65535;k=j<<24>>24==1;t=b&65535;j=b<<16>>16!=0;if(a<<16>>16==1)if(k){if(!j)return;j=t<<1;b=t*3|0;k=t<<2;a=0;do{s=(a*5|0)+1&65535;x=+f[c+(s<<3)>>2];h=s+3|0;y=+f[c+(h<<3)>>2];B=x+y;F=+f[c+(s<<3)+4>>2];D=+f[c+(h<<3)+4>>2];A=F+D;h=s+1|0;v=+f[c+(h<<3)>>2];i=s+2|0;z=+f[c+(i<<3)>>2];G=v+z;u=+f[c+(h<<3)+4>>2];C=+f[c+(i<<3)+4>>2];E=u+C;z=v-z;C=u-C;y=x-y;D=F-D;s=s+-1|0;i=c+(s<<3)|0;f[d+(a<<3)>>2]=G+(B+ +f[i>>2]);s=c+(s<<3)+4|0;f[d+(a<<3)+4>>2]=E+(A+ +f[s>>2]);F=+f[i>>2];x=B*.30901700258255005+F-G*.80901700258255;u=+f[s>>2];v=A*.30901700258255005+u-E*.80901700258255;B=G*.30901700258255005+(F-B*.80901700258255);A=E*.30901700258255005+(u-A*.80901700258255);u=y*.9510565400123596+z*.5877852439880371;z=y*.5877852439880371-z*.9510565400123596;y=D*.9510565400123596+C*.5877852439880371;C=D*.5877852439880371-C*.9510565400123596;s=a+t|0;f[d+(s<<3)>>2]=x-y;f[d+(s<<3)+4>>2]=u+v;s=a+j|0;f[d+(s<<3)>>2]=B-C;f[d+(s<<3)+4>>2]=z+A;s=a+b|0;f[d+(s<<3)>>2]=C+B;f[d+(s<<3)+4>>2]=A-z;s=a+k|0;f[d+(s<<3)>>2]=y+x;f[d+(s<<3)+4>>2]=v-u;a=a+1|0}while((a|0)!=(t|0));return}else{if(!j)return;j=t<<1;b=t*3|0;k=t<<2;a=0;do{s=(a*5|0)+1&65535;D=+f[c+(s<<3)>>2];h=s+3|0;A=+f[c+(h<<3)>>2];z=D+A;v=+f[c+(s<<3)+4>>2];y=+f[c+(h<<3)+4>>2];C=v+y;h=s+1|0;G=+f[c+(h<<3)>>2];i=s+2|0;F=+f[c+(i<<3)>>2];u=G+F;B=+f[c+(h<<3)+4>>2];E=+f[c+(i<<3)+4>>2];x=B+E;F=G-F;E=B-E;A=D-A;y=v-y;s=s+-1|0;i=c+(s<<3)|0;f[d+(a<<3)>>2]=u+(z+ +f[i>>2]);s=c+(s<<3)+4|0;f[d+(a<<3)+4>>2]=x+(C+ +f[s>>2]);v=+f[i>>2];D=z*.30901700258255005+v-u*.80901700258255;B=+f[s>>2];G=C*.30901700258255005+B-x*.80901700258255;z=u*.30901700258255005+(v-z*.80901700258255);C=x*.30901700258255005+(B-C*.80901700258255);B=A*.5877852439880371+F*.9510565400123596;F=A*.9510565400123596-F*.5877852439880371;A=y*.5877852439880371+E*.9510565400123596;E=y*.9510565400123596-E*.5877852439880371;s=a+t|0;f[d+(s<<3)>>2]=E+D;f[d+(s<<3)+4>>2]=G-F;s=a+j|0;f[d+(s<<3)>>2]=A+z;f[d+(s<<3)+4>>2]=C-B;s=a+b|0;f[d+(s<<3)>>2]=z-A;f[d+(s<<3)+4>>2]=B+C;s=a+k|0;f[d+(s<<3)>>2]=D-E;f[d+(s<<3)+4>>2]=F+G;a=a+1|0}while((a|0)!=(t|0));return}if(k){if(!j)return;j=a<<16>>16==0;b=s*3|0;k=s<<1;a=w(t,s)|0;l=w(k,t)|0;m=w(b,t)|0;n=w(s<<2,t)|0;r=0;do{if(!j){o=w((r*5|0)+1|0,s)|0;p=w(r,s)|0;q=0;do{I=q+o&65535;u=+f[c+(I<<3)>>2];H=I+b|0;y=+f[c+(H<<3)>>2];C=u+y;B=+f[c+(I<<3)+4>>2];A=+f[c+(H<<3)+4>>2];x=B+A;H=I+s|0;v=+f[c+(H<<3)>>2];J=I+k|0;G=+f[c+(J<<3)>>2];D=v+G;F=+f[c+(H<<3)+4>>2];z=+f[c+(J<<3)+4>>2];E=F+z;G=v-G;z=F-z;y=u-y;A=B-A;I=I-s|0;J=c+(I<<3)|0;H=q+p&65535;f[d+(H<<3)>>2]=D+(C+ +f[J>>2]);I=c+(I<<3)+4|0;f[d+(H<<3)+4>>2]=E+(x+ +f[I>>2]);B=+f[J>>2];u=C*.30901700258255005+B-D*.80901700258255;F=+f[I>>2];v=x*.30901700258255005+F-E*.80901700258255;C=D*.30901700258255005+(B-C*.80901700258255);x=E*.30901700258255005+(F-x*.80901700258255);F=y*.9510565400123596+G*.5877852439880371;G=y*.5877852439880371-G*.9510565400123596;y=A*.9510565400123596+z*.5877852439880371;z=A*.5877852439880371-z*.9510565400123596;A=F+v;E=G+x;B=z+C;D=y+u;y=u-y;F=v-F;z=C-z;G=x-G;I=H+a|0;x=+f[e+(q<<3)>>2];C=+f[e+(q<<3)+4>>2];f[d+(I<<3)+4>>2]=y*C+x*A;f[d+(I<<3)>>2]=x*y-C*A;I=H+l|0;A=+f[g+(q<<3)>>2];C=+f[g+(q<<3)+4>>2];f[d+(I<<3)+4>>2]=E*A+z*C;f[d+(I<<3)>>2]=z*A-E*C;I=H+m|0;C=+f[h+(q<<3)>>2];E=+f[h+(q<<3)+4>>2];f[d+(I<<3)+4>>2]=G*C+B*E;f[d+(I<<3)>>2]=B*C-G*E;H=H+n|0;E=+f[i+(q<<3)>>2];G=+f[i+(q<<3)+4>>2];f[d+(H<<3)+4>>2]=F*E+D*G;f[d+(H<<3)>>2]=D*E-F*G;q=q+1|0}while((q|0)!=(s|0))}r=r+1|0}while((r|0)!=(t|0));return}else{if(!j)return;j=a<<16>>16==0;b=s*3|0;k=s<<1;a=w(t,s)|0;l=w(k,t)|0;m=w(b,t)|0;n=w(s<<2,t)|0;r=0;do{if(!j){o=w((r*5|0)+1|0,s)|0;p=w(r,s)|0;q=0;do{I=q+o&65535;C=+f[c+(I<<3)>>2];J=I+b|0;A=+f[c+(J<<3)>>2];E=C+A;G=+f[c+(I<<3)+4>>2];y=+f[c+(J<<3)+4>>2];B=G+y;J=I+s|0;D=+f[c+(J<<3)>>2];H=I+k|0;v=+f[c+(H<<3)>>2];F=D+v;x=+f[c+(J<<3)+4>>2];u=+f[c+(H<<3)+4>>2];z=x+u;v=D-v;u=x-u;A=C-A;y=G-y;I=I-s|0;H=c+(I<<3)|0;J=q+p&65535;f[d+(J<<3)>>2]=F+(E+ +f[H>>2]);I=c+(I<<3)+4|0;f[d+(J<<3)+4>>2]=z+(B+ +f[I>>2]);G=+f[H>>2];C=E*.30901700258255005+G-F*.80901700258255;x=+f[I>>2];D=B*.30901700258255005+x-z*.80901700258255;E=F*.30901700258255005+(G-E*.80901700258255);B=z*.30901700258255005+(x-B*.80901700258255);x=A*.5877852439880371+v*.9510565400123596;v=A*.9510565400123596-v*.5877852439880371;A=y*.5877852439880371+u*.9510565400123596;u=y*.9510565400123596-u*.5877852439880371;y=D-v;z=B-x;G=E-A;F=C-u;C=u+C;D=v+D;E=A+E;B=x+B;I=J+a|0;x=+f[e+(q<<3)>>2];A=+f[e+(q<<3)+4>>2];f[d+(I<<3)>>2]=x*C+A*y;f[d+(I<<3)+4>>2]=x*y-C*A;I=J+l|0;A=+f[g+(q<<3)>>2];C=+f[g+(q<<3)+4>>2];f[d+(I<<3)>>2]=E*A+z*C;f[d+(I<<3)+4>>2]=z*A-E*C;I=J+m|0;C=+f[h+(q<<3)>>2];E=+f[h+(q<<3)+4>>2];f[d+(I<<3)>>2]=G*C+B*E;f[d+(I<<3)+4>>2]=B*C-G*E;J=J+n|0;E=+f[i+(q<<3)>>2];G=+f[i+(q<<3)+4>>2];f[d+(J<<3)>>2]=F*E+D*G;f[d+(J<<3)+4>>2]=D*E-F*G;q=q+1|0}while((q|0)!=(s|0))}r=r+1|0}while((r|0)!=(t|0));return}}function vg(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=b[a>>1]|0;v=c[a+32>>2]|0;t=c[a+36>>2]|0;r=(e[a+4>>1]|0)+1|0;if(r>>>0<2)return;u=s&65535;p=2;q=1;g=0;l=0;f=2;while(1){j=b[a+2+(f<<1)>>1]|0;m=j&65535;n=w(m,q&65535)|0;o=(u>>>0)/((n&65535)>>>0)|0;k=o&65535;switch(j<<16>>16){case 4:{f=g&65535;i=o+f|0;g=t+(f<<3)|0;h=t+((i&65535)<<3)|0;i=t+((i+o&65535)<<3)|0;if(!(l<<16>>16))wg(k,q,d,v,g,h,i);else wg(k,q,v,d,g,h,i);h=1-(l&65535)&65535;break}case 2:{f=g&65535;g=t+(f<<3)|0;if(!(l<<16>>16))xg(k,q,d,v,g);else xg(k,q,v,d,g);h=1-(l&65535)&65535;break}case 3:{f=g&65535;g=t+(f<<3)|0;h=t+((o+f&65535)<<3)|0;if(!(l<<16>>16))tg(k,q,d,v,g,h,1);else tg(k,q,v,d,g,h,1);h=1-(l&65535)&65535;break}case 5:{f=g&65535;h=o+f|0;j=h+o|0;g=t+(f<<3)|0;h=t+((h&65535)<<3)|0;i=t+((j&65535)<<3)|0;j=t+((j+o&65535)<<3)|0;if(!(l<<16>>16))ug(k,q,d,v,g,h,i,j,1);else ug(k,q,v,d,g,h,i,j,1);h=1-(l&65535)&65535;break}default:{h=l;f=g&65535}}q=n&65535;g=f+(w(m+-1|0,o)|0)&65535;p=p+1<<16>>16;f=p&65535;if(r>>>0<f>>>0)break;else l=h}if(s<<16>>16!=0&h<<16>>16!=0)f=0;else return;do{c[d+(f<<3)>>2]=c[v+(f<<3)>>2];c[d+(f<<3)+4>>2]=c[v+(f<<3)+4>>2];f=f+1|0}while((f|0)!=(u|0));return}function wg(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0,E=0;r=a&65535;s=b&65535;b=b<<16>>16!=0;if(a<<16>>16==1){if(!b)return;b=s<<1;a=s*3|0;i=0;do{r=i<<2&65532;C=+f[c+(r<<3)>>2];h=r|2;x=+f[c+(h<<3)>>2];B=C+x;x=C-x;C=+f[c+(r<<3)+4>>2];u=+f[c+(h<<3)+4>>2];z=C+u;u=C-u;h=r|1;C=+f[c+(h<<3)>>2];r=r|3;t=+f[c+(r<<3)>>2];A=C+t;t=C-t;C=+f[c+(r<<3)+4>>2];v=+f[c+(h<<3)+4>>2];y=C+v;v=C-v;f[d+(i<<3)>>2]=B+A;h=i+b|0;f[d+(h<<3)>>2]=B-A;f[d+(i<<3)+4>>2]=z+y;f[d+(h<<3)+4>>2]=z-y;h=i+s|0;f[d+(h<<3)>>2]=x+v;r=i+a|0;f[d+(r<<3)>>2]=x-v;f[d+(h<<3)+4>>2]=u+t;f[d+(r<<3)+4>>2]=u-t;i=i+1|0}while((i|0)!=(s|0));return}if(!b)return;q=r<<2;b=a<<16>>16==0;a=r<<1;i=r*3|0;j=w(s,r)|0;k=w(a,s)|0;l=w(i,s)|0;p=0;do{if(!b){m=(w(q,p)|0)&65532;n=(w(p,r)|0)&65535;o=0;do{E=o+m|0;u=+f[c+(E<<3)>>2];D=E+a|0;A=+f[c+(D<<3)>>2];y=u+A;A=u-A;u=+f[c+(E<<3)+4>>2];t=+f[c+(D<<3)+4>>2];v=u+t;t=u-t;D=E+r|0;u=+f[c+(D<<3)>>2];E=E+i|0;B=+f[c+(E<<3)>>2];x=u+B;B=u-B;u=+f[c+(E<<3)+4>>2];z=+f[c+(D<<3)+4>>2];C=u+z;z=u-z;u=A+z;z=A-z;A=t+B;B=t-B;D=o+n|0;f[d+(D<<3)>>2]=y+x;x=y-x;f[d+(D<<3)+4>>2]=v+C;C=v-C;E=D+j|0;v=+f[e+(o<<3)>>2];y=+f[e+(o<<3)+4>>2];f[d+(E<<3)+4>>2]=A*v+u*y;f[d+(E<<3)>>2]=u*v-A*y;E=D+k|0;y=+f[g+(o<<3)>>2];A=+f[g+(o<<3)+4>>2];f[d+(E<<3)+4>>2]=C*y+x*A;f[d+(E<<3)>>2]=x*y-C*A;D=D+l|0;A=+f[h+(o<<3)>>2];C=+f[h+(o<<3)+4>>2];f[d+(D<<3)+4>>2]=B*A+z*C;f[d+(D<<3)>>2]=z*A-B*C;o=o+1|0}while((o|0)!=(r|0))}p=p+1|0}while((p|0)!=(s|0));return}function xg(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.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0;l=a&65535;g=b<<16>>16==0;if(a<<16>>16==1){if(g)return;b=b&65535;g=0;do{k=g<<2&65532;h=c+(k<<3)|0;e=k|1;i=c+(e<<3)|0;j=g<<1&65534;f[d+(j<<3)>>2]=+f[h>>2]+ +f[i>>2];l=j+b|0;f[d+(l<<3)>>2]=+f[h>>2]-+f[i>>2];k=c+(k<<3)+4|0;e=c+(e<<3)+4|0;f[d+(j<<3)+4>>2]=+f[k>>2]+ +f[e>>2];f[d+(l<<3)+4>>2]=+f[k>>2]-+f[e>>2];g=g+1|0}while((g|0)!=(b|0));return}if(g)return;j=b&65535;k=l<<1;i=w(j,l)|0;if(!(a<<16>>16))return;else h=0;do{b=(w(k,h)|0)&65534;g=(w(h,l)|0)&65535;a=0;do{s=a+b|0;u=c+(s<<3)|0;r=s+l|0;t=c+(r<<3)|0;m=a+g|0;f[d+(m<<3)>>2]=+f[u>>2]+ +f[t>>2];q=+f[u>>2]-+f[t>>2];s=c+(s<<3)+4|0;r=c+(r<<3)+4|0;f[d+(m<<3)+4>>2]=+f[s>>2]+ +f[r>>2];o=+f[s>>2]-+f[r>>2];m=m+i|0;p=+f[e+(a<<3)>>2];n=+f[e+(a<<3)+4>>2];f[d+(m<<3)+4>>2]=o*p+q*n;f[d+(m<<3)>>2]=q*p-o*n;a=a+1|0}while((a|0)!=(l|0));h=h+1|0}while((h|0)!=(j|0));return}function yg(a){a=a|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,v=0.0,x=0,y=0,z=0,A=0,B=0;x=og(40)|0;b[x>>1]=a;y=a&65535;z=y<<3;c[x+32>>2]=og(z)|0;z=og(z)|0;c[x+36>>2]=z;A=x+2|0;p=x+6|0;h=a;g=0;d=0;e=0;a:while(1){d=d+1<<16>>16;if((d&65535)<5)e=b[104364+((d&65535)+-1<<1)>>1]|0;else e=(e&65535)+2&65535;n=e&65535;if(e<<16>>16==2)j=h;else while(1){i=h;h=(h&65535)/(e&65535)|0;if((i&65535)-(w(h&65535,n)|0)&65535|0){h=i;continue a}g=g+1<<16>>16;b[A+((g&65535)+1<<1)>>1]=e;if(h<<16>>16==1)break a}while(1){h=j;j=(j&65535)>>>1;if((h&65535)-(w(j&65535,n)|0)&65535|0)continue a;i=g+1<<16>>16;h=i&65535;b[A+(h+1<<1)>>1]=2;if(g<<16>>16){if((i&65535)>=2){h=h+2|0;g=2;do{s=h-(g&65535)&65535;b[A+(s+1<<1)>>1]=b[A+(s<<1)>>1]|0;g=g+1<<16>>16}while((i&65535)>=(g&65535))}b[p>>1]=2}if(j<<16>>16==1){g=i;break a}else g=i}}b[A>>1]=a;b[x+4>>1]=g;v=6.2831854820251465/+(a&65535);if(!(g<<16>>16))return x|0;else{r=1;s=1;d=0}do{e=b[A+((r&65535)+1<<1)>>1]|0;p=s&65535;s=w(p,e&65535)|0;h=s&65535;a=(y>>>0)/(h>>>0)|0;q=e+-1<<16>>16;do if(q<<16>>16){i=(e&65535)>5;if(h>>>0>y>>>0){h=d&65535;e=z+(h<<3)|0;h=z+(h<<3)+4|0;if(i){c[e>>2]=1065353216;c[h>>2]=0;break}else{f[e>>2]=1.0;f[h>>2]=0.0;break}}if(i){j=0;n=0;do{i=d&65535;h=z+(i<<3)|0;f[h>>2]=1.0;i=z+(i<<3)+4|0;f[i>>2]=0.0;j=(j&65535)+p|0;o=v*+(j&65535|0);e=0;m=0.0;do{d=d+1<<16>>16;m=m+1.0;l=o*m;k=+t(+l);B=d&65535;f[z+(B<<3)>>2]=k;l=+u(+l);f[z+(B<<3)+4>>2]=l;e=e+1<<16>>16}while(a>>>0>(e&65535)>>>0);f[h>>2]=k;f[i>>2]=l;n=n+1<<16>>16}while((n&65535)<(q&65535))}else{h=0;i=0;do{e=d&65535;f[z+(e<<3)>>2]=1.0;f[z+(e<<3)+4>>2]=0.0;h=(h&65535)+p|0;l=v*+(h&65535|0);e=0;k=0.0;do{d=d+1<<16>>16;k=k+1.0;o=l*k;B=d&65535;f[z+(B<<3)>>2]=+t(+o);f[z+(B<<3)+4>>2]=+u(+o);e=e+1<<16>>16}while(a>>>0>(e&65535)>>>0);i=i+1<<16>>16}while((i&65535)<(q&65535))}}while(0);r=r+1<<16>>16}while((r&65535)<=(g&65535));return x|0}function zg(a){a=a|0;var b=0;b=c[a+32>>2]|0;if(b|0)Ag(b);b=c[a+36>>2]|0;if(!b){Ag(a);return}Ag(b);Ag(a);return}function Ag(a){a=a|0;zj(a);return}function Bg(a){a=a|0;if(a>>>0<=92016)if(a>>>0<=75131)if(a>>>0<=55425)if(a>>>0<=46008)if(a>>>0<=37565)if(a>>>0<=27712)if(a>>>0<=23003)if(a>>>0<=18782)if(a>>>0>13855)a=8;else return (a>>>0>11501?9:a>>>0>9390?10:11)|0;else a=7;else a=6;else a=5;else a=4;else a=3;else a=2;else a=1;else a=0;return a|0}function Cg(a){a=a|0;if((a&255)>=12){a=0;return a|0}a=c[5408+((a&255)<<2)>>2]|0;return a|0}function Dg(b){b=b|0;if((b&255)>=12){b=0;return b|0}b=a[117324+(b&255)>>0]|0;return b|0}function Eg(b,c,d){b=b|0;c=c|0;d=d|0;d=d<<24>>24!=0&1;return a[((c<<24>>24==3?d|2:d)&255)+(117336+((b&255)<<2))>>0]|0}function Fg(a){a=a|0;switch(a<<24>>24){case 23:case 19:case 17:case 4:case 1:case 2:{a=0;break}case 3:{a=-1;break}default:a=-1}return a|0}function Gg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0;e=c[a>>2]|0;g=c[b>>2]|0;f=d[117400+(g>>>25&99)>>0]|0;e=(d[117400+(e&245)>>0]|0)<<31|e>>>1;c[a>>2]=e;a=g<<1|f;c[b>>2]=a;return e^a|0}function Hg(a){a=a|0;if((a&255)>33){a=0;return a|0}a=c[4936+((a&255)<<2)>>2]|0;return a|0}function Ig(){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=og(2388)|0;if(!d){k=0;return k|0}fl(d|0,0,2384)|0;c[d+2384>>2]=109352;a[d+2264>>0]=1;a[d+2256>>0]=1;c[d+2260>>2]=44100;a[d+2265>>0]=0;a[d>>0]=0;a[d+1>>0]=0;a[d+2>>0]=0;a[d+6>>0]=0;a[d+7>>0]=0;a[d+8>>0]=0;b[d+10>>1]=1024;c[d+16>>2]=0;c[d+124>>2]=0;c[d+1648>>2]=1;c[d+1652>>2]=1;e=d+128|0;f=d+328|0;g=d+584|0;h=d+1136|0;i=d+192|0;j=d+1392|0;k=0;do{a[e+k>>0]=0;c[f+(k<<2)>>2]=0;c[g+(k<<2)>>2]=0;c[h+(k<<2)>>2]=0;b[i+(k<<1)>>1]=0;c[j+(k<<2)>>2]=0;k=k+1|0}while((k|0)!=64);fl(d+892|0,0,192)|0;c[d+324>>2]=Jg(1.0,1.0)|0;k=d;return k|0}function Jg(b,c){b=+b;c=+c;var d=0;d=og(192)|0;fl(d|0,0,184)|0;f[d+184>>2]=b;f[d+188>>2]=c;a[d+1>>0]=1;a[d+4>>0]=-1;a[d+22>>0]=1;a[d+39>>0]=0;return d|0}function Kg(a){a=a|0;return ((a|0)==0?0:a+2256|0)|0}function Lg(b,d){b=b|0;d=d|0;var e=0;if(!((b|0)!=0&(d|0)!=0)){b=0;return b|0}if((Fg(a[d>>0]|0)|0)<<24>>24<0){b=0;return b|0}a[b+2256>>0]=a[d>>0]|0;e=c[d+4>>2]|0;if(!e){b=0;return b|0}c[b+2260>>2]=e;e=a[d+8>>0]|0;if((e+-1&255)>4){b=0;return b|0}a[b+2264>>0]=e;e=a[d+9>>0]|0;if((e&255)>1){b=0;return b|0}a[b+2265>>0]=e;b=1;return b|0}function Mg(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=e+8|0;m=e+4|0;o=e+20|0;i=0;while(1){f=c[n>>2]|0;if(f>>>0<12){h=12-f|0;g=c[e>>2]|0;h=(g&(1<<f)+-1)<<h|(c[m>>2]|0)>>>(32-h|0)}else{g=c[e>>2]|0;h=g<<32-f>>>20}b[d>>1]=h;j=(a[o>>0]|0)==0;if((h&65535|0)==4095)break;do if(j)if(f>>>0>8){c[n>>2]=f+-8;break}else{lg(e,8);break}while(0);i=i+1<<16>>16;if((i&65535)>=768){f=5;l=125;break}}if((l|0)==125)return f|0;do if(j)if(f>>>0>12){f=f+-12|0;c[n>>2]=f;l=17;break}else{lg(e,12);f=c[n>>2]|0;l=15;break}else l=15;while(0);do if((l|0)==15){if(f|0){g=c[e>>2]|0;l=17;break}g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){lg(e,1);i=c[n>>2]|0;l=21;break}else{h=d+2|0;a[h>>0]=f;f=0;l=24;break}}while(0);if((l|0)==17){i=f+-1|0;c[n>>2]=i;f=g>>>i&1;l=21}do if((l|0)==21){g=d+2|0;a[g>>0]=f;if(i>>>0<2){h=g;f=i;g=c[m>>2]|0;l=24;break}else{f=c[e>>2]|0;j=f<<32-i>>>30;k=g;g=f;f=i;break}}while(0);if((l|0)==24){j=2-f|0;l=c[e>>2]|0;j=((1<<f)+-1&l)<<j|g>>>(32-j|0);k=h;g=l}do if(!(a[o>>0]|0))if(f>>>0>2){f=f+-2|0;c[n>>2]=f;a[d+3>>0]=j;l=31;break}else{lg(e,2);f=c[n>>2]|0;l=29;break}else l=29;while(0);do if((l|0)==29){a[d+3>>0]=j;if(f|0){g=c[e>>2]|0;l=31;break}g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){lg(e,1);g=c[n>>2]|0;l=35;break}else{a[d+4>>0]=f;f=0;l=38;break}}while(0);if((l|0)==31){j=f+-1|0;c[n>>2]=j;f=g>>>j&1;g=j;l=35}do if((l|0)==35){a[d+4>>0]=f;if(g>>>0<2){f=g;g=c[m>>2]|0;l=38;break}else{h=c[e>>2]<<32-g>>>30;f=g;break}}while(0);if((l|0)==38){h=2-f|0;h=((1<<f)+-1&c[e>>2])<<h|g>>>(32-h|0)}do if(!(a[o>>0]|0))if(f>>>0>2){f=f+-2|0;c[n>>2]=f;break}else{lg(e,2);f=c[n>>2]|0;break}while(0);a[d+5>>0]=h;if(f>>>0<4){h=4-f|0;g=c[e>>2]|0;h=(g&(1<<f)+-1)<<h|(c[m>>2]|0)>>>(32-h|0)}else{g=c[e>>2]|0;h=g<<32-f>>>28}do if(!(a[o>>0]|0))if(f>>>0>4){f=f+-4|0;c[n>>2]=f;a[d+6>>0]=h;l=52;break}else{lg(e,4);f=c[n>>2]|0;l=50;break}else l=50;while(0);do if((l|0)==50){a[d+6>>0]=h;if(f|0){g=c[e>>2]|0;l=52;break}g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){lg(e,1);g=c[n>>2]|0;l=56;break}else{a[d+7>>0]=f;f=0;l=59;break}}while(0);if((l|0)==52){j=f+-1|0;c[n>>2]=j;f=g>>>j&1;g=j;l=56}do if((l|0)==56){a[d+7>>0]=f;if(g>>>0<3){f=g;g=c[m>>2]|0;l=59;break}else{j=c[e>>2]|0;h=j<<32-g>>>29;f=g;g=j;break}}while(0);if((l|0)==59){h=3-f|0;l=c[e>>2]|0;h=((1<<f)+-1&l)<<h|g>>>(32-h|0);g=l}do if(!(a[o>>0]|0))if(f>>>0>3){f=f+-3|0;c[n>>2]=f;a[d+8>>0]=h;l=66;break}else{lg(e,3);f=c[n>>2]|0;l=64;break}else l=64;while(0);do if((l|0)==64){a[d+8>>0]=h;if(f|0){g=c[e>>2]|0;l=66;break}g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){lg(e,1);g=c[n>>2]|0;l=70;break}else{a[d+9>>0]=f;f=g>>>31;break}}while(0);if((l|0)==66){j=f+-1|0;c[n>>2]=j;f=g>>>j&1;g=j;l=70}do if((l|0)==70){a[d+9>>0]=f;if(g|0){f=g+-1|0;c[n>>2]=f;f=(c[e>>2]|0)>>>f&1;break}f=(c[m>>2]|0)>>>31;if(!(a[o>>0]|0))lg(e,1)}while(0);a[d+10>>0]=f;if((a[d+22>>0]|0)==1?(a[k>>0]|0)==0:0){g=c[n>>2]|0;if(g>>>0<2){f=2-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[m>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>30;do if(!(a[o>>0]|0))if(g>>>0>2){c[n>>2]=g+-2;break}else{lg(e,2);break}while(0);a[d+11>>0]=f}f=c[n>>2]|0;do if(!f){g=c[m>>2]|0;f=g>>>31;if(!(a[o>>0]|0)){lg(e,1);g=c[n>>2]|0;l=89;break}else{a[d+12>>0]=f;f=g>>>31;l=92;break}}else{g=f+-1|0;c[n>>2]=g;f=(c[e>>2]|0)>>>g&1;l=89}while(0);do if((l|0)==89){a[d+12>>0]=f;if(!g){g=c[m>>2]|0;f=g>>>31;if(a[o>>0]|0){l=92;break}lg(e,1);g=c[n>>2]|0}else{g=g+-1|0;c[n>>2]=g;f=(c[e>>2]|0)>>>g&1}a[d+13>>0]=f;if(g>>>0<13){f=g;g=c[m>>2]|0;l=97;break}else{h=c[e>>2]<<32-g>>>19;f=g;break}}while(0);if((l|0)==92){a[d+13>>0]=f;f=0;l=97}if((l|0)==97){h=13-f|0;h=((1<<f)+-1&c[e>>2])<<h|g>>>(32-h|0)}do if(!(a[o>>0]|0))if(f>>>0>13){g=f+-13|0;c[n>>2]=g;break}else{lg(e,13);g=c[n>>2]|0;break}else g=f;while(0);b[d+14>>1]=h;if(g>>>0<11){f=11-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[m>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>21;do if(!(a[o>>0]|0))if(g>>>0>11){g=g+-11|0;c[n>>2]=g;break}else{lg(e,11);g=c[n>>2]|0;break}while(0);b[d+16>>1]=f;if(g>>>0<2){f=2-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[m>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>30;do if(!(a[o>>0]|0))if(g>>>0>2){c[n>>2]=g+-2;break}else{lg(e,2);break}while(0);a[d+18>>0]=f;if(a[d+4>>0]|0){o=0;return o|0}g=c[n>>2]|0;if(g>>>0<16){f=16-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[m>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>16;do if(!(a[o>>0]|0))if(g>>>0>16){c[n>>2]=g+-16;break}else{lg(e,16);break}while(0);b[d+20>>1]=f;o=0;return o|0}function Ng(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a&65535;d=(a&65535)>>>3;e=a&-2;h=og(36)|0;f=h;g=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[h+24>>2]=Og(d<<1&65535)|0;c[h+32>>2]=Og(b<<1&65535)|0;c[h+28>>2]=Og(e)|0;if(a<<16>>16==1024){a=27280;b=23312;d=22320;e=14384;f=13392;g=5456}else{a=29328;b=25360;d=22832;e=18480;f=13904;g=9552}c[h>>2]=g;c[h+8>>2]=f;c[h+4>>2]=e;c[h+12>>2]=d;c[h+16>>2]=b;c[h+20>>2]=a;return h|0}function Og(a){a=a|0;var d=0,e=0,f=0;e=og(12)|0;if(a&7)O(117656,117667,66,117674);b[e>>1]=a;switch(a<<16>>16){case 2048:{d=40048;f=9;break}case 256:{d=39536;f=9;break}case 1024:{d=37488;f=9;break}case 1920:{d=33648;f=9;break}case 240:{d=33168;f=9;break}case 960:{d=31248;f=9;break}default:{}}if((f|0)==9)c[e+8>>2]=d;c[e+4>>2]=yg((a&65535)>>>2)|0;return e|0}function Pg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=b+176|0;t=e+8|0;fl(b|0,0,471)|0;f=c[t>>2]|0;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;s=e+20|0;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{lg(e,4);f=c[t>>2]|0;break}while(0);a[b>>0]=g;if(f>>>0<2){g=2-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>30;do if(!(a[s>>0]|0))if(f>>>0>2){f=f+-2|0;c[t>>2]=f;break}else{lg(e,2);f=c[t>>2]|0;break}while(0);a[b+1>>0]=g;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{lg(e,4);f=c[t>>2]|0;break}while(0);a[b+2>>0]=g;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{lg(e,4);f=c[t>>2]|0;break}while(0);m=b+3|0;a[m>>0]=g;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{lg(e,4);f=c[t>>2]|0;break}while(0);n=b+4|0;a[n>>0]=g;if(f>>>0<4){g=4-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;break}else{lg(e,4);f=c[t>>2]|0;break}while(0);o=b+5|0;a[o>>0]=g;if(f>>>0<2){g=2-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>30;do if(!(a[s>>0]|0))if(f>>>0>2){f=f+-2|0;c[t>>2]=f;break}else{lg(e,2);f=c[t>>2]|0;break}while(0);p=b+6|0;a[p>>0]=g;if(f>>>0<3){g=3-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>29;do if(!(a[s>>0]|0))if(f>>>0>3){f=f+-3|0;c[t>>2]=f;break}else{lg(e,3);f=c[t>>2]|0;break}while(0);q=b+7|0;a[q>>0]=g;if(f>>>0<4){h=4-f|0;h=(c[e>>2]&(1<<f)+-1)<<h|(c[e+4>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){f=f+-4|0;c[t>>2]=f;g=b+8|0;a[g>>0]=h;i=65;break}else{lg(e,4);f=c[t>>2]|0;i=64;break}else i=64;while(0);do if((i|0)==64){g=b+8|0;a[g>>0]=h;if(!f){f=(c[e+4>>2]|0)>>>31;if(a[s>>0]|0){r=g;break}lg(e,1);r=g}else i=65}while(0);if((i|0)==65){f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1;r=g}l=f&255;a[b+9>>0]=l;if(l<<24>>24==1){g=c[t>>2]|0;if(g>>>0<4){f=4-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[e+4>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{lg(e,4);break}while(0);a[b+10>>0]=f}f=c[t>>2]|0;do if(!f){f=(c[e+4>>2]|0)>>>31;if(a[s>>0]|0)break;lg(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);l=f&255;a[b+11>>0]=l;if(l<<24>>24==1){g=c[t>>2]|0;if(g>>>0<4){f=4-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[e+4>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{lg(e,4);break}while(0);a[b+12>>0]=f}f=c[t>>2]|0;do if(!f){f=(c[e+4>>2]|0)>>>31;if(a[s>>0]|0)break;lg(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);l=f&255;a[b+13>>0]=l;if(l<<24>>24==1){f=c[t>>2]|0;if(f>>>0<2){g=2-f|0;g=(c[e>>2]&(1<<f)+-1)<<g|(c[e+4>>2]|0)>>>(32-g|0)}else g=c[e>>2]<<32-f>>>30;do if(!(a[s>>0]|0))if(f>>>0>2){f=f+-2|0;c[t>>2]=f;a[b+15>>0]=g;i=103;break}else{lg(e,2);f=c[t>>2]|0;i=102;break}else i=102;while(0);do if((i|0)==102){a[b+15>>0]=g;if(f|0){i=103;break}f=(c[e+4>>2]|0)>>>31;if(a[s>>0]|0)break;lg(e,1)}while(0);if((i|0)==103){f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}a[b+14>>0]=f}if(a[m>>0]|0){k=e+4|0;l=b+435|0;j=0;g=0;while(1){f=c[t>>2]|0;do if(!f){f=(c[k>>2]|0)>>>31;if(a[s>>0]|0)break;lg(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);i=b+16+g|0;a[i>>0]=f;f=c[t>>2]|0;if(f>>>0<4){h=4-f|0;h=(c[e>>2]&(1<<f)+-1)<<h|(c[k>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){c[t>>2]=f+-4;break}else{lg(e,4);break}while(0);a[b+32+g>>0]=h;g=a[u>>0]|0;f=h&255;if(!(a[i>>0]&1)){a[b+439+f>>0]=g;a[l>>0]=(a[l>>0]|0)+1<<24>>24;f=g+1<<24>>24}else{a[b+455+f>>0]=g;a[l>>0]=(d[l>>0]|0)+2;f=(g&255)+2&255}a[u>>0]=f;f=j+1<<24>>24;if((f&255)<(d[m>>0]|0)){j=f;g=f&255}else break}}if(a[n>>0]|0){k=e+4|0;l=b+436|0;j=0;g=0;while(1){f=c[t>>2]|0;do if(!f){f=(c[k>>2]|0)>>>31;if(a[s>>0]|0)break;lg(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);i=b+48+g|0;a[i>>0]=f;f=c[t>>2]|0;if(f>>>0<4){h=4-f|0;h=(c[e>>2]&(1<<f)+-1)<<h|(c[k>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){c[t>>2]=f+-4;break}else{lg(e,4);break}while(0);a[b+64+g>>0]=h;g=a[u>>0]|0;f=h&255;if(!(a[i>>0]&1)){a[b+439+f>>0]=g;a[l>>0]=(a[l>>0]|0)+1<<24>>24;f=g+1<<24>>24}else{a[b+455+f>>0]=g;a[l>>0]=(d[l>>0]|0)+2;f=(g&255)+2&255}a[u>>0]=f;f=j+1<<24>>24;if((f&255)<(d[n>>0]|0)){j=f;g=f&255}else break}}if(a[o>>0]|0){k=e+4|0;l=b+437|0;j=0;g=0;while(1){f=c[t>>2]|0;do if(!f){f=(c[k>>2]|0)>>>31;if(a[s>>0]|0)break;lg(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);i=b+80+g|0;a[i>>0]=f;f=c[t>>2]|0;if(f>>>0<4){h=4-f|0;h=(c[e>>2]&(1<<f)+-1)<<h|(c[k>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-f>>>28;do if(!(a[s>>0]|0))if(f>>>0>4){c[t>>2]=f+-4;break}else{lg(e,4);break}while(0);a[b+96+g>>0]=h;g=a[u>>0]|0;f=h&255;if(!(a[i>>0]&1)){a[b+439+f>>0]=g;a[l>>0]=(a[l>>0]|0)+1<<24>>24;a[u>>0]=g+1<<24>>24}else{a[b+455+f>>0]=g;a[u>>0]=(g&255)+2;a[l>>0]=(d[l>>0]|0)+2}f=j+1<<24>>24;if((f&255)<(d[o>>0]|0)){j=f;g=f&255}else break}}f=a[p>>0]|0;if(f<<24>>24){k=e+4|0;l=b+438|0;j=0;do{i=j&255;g=c[t>>2]|0;if(g>>>0<4){h=4-g|0;h=(c[e>>2]&(1<<g)+-1)<<h|(c[k>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{lg(e,4);f=a[p>>0]|0;break}while(0);a[b+112+i>>0]=h;o=a[u>>0]|0;a[(h&255)+(b+439)>>0]=o;a[l>>0]=(a[l>>0]|0)+1<<24>>24;a[u>>0]=o+1<<24>>24;j=j+1<<24>>24}while((j&255)<(f&255))}f=a[q>>0]|0;if(f<<24>>24){k=e+4|0;j=0;do{i=j&255;g=c[t>>2]|0;if(g>>>0<4){h=4-g|0;h=(c[e>>2]&(1<<g)+-1)<<h|(c[k>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{lg(e,4);f=a[q>>0]|0;break}while(0);a[b+128+i>>0]=h;j=j+1<<24>>24}while((j&255)<(f&255))}if(a[r>>0]|0){j=e+4|0;i=0;h=0;while(1){f=c[t>>2]|0;do if(!f){f=(c[j>>2]|0)>>>31;if(a[s>>0]|0)break;lg(e,1)}else{f=f+-1|0;c[t>>2]=f;f=(c[e>>2]|0)>>>f&1}while(0);a[b+144+h>>0]=f;g=c[t>>2]|0;if(g>>>0<4){f=4-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[j>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>28;do if(!(a[s>>0]|0))if(g>>>0>4){c[t>>2]=g+-4;break}else{lg(e,4);break}while(0);a[b+160+h>>0]=f;f=i+1<<24>>24;if((f&255)<(d[r>>0]|0)){i=f;h=f&255}else break}}kg(e)|0;g=c[t>>2]|0;if(g>>>0<8){f=8-g|0;f=(c[e>>2]&(1<<g)+-1)<<f|(c[e+4>>2]|0)>>>(32-f|0)}else f=c[e>>2]<<32-g>>>24;do if(!(a[s>>0]|0))if(g>>>0>8){c[t>>2]=g+-8;break}else{lg(e,8);break}while(0);g=f&255;k=b+177|0;a[k>>0]=g;if(!(g<<24>>24)){t=0;b=b+178+t|0;a[b>>0]=0;u=a[u>>0]|0;u=(u&255)>64;u=u?22:0;return u|0}l=e+4|0;j=0;f=0;do{h=c[t>>2]|0;if(h>>>0<8){i=8-h|0;i=(c[e>>2]&(1<<h)+-1)<<i|(c[l>>2]|0)>>>(32-i|0)}else i=c[e>>2]<<32-h>>>24;do if(!(a[s>>0]|0))if(h>>>0>8){c[t>>2]=h+-8;break}else{lg(e,8);g=a[k>>0]|0;break}while(0);a[b+178+f>>0]=i;j=j+1<<24>>24;f=j&255}while((j&255)<(g&255));b=b+178+f|0;a[b>>0]=0;u=a[u>>0]|0;u=(u&255)>64;u=u?22:0;return u|0}function Qg(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;m=Vb;Vb=Vb+32|0;l=m;if((d|0)==0|(f|0)==0|g>>>0<2|(h|0)==0|(i|0)==0){d=-1;Vb=m;return d|0}a[d+1>>0]=0;a[d>>0]=0;j=Rg(f,g,l,d+1657|0,a[d+2>>0]|0)|0;k=c[l+4>>2]|0;c[h>>2]=k;g=l+8|0;f=a[g>>0]|0;if(!(f<<24>>24)){a[i>>0]=a[d+1833>>0]|0;a[d+1656>>0]=1;f=a[i>>0]|0}else a[i>>0]=f;if(f<<24>>24==1)a[i>>0]=2;f=d+3|0;a[f>>0]=a[l+1>>0]|0;h=d+4|0;a[h>>0]=a[l>>0]|0;a[d+6>>0]=a[l+15>>0]|0;a[d+7>>0]=a[l+16>>0]|0;a[d+8>>0]=a[l+17>>0]|0;o=a[l+19>>0]|0;a[d+840>>0]=o;n=a[l+21>>0]|0;a[d+842>>0]=n;i=(a[d+2267>>0]|0)==0?a[l+20>>0]|0:0;a[d+841>>0]=i;if(o<<24>>24==1&n<<24>>24==0|i<<24>>24==1)a[f>>0]=Bg(k>>>1)|0;if(j<<24>>24){o=j;Vb=m;return o|0}a[d+5>>0]=a[g>>0]|0;g=d+10|0;if(!(a[l+9>>0]|0))f=b[g>>1]|0;else{b[g>>1]=960;f=960}c[d+320>>2]=Ng(f)|0;if((a[h>>0]|0)!=23){o=0;Vb=m;return o|0}b[g>>1]=(e[g>>1]|0)>>>1;o=0;Vb=m;return o|0}function Rg(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;f=Vb;Vb=Vb+48|0;g=f;hg(g,a,b);kg(g)|0;e=Sg(g,c,d,b,e)|0;Vb=f;return e|0}function Sg(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=jg(b)|0;if(!d){d=-8;return d|0};c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;q=b+8|0;h=c[q>>2]|0;if(h>>>0<5){i=5-h|0;i=(c[b>>2]&(1<<h)+-1)<<i|(c[b+4>>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>27;p=b+20|0;do if(!(a[p>>0]|0))if(h>>>0>5){h=h+-5|0;c[q>>2]=h;break}else{lg(b,5);h=c[q>>2]|0;break}while(0);a[d>>0]=i;if(h>>>0<4){i=4-h|0;i=(c[b>>2]&(1<<h)+-1)<<i|(c[b+4>>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>28;do if(!(a[p>>0]|0))if(h>>>0>4){c[q>>2]=h+-4;break}else{lg(b,4);break}while(0);m=d+1|0;a[m>>0]=i;do if((i&255|0)==15?(j=c[q>>2]|0,(a[p>>0]|0)==0):0)if(j>>>0>24){h=j+-24|0;c[q>>2]=h;break}else{lg(b,24);o=21;break}else o=21;while(0);if((o|0)==21)h=c[q>>2]|0;if(h>>>0<4){i=4-h|0;i=(c[b>>2]&(1<<h)+-1)<<i|(c[b+4>>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>28;do if(!(a[p>>0]|0))if(h>>>0>4){c[q>>2]=h+-4;break}else{lg(b,4);break}while(0);j=d+8|0;a[j>>0]=i;i=Cg(a[m>>0]|0)|0;n=d+4|0;c[n>>2]=i;h=a[d>>0]|0;if(-9044023>>>(h&255)&1|0){d=-1;return d|0}if(!i){d=-2;return d|0}i=a[j>>0]|0;if((i&255)>7){d=-3;return d|0}if(i<<24>>24==1)a[j>>0]=2;l=d+19|0;a[l>>0]=-1;if(h<<24>>24==5){a[l>>0]=1;h=c[q>>2]|0;if(h>>>0<4){i=4-h|0;i=(c[b>>2]&(1<<h)+-1)<<i|(c[b+4>>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>28;do if(!(a[p>>0]|0))if(h>>>0>4){c[q>>2]=h+-4;break}else{lg(b,4);break}while(0);h=i&255;if((a[m>>0]|0)==h<<24>>24)a[d+21>>0]=1;a[m>>0]=h;do if((i&255|0)==15){i=c[q>>2]|0;if(i>>>0<24){h=24-i|0;h=(c[b>>2]&(1<<i)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-i>>>8;if(a[p>>0]|0)break;if(i>>>0>24){c[q>>2]=i+-24;break}else{lg(b,24);break}}else h=Cg(h)|0;while(0);c[n>>2]=h;i=c[q>>2]|0;if(i>>>0<5){h=5-i|0;h=(c[b>>2]&(1<<i)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-i>>>27;do if(!(a[p>>0]|0))if(i>>>0>5){c[q>>2]=i+-5;break}else{lg(b,5);break}while(0);h=h&255;a[d>>0]=h}switch(h<<24>>24){case 7:case 6:case 4:case 3:case 2:case 1:{e=Tg(b,d,e)|0;break}default:if((h&255)>16){i=Tg(b,d,e)|0;j=c[q>>2]|0;if(j>>>0<2){h=2-j|0;h=(c[b>>2]&(1<<j)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-j>>>30;do if(!(a[p>>0]|0))if(j>>>0>2){c[q>>2]=j+-2;break}else{lg(b,2);break}while(0);a[d+18>>0]=h;e=(h&255|0)==0?i:-5}else e=-4}do if(g<<24>>24==0?(k=(f<<3)-k+(jg(b)|0)<<24,(a[d>>0]|0)!=5&(k|0)>251658240):0){i=c[q>>2]|0;if(i>>>0<11){h=11-i|0;h=(c[b>>2]&(1<<i)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-i>>>21;do if(!(a[p>>0]|0))if(i>>>0>11){c[q>>2]=i+-11;break}else{lg(b,11);break}while(0);if((h&65535|0)==695){h=c[q>>2]|0;if(h>>>0<5){i=5-h|0;i=(c[b>>2]&(1<<h)+-1)<<i|(c[b+4>>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>27;do if(!(a[p>>0]|0))if(h>>>0>5){c[q>>2]=h+-5;break}else{lg(b,5);break}while(0);j=i&255;if((i&255|0)!=5){o=114;break}h=c[q>>2]|0;do if(!h){h=(c[b+4>>2]|0)>>>31;if(a[p>>0]|0)break;lg(b,1)}else{h=h+-1|0;c[q>>2]=h;h=(c[b>>2]|0)>>>h&1}while(0);k=h&255;a[l>>0]=k;if(!(k<<24>>24))break;a[d>>0]=j;h=c[q>>2]|0;if(h>>>0<4){i=4-h|0;i=(c[b>>2]&(1<<h)+-1)<<i|(c[b+4>>2]|0)>>>(32-i|0)}else i=c[b>>2]<<32-h>>>28;do if(!(a[p>>0]|0))if(h>>>0>4){c[q>>2]=h+-4;break}else{lg(b,4);break}while(0);h=i&255;if((a[m>>0]|0)==h<<24>>24)a[d+21>>0]=1;a[m>>0]=h;do if((i&255|0)==15){i=c[q>>2]|0;if(i>>>0<24){h=24-i|0;h=(c[b>>2]&(1<<i)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-i>>>8;if(a[p>>0]|0)break;if(i>>>0>24){c[q>>2]=i+-24;break}else{lg(b,24);break}}else h=Cg(h)|0;while(0);c[n>>2]=h;o=114}else o=114}else o=114;while(0);do if((o|0)==114?(a[l>>0]|0)==-1:0){h=c[n>>2]|0;if(h>>>0<24001){c[n>>2]=h<<1;a[d+20>>0]=1;break}else{a[d+21>>0]=1;break}}while(0);d=e;return d|0}function Tg(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;m=Vb;Vb=Vb+480|0;k=m;l=e+8|0;h=c[l>>2]|0;do if(!h){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){lg(e,1);i=c[l>>2]|0;j=6;break}else{a[f+9>>0]=h;j=8;break}}else{i=h+-1|0;c[l>>2]=i;h=(c[e>>2]|0)>>>i&1;j=6}while(0);if((j|0)==6){a[f+9>>0]=h;if(!i)j=8;else{h=i+-1|0;c[l>>2]=h;h=(c[e>>2]|0)>>>h&1}}if((j|0)==8){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))lg(e,1)}j=h&255;a[f+10>>0]=j;if(j<<24>>24==1){i=c[l>>2]|0;if(i>>>0<14){h=14-i|0;h=(c[e>>2]&(1<<i)+-1)<<h|(c[e+4>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-i>>>18;do if(!(a[e+20>>0]|0))if(i>>>0>14){c[l>>2]=i+-14;break}else{lg(e,14);break}while(0);b[f+12>>1]=h}h=c[l>>2]|0;if(!h){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))lg(e,1)}else{h=h+-1|0;c[l>>2]=h;h=(c[e>>2]|0)>>>h&1}h=h&255;i=f+14|0;a[i>>0]=h;if(!(a[f+8>>0]|0)){if((Pg(k,e)|0)<<24>>24){l=-3;Vb=m;return l|0}if(g|0)dl(g|0,k|0,471)|0;h=a[i>>0]|0}if(h<<24>>24!=1){l=0;Vb=m;return l|0}if((d[f>>0]|0)>16){h=c[l>>2]|0;do if(!h){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){lg(e,1);i=c[l>>2]|0;j=35;break}else{a[f+15>>0]=h;j=37;break}}else{i=h+-1|0;c[l>>2]=i;h=(c[e>>2]|0)>>>i&1;j=35}while(0);if((j|0)==35){a[f+15>>0]=h;if(!i)j=37;else{i=i+-1|0;c[l>>2]=i;h=(c[e>>2]|0)>>>i&1;j=40}}do if((j|0)==37){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0)){lg(e,1);i=c[l>>2]|0;j=40;break}else{a[f+16>>0]=h;j=42;break}}while(0);if((j|0)==40){a[f+16>>0]=h;if(!i)j=42;else{h=i+-1|0;c[l>>2]=h;h=(c[e>>2]|0)>>>h&1}}if((j|0)==42){h=(c[e+4>>2]|0)>>>31;if(!(a[e+20>>0]|0))lg(e,1)}a[f+17>>0]=h}h=c[l>>2]|0;if(a[e+20>>0]|0){l=0;Vb=m;return l|0}if(h>>>0>1){c[l>>2]=h+-1;l=0;Vb=m;return l|0}else{lg(e,1);l=0;Vb=m;return l|0}return 0}function Ug(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(!a)return;d=a+328|0;e=a+584|0;f=a+1136|0;g=a+1392|0;h=0;do{b=c[d+(h<<2)>>2]|0;if(b|0)Ag(b);b=c[e+(h<<2)>>2]|0;if(b|0)Ag(b);b=c[f+(h<<2)>>2]|0;if(b|0)Ag(b);b=c[g+(h<<2)>>2]|0;if(b|0)Ag(b);h=h+1|0}while((h|0)!=64);Vg(c[a+320>>2]|0);Wg(c[a+324>>2]|0);b=c[a+124>>2]|0;if(b|0)Ag(b);b=a+892|0;e=0;do{d=c[b+(e<<2)>>2]|0;if(d|0)Xg(d);e=e+1|0}while((e|0)!=48);Ag(a);return}function Vg(a){a=a|0;if(!a)return;$g(c[a+24>>2]|0);$g(c[a+32>>2]|0);$g(c[a+28>>2]|0);Ag(a);return}function Wg(a){a=a|0;if(!a)return;Ag(a);return}function Xg(a){a=a|0;var b=0;if(!a)return;Yg(c[a+12440>>2]|0);Zg(c[a+12448>>2]|0);b=a+12452|0;if(c[b>>2]|0){Yg(c[a+12444>>2]|0);Zg(c[b>>2]|0)}b=c[a+648>>2]|0;if(b|0)Ag(b);b=c[a+688>>2]|0;if(b|0)Ag(b);b=c[a+668>>2]|0;if(b|0)Ag(b);b=c[a+708>>2]|0;if(b|0)Ag(b);b=c[a+652>>2]|0;if(b|0)Ag(b);b=c[a+692>>2]|0;if(b|0)Ag(b);b=c[a+672>>2]|0;if(b|0)Ag(b);b=c[a+712>>2]|0;if(b|0)Ag(b);b=c[a+656>>2]|0;if(b|0)Ag(b);b=c[a+696>>2]|0;if(b|0)Ag(b);b=c[a+676>>2]|0;if(b|0)Ag(b);b=c[a+716>>2]|0;if(b|0)Ag(b);b=c[a+660>>2]|0;if(b|0)Ag(b);b=c[a+700>>2]|0;if(b|0)Ag(b);b=c[a+680>>2]|0;if(b|0)Ag(b);b=c[a+720>>2]|0;if(b|0)Ag(b);b=c[a+664>>2]|0;if(b|0)Ag(b);b=c[a+704>>2]|0;if(b|0)Ag(b);b=c[a+684>>2]|0;if(b|0)Ag(b);b=c[a+724>>2]|0;if(b|0)Ag(b);b=c[a+53420>>2]|0;if(b|0)_g(b);Ag(a);return}function Yg(a){a=a|0;var b=0;if(!a)return;b=c[a>>2]|0;if(b|0)Ag(b);Ag(a);return}function Zg(a){a=a|0;var b=0;if(!a)return;b=c[a>>2]|0;if(b|0)Ag(b);Ag(a);return}function _g(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=c[b+720>>2]|0;if(!i){Ag(b);return}d=c[i+12>>2]|0;if(d|0)Ag(d);f=i+16|0;d=c[f>>2]|0;e=c[d>>2]|0;if(e){Ag(e);d=c[f>>2]|0}e=c[d+4>>2]|0;if(e){Ag(e);d=c[f>>2]|0}e=c[d+8>>2]|0;if(e){Ag(e);d=c[f>>2]|0}e=c[d+12>>2]|0;if(e){Ag(e);d=c[f>>2]|0}e=c[d+16>>2]|0;if(e){Ag(e);d=c[f>>2]|0}if(d|0)Ag(d);e=a[i>>0]|0;h=i+20|0;d=c[h>>2]|0;if(e<<24>>24){g=0;do{f=c[d+((g&255)<<2)>>2]|0;if(f){Ag(f);e=a[i>>0]|0;d=c[h>>2]|0}g=g+1<<24>>24}while((g&255)<(e&255))}if(d|0)Ag(d);Ag(i);Ag(b);return}function $g(a){a=a|0;if(!a)return;zg(c[a+4>>2]|0);Ag(a);return}function ah(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return bh(a,b,c,d,0,0)|0}function bh(f,g,h,i,j,k){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0;B=Vb;Vb=Vb+64|0;n=B;m=B+40|0;o=n;p=o+36|0;do{c[o>>2]=0;o=o+4|0}while((o|0)<(p|0));if((f|0)==0|(g|0)==0|(h|0)==0){f=0;Vb=B;return f|0}A=f+10|0;l=b[A>>1]|0;o=g;p=o+88|0;do{c[o>>2]=0;o=o+4|0}while((o|0)<(p|0));o=f+2192|0;p=o+64|0;do{c[o>>2]=0;o=o+4|0}while((o|0)<(p|0));if(i>>>0>127?(Pi(h,117689,3)|0)==0:0){c[g>>2]=128;f=0;Vb=B;return f|0}hg(n,h,i);if(a[f>>0]|0){a[m+22>>0]=a[f+2266>>0]|0;y=Mg(m,n)|0;h=g+9|0;a[h>>0]=y;if(!(y<<24>>24))z=8;else h=0}else{h=g+9|0;z=8}a:do if((z|0)==8){ch(f,g,n,f+1657|0,c[f+324>>2]|0);u=f+24|0;i=a[u>>0]|0;if(!(a[h>>0]|0)){if((i+-1&255)>63){a[h>>0]=12;h=0;break}c[g>>2]=((jg(n)|0)+7|0)>>>3;if(a[n+20>>0]|0){a[h>>0]=14;h=0;break}b:do if((a[f>>0]|0)==0?(a[f+1>>0]|0)==0:0){m=f+5|0;n=i<<24>>24==8;if(n|(a[m>>0]|0)==0)a[m>>0]=n?7:i;switch(i<<24>>24){case 6:case 5:{z=20;break b}case 7:break;default:break b}a[m>>0]=0;i=7}else z=19;while(0);if((z|0)==19)if((i+-5&255)<2)z=20;if((z|0)==20)if(a[f+2265>>0]|0){a[f+20>>0]=1;i=2}q=i<<24>>24==1;y=q?2:i;a[f+21>>0]=q&1;q=g+19|0;n=g+20|0;s=g+21|0;v=g+22|0;t=g+23|0;i=f+20|0;o=q;p=o+68|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0));c:do if(!(a[i>>0]|0)){if(a[f+1656>>0]|0){m=a[f+2092>>0]|0;a[q>>0]=m;p=a[f+2093>>0]|0;a[n>>0]=p;r=a[f+2094>>0]|0;a[s>>0]=r;a[v>>0]=a[f+2095>>0]|0;o=m&255;if(!(o&1))i=0;else{a[t>>0]=2;a[g+24>>0]=3;i=2}if(m<<24>>24){n=0;while(1){a[(i&255)+(g+23)>>0]=2;m=i+2<<24>>24;a[((i|1)&255)+(g+23)>>0]=3;n=n+2&255;if(n>>>0>=o>>>0){i=m;break}else i=m}}if(p<<24>>24){o=p&255;m=0;while(1){a[(i&255)+(g+23)>>0]=4;n=i+2<<24>>24;a[((i|1)&255)+(g+23)>>0]=5;m=m+2&255;if(m>>>0>=o>>>0){i=n;break}else i=n}}q=(r&1)==0;x=r+((q^1)<<31>>31)<<24>>24;p=x&255;m=i|1;n=(i&255)+(g+23)|0;if(x<<24>>24){o=0;do{a[n>>0]=6;i=i+2<<24>>24;a[(m&255)+(g+23)>>0]=7;o=o+2&255;m=i|1;n=(i&255)+(g+23)|0}while(o>>>0<p>>>0)}if(!q){a[n>>0]=8;i=m}n=a[v>>0]|0;if(!(n<<24>>24))break;else m=0;while(1){a[(i&255)+(g+23)>>0]=9;m=m+1<<24>>24;if((m&255)>=(n&255))break c;else i=i+1<<24>>24}}switch(a[f+5>>0]|0){case 1:{a[q>>0]=2;a[t>>0]=2;a[g+24>>0]=3;break c}case 2:{a[q>>0]=2;a[t>>0]=2;a[g+24>>0]=3;break c}case 3:{a[q>>0]=3;a[t>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;break c}case 4:{a[q>>0]=3;a[s>>0]=1;a[t>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;a[g+26>>0]=8;break c}case 5:{a[q>>0]=3;a[s>>0]=2;a[t>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;a[g+26>>0]=6;a[g+27>>0]=7;break c}case 6:{a[q>>0]=3;a[s>>0]=2;a[v>>0]=1;a[t>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;a[g+26>>0]=6;a[g+27>>0]=7;a[g+28>>0]=9;break c}case 7:{a[q>>0]=3;a[n>>0]=2;a[s>>0]=2;a[v>>0]=1;a[t>>0]=1;a[g+24>>0]=2;a[g+25>>0]=3;a[g+26>>0]=4;a[g+27>>0]=5;a[g+28>>0]=6;a[g+29>>0]=7;a[g+30>>0]=9;break c}default:{r=f+23|0;x=(d[u>>0]|0)-(d[r>>0]|0)|0;i=x&255;p=x&255;d:do if(!(x&1)){m=p>>>1;x=m&255;a[q>>0]=x;a[s>>0]=x;if(!(m&1)){if(m|0){n=0;do{a[g+23+n>>0]=2;a[n+1+(g+23)>>0]=3;n=n+2&255}while(n>>>0<m>>>0)}if(m>>>0>=p>>>0)break;while(1){a[g+23+m>>0]=6;a[m+1+(g+23)>>0]=7;m=m+2&255;if(m>>>0>=p>>>0)break d}}a[t>>0]=1;if(m|0){n=1;do{a[g+23+n>>0]=2;a[n+1+(g+23)>>0]=3;n=n+2&255}while(n>>>0<=m>>>0)}m=m+1|0;n=p+-1|0;if((m|0)<(n|0))do{a[g+23+m>>0]=6;a[m+1+(g+23)>>0]=7;m=m+2&255}while((m|0)<(n|0));a[g+23+n>>0]=8}else{o=p+-1|0;n=(o|0)/2|0;m=n&255;if(!(a[f+22>>0]|0)){o=n&255;n=n+1|0;a[q>>0]=n;a[s>>0]=m;a[t>>0]=1;if(o|0){m=1;do{a[g+23+m>>0]=2;a[m+1+(g+23)>>0]=3;m=m+2&255}while(m>>>0<=o>>>0)}m=n&255;if(m>>>0>=p>>>0)break;while(1){a[g+23+m>>0]=6;a[m+1+(g+23)>>0]=7;m=m+2&255;if(m>>>0>=p>>>0)break d}}a[q>>0]=m;m=n&255;a[s>>0]=n+1;if(m|0){n=0;do{a[g+23+n>>0]=2;a[n+1+(g+23)>>0]=3;n=n+2&255}while(n>>>0<m>>>0)}if((m|0)<(o|0))do{a[g+23+m>>0]=6;a[m+1+(g+23)>>0]=7;m=m+2&255}while((m|0)<(o|0));a[g+23+o>>0]=8}while(0);a[v>>0]=a[r>>0]|0;if((d[u>>0]|0)<=(i&255))break c;do{a[(i&255)+(g+23)>>0]=9;i=i+1<<24>>24}while((i&255)<(d[u>>0]|0))}}}else{a[q>>0]=2;a[t>>0]=2;a[g+24>>0]=3}while(0);r=l&65535;p=w(y&255,r)|0;v=g+4|0;c[v>>2]=p;a[g+8>>0]=y;s=g+12|0;c[s>>2]=Cg(a[f+3>>0]|0)|0;x=f+4|0;t=g+17|0;a[t>>0]=a[x>>0]|0;u=g+16|0;a[u>>0]=0;q=g+18|0;a[q>>0]=0;n=(a[f+1>>0]|0)!=0&1;a[q>>0]=n;a[q>>0]=(a[f>>0]|0)==0?n:2;a[g+87>>0]=a[f+1132>>0]|0;q=f+124|0;n=c[q>>2]|0;o=(n|0)==0;if(!o?(a[f+122>>0]|0)==y<<24>>24:0)i=f+840|0;else{m=a[117693+((d[f+2264>>0]|0)+-1)>>0]|0;i=f+840|0;if((a[i>>0]|0)==1?(a[f+842>>0]|0)==0:0)z=75;else if((a[f+841>>0]|0)==1)z=75;if((z|0)==75)m=(m&255)<<1&255;if(k){if((w(p,m&255)|0)>>>0>k>>>0){a[h>>0]=27;f=0;Vb=B;return f|0}}else{if(!o)Ag(n);c[q>>2]=0;c[q>>2]=og(w(p,m&255)|0)|0}a[f+122>>0]=y}p=c[((k|0)==0?q:j)>>2]|0;n=(a[i>>0]|0)==1;if(!(!n?(a[f+841>>0]|0)!=1:0)){o=(a[f+842>>0]|0)==0;if(o){c[v>>2]=c[v>>2]<<1;c[s>>2]=c[s>>2]<<1;l=r<<1&65535}m=a[f+25>>0]|0;e:do if(m<<24>>24){i=0;while(1){if(!(c[f+892+((i&255)<<2)>>2]|0))break;i=i+1<<24>>24;if((i&255)>=(m&255))break e}a[h>>0]=25;h=0;break a}while(0);if(n){a[t>>0]=5;h=1}else h=3;a[u>>0]=o?h:2}dh(f,f+328|0,p,y,l,a[f+2264>>0]|0)|0;a[f+12>>0]=0;f=f+16|0;l=(c[f>>2]|0)+1|0;c[f>>2]=l;if((a[x>>0]|0)==23){if(l|0){f=p;Vb=B;return f|0}c[v>>2]=0;f=p;Vb=B;return f|0}else{if(l>>>0>=2){f=p;Vb=B;return f|0}c[v>>2]=0;f=p;Vb=B;return f|0}}else h=0}while(0);do{l=c[f+584+(h<<2)>>2]|0;if(l|0)fl(l|0,0,e[A>>1]<<2|0)|0;h=h+1|0}while((h|0)!=64);h=0;do{l=c[f+892+(h<<2)>>2]|0;if(l|0)eh(l);h=h+1|0}while((h|0)!=48);f=0;Vb=B;return f|0}function ch(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;a[b+24>>0]=0;a[b+25>>0]=0;t=b+22|0;a[t>>0]=25;u=b+23|0;a[u>>0]=0;a:do if((d[b+4>>0]|0)<17){p=f+8|0;q=f+4|0;r=f+20|0;s=e+9|0;i=0;b:while(1){k=c[p>>2]|0;if(k>>>0<3){j=3-k|0;j=(c[f>>2]&(1<<k)+-1)<<j|(c[q>>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-k>>>29;do if(!(a[r>>0]|0))if(k>>>0>3){c[p>>2]=k+-3;break}else{lg(f,3);break}while(0);if((j&255|0)==7)break a;switch((j&255)<<24>>24){case 2:{n=19;break b}case 0:{if((a[t>>0]|0)==25)a[t>>0]=0;fh(b,e,f,0);if(!(a[s>>0]|0)){i=i+1<<24>>24;continue b}else{n=67;break b}}case 1:{if((a[t>>0]|0)==25)a[t>>0]=1;gh(b,e,f,1);if(!(a[s>>0]|0)){i=i+1<<24>>24;continue b}else{n=67;break b}}case 3:{a[u>>0]=(a[u>>0]|0)+1<<24>>24;fh(b,e,f,3);if(!(a[s>>0]|0)){i=i+1<<24>>24;continue b}else{n=67;break b}}case 4:{o=i+1<<24>>24;i=c[p>>2]|0;do if(!(a[r>>0]|0))if(i>>>0>4){i=i+-4|0;c[p>>2]=i;n=25;break}else{lg(f,4);i=c[p>>2]|0;n=24;break}else n=24;while(0);if((n|0)==24)if(!i){k=c[q>>2]|0;i=k>>>31;if(!(a[r>>0]|0)){lg(f,1);j=i;k=c[p>>2]|0;n=28}else{j=i;l=0;n=31}}else n=25;if((n|0)==25){k=i+-1|0;c[p>>2]=k;j=(c[f>>2]|0)>>>k&1;n=28}do if((n|0)==28){n=0;if(k>>>0<8){l=k;k=c[q>>2]|0;n=31;break}else{i=c[f>>2]<<32-k>>>24;m=j;j=k;break}}while(0);if((n|0)==31){i=8-l|0;i=((1<<l)+-1&c[f>>2])<<i|k>>>(32-i|0);m=j;j=l}do if(!(a[r>>0]|0))if(j>>>0>8){c[p>>2]=j+-8;break}else{lg(f,8);break}while(0);if((i&65535|0)==255){j=c[p>>2]|0;if(j>>>0<8){i=8-j|0;i=(c[f>>2]&(1<<j)+-1)<<i|(c[q>>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-j>>>24;do if(!(a[r>>0]|0))if(j>>>0>8){c[p>>2]=j+-8;break}else{lg(f,8);break}while(0);i=(i&65535)+255|0}if(m|0)kg(f)|0;k=i&65535;if(!k){i=o;continue b}else i=0;while(1){j=c[p>>2]|0;do if(!(a[r>>0]|0))if(j>>>0>8){c[p>>2]=j+-8;break}else{lg(f,8);break}while(0);i=i+1<<16>>16;if(k>>>0<=(i&65535)>>>0){i=o;continue b}}}case 5:{if(i<<24>>24){n=54;break b}Pg(g,f)|0;i=1;continue b}case 6:{o=hh(b,f,h,-1)|0;a[s>>0]=o;if(!(o<<24>>24)){i=i+1<<24>>24;continue b}else{n=67;break b}}default:continue b}}if((n|0)==19){a[s>>0]=6;return}else if((n|0)==54){a[s>>0]=31;return}else if((n|0)==67)return}else switch(a[b+5>>0]|0){case 1:{fh(b,e,f,0);if(!(a[e+9>>0]|0))break a;return}case 2:{gh(b,e,f,1);if(!(a[e+9>>0]|0))break a;return}case 3:{fh(b,e,f,0);gh(b,e,f,1);if(!(a[e+9>>0]|0))break a;return}case 4:{fh(b,e,f,0);gh(b,e,f,1);fh(b,e,f,0);if(!(a[e+9>>0]|0))break a;return}case 5:{fh(b,e,f,0);gh(b,e,f,1);gh(b,e,f,1);if(!(a[e+9>>0]|0))break a;return}case 6:{fh(b,e,f,0);gh(b,e,f,1);gh(b,e,f,1);fh(b,e,f,3);if(!(a[e+9>>0]|0))break a;return}case 7:{fh(b,e,f,0);gh(b,e,f,1);gh(b,e,f,1);gh(b,e,f,1);fh(b,e,f,3);if(!(a[e+9>>0]|0))break a;return}default:{a[e+9>>0]=7;return}}while(0);kg(f)|0;return}function dh(e,h,i,j,k,l){e=e|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0.0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0;switch(l<<24>>24){case 1:{z=j&255;l=a[e+20>>0]|0;switch((z<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{m=+f[(c[h+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+(l<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(a[e+21>>0]|0){if(j)return i|0;n=c[h+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{m=+f[n+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}e=~~m&65535;h=l<<1;b[i+(h<<1)>>1]=e;b[i+((h|1)<<1)>>1]=e;l=l+1|0}while((l|0)!=(j|0));return i|0}if(j)return i|0;o=c[h+((l&255)<<2)>>2]|0;n=c[h+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{m=+f[o+(l<<2)>>2];q=+f[n+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(!(m<=-32768.0))p=m;else p=-32768.0}else{m=m+.5;if(!(m>=32767.0))p=m;else p=32767.0}if(!(q>=0.0)){m=q+-.5;if(m<=-32768.0)m=-32768.0}else{m=q+.5;if(m>=32767.0)m=32767.0}h=l<<1;b[i+(h<<1)>>1]=~~p;b[i+((h|1)<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;x=e+2194|0;y=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{m=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+((w(l,z)|0)<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+f[(c[h+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261;if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+((w(l,z)|0)<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{m=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2];if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+((w(l,z)|0)+n<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+f[(c[h+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[y>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261;if(!(m>=0.0)){m=m+-.5;if(m<=-32768.0)m=-32768.0}else{m=m+.5;if(m>=32767.0)m=32767.0}b[i+((w(l,z)|0)+n<<1)>>1]=~~m;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(z|0));return i|0}}}case 2:{z=j&255;l=a[e+20>>0]|0;switch((z<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{m=+f[(c[h+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+(l<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(a[e+21>>0]|0){if(j)return i|0;n=c[h+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{m=+f[n+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}e=~~m;h=l<<1;c[i+(h<<2)>>2]=e;c[i+((h|1)<<2)>>2]=e;l=l+1|0}while((l|0)!=(j|0));return i|0}if(j)return i|0;o=c[h+((l&255)<<2)>>2]|0;n=c[h+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{m=+f[o+(l<<2)>>2]*256.0;q=+f[n+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(!(m<=-8388608.0))p=m;else p=-8388608.0}else{m=m+.5;if(!(m>=8388607.0))p=m;else p=8388607.0}if(!(q>=0.0)){m=q+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=q+.5;if(m>=8388607.0)m=8388607.0}h=l<<1;c[i+(h<<2)>>2]=~~p;c[i+((h|1)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;x=e+2194|0;y=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{m=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+((w(l,z)|0)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+f[(c[h+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+((w(l,z)|0)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{m=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+((w(l,z)|0)+n<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+f[(c[h+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[y>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*256.0;if(!(m>=0.0)){m=m+-.5;if(m<=-8388608.0)m=-8388608.0}else{m=m+.5;if(m>=8388607.0)m=8388607.0}c[i+((w(l,z)|0)+n<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(z|0));return i|0}}}case 3:{z=j&255;l=a[e+20>>0]|0;switch((z<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{m=+f[(c[h+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+(l<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(a[e+21>>0]|0){if(j)return i|0;n=c[h+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{m=+f[n+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}e=~~m;h=l<<1;c[i+(h<<2)>>2]=e;c[i+((h|1)<<2)>>2]=e;l=l+1|0}while((l|0)!=(j|0));return i|0}if(j)return i|0;o=c[h+((l&255)<<2)>>2]|0;n=c[h+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{m=+f[o+(l<<2)>>2]*65536.0;q=+f[n+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(!(m<=-2147483648.0))p=m;else p=-2147483648.0}else{m=m+.5;if(!(m>=2147483648.0))p=m;else p=2147483648.0}if(!(q>=0.0)){m=q+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=q+.5;if(m>=2147483648.0)m=2147483648.0}h=l<<1;c[i+(h<<2)>>2]=~~p;c[i+((h|1)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(j|0));return i|0}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;x=e+2194|0;y=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{m=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+((w(l,z)|0)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+f[(c[h+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+((w(l,z)|0)<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{m=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+((w(l,z)|0)+n<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{m=(+f[(c[h+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[y>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*65536.0;if(!(m>=0.0)){m=m+-.5;if(m<=-2147483648.0)m=-2147483648.0}else{m=m+.5;if(m>=2147483648.0)m=2147483648.0}c[i+((w(l,z)|0)+n<<2)>>2]=~~m;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(z|0));return i|0}}}case 4:{z=j&255;l=a[e+20>>0]|0;switch((z<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{f[i+(l<<2)>>2]=+f[(c[h+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(!(a[e+21>>0]|0)){if(j)return i|0;o=c[h+((l&255)<<2)>>2]|0;n=c[h+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{q=+f[n+(l<<2)>>2];h=l<<1;f[i+(h<<2)>>2]=+f[o+(l<<2)>>2]*.000030517578125;f[i+((h|1)<<2)>>2]=q*.000030517578125;l=l+1|0}while((l|0)!=(j|0));return i|0}else{if(j)return i|0;n=c[h+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{q=+f[n+(l<<2)>>2]*.000030517578125;h=l<<1;f[i+(h<<2)>>2]=q;f[i+((h|1)<<2)>>2]=q;l=l+1|0}while((l|0)!=(j|0));return i|0}}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;x=e+2194|0;y=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{f[i+((w(l,z)|0)<<2)>>2]=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{f[i+((w(l,z)|0)<<2)>>2]=(+f[(c[h+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{f[i+((w(l,z)|0)+n<<2)>>2]=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{f[i+((w(l,z)|0)+n<<2)>>2]=(+f[(c[h+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[y>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(z|0));return i|0}}}case 5:{z=j&255;l=a[e+20>>0]|0;switch((z<<1|l&1)&511){case 3:case 2:{if(!(k<<16>>16))return i|0;n=e+2192|0;j=k&65535;l=0;do{g[i+(l<<3)>>3]=+f[(c[h+(d[n>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(j|0));return i|0}case 4:{l=a[e+2192>>0]|0;j=k<<16>>16==0;if(!(a[e+21>>0]|0)){if(j)return i|0;o=c[h+((l&255)<<2)>>2]|0;n=c[h+(d[e+2193>>0]<<2)>>2]|0;j=k&65535;l=0;do{q=+f[n+(l<<2)>>2];h=l<<1;g[i+(h<<3)>>3]=+f[o+(l<<2)>>2]*.000030517578125;g[i+((h|1)<<3)>>3]=q*.000030517578125;l=l+1|0}while((l|0)!=(j|0));return i|0}else{if(j)return i|0;n=c[h+((l&255)<<2)>>2]|0;j=k&65535;l=0;do{q=+f[n+(l<<2)>>2]*.000030517578125;h=l<<1;g[i+(h<<3)>>3]=q;g[i+((h|1)<<3)>>3]=q;l=l+1|0}while((l|0)!=(j|0));return i|0}}default:{if(!(j<<24>>24))return i|0;s=k<<16>>16==0;t=e+2192|0;u=e+2193|0;v=e+2195|0;x=e+2194|0;y=e+2196|0;r=l<<24>>24==0;o=k&65535;n=0;do{if(!s){j=e+2192+n|0;if(!n)if(r){l=0;do{g[i+((w(l,z)|0)<<3)>>3]=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{g[i+((w(l,z)|0)<<3)>>3]=(+f[(c[h+(d[u>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[v>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else if(r){l=0;do{g[i+((w(l,z)|0)+n<<3)>>3]=+f[(c[h+(d[j>>0]<<2)>>2]|0)+(l<<2)>>2]*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}else{l=0;do{g[i+((w(l,z)|0)+n<<3)>>3]=(+f[(c[h+(d[x>>0]<<2)>>2]|0)+(l<<2)>>2]+ +f[(c[h+(d[t>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304+ +f[(c[h+(d[y>>0]<<2)>>2]|0)+(l<<2)>>2]*.7071067690849304)*.3203772306442261*.000030517578125;l=l+1|0}while((l|0)!=(o|0))}}n=n+1|0}while((n|0)!=(z|0));return i|0}}}default:return i|0}return 0}function eh(e){e=e|0;var f=0,g=0;f=c[e+12440>>2]|0;if(f|0)fl(c[f>>2]|0,0,(d[f+6>>0]|0)*80|0)|0;f=c[e+12444>>2]|0;if(f|0)fl(c[f>>2]|0,0,(d[f+6>>0]|0)*80|0)|0;f=c[e+12448>>2]|0;if(f|0)fl(c[f>>2]|0,0,(d[f+6>>0]|0)*160|0)|0;f=c[e+12452>>2]|0;if(f|0)fl(c[f>>2]|0,0,(d[f+6>>0]|0)*160|0)|0;f=c[e+648>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+668>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+688>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+708>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+652>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+672>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+692>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+712>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+656>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+676>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+696>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+716>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+660>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+680>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+700>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+720>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+664>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+684>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+704>>2]|0;if(f|0)fl(f|0,0,256)|0;f=c[e+724>>2]|0;if(f|0)fl(f|0,0,256)|0;f=e+53416|0;g=e+53418|0;fl(e+12456|0,0,(d[g>>0]|0)+(d[f>>0]|0)<<9|0)|0;fl(e+32936|0,0,(d[g>>0]|0)+(d[f>>0]|0)<<9|0)|0;a[e+728>>0]=0;a[e+729>>0]=0;c[e+12432>>2]=0;a[e+12426>>0]=1;a[e+612>>0]=0;a[e+613>>0]=0;a[e+53435>>0]=2;a[e+53436>>0]=1;a[e+53437>>0]=2;a[e+53438>>0]=2;a[e+53439>>0]=2;a[e+53440>>0]=1;a[e+53441>>0]=1;a[e+53432>>0]=5;a[e+53431>>0]=1;a[e+53442>>0]=1;a[e+12418>>0]=-1;a[e+12419>>0]=-1;a[e+12421>>0]=0;a[e+12422>>0]=0;a[e+12423>>0]=0;a[e+12412>>0]=-1;a[e+646>>0]=0;a[e+647>>0]=0;f=0;do{b[e+2010+(f<<1)>>1]=0;c[e+10460+(f<<2)>>2]=0;b[e+2138+(f<<1)>>1]=0;c[e+10716+(f<<2)>>2]=0;a[e+12277+f>>0]=0;a[e+12341+f>>0]=0;f=f+1|0}while((f|0)!=49);a[e+53445>>0]=0;a[e+53446>>0]=0;return}function fh(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Vb;Vb=Vb+22976|0;n=u+2048|0;o=u;t=e+24|0;r=a[t>>0]|0;p=r&255;q=p+1|0;if((r&255)>63){a[f+9>>0]=12;Vb=u;return}s=e+25|0;i=a[s>>0]|0;if((i&255)>47){a[f+9>>0]=13;Vb=u;return}a[(i&255)+(e+2128)>>0]=h;fl(n|0,0,20914)|0;l=n+6|0;fl(o|0,0,2048)|0;j=g+8|0;i=c[j>>2]|0;if(i>>>0<4){m=4-i|0;m=(c[g>>2]&(1<<i)+-1)<<m|(c[g+4>>2]|0)>>>(32-m|0)}else m=c[g>>2]<<32-i>>>28;k=g+20|0;do if(!(a[k>>0]|0))if(i>>>0>4){c[j>>2]=i+-4;break}else{lg(g,4);break}while(0);a[n+4>>0]=m;a[n>>0]=r;b[n+2>>1]=-1;i=Ih(e,n,g,l,o)|0;do if(!(i<<24>>24))if(!(a[n+9044>>0]|0)){h=c[j>>2]|0;if(h>>>0<3){i=3-h|0;i=(c[g>>2]&(1<<h)+-1)<<i|(c[g+4>>2]|0)>>>(32-i|0)}else i=c[g>>2]<<32-h>>>29;if((i|0)==6){do if(!(a[k>>0]|0))if(h>>>0>3){c[j>>2]=h+-3;break}else{lg(g,3);break}while(0);i=hh(e,g,c[e+324>>2]|0,a[s>>0]|0)|0;if(i<<24>>24)break}i=Bi(e,l,n,o)|0}else i=32;while(0);a[f+9>>0]=i;if((a[(d[s>>0]|0)+(e+26)>>0]|0)==2){a[e+2192+p>>0]=r;h=q;i=q&255}else{if(!(a[e+1656>>0]|0))i=r;else i=a[(m&255)+(e+2096)>>0]|0;h=i&255;i=r}a[e+2192+h>>0]=i;r=a[s>>0]|0;a[t>>0]=(d[t>>0]|0)+(d[(r&255)+(e+26)>>0]|0);a[s>>0]=r+1<<24>>24;Vb=u;return}function gh(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=Vb;Vb=Vb+25024|0;A=G+22968|0;B=G+20920|0;C=G;F=e+24|0;i=a[F>>0]|0;D=i&255;if((D+2|0)>>>0>64){a[f+9>>0]=12;Vb=G;return}E=e+25|0;k=a[E>>0]|0;if((k&255)>47){a[f+9>>0]=13;Vb=G;return}k=k&255;l=e+26+k|0;switch(a[l>>0]|0){case 0:{a[l>>0]=2;break}case 2:break;default:{a[f+9>>0]=21;Vb=G;return}}a[e+2128+k>>0]=h;fl(A|0,0,2048)|0;fl(B|0,0,2048)|0;fl(C|0,0,20914)|0;w=C+6|0;x=C+10460|0;a[C>>0]=i;z=D+1|0;b[C+2>>1]=z;t=g+8|0;k=c[t>>2]|0;if(k>>>0<4){y=4-k|0;l=c[g>>2]|0;y=(l&(1<<k)+-1)<<y|(c[g+4>>2]|0)>>>(32-y|0)}else{l=c[g>>2]|0;y=l<<32-k>>>28}u=g+20|0;do if(!(a[u>>0]|0))if(k>>>0>4){k=k+-4|0;c[t>>2]=k;a[C+4>>0]=y;s=17;break}else{lg(g,4);k=c[t>>2]|0;s=15;break}else s=15;while(0);do if((s|0)==15){a[C+4>>0]=y;if(k|0){l=c[g>>2]|0;s=17;break}k=(c[g+4>>2]|0)>>>31;if(!(a[u>>0]|0))lg(g,1)}while(0);if((s|0)==17){k=k+-1|0;c[t>>2]=k;k=l>>>k&1}k=k&255;r=C+5|0;a[r>>0]=k;a:do if(k<<24>>24){k=Gh(e,w,g,k)|0;if(!(k<<24>>24)){l=c[t>>2]|0;if(l>>>0<2){k=2-l|0;k=(c[g>>2]&(1<<l)+-1)<<k|(c[g+4>>2]|0)>>>(32-k|0)}else k=c[g>>2]<<32-l>>>30;do if(!(a[u>>0]|0))if(l>>>0>2){c[t>>2]=l+-2;break}else{lg(g,2);break}while(0);q=k&255;a[C+8634>>0]=q;switch(q<<24>>24){case 3:{j=32;break a}case 1:{p=C+8|0;k=a[p>>0]|0;if(k<<24>>24){q=g+4|0;l=a[w>>0]|0;o=0;n=0;h=l;while(1){if(!(l<<24>>24))m=0;else{m=0;l=h;do{h=m&255;k=c[t>>2]|0;if(!k){k=(c[q>>2]|0)>>>31;if(!(a[u>>0]|0)){lg(g,1);l=a[w>>0]|0}}else{k=k+-1|0;c[t>>2]=k;k=(c[g>>2]|0)>>>k&1}a[C+8635+(n*51|0)+h>>0]=k;m=m+1<<24>>24}while((m&255)<(l&255));k=a[p>>0]|0;h=l;m=l}l=o+1<<24>>24;if((l&255)<(k&255)){o=l;n=l&255;l=m}else break}}break}default:{}}if((d[e+4>>0]|0)>16?a[C+9048>>0]|0:0){k=c[t>>2]|0;if(!k){k=(c[g+4>>2]|0)>>>31;if(!(a[u>>0]|0))lg(g,1)}else{k=k+-1|0;c[t>>2]=k;k=(c[g>>2]|0)>>>k&1}q=k&255;a[C+10283>>0]=q;if(q<<24>>24?(j=Hh(e,w,C+10282|0,g)|0,j<<24>>24):0)break}dl(x|0,w|0,10454)|0;s=50}else j=k}else{a[C+8634>>0]=0;s=50}while(0);do if((s|0)==50){j=Ih(e,C,g,w,A)|0;if(!(j<<24>>24)){if((a[r>>0]|0?(d[e+4>>0]|0)>16:0)?a[C+9048>>0]|0:0){j=c[t>>2]|0;if(!j){j=(c[g+4>>2]|0)>>>31;if(!(a[u>>0]|0))lg(g,1)}else{j=j+-1|0;c[t>>2]=j;j=(c[g>>2]|0)>>>j&1}s=j&255;a[C+10365>>0]=s;if(s<<24>>24?(v=Hh(e,w,C+10364|0,g)|0,v<<24>>24):0){j=v;break}}j=Ih(e,C,g,x,B)|0;if(!(j<<24>>24)){k=c[t>>2]|0;if(k>>>0<3){j=3-k|0;j=(c[g>>2]&(1<<k)+-1)<<j|(c[g+4>>2]|0)>>>(32-j|0)}else j=c[g>>2]<<32-k>>>29;if((j|0)==6){do if(!(a[u>>0]|0))if(k>>>0>3){c[t>>2]=k+-3;break}else{lg(g,3);break}while(0);j=hh(e,g,c[e+324>>2]|0,a[E>>0]|0)|0;if(j<<24>>24)break}j=Jh(e,w,x,C,A,B)|0}}}while(0);a[f+9>>0]=j;if(!(a[e+1656>>0]|0))a[e+2192+D>>0]=i;else{D=(y&255)+(e+2112)|0;a[(d[D>>0]|0)+(e+2192)>>0]=i;i=a[D>>0]|0}a[(i&255)+1+(e+2192)>>0]=z;a[F>>0]=(d[F>>0]|0)+2;a[E>>0]=(a[E>>0]|0)+1<<24>>24;Vb=G;return}function hh(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=f+8|0;j=c[B>>2]|0;if(j>>>0<4){i=4-j|0;i=(c[f>>2]&(1<<j)+-1)<<i|(c[f+4>>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-j>>>28;A=f+20|0;do if(!(a[A>>0]|0))if(j>>>0>4){c[B>>2]=j+-4;break}else{lg(f,4);break}while(0);if((i&65535|0)==15){j=c[B>>2]|0;if(j>>>0<8){i=8-j|0;i=(c[f>>2]&(1<<j)+-1)<<i|(c[f+4>>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-j>>>24;do if(!(a[A>>0]|0))if(j>>>0>8){c[B>>2]=j+-8;break}else{lg(f,8);break}while(0);i=(i&65535)+14|0}k=i&65535;if(!(i&65535)){f=0;return f|0}j=c[B>>2]|0;if(j>>>0<4){i=4-j|0;i=(c[f>>2]&(1<<j)+-1)<<i|(c[f+4>>2]|0)>>>(32-i|0)}else i=c[f>>2]<<32-j>>>28;if(((i&255)+-13|0)>>>0<2){j=h&255;if(h<<24>>24==-1){f=24;return f|0}i=e+892+(j<<2)|0;if(!(c[i>>2]|0)){g=b[e+10>>1]|0;A=a[e+2128+j>>0]|0;B=(Cg(a[e+3>>0]|0)|0)<<1;c[i>>2]=ih(g,A,B,a[e+842>>0]|0)|0}a[e+840>>0]=1;B=jh(f,c[i>>2]|0,k,a[e+12>>0]|0)|0;f=c[i>>2]|0;a[f+10>>0]=B;if(!(a[f+53424>>0]|0)){f=0;return f|0}a[e+1084+j>>0]=1;a[e+1132>>0]=1;f=0;return f|0}if(!(k<<16>>16)){f=0;return f|0}o=f+4|0;p=g+1|0;q=g+3|0;r=g+56|0;s=g+57|0;t=g+58|0;u=g+59|0;v=g+60|0;w=g+61|0;x=g+62|0;y=g+21|0;z=g+2|0;i=k;h=j;while(1){m=i&65535;if(h>>>0<4){j=4-h|0;j=(c[f>>2]&(1<<h)+-1)<<j|(c[o>>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-h>>>28;do if(!(a[A>>0]|0))if(h>>>0>4){c[B>>2]=h+-4;break}else{lg(f,4);break}while(0);a:do switch((j&255)<<24>>24){case 11:{a[g>>0]=1;a[p>>0]=1;i=c[B>>2]|0;if(!i){i=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))lg(f,1)}else{i=i+-1|0;c[B>>2]=i;i=(c[f>>2]|0)>>>i&1}do if(i){i=c[B>>2]|0;if(i>>>0<4){j=4-i|0;j=(c[f>>2]&(1<<i)+-1)<<j|(c[o>>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-i>>>28;if(a[A>>0]|0){a[z>>0]=j;i=2;n=53;break}if(i>>>0<=4){lg(f,4);i=c[B>>2]|0;n=a[A>>0]|0;a[z>>0]=j;if(n<<24>>24){i=2;n=53;break}}else{i=i+-4|0;c[B>>2]=i;a[z>>0]=j}if(i>>>0>4){j=i+-4|0;c[B>>2]=j;i=2;n=54;break}else{lg(f,4);i=2;n=53;break}}else{i=1;n=53}while(0);if((n|0)==53){n=0;j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))lg(f,1)}else n=54}if((n|0)==54){n=0;j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}l=j&255;a[q>>0]=l;if(l<<24>>24==1){j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}a[r>>0]=j;j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}a[s>>0]=j;j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}a[t>>0]=j;j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[u>>0]=j;j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[v>>0]=j;j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[w>>0]=j;j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[x>>0]=j;h=7;l=1;while(1){j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);k=j&255;j=l&255;a[j+-1+(g+120)>>0]=k;if(k<<24>>24!=1)break;e=h&255;k=e+7|0;do{j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[g+56+e>>0]=j;h=h+1<<24>>24;e=h&255}while(k>>>0>e>>>0);h=k&255;l=l+1<<24>>24}i=j+(i&255)&255}j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}if(j){j=c[B>>2]|0;if(j>>>0<4){h=4-j|0;h=(c[f>>2]&(1<<j)+-1)<<h|(c[o>>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-j>>>28;do if(!(a[A>>0]|0)){if(j>>>0<=4){lg(f,4);if(!(a[A>>0]|0))j=c[B>>2]|0;else break}else{j=j+-4|0;c[B>>2]=j}if(j>>>0>4){c[B>>2]=j+-4;break}else{lg(f,4);break}}while(0);j=h+(d[p>>0]|0)&255;a[p>>0]=j;i=i+1<<24>>24;if(j<<24>>24){l=0;do{k=l&255;h=c[B>>2]|0;if(h>>>0<8){e=8-h|0;e=(c[f>>2]&(1<<h)+-1)<<e|(c[o>>2]|0)>>>(32-e|0)}else e=c[f>>2]<<32-h>>>24;do if(!(a[A>>0]|0))if(h>>>0>8){c[B>>2]=h+-8;break}else{lg(f,8);j=a[p>>0]|0;break}while(0);a[g+4+k>>0]=e;l=l+1<<24>>24;i=i+1<<24>>24}while((l&255)<(j&255))}}j=c[B>>2]|0;if(!j){j=(c[o>>2]|0)>>>31;if(!(a[A>>0]|0))lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}if(j){j=c[B>>2]|0;if(j>>>0<7){h=7-j|0;h=(c[f>>2]&(1<<j)+-1)<<h|(c[o>>2]|0)>>>(32-h|0)}else h=c[f>>2]<<32-j>>>25;do if(!(a[A>>0]|0))if(j>>>0>7){j=j+-7|0;c[B>>2]=j;a[y>>0]=h;n=137;break}else{lg(f,7);j=c[B>>2]|0;n=136;break}else n=136;while(0);do if((n|0)==136){n=0;a[y>>0]=h;if(j|0){n=137;break}if(a[A>>0]|0)break;lg(f,1)}while(0);if((n|0)==137){n=0;c[B>>2]=j+-1}i=i+1<<24>>24}if(a[p>>0]|0){k=0;e=0;while(1){j=c[B>>2]|0;do if(!j){j=(c[o>>2]|0)>>>31;if(a[A>>0]|0)break;lg(f,1)}else{j=j+-1|0;c[B>>2]=j;j=(c[f>>2]|0)>>>j&1}while(0);a[g+22+e>>0]=j;h=c[B>>2]|0;if(h>>>0<7){j=7-h|0;j=(c[f>>2]&(1<<h)+-1)<<j|(c[o>>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-h>>>25;do if(!(a[A>>0]|0))if(h>>>0>7){c[B>>2]=h+-7;break}else{lg(f,7);break}while(0);a[g+39+e>>0]=j;i=i+1<<24>>24;j=k+1<<24>>24;if((j&255)<(d[p>>0]|0)){k=j;e=j&255}else break}}i=i&255;break}case 1:{j=c[B>>2]|0;do if(!(a[A>>0]|0))if(j>>>0>4){c[B>>2]=j+-4;break}else{lg(f,4);break}while(0);h=m+-1|0;if((i&65535)>1){j=0;do{e=c[B>>2]|0;do if(!(a[A>>0]|0))if(e>>>0>8){c[B>>2]=e+-8;break}else{lg(f,8);break}while(0);j=j+1<<16>>16}while((h|0)>(j&65535|0))}else i=1;break}case 2:{h=c[B>>2]|0;if(h>>>0<4){j=4-h|0;j=(c[f>>2]&(1<<h)+-1)<<j|(c[o>>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-h>>>28;do if(!(a[A>>0]|0))if(h>>>0>4){c[B>>2]=h+-4;break}else{lg(f,4);break}while(0);if(!(j&255)){e=0;k=0;do{h=c[B>>2]|0;if(h>>>0<8){j=8-h|0;j=(c[f>>2]&(1<<h)+-1)<<j|(c[o>>2]|0)>>>(32-j|0)}else j=c[f>>2]<<32-h>>>24;do if(!(a[A>>0]|0))if(h>>>0>8){c[B>>2]=h+-8;break}else{lg(f,8);break}while(0);l=j&255;k=l+(k&65535)|0;e=e+1<<24>>24}while((l|0)==255);if(k&65535){i=c[B>>2]|0;do if(!(a[A>>0]|0))if(i>>>0>8){c[B>>2]=i+-8;break}else{lg(f,8);break}while(0);i=(e&255)+1+k&65535}else n=191}else n=191;break}default:{j=c[B>>2]|0;if(!(a[A>>0]|0))if(j>>>0>4){c[B>>2]=j+-4;n=191;break a}else{lg(f,4);n=191;break a}else n=191}}while(0);if((n|0)==191){n=0;h=m+-1|0;if((i&65535)>1){j=0;do{e=c[B>>2]|0;do if(!(a[A>>0]|0))if(e>>>0>8){c[B>>2]=e+-8;break}else{lg(f,8);break}while(0);j=j+1<<16>>16}while((h|0)>(j&65535|0))}}i=m-(i&65535)&65535;if(!(i<<16>>16)){i=0;break}h=c[B>>2]|0}return i|0}function ih(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0;j=og(53544)|0;fl(j+4|0,0,53540)|0;a[j+12436>>0]=f;c[j>>2]=g;a[j+53435>>0]=2;a[j+53436>>0]=1;a[j+53437>>0]=2;a[j+53438>>0]=2;a[j+53439>>0]=2;a[j+53440>>0]=1;a[j+53441>>0]=1;a[j+53432>>0]=5;a[j+53431>>0]=1;a[j+53442>>0]=1;a[j+12418>>0]=-1;a[j+12419>>0]=-1;c[j+12432>>2]=0;a[j+12426>>0]=1;i=j+53418|0;a[i>>0]=8;a[j+53419>>0]=2;a[j+12421>>0]=0;a[j+12422>>0]=0;a[j+12423>>0]=0;b[j+12424>>1]=e;a[j+12412>>0]=-1;e=e<<16>>16==960;g=j+53416|0;a[g>>0]=e?30:32;a[j+53417>>0]=e?15:16;a[j+728>>0]=0;a[j+729>>0]=0;c[j+12440>>2]=Eh(32)|0;if(f<<24>>24==1){c[j+12444>>2]=Eh(32)|0;h=h<<24>>24?32:64;c[j+12448>>2]=Fh(h)|0;c[j+12452>>2]=Fh(h)|0;c[j+648>>2]=og(256)|0;c[j+668>>2]=og(256)|0;c[j+688>>2]=og(256)|0;c[j+708>>2]=og(256)|0;c[j+652>>2]=og(256)|0;c[j+672>>2]=og(256)|0;c[j+692>>2]=og(256)|0;c[j+712>>2]=og(256)|0;c[j+656>>2]=og(256)|0;c[j+676>>2]=og(256)|0;c[j+696>>2]=og(256)|0;c[j+716>>2]=og(256)|0;c[j+660>>2]=og(256)|0;c[j+680>>2]=og(256)|0;c[j+700>>2]=og(256)|0;c[j+720>>2]=og(256)|0;c[j+664>>2]=og(256)|0;c[j+684>>2]=og(256)|0;c[j+704>>2]=og(256)|0;c[j+724>>2]=og(256)|0;fl(j+12456|0,0,(d[i>>0]|0)+(d[g>>0]|0)<<9|0)|0;fl(j+32936|0,0,(d[i>>0]|0)+(d[g>>0]|0)<<9|0)|0;return j|0}else{c[j+12448>>2]=Fh(h<<24>>24?32:64)|0;c[j+12452>>2]=0;c[j+648>>2]=og(256)|0;c[j+688>>2]=og(256)|0;c[j+652>>2]=og(256)|0;c[j+692>>2]=og(256)|0;c[j+656>>2]=og(256)|0;c[j+696>>2]=og(256)|0;c[j+660>>2]=og(256)|0;c[j+700>>2]=og(256)|0;c[j+664>>2]=og(256)|0;c[j+704>>2]=og(256)|0;fl(j+12456|0,0,(d[i>>0]|0)+(d[g>>0]|0)<<9|0)|0;return j|0}return 0}function jh(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,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;I=Vb;Vb=Vb+16|0;t=I+4|0;u=I;F=jg(d)|0;if(g<<24>>24)a[e+53425>>0]=g;H=d+8|0;h=c[H>>2]|0;if(h>>>0<4){g=4-h|0;g=(c[d>>2]&(1<<h)+-1)<<g|(c[d+4>>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>28;G=d+20|0;do if(!(a[G>>0]|0))if(h>>>0>4){c[H>>2]=h+-4;break}else{lg(d,4);break}while(0);if((g&255|0)==14){h=c[H>>2]|0;if(h>>>0<10){g=10-h|0;g=(c[d>>2]&(1<<h)+-1)<<g|(c[d+4>>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>22;do if(!(a[G>>0]|0))if(h>>>0>10){c[H>>2]=h+-10;break}else{lg(d,10);break}while(0);b[e+53428>>1]=g}k=e+53432|0;z=a[k>>0]|0;r=e+53442|0;A=a[r>>0]|0;n=e+53433|0;B=a[n>>0]|0;o=e+53435|0;C=a[o>>0]|0;p=e+53436|0;D=a[p>>0]|0;q=e+53434|0;E=a[q>>0]|0;g=c[H>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0))lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}x=g&255;y=e+53426|0;a[y>>0]=x;if(x<<24>>24){g=e+12432|0;c[g>>2]=(c[g>>2]|0)+1;g=c[H>>2]|0;do if(!g){h=c[d+4>>2]|0;g=h>>>31;if(!(a[G>>0]|0)){lg(d,1);h=g;g=c[H>>2]|0;m=29;break}else{a[e+53431>>0]=g;g=0;m=32;break}}else{g=g+-1|0;c[H>>2]=g;h=(c[d>>2]|0)>>>g&1;m=29}while(0);do if((m|0)==29){a[e+53431>>0]=h;if(g>>>0<4){h=c[d+4>>2]|0;m=32;break}else{h=c[d>>2]<<32-g>>>28;break}}while(0);if((m|0)==32){x=4-g|0;h=((1<<g)+-1&c[d>>2])<<x|h>>>(32-x|0)}do if(!(a[G>>0]|0))if(g>>>0>4){g=g+-4|0;c[H>>2]=g;break}else{lg(d,4);g=c[H>>2]|0;break}while(0);a[k>>0]=h;if(g>>>0<4){h=4-g|0;h=(c[d>>2]&(1<<g)+-1)<<h|(c[d+4>>2]|0)>>>(32-h|0)}else h=c[d>>2]<<32-g>>>28;do if(!(a[G>>0]|0))if(g>>>0>4){g=g+-4|0;c[H>>2]=g;break}else{lg(d,4);g=c[H>>2]|0;break}while(0);a[n>>0]=h;if(g>>>0<3){h=3-g|0;h=(c[d>>2]&(1<<g)+-1)<<h|(c[d+4>>2]|0)>>>(32-h|0)}else h=c[d>>2]<<32-g>>>29;do if(!(a[G>>0]|0)){if(g>>>0<=3){lg(d,3);g=c[H>>2]|0;x=a[G>>0]|0;a[q>>0]=h;if(x<<24>>24){m=55;break}}else{g=g+-3|0;c[H>>2]=g;a[q>>0]=h}if(g>>>0>2){g=g+-2|0;c[H>>2]=g;m=56;break}else{lg(d,2);g=c[H>>2]|0;m=55;break}}else{a[q>>0]=h;m=55}while(0);if((m|0)==55)if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0)){lg(d,1);h=c[H>>2]|0;m=59}else{i=g;h=g}}else m=56;if((m|0)==56){h=g+-1|0;c[H>>2]=h;g=(c[d>>2]|0)>>>h&1;m=59}do if((m|0)==59){if(h|0){h=h+-1|0;c[H>>2]=h;i=g;h=(c[d>>2]|0)>>>h&1;break}h=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0)){lg(d,1);i=g}else i=g}while(0);if(!i){a[o>>0]=2;a[p>>0]=1;g=2}else{g=c[H>>2]|0;if(g>>>0<2){j=2-g|0;i=c[d>>2]|0;j=(i&(1<<g)+-1)<<j|(c[d+4>>2]|0)>>>(32-j|0)}else{i=c[d>>2]|0;j=i<<32-g>>>30}do if(!(a[G>>0]|0))if(g>>>0>2){g=g+-2|0;c[H>>2]=g;a[o>>0]=j;m=73;break}else{lg(d,2);g=c[H>>2]|0;m=71;break}else m=71;while(0);do if((m|0)==71){a[o>>0]=j;if(g|0){i=c[d>>2]|0;m=73;break}i=c[d+4>>2]|0;g=i>>>31;if(!(a[G>>0]|0)){lg(d,1);i=c[H>>2]|0;m=77;break}else{a[p>>0]=g;g=0;m=80;break}}while(0);if((m|0)==73){x=g+-1|0;c[H>>2]=x;g=i>>>x&1;i=x;m=77}do if((m|0)==77){a[p>>0]=g;if(i>>>0<2){g=i;i=c[d+4>>2]|0;m=80;break}else{j=c[d>>2]<<32-i>>>30;g=i;break}}while(0);if((m|0)==80){j=2-g|0;j=((1<<g)+-1&c[d>>2])<<j|i>>>(32-j|0)}do if(!(a[G>>0]|0))if(g>>>0>2){c[H>>2]=g+-2;break}else{lg(d,2);break}while(0);g=j&255}a[e+53437>>0]=g;if(!h){a[e+53438>>0]=2;a[e+53439>>0]=2;a[e+53440>>0]=1;g=1}else{g=c[H>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[d>>2]&(1<<g)+-1)<<h|(c[d+4>>2]|0)>>>(32-h|0)}else h=c[d>>2]<<32-g>>>30;do if(!(a[G>>0]|0))if(g>>>0>2){g=g+-2|0;c[H>>2]=g;break}else{lg(d,2);g=c[H>>2]|0;break}while(0);a[e+53438>>0]=h;if(g>>>0<2){i=2-g|0;h=c[d>>2]|0;i=(h&(1<<g)+-1)<<i|(c[d+4>>2]|0)>>>(32-i|0)}else{h=c[d>>2]|0;i=h<<32-g>>>30}do if(!(a[G>>0]|0))if(g>>>0>2){g=g+-2|0;c[H>>2]=g;a[e+53439>>0]=i;m=104;break}else{lg(d,2);g=c[H>>2]|0;m=102;break}else m=102;while(0);do if((m|0)==102){a[e+53439>>0]=i;if(g|0){h=c[d>>2]|0;m=104;break}h=c[d+4>>2]|0;g=h>>>31;if(!(a[G>>0]|0)){lg(d,1);h=c[H>>2]|0;m=108;break}else{a[e+53440>>0]=g;g=h>>>31;break}}while(0);if((m|0)==104){x=g+-1|0;c[H>>2]=x;g=h>>>x&1;h=x;m=108}do if((m|0)==108){a[e+53440>>0]=g;if(h|0){g=h+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1;break}g=(c[d+4>>2]|0)>>>31;if(a[G>>0]|0)break;lg(d,1)}while(0);g=g&255}a[e+53441>>0]=g}l=a[k>>0]|0;h=e+12412|0;j=a[n>>0]|0;g=e+12413|0;if((((l<<24>>24==(a[h>>0]|0)?j<<24>>24==(a[g>>0]|0):0)?(a[o>>0]|0)==(a[e+12415>>0]|0):0)?(a[p>>0]|0)==(a[e+12416>>0]|0):0)?(a[q>>0]|0)==(a[e+12414>>0]|0):0)k=(a[e+53437>>0]|0)!=(a[e+12417>>0]|0)&1;else k=1;x=e+12426|0;a[x>>0]=k;a[h>>0]=l;a[g>>0]=j;i=a[o>>0]|0;a[e+12415>>0]=i;h=a[p>>0]|0;a[e+12416>>0]=h;g=a[q>>0]|0;a[e+12414>>0]=g;a[e+12417>>0]=a[e+53437>>0]|0;a:do if(!(c[e+12432>>2]|0))i=1;else{if(!(k<<24>>24)){if(a[y>>0]|0?a[e+9>>0]|0:0)m=125}else m=125;if((m|0)==125?(kh(e,l,j,a[r>>0]|0,i,h,g)|0)<<24>>24:0)kh(e,z,B,A,C,D,E)|0;a[e+8>>0]=a[r>>0]|0?2:1;b:do switch(a[e+12436>>0]|0){case 0:{g=c[H>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0))lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}do if(g|0?(s=c[H>>2]|0,(a[G>>0]|0)==0):0)if(s>>>0>4){c[H>>2]=s+-4;break}else{lg(d,4);break}while(0);g=lh(d,e,0)|0;if(!(g<<24>>24)){mh(d,e,0);l=e+19|0;g=a[l>>0]|0;if(g<<24>>24){m=d+4|0;k=0;do{j=k&255;h=c[H>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[d>>2]&(1<<h)+-1)<<i|(c[m>>2]|0)>>>(32-i|0)}else i=c[d>>2]<<32-h>>>30;do if(!(a[G>>0]|0))if(h>>>0>2){c[H>>2]=h+-2;break}else{lg(d,2);g=a[l>>0]|0;break}while(0);a[e+10976+j>>0]=i;k=k+1<<24>>24}while((k&255)<(g&255))}nh(d,e,0);oh(d,e,0);ph(e,0);g=e+12149|0;h=g+64|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));g=c[H>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0))lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}u=g&255;a[e+53443>>0]=u;if(u<<24>>24?(w=e+17|0,v=a[w>>0]|0,v<<24>>24):0){k=d+4|0;j=0;h=v;do{i=j&255;g=c[H>>2]|0;do if(!g){g=(c[k>>2]|0)>>>31;if(a[G>>0]|0)break;lg(d,1);h=a[w>>0]|0}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}while(0);a[e+12149+i>>0]=g;j=j+1<<24>>24}while((j&255)<(h&255))}g=c[H>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0))lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}w=g&255;a[e+53447>>0]=w;if(!(w<<24>>24)){i=0;break a}h=c[H>>2]|0;if(h>>>0<4){g=4-h|0;g=(c[d>>2]&(1<<h)+-1)<<g|(c[d+4>>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>28;do if(!(a[G>>0]|0))if(h>>>0>4){c[H>>2]=h+-4;break}else{lg(d,4);break}while(0);if((g&65535|0)==15){h=c[H>>2]|0;if(h>>>0<8){g=8-h|0;g=(c[d>>2]&(1<<h)+-1)<<g|(c[d+4>>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>24;do if(!(a[G>>0]|0))if(h>>>0>8){c[H>>2]=h+-8;break}else{lg(d,8);break}while(0);g=(g&65535)+15|0}l=d+4|0;m=e+53448|0;i=0;g=g<<3;while(1){j=g&65535;k=g&65535;if((j&65535)<=7)break;g=c[H>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[d>>2]&(1<<g)+-1)<<h|(c[l>>2]|0)>>>(32-h|0)}else h=c[d>>2]<<32-g>>>30;do if(!(a[G>>0]|0))if(g>>>0>2){c[H>>2]=g+-2;break}else{lg(d,2);break}while(0);g=h&255;a[m>>0]=g;do if((h&255|0)==2){if(!(i<<24>>24)){h=1;break}a[m>>0]=3;h=i;g=3}else h=i;while(0);g=(qh(d,e,g)|0)+2<<16>>16;if((g&65535)>(j&65535)){g=1;break b}else{i=h;g=k-(g&65535)|0}}if(j<<16>>16==0|(k|0)==0){i=0;break a}g=c[H>>2]|0;if(a[G>>0]|0){i=0;break a}if(g>>>0>k>>>0){c[H>>2]=g-k;i=0;break a}else{lg(d,k);i=0;break a}}break}case 1:{g=c[H>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0))lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}do if(g){g=c[H>>2]|0;if(!(a[G>>0]|0)){if(g>>>0<=4){lg(d,4);g=c[H>>2]|0;if(a[G>>0]|0){m=212;break}}else{g=g+-4|0;c[H>>2]=g}if(g>>>0>4){g=g+-4|0;c[H>>2]=g;m=213;break}else{lg(d,4);m=211;break}}else m=212}else m=211;while(0);if((m|0)==211){g=c[H>>2]|0;m=212}if((m|0)==212)if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0))lg(d,1)}else m=213;if((m|0)==213){g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}w=g&255;n=e+53450|0;a[n>>0]=w;c:do if(!(w<<24>>24)){a[t>>0]=0;a[t+1>>0]=0;a[t+2>>0]=0;a[t+3>>0]=0;a[t+4>>0]=0;a[t+5>>0]=0;a[u>>0]=0;a[u+1>>0]=0;a[u+2>>0]=0;h=e+610|0;i=a[h>>0]|0;j=e+614|0;k=a[j>>0]|0;l=e+53451|0;m=a[l>>0]|0;if(i<<24>>24)dl(t|0,e+616|0,(i+-1&255)+1|0)|0;if(k<<24>>24)dl(u|0,e+628|0,(k+-1&255)+1|0)|0;g=lh(d,e,0)|0;do if(!(g<<24>>24)){g=lh(d,e,1)|0;if(g<<24>>24){a[l>>0]=m;a[h>>0]=i;a[j>>0]=k;w=e+616|0;a[w>>0]=a[t>>0]|0;a[w+1>>0]=a[t+1>>0]|0;a[w+2>>0]=a[t+2>>0]|0;a[w+3>>0]=a[t+3>>0]|0;a[w+4>>0]=a[t+4>>0]|0;a[w+5>>0]=a[t+5>>0]|0;w=e+628|0;a[w>>0]=a[u>>0]|0;a[w+1>>0]=a[u+1>>0]|0;a[w+2>>0]=a[u+2>>0]|0;break}mh(d,e,0);mh(d,e,1);l=e+19|0;g=a[l>>0]|0;do if(g<<24>>24){m=d+4|0;k=0;do{j=k&255;h=c[H>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[d>>2]&(1<<h)+-1)<<i|(c[m>>2]|0)>>>(32-i|0)}else i=c[d>>2]<<32-h>>>30;do if(!(a[G>>0]|0))if(h>>>0>2){c[H>>2]=h+-2;break}else{lg(d,2);g=a[l>>0]|0;break}while(0);a[e+10976+j>>0]=i;k=k+1<<24>>24}while((k&255)<(g&255));if(!(g<<24>>24))break;else k=0;do{j=k&255;h=c[H>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[d>>2]&(1<<h)+-1)<<i|(c[m>>2]|0)>>>(32-i|0)}else i=c[d>>2]<<32-h>>>30;do if(!(a[G>>0]|0))if(h>>>0>2){c[H>>2]=h+-2;break}else{lg(d,2);g=a[l>>0]|0;break}while(0);a[e+10981+j>>0]=i;k=k+1<<24>>24}while((k&255)<(g&255))}while(0);nh(d,e,0);nh(d,e,1);oh(d,e,0);oh(d,e,1);g=e+12149|0;h=g+128|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));g=c[H>>2]|0;do if(!g){g=(c[d+4>>2]|0)>>>31;if(a[G>>0]|0)break;lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}while(0);w=g&255;a[e+53443>>0]=w;do if(w<<24>>24){k=e+17|0;g=a[k>>0]|0;if(!(g<<24>>24))break;l=d+4|0;j=0;do{i=j&255;h=c[H>>2]|0;do if(!h){h=(c[l>>2]|0)>>>31;if(a[G>>0]|0)break;lg(d,1);g=a[k>>0]|0}else{h=h+-1|0;c[H>>2]=h;h=(c[d>>2]|0)>>>h&1}while(0);a[e+12149+i>>0]=h;j=j+1<<24>>24}while((j&255)<(g&255))}while(0);g=c[H>>2]|0;do if(!g){g=(c[d+4>>2]|0)>>>31;if(a[G>>0]|0)break;lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}while(0);w=g&255;a[e+53444>>0]=w;do if(w<<24>>24){k=e+17|0;g=a[k>>0]|0;if(!(g<<24>>24))break;l=d+4|0;j=0;do{i=j&255;h=c[H>>2]|0;do if(!h){h=(c[l>>2]|0)>>>31;if(a[G>>0]|0)break;lg(d,1);g=a[k>>0]|0}else{h=h+-1|0;c[H>>2]=h;h=(c[d>>2]|0)>>>h&1}while(0);a[e+12213+i>>0]=h;j=j+1<<24>>24}while((j&255)<(g&255))}while(0);break c}while(0);break b}else{g=lh(d,e,0)|0;if(g<<24>>24)break b;a[e+53452>>0]=a[e+53451>>0]|0;i=a[e+610>>0]|0;a[e+611>>0]=i;j=a[e+614>>0]|0;a[e+615>>0]=j;a[e+53508>>0]=a[e+53507>>0]|0;h=0;g=0;while(1){a[e+622+g>>0]=a[e+616+g>>0]|0;a[e+640+g>>0]=a[e+634+g>>0]|0;g=h+1<<24>>24;if((g&255)>(i&255)){h=0;g=0;break}else{h=g;g=g&255}}while(1){a[e+631+g>>0]=a[e+628+g>>0]|0;g=h+1<<24>>24;if((g&255)>(j&255))break;else{h=g;g=g&255}}mh(d,e,0);mh(d,e,1);l=e+19|0;g=a[l>>0]|0;if(g<<24>>24){m=d+4|0;k=0;do{j=k&255;h=c[H>>2]|0;if(h>>>0<2){i=2-h|0;i=(c[d>>2]&(1<<h)+-1)<<i|(c[m>>2]|0)>>>(32-i|0)}else i=c[d>>2]<<32-h>>>30;do if(!(a[G>>0]|0))if(h>>>0>2){c[H>>2]=h+-2;break}else{lg(d,2);g=a[l>>0]|0;break}while(0);a[e+10976+j>>0]=i;k=k+1<<24>>24}while((k&255)<(g&255));if(g<<24>>24){g=g&255;h=0;do{a[e+10981+h>>0]=a[e+10976+h>>0]|0;h=h+1|0}while((h|0)!=(g|0))}}nh(d,e,0);oh(d,e,0);nh(d,e,1);oh(d,e,1);g=e+12149|0;h=g+128|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));g=c[H>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0))lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}w=g&255;a[e+53443>>0]=w;do if(w<<24>>24){k=e+17|0;g=a[k>>0]|0;if(!(g<<24>>24))break;l=d+4|0;j=0;do{i=j&255;h=c[H>>2]|0;do if(!h){h=(c[l>>2]|0)>>>31;if(a[G>>0]|0)break;lg(d,1);g=a[k>>0]|0}else{h=h+-1|0;c[H>>2]=h;h=(c[d>>2]|0)>>>h&1}while(0);a[e+12149+i>>0]=h;j=j+1<<24>>24}while((j&255)<(g&255))}while(0);g=c[H>>2]|0;do if(!g){g=(c[d+4>>2]|0)>>>31;if(a[G>>0]|0)break;lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}while(0);w=g&255;a[e+53444>>0]=w;if(!(w<<24>>24))break;k=e+17|0;g=a[k>>0]|0;if(!(g<<24>>24))break;l=d+4|0;j=0;do{i=j&255;h=c[H>>2]|0;do if(!h){h=(c[l>>2]|0)>>>31;if(a[G>>0]|0)break;lg(d,1);g=a[k>>0]|0}else{h=h+-1|0;c[H>>2]=h;h=(c[d>>2]|0)>>>h&1}while(0);a[e+12213+i>>0]=h;j=j+1<<24>>24}while((j&255)<(g&255))}while(0);ph(e,0);ph(e,1);if(a[n>>0]|0)rh(e);g=c[H>>2]|0;if(!g){g=(c[d+4>>2]|0)>>>31;if(!(a[G>>0]|0))lg(d,1)}else{g=g+-1|0;c[H>>2]=g;g=(c[d>>2]|0)>>>g&1}w=g&255;a[e+53447>>0]=w;if(!(w<<24>>24)){i=0;break a}h=c[H>>2]|0;if(h>>>0<4){g=4-h|0;g=(c[d>>2]&(1<<h)+-1)<<g|(c[d+4>>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>28;do if(!(a[G>>0]|0))if(h>>>0>4){c[H>>2]=h+-4;break}else{lg(d,4);break}while(0);if((g&65535|0)==15){h=c[H>>2]|0;if(h>>>0<8){g=8-h|0;g=(c[d>>2]&(1<<h)+-1)<<g|(c[d+4>>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>24;do if(!(a[G>>0]|0))if(h>>>0>8){c[H>>2]=h+-8;break}else{lg(d,8);break}while(0);g=(g&65535)+15|0}k=d+4|0;l=e+53448|0;g=g<<3;while(1){i=g&65535;j=g&65535;if((i&65535)<=7)break;h=c[H>>2]|0;if(h>>>0<2){g=2-h|0;g=(c[d>>2]&(1<<h)+-1)<<g|(c[k>>2]|0)>>>(32-g|0)}else g=c[d>>2]<<32-h>>>30;do if(!(a[G>>0]|0))if(h>>>0>2){c[H>>2]=h+-2;break}else{lg(d,2);break}while(0);g=g&255;a[l>>0]=g;g=(qh(d,e,g)|0)+2<<16>>16;if((g&65535)>(i&65535)){g=1;break b}else g=j-(g&65535)|0}if(i<<16>>16==0|(j|0)==0){i=0;break a}g=c[H>>2]|0;if(a[G>>0]|0){i=0;break a}if(g>>>0>j>>>0){c[H>>2]=g-j;i=0;break a}else{lg(d,j);i=0;break a}}default:{i=0;break a}}while(0);if(!(a[x>>0]|0)){if(!(a[y>>0]|0)){i=g;break}if(!(a[e+9>>0]|0)){i=g;break}}kh(e,z,B,A,C,D,E)|0;i=g}while(0);h=(jg(d)|0)-F|0;g=(f&65535)<<3;if(g>>>0<(h&65535)>>>0){mg(d,(F&65535)+g|0);a[e+53424>>0]=0;d=1;Vb=I;return d|0}g=g-h&65535;if(g>>>0>7)do{h=c[H>>2]|0;do if(!(a[G>>0]|0))if(h>>>0>8){c[H>>2]=h+-8;break}else{lg(d,8);break}while(0);g=g+65528&65535}while(g>>>0>7);if(!g){d=i;Vb=I;return d|0}h=c[H>>2]|0;if(a[G>>0]|0){d=i;Vb=I;return d|0}if(h>>>0>g>>>0){c[H>>2]=h-g;d=i;Vb=I;return d|0}else{lg(d,g);d=i;Vb=I;return d|0}return 0}function kh(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0;j=yh(d,f,c[b>>2]|0)|0;d=b+13|0;a[d>>0]=j;j=zh(e,c[b>>2]|0,j)|0;e=c[b>>2]|0;do if(e>>>0<=47999){d=a[d>>0]|0;f=(j&255)-(d&255)|0;if(e>>>0<32001){f=(f|0)>48;break}else{f=(f|0)>45;break}}else{d=a[d>>0]|0;f=((j&255)-(d&255)|0)>32}while(0);if(!(g<<24>>24))d=Ah(b,d,j,h)|0;else d=Bh(b,d,j,g,h)|0;return ((d&255)+(f&1)+((Ch(b,i,j)|0)&255)&255|0)!=0|0}function lh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;v=f&255;w=e+610+v|0;x=a[w>>0]|0;y=e+614+v|0;z=a[y>>0]|0;A=e+53451+v|0;B=a[A>>0]|0;u=b+8|0;h=c[u>>2]|0;if(h>>>0<2){g=2-h|0;g=(c[b>>2]&(1<<h)+-1)<<g|(c[b+4>>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-h>>>30;t=b+20|0;do if(!(a[t>>0]|0))if(h>>>0>2){c[u>>2]=h+-2;break}else{lg(b,2);break}while(0);g=g&255;a[A>>0]=g;switch(g<<24>>24){case 0:{g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;i=c[b>>2]|0;h=(i&(1<<g)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else{i=c[b>>2]|0;h=i<<32-g>>>30}do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;h=1<<(h&255);h=((h|0)<5?h:5)&255;j=18;break}else{lg(b,2);g=c[u>>2]|0;j=16;break}else j=16;while(0);do if((j|0)==16){h=1<<(h&255);h=((h|0)<5?h:5)&255;if(g|0){i=c[b>>2]|0;j=18;break}g=(c[b+4>>2]|0)>>>31;if(!(a[t>>0]|0))lg(b,1)}while(0);if((j|0)==18){g=g+-1|0;c[u>>2]=g;g=i>>>g&1}if(h<<24>>24)fl(e+((v*6|0)+634)|0,g&255|0,(h+-1&255)+1|0)|0;a[e+602+v>>0]=0;a[e+604+v>>0]=a[e+53417>>0]|0;a[e+606+v>>0]=(h&255)+255;g=0;j=173;break}case 1:{g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<<g)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;break}else{lg(b,2);g=c[u>>2]|0;break}while(0);o=h+(d[e+53417>>0]|0)&255;if(g>>>0<2){m=2-g|0;m=(c[b>>2]&(1<<g)+-1)<<m|(c[b+4>>2]|0)>>>(32-m|0)}else m=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){c[u>>2]=g+-2;break}else{lg(b,2);break}while(0);n=m+1|0;h=n&255;n=n&255;p=n+-1|0;if(n>>>0>1){j=b+4|0;i=0;l=0;do{k=c[u>>2]|0;if(k>>>0<2){g=2-k|0;g=(c[b>>2]&(1<<k)+-1)<<g|(c[j>>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-k>>>30;do if(!(a[t>>0]|0))if(k>>>0>2){c[u>>2]=k+-2;break}else{lg(b,2);break}while(0);a[e+53453+(v*9|0)+l>>0]=(g<<1)+2;i=i+1<<24>>24;l=i&255}while((p|0)>(l|0))}g=m+2|0;do if((g&255)<10?(s=g<<24>>24,q=d[119381+s>>0]|0,s>>>0>=2):0){i=c[u>>2]|0;if(i>>>0<q>>>0){g=q-i|0;g=(c[b>>2]&(1<<i)+-1)<<g|(c[b+4>>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-i>>>(32-q|0);if(!(a[t>>0]|0))if(i>>>0>q>>>0){c[u>>2]=i-q;break}else{lg(b,q);break}}else g=0;while(0);a[e+53507+v>>0]=g;if(n|0){j=b+4|0;i=0;k=0;do{g=c[u>>2]|0;if(!g){g=(c[j>>2]|0)>>>31;if(!(a[t>>0]|0))lg(b,1)}else{g=g+-1|0;c[u>>2]=g;g=(c[b>>2]|0)>>>g&1}a[p-k+(e+634+(v*6|0))>>0]=g;i=i+1<<24>>24;k=i&255}while(n>>>0>k>>>0)}a[e+602+v>>0]=0;a[e+604+v>>0]=o;a[e+606+v>>0]=0;g=p&255;j=173;break}case 2:{g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<<g)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;break}else{lg(b,2);g=c[u>>2]|0;break}while(0);p=h&255;if(g>>>0<2){m=2-g|0;m=(c[b>>2]&(1<<g)+-1)<<m|(c[b+4>>2]|0)>>>(32-m|0)}else m=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){c[u>>2]=g+-2;break}else{lg(b,2);break}while(0);n=m+1|0;h=n&255;n=n&255;o=n+-1|0;if(n>>>0>1){j=b+4|0;i=0;l=0;do{k=c[u>>2]|0;if(k>>>0<2){g=2-k|0;g=(c[b>>2]&(1<<k)+-1)<<g|(c[j>>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-k>>>30;do if(!(a[t>>0]|0))if(k>>>0>2){c[u>>2]=k+-2;break}else{lg(b,2);break}while(0);a[e+53453+(v*9|0)+l>>0]=(g<<1)+2;i=i+1<<24>>24;l=i&255}while((o|0)>(l|0))}g=m+2|0;do if((g&255)<10?(s=g<<24>>24,r=d[119381+s>>0]|0,s>>>0>=2):0){i=c[u>>2]|0;if(i>>>0<r>>>0){g=r-i|0;g=(c[b>>2]&(1<<i)+-1)<<g|(c[b+4>>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-i>>>(32-r|0);if(!(a[t>>0]|0))if(i>>>0>r>>>0){c[u>>2]=i-r;break}else{lg(b,r);break}}else g=0;while(0);a[e+53507+v>>0]=g;if(n|0){j=b+4|0;i=0;k=0;do{g=c[u>>2]|0;if(!g){g=(c[j>>2]|0)>>>31;if(!(a[t>>0]|0))lg(b,1)}else{g=g+-1|0;c[u>>2]=g;g=(c[b>>2]|0)>>>g&1}a[e+634+(v*6|0)+k>>0]=g;i=i+1<<24>>24;k=i&255}while(n>>>0>k>>>0)}a[e+602+v>>0]=p;a[e+604+v>>0]=a[e+53417>>0]|0;a[e+606+v>>0]=o;g=0;j=173;break}case 3:{g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<<g)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;break}else{lg(b,2);g=c[u>>2]|0;break}while(0);p=h&255;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<<g)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){g=g+-2|0;c[u>>2]=g;break}else{lg(b,2);g=c[u>>2]|0;break}while(0);o=h+(d[e+53417>>0]|0)&255;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<<g)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){c[u>>2]=g+-2;break}else{lg(b,2);break}while(0);n=e+53513+v|0;a[n>>0]=h;g=c[u>>2]|0;if(g>>>0<2){h=2-g|0;h=(c[b>>2]&(1<<g)+-1)<<h|(c[b+4>>2]|0)>>>(32-h|0)}else h=c[b>>2]<<32-g>>>30;do if(!(a[t>>0]|0))if(g>>>0>2){c[u>>2]=g+-2;break}else{lg(b,2);break}while(0);g=h&255;m=e+53515+v|0;a[m>>0]=g;r=a[n>>0]|0;h=(h&255)+(r&255)|0;h=h>>>0>4?5:h+1&255;if(!(r<<24>>24))j=0;else{l=b+4|0;k=0;do{i=k&255;j=c[u>>2]|0;if(j>>>0<2){g=2-j|0;g=(c[b>>2]&(1<<j)+-1)<<g|(c[l>>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-j>>>30;do if(!(a[t>>0]|0))if(j>>>0>2){c[u>>2]=j+-2;break}else{lg(b,2);break}while(0);a[e+53471+(v*9|0)+i>>0]=(g<<1)+2;k=k+1<<24>>24;j=a[n>>0]|0}while((k&255)<(j&255));g=a[m>>0]|0}if(!(g<<24>>24)){i=0;g=j}else{l=b+4|0;k=0;do{i=k&255;j=c[u>>2]|0;if(j>>>0<2){g=2-j|0;g=(c[b>>2]&(1<<j)+-1)<<g|(c[l>>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-j>>>30;do if(!(a[t>>0]|0))if(j>>>0>2){c[u>>2]=j+-2;break}else{lg(b,2);break}while(0);a[e+53489+(v*9|0)+i>>0]=(g<<1)+2;k=k+1<<24>>24;i=a[m>>0]|0}while((k&255)<(i&255));g=a[n>>0]|0}g=(i&255)+2+(g&255)|0;do if((g&255)<10?(r=g<<24>>24,s=d[119381+r>>0]|0,r>>>0>=2):0){i=c[u>>2]|0;if(i>>>0<s>>>0){g=s-i|0;g=(c[b>>2]&(1<<i)+-1)<<g|(c[b+4>>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-i>>>(32-s|0);if(!(a[t>>0]|0))if(i>>>0>s>>>0){c[u>>2]=i-s;break}else{lg(b,s);break}}else g=0;while(0);a[e+53507+v>>0]=g;if(h<<24>>24){i=b+4|0;k=h&255;j=0;do{g=c[u>>2]|0;if(!g){g=(c[i>>2]|0)>>>31;if(!(a[t>>0]|0))lg(b,1)}else{g=g+-1|0;c[u>>2]=g;g=(c[b>>2]|0)>>>g&1}a[e+634+(v*6|0)+j>>0]=g;j=j+1|0}while((j|0)!=(k|0))}a[e+602+v>>0]=p;a[e+604+v>>0]=o;a[e+606+v>>0]=a[n>>0]|0;g=a[m>>0]|0;j=173;break}default:h=0}if((j|0)==173){a[e+608+v>>0]=g;g=a[A>>0]|0}v=h&255;g=g<<24>>24==3?5:4;g=g>>>0>v>>>0?v:g;a[w>>0]=g;if(!g){B=1;return B|0}a[y>>0]=(g|0)!=1?2:1;g=wh(e,f)|0;if(!(g<<24>>24)){xh(e,f);B=0;return B|0}else{a[A>>0]=B;a[w>>0]=x;a[y>>0]=z;B=g;return B|0}return 0}function mh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=f&255;i=e+610+m|0;if(a[i>>0]|0){j=b+8|0;k=b+4|0;l=b+20|0;g=0;do{h=g&255;f=c[j>>2]|0;if(!f){f=(c[k>>2]|0)>>>31;if(!(a[l>>0]|0))lg(b,1)}else{f=f+-1|0;c[j>>2]=f;f=(c[b>>2]|0)>>>f&1}a[e+53517+(m*9|0)+h>>0]=f;g=g+1<<24>>24}while((g&255)<(d[i>>0]|0))}h=e+614+m|0;if(!(a[h>>0]|0))return;i=b+8|0;j=b+4|0;k=b+20|0;g=0;do{l=g&255;f=c[i>>2]|0;if(!f){f=(c[j>>2]|0)>>>31;if(!(a[k>>0]|0))lg(b,1)}else{f=f+-1|0;c[i>>2]=f;f=(c[b>>2]|0)>>>f&1}a[e+53535+(m*3|0)+l>>0]=f;g=g+1<<24>>24}while((g&255)<(d[h>>0]|0));return}function nh(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;w=g&255;x=f+610+w|0;i=a[x>>0]|0;if(i<<24>>24==1?(a[f+53451+w>>0]|0)==0:0)h=0;else h=a[f+53431>>0]|0;t=f+11+w|0;a[t>>0]=h;u=f+53450|0;v=g<<24>>24==1;j=v&(a[u>>0]|0)!=0;r=h<<24>>24==0;s=j?(r?118537:118633):r?118777:119017;r=j?(r?118681:118365):r?119141:118413;if(!(i<<24>>24)){vh(f,g);return}o=e+8|0;p=e+4|0;q=e+20|0;n=j&1;m=0;l=0;while(1){if(!(a[f+53517+(w*9|0)+l>>0]|0)){i=(a[t>>0]|0)==0;i=v&(a[u>>0]|0)==1?(i?6:5):i?7:6;j=c[o>>2]|0;if(j>>>0<i>>>0){h=i-j|0;h=(c[e>>2]&(1<<j)+-1)<<h|(c[p>>2]|0)>>>(32-h|0)}else h=c[e>>2]<<32-j>>>(32-i|0);do if(!(a[q>>0]|0))if(j>>>0>i>>>0){c[o>>2]=j-i;break}else{lg(e,i);break}while(0);b[f+730+(w*640|0)+(l<<1)>>1]=h<<n;k=f+634+(w*6|0)+l|0;if((d[(d[k>>0]|0)+(f+24)>>0]|0)>1){j=1;do{i=0;do{h=c[o>>2]|0;if(!h){h=(c[p>>2]|0)>>>31;if(!(a[q>>0]|0))lg(e,1)}else{h=h+-1|0;c[o>>2]=h;h=(c[e>>2]|0)>>>h&1}h=a[r+(i<<1)+h>>0]|0;i=h<<24>>24}while(h<<24>>24>-1);b[f+730+(w*640|0)+((j&255)*10|0)+(l<<1)>>1]=i+64<<n;j=j+1<<24>>24}while((j&255)<(d[(d[k>>0]|0)+(f+24)>>0]|0))}}else{k=f+634+(w*6|0)+l|0;if(a[(d[k>>0]|0)+(f+24)>>0]|0){j=0;do{i=0;do{h=c[o>>2]|0;if(!h){h=(c[p>>2]|0)>>>31;if(!(a[q>>0]|0))lg(e,1)}else{h=h+-1|0;c[o>>2]=h;h=(c[e>>2]|0)>>>h&1}h=a[s+(i<<1)+h>>0]|0;i=h<<24>>24}while(h<<24>>24>-1);b[f+730+(w*640|0)+((j&255)*10|0)+(l<<1)>>1]=i+64<<n;j=j+1<<24>>24}while((j&255)<(d[(d[k>>0]|0)+(f+24)>>0]|0))}}h=m+1<<24>>24;if((h&255)<(d[x>>0]|0)){m=h;l=h&255}else break}vh(f,g);return}function oh(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=f<<24>>24==1&(a[e+53450>>0]|0)==1;o=g?118193:118241;n=g?118365:118413;s=f&255;t=e+614+s|0;if(!(a[t>>0]|0)){uh(e,f);return}p=b+8|0;q=b+4|0;r=b+20|0;l=g&1;m=e+19|0;k=0;j=0;while(1){if(!(a[e+53535+(s*3|0)+j>>0]|0)){h=c[p>>2]|0;if(h>>>0<5){g=5-h|0;g=(c[b>>2]&(1<<h)+-1)<<g|(c[q>>2]|0)>>>(32-g|0)}else g=c[b>>2]<<32-h>>>27;do if(!(a[r>>0]|0))if(h>>>0>5){c[p>>2]=h+-5;break}else{lg(b,5);break}while(0);c[e+7388+(s<<9)+(j<<2)>>2]=g<<l;if((d[m>>0]|0)>1){h=1;do{i=0;do{g=c[p>>2]|0;if(!g){g=(c[q>>2]|0)>>>31;if(!(a[r>>0]|0))lg(b,1)}else{g=g+-1|0;c[p>>2]=g;g=(c[b>>2]|0)>>>g&1}g=a[n+(i<<1)+g>>0]|0;i=g<<24>>24}while(g<<24>>24>-1);c[e+7388+(s<<9)+((h&255)<<3)+(j<<2)>>2]=i+64<<l;h=h+1<<24>>24}while((h&255)<(d[m>>0]|0))}}else if(a[m>>0]|0){i=0;do{h=0;do{g=c[p>>2]|0;if(!g){g=(c[q>>2]|0)>>>31;if(!(a[r>>0]|0))lg(b,1)}else{g=g+-1|0;c[p>>2]=g;g=(c[b>>2]|0)>>>g&1}g=a[o+(h<<1)+g>>0]|0;h=g<<24>>24}while(g<<24>>24>-1);c[e+7388+(s<<9)+((i&255)<<3)+(j<<2)>>2]=h+64<<l;i=i+1<<24>>24}while((i&255)<(d[m>>0]|0))}g=k+1<<24>>24;if((g&255)<(d[t>>0]|0)){k=g;j=g&255}else break}uh(e,f);return}function ph(e,g){e=e|0;g=g|0;var h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=e+53450|0;if(a[t>>0]|0)return;u=g&255;h=(a[e+11+u>>0]|0)==0;p=a[e+610+u>>0]|0;a:do if(p<<24>>24){q=h&1;if(h){o=0;m=0}else{n=0;l=0;while(1){m=(d[e+634+(u*6|0)+l>>0]|0)+(e+24)|0;if(a[m>>0]|0){k=0;i=0;while(1){h=b[e+730+(u*640|0)+(i*10|0)+(l<<1)>>1]>>q;if(h>>>0>63)j=0.0;else j=+f[44144+(h<<2)>>2];f[e+2268+(u*1280|0)+(i*20|0)+(l<<2)>>2]=j;h=k+1<<24>>24;if((h&255)<(d[m>>0]|0)){k=h;i=h&255}else break}}h=n+1<<24>>24;if((h&255)<(p&255)){n=h;l=h&255}else break a}}while(1){n=(d[e+634+(u*6|0)+m>>0]|0)+(e+24)|0;if(a[n>>0]|0){l=0;i=0;while(1){k=b[e+730+(u*640|0)+(i*10|0)+(m<<1)>>1]|0;h=k<<16>>16>>q;if(h>>>0<=63){j=+f[44144+(h<<2)>>2];h=e+2268+(u*1280|0)+(i*20|0)+(m<<2)|0;f[h>>2]=j;if(k&1)f[h>>2]=j*1.4142135381698608}else f[e+2268+(u*1280|0)+(i*20|0)+(m<<2)>>2]=0.0;h=l+1<<24>>24;if((h&255)<(d[n>>0]|0)){l=h;i=h&255}else break}}h=o+1<<24>>24;if((h&255)<(p&255)){o=h;m=h&255}else break}}while(0);p=a[e+614+u>>0]|0;if(!(p<<24>>24))return;o=g<<24>>24==0;n=a[e+19>>0]|0;m=0;h=n;l=0;while(1){if(h<<24>>24)if(o){k=0;i=0;while(1){if(!(a[t>>0]|0)){h=c[e+7388+(u<<9)+(i<<3)+(l<<2)>>2]|0;if(h>>>0>30)j=0.0;else j=+f[46112+(h<<2)>>2]}else{h=c[e+7388+(i<<3)+(l<<2)>>2]|0;if(h>>>0<=30?(v=c[e+7900+(i<<3)+(l<<2)>>2]|0,v>>>0<=24):0)j=+f[44500+(h*52|0)+(v>>>1<<2)>>2];else j=0.0}f[e+8412+(u<<9)+(i<<3)+(l<<2)>>2]=j;if(!(a[t>>0]|0)){h=c[e+7388+(u<<9)+(i<<3)+(l<<2)>>2]|0;if(h>>>0>30)j=0.0;else j=+f[49460+(h<<2)>>2]}else{h=c[e+7388+(i<<3)+(l<<2)>>2]|0;if(h>>>0<=30?(w=c[e+7900+(i<<3)+(l<<2)>>2]|0,w>>>0<=24):0)j=+f[47848+(h*52|0)+(w>>>1<<2)>>2];else j=0.0}f[e+9436+(u<<9)+(i<<3)+(l<<2)>>2]=j;h=k+1<<24>>24;if((h&255)<(n&255)){k=h;i=h&255}else{h=n;break}}}else{k=0;i=0;while(1){if(!(a[t>>0]|0)){h=c[e+7388+(u<<9)+(i<<3)+(l<<2)>>2]|0;if(h>>>0>30)j=0.0;else j=+f[46112+(h<<2)>>2]}else{h=c[e+7388+(i<<3)+(l<<2)>>2]|0;if(h>>>0<=30?(r=c[e+7900+(i<<3)+(l<<2)>>2]|0,r>>>0<=24):0)j=+f[46236+(h*52|0)+(r>>>1<<2)>>2];else j=0.0}f[e+8412+(u<<9)+(i<<3)+(l<<2)>>2]=j;if(!(a[t>>0]|0)){h=c[e+7388+(u<<9)+(i<<3)+(l<<2)>>2]|0;if(h>>>0>30)j=0.0;else j=+f[49460+(h<<2)>>2]}else{h=c[e+7388+(i<<3)+(l<<2)>>2]|0;if(h>>>0<=30?(s=c[e+7900+(i<<3)+(l<<2)>>2]|0,s>>>0<=24):0)j=+f[49584+(h*52|0)+(s>>>1<<2)>>2];else j=0.0}f[e+9436+(u<<9)+(i<<3)+(l<<2)>>2]=j;h=k+1<<24>>24;if((h&255)<(n&255)){k=h;i=h&255}else{h=n;break}}}else h=0;i=m+1<<24>>24;if((i&255)<(p&255)){m=i;l=i&255}else break}return}function qh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Vb;Vb=Vb+16|0;i=j;if(e<<24>>24!=2){f=b+8|0;g=c[f>>2]|0;if(g>>>0<6){e=6-g|0;e=(c[b>>2]&(1<<g)+-1)<<e|(c[b+4>>2]|0)>>>(32-e|0)}else e=c[b>>2]<<32-g>>>26;do if(!(a[b+20>>0]|0))if(g>>>0>6){c[f>>2]=g+-6;break}else{lg(b,6);break}while(0);a[d+53449>>0]=e;d=6;Vb=j;return d|0}f=d+53420|0;e=c[f>>2]|0;if(!e){e=Bg(c[d>>2]|0)|0;e=sh(e,a[d+53416>>0]|0)|0;c[f>>2]=e}h=d+53425|0;if(a[h>>0]|0)a[e+719>>0]=0;g=th(e,b,i)|0;f=d+53424|0;e=(a[i>>0]|0)==1;if(!((a[f>>0]|0)==0&e)){if(!e){d=g;Vb=j;return d|0}}else a[f>>0]=1;a[h>>0]=0;d=g;Vb=j;return d|0}function rh(e){e=e|0;var g=0,h=0,i=0.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=(a[e+11>>0]|0)==0;s=a[e+610>>0]|0;if(s<<24>>24){p=r&1;q=(a[e+12>>0]|0)==0&1;o=0;m=0;while(1){n=(d[e+634+m>>0]|0)+(e+24)|0;if(a[n>>0]|0)if(r){l=0;k=0;while(1){g=b[e+730+(k*10|0)+(m<<1)>>1]|0;h=b[e+1370+(k*10|0)+(m<<1)>>1]>>q;j=(g>>p<<16)+65536|0;if(h>>>0>24|j>>>0>4128768){f[e+3548+(k*20|0)+(m<<2)>>2]=0.0;i=0.0;g=0}else{i=+f[44144+(j>>16<<2)>>2];i=(g&1|0)==0?i:i*1.4142135381698608;f[e+2268+(k*20|0)+(m<<2)>>2]=+f[44400+(h<<2)>>2]*i;i=i*+f[44400+(24-h<<2)>>2];g=1}f[e+2268+(g*1280|0)+(k*20|0)+(m<<2)>>2]=i;g=l+1<<24>>24;if((g&255)<(d[n>>0]|0)){l=g;k=g&255}else break}}else{k=0;j=0;while(1){g=b[e+1370+(j*10|0)+(m<<1)>>1]>>q;h=(b[e+730+(j*10|0)+(m<<1)>>1]>>p<<16)+65536|0;if(g>>>0>24|h>>>0>4128768){f[e+3548+(j*20|0)+(m<<2)>>2]=0.0;i=0.0;g=0}else{i=+f[44144+(h>>16<<2)>>2];f[e+2268+(j*20|0)+(m<<2)>>2]=+f[44400+(g<<2)>>2]*i;i=i*+f[44400+(24-g<<2)>>2];g=1}f[e+2268+(g*1280|0)+(j*20|0)+(m<<2)>>2]=i;g=k+1<<24>>24;if((g&255)<(d[n>>0]|0)){k=g;j=g&255}else break}}g=o+1<<24>>24;if((g&255)<(s&255)){o=g;m=g&255}else break}}p=a[e+614>>0]|0;if(!(p<<24>>24))return;q=e+53450|0;o=a[e+19>>0]|0;n=0;g=o;m=0;while(1){if(!(g<<24>>24))g=0;else{l=0;k=0;while(1){j=c[e+7388+(k<<3)+(m<<2)>>2]|0;h=j>>>0>30;if(!(a[q>>0]|0))if(h)i=0.0;else i=+f[46112+(j<<2)>>2];else if(!h?(t=c[e+7900+(k<<3)+(m<<2)>>2]|0,t>>>0<=24):0)i=+f[44500+(j*52|0)+(t>>>1<<2)>>2];else i=0.0;f[e+8412+(k<<3)+(m<<2)>>2]=i;if(!(a[q>>0]|0)){g=c[e+7900+(k<<3)+(m<<2)>>2]|0;if(g>>>0>30)i=0.0;else i=+f[46112+(g<<2)>>2]}else if(!h?(u=c[e+7900+(k<<3)+(m<<2)>>2]|0,u>>>0<=24):0)i=+f[46236+(j*52|0)+(u>>>1<<2)>>2];else i=0.0;f[e+8924+(k<<3)+(m<<2)>>2]=i;if(!(a[q>>0]|0))if(h)i=0.0;else i=+f[49460+(j<<2)>>2];else if(!h?(v=c[e+7900+(k<<3)+(m<<2)>>2]|0,v>>>0<=24):0)i=+f[47848+(j*52|0)+(v>>>1<<2)>>2];else i=0.0;f[e+9436+(k<<3)+(m<<2)>>2]=i;if(!(a[q>>0]|0)){g=c[e+7900+(k<<3)+(m<<2)>>2]|0;if(g>>>0>30)i=0.0;else i=+f[49460+(g<<2)>>2]}else if(!h?(w=c[e+7900+(k<<3)+(m<<2)>>2]|0,w>>>0<=24):0)i=+f[49584+(j*52|0)+(w>>>1<<2)>>2];else i=0.0;f[e+9948+(k<<3)+(m<<2)>>2]=i;g=l+1<<24>>24;if((g&255)<(o&255)){l=g;k=g&255}else{g=o;break}}}h=n+1<<24>>24;if((h&255)<(p&255)){n=h;m=h&255}else break}return}function sh(b,e){b=b|0;e=e|0;var g=0,h=0,i=0,j=0;i=og(22736)|0;fl(i|0,0,22736)|0;g=og(24)|0;a[g+4>>0]=12;a[g+5>>0]=8;a[g+6>>0]=4;a[g+7>>0]=4;a[g+8>>0]=4;a[g+1>>0]=8;a[g+2>>0]=2;a[g+3>>0]=2;a[g>>0]=e;h=og(((e&255)<<3)+96|0)|0;c[g+12>>2]=h;fl(h|0,0,(d[g>>0]<<3)+96|0)|0;h=g+16|0;c[h>>2]=og(20)|0;b=og(d[g>>0]<<3)|0;c[c[h>>2]>>2]=b;fl(c[c[h>>2]>>2]|0,0,d[g>>0]<<3|0)|0;b=og(d[g>>0]<<3)|0;c[(c[h>>2]|0)+4>>2]=b;fl(c[(c[h>>2]|0)+4>>2]|0,0,d[g>>0]<<3|0)|0;b=og(d[g>>0]<<3)|0;c[(c[h>>2]|0)+8>>2]=b;fl(c[(c[h>>2]|0)+8>>2]|0,0,d[g>>0]<<3|0)|0;b=og(d[g>>0]<<3)|0;c[(c[h>>2]|0)+12>>2]=b;fl(c[(c[h>>2]|0)+12>>2]|0,0,d[g>>0]<<3|0)|0;b=og(d[g>>0]<<3)|0;c[(c[h>>2]|0)+16>>2]=b;fl(c[(c[h>>2]|0)+16>>2]|0,0,d[g>>0]<<3|0)|0;h=g+20|0;c[h>>2]=og(d[g>>0]<<2)|0;if(a[g>>0]|0){b=0;do{j=og(96)|0;c[(c[h>>2]|0)+((b&255)<<2)>>2]=j;b=b+1<<24>>24}while((b&255)<(d[g>>0]|0))}c[i+720>>2]=g;a[i+725>>0]=e;a[i+718>>0]=0;a[i+740>>0]=0;b=i+811|0;g=b+64|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(g|0));a[i+741>>0]=0;a[i+744>>0]=3;a[i+742>>0]=0;a[i+745>>0]=4;a[i+743>>0]=0;a[i+746>>0]=5;a[i+729>>0]=22;f[i+20076>>2]=.765928328037262;f[i+20080>>2]=.25;b=i+747|0;g=b+35|0;do{a[b>>0]=14;b=b+1|0}while((b|0)<(g|0));b=i+782|0;g=b+29|0;do{a[b>>0]=1;b=b+1|0}while((b|0)<(g|0));f[i+20492>>2]=1.0;f[i+20896>>2]=1.0;f[i+20500>>2]=1.0;f[i+20904>>2]=1.0;f[i+20508>>2]=1.0;f[i+20912>>2]=1.0;f[i+20516>>2]=1.0;f[i+20920>>2]=1.0;f[i+20524>>2]=1.0;f[i+20928>>2]=1.0;f[i+20532>>2]=1.0;f[i+20936>>2]=1.0;f[i+20540>>2]=1.0;f[i+20944>>2]=1.0;f[i+20548>>2]=1.0;f[i+20952>>2]=1.0;f[i+20556>>2]=1.0;f[i+20960>>2]=1.0;f[i+20564>>2]=1.0;f[i+20968>>2]=1.0;f[i+20572>>2]=1.0;f[i+20976>>2]=1.0;f[i+20580>>2]=1.0;f[i+20984>>2]=1.0;f[i+20588>>2]=1.0;f[i+20992>>2]=1.0;f[i+20596>>2]=1.0;f[i+21e3>>2]=1.0;f[i+20604>>2]=1.0;f[i+21008>>2]=1.0;f[i+20612>>2]=1.0;f[i+21016>>2]=1.0;f[i+20620>>2]=1.0;f[i+21024>>2]=1.0;f[i+20628>>2]=1.0;f[i+21032>>2]=1.0;f[i+20636>>2]=1.0;f[i+21040>>2]=1.0;f[i+20644>>2]=1.0;f[i+21048>>2]=1.0;f[i+20652>>2]=1.0;f[i+21056>>2]=1.0;f[i+20660>>2]=1.0;f[i+21064>>2]=1.0;f[i+20668>>2]=1.0;f[i+21072>>2]=1.0;f[i+20676>>2]=1.0;f[i+21080>>2]=1.0;f[i+20684>>2]=1.0;f[i+21088>>2]=1.0;f[i+20692>>2]=1.0;f[i+21096>>2]=1.0;f[i+20700>>2]=1.0;f[i+21104>>2]=1.0;f[i+20708>>2]=1.0;f[i+21112>>2]=1.0;f[i+20716>>2]=1.0;f[i+21120>>2]=1.0;f[i+20724>>2]=1.0;f[i+21128>>2]=1.0;f[i+20732>>2]=1.0;f[i+21136>>2]=1.0;f[i+20740>>2]=1.0;f[i+21144>>2]=1.0;f[i+20748>>2]=1.0;f[i+21152>>2]=1.0;f[i+20756>>2]=1.0;f[i+21160>>2]=1.0;f[i+20764>>2]=1.0;f[i+21168>>2]=1.0;f[i+20772>>2]=1.0;f[i+21176>>2]=1.0;f[i+20780>>2]=1.0;f[i+21184>>2]=1.0;f[i+20788>>2]=1.0;f[i+21192>>2]=1.0;f[i+20796>>2]=1.0;f[i+21200>>2]=1.0;f[i+20804>>2]=1.0;f[i+21208>>2]=1.0;f[i+20812>>2]=1.0;f[i+21216>>2]=1.0;f[i+20820>>2]=1.0;f[i+21224>>2]=1.0;f[i+20828>>2]=1.0;f[i+21232>>2]=1.0;f[i+20836>>2]=1.0;f[i+21240>>2]=1.0;f[i+20844>>2]=1.0;f[i+21248>>2]=1.0;f[i+20852>>2]=1.0;f[i+21256>>2]=1.0;f[i+20860>>2]=1.0;f[i+21264>>2]=1.0;f[i+20868>>2]=1.0;f[i+21272>>2]=1.0;f[i+20876>>2]=1.0;f[i+21280>>2]=1.0;f[i+20884>>2]=1.0;f[i+21288>>2]=1.0;a[i+22092>>0]=0;e=i+22416|0;j=i+22096|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22112|0;j=i+22432|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22128|0;e=i+22448|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22144|0;j=i+22464|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22160|0;e=i+22480|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22176|0;j=i+22496|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22192|0;e=i+22512|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22208|0;j=i+22528|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22224|0;e=i+22544|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22240|0;j=i+22560|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22256|0;e=i+22576|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22272|0;j=i+22592|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22288|0;e=i+22608|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22304|0;j=i+22624|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22320|0;e=i+22640|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22336|0;j=i+22656|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22352|0;e=i+22672|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22368|0;j=i+22688|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;j=i+22384|0;e=i+22704|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;e=i+22400|0;j=i+22720|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;return i|0}
function ic(){Md();Gi()}function jc(a){a=a|0;var b=0;b=Vb;Vb=Vb+a|0;Vb=Vb+15&-16;return b|0}function kc(){return Vb|0}function lc(a){a=a|0;Vb=a}function mc(a,b){a=a|0;b=b|0;Vb=a;Wb=b}function nc(){Ra();return 0}function oc(a){a=a|0;var b=0;ba(584,592,608,0,106564,3,106567,0,106567,0,105800,106569,22);b=Ej(8)|0;c[b>>2]=2;c[b+4>>2]=0;da(584,105809,3,1344,106572,3,b|0,0);b=Ej(8)|0;c[b>>2]=3;c[b+4>>2]=0;da(584,105815,3,1356,106572,4,b|0,0);b=Ej(8)|0;c[b>>2]=23;c[b+4>>2]=0;da(584,105822,2,1368,106577,4,b|0,0);b=Ej(8)|0;c[b>>2]=24;c[b+4>>2]=0;da(584,105829,2,1368,106577,4,b|0,0);b=Ej(8)|0;c[b>>2]=5;c[b+4>>2]=0;a=Ej(8)|0;c[a>>2]=6;c[a+4>>2]=0;ea(584,105847,576,106581,1,b|0,576,106572,5,a|0);a=Ej(8)|0;c[a>>2]=7;c[a+4>>2]=0;b=Ej(8)|0;c[b>>2]=8;c[b+4>>2]=0;ea(584,105857,576,106581,1,a|0,576,106572,5,b|0);b=Ej(8)|0;c[b>>2]=9;c[b+4>>2]=0;a=Ej(8)|0;c[a>>2]=10;c[a+4>>2]=0;ea(584,105865,576,106581,1,b|0,576,106572,5,a|0);a=Ej(8)|0;c[a>>2]=11;c[a+4>>2]=0;b=Ej(8)|0;c[b>>2]=12;c[b+4>>2]=0;ea(584,105877,576,106581,1,a|0,576,106572,5,b|0);b=Ej(8)|0;c[b>>2]=13;c[b+4>>2]=0;a=Ej(8)|0;c[a>>2]=14;c[a+4>>2]=0;ea(584,105889,576,106581,1,b|0,576,106572,5,a|0);a=Ej(8)|0;c[a>>2]=15;c[a+4>>2]=0;ea(584,105893,576,106581,1,a|0,0,0,0,0);ba(664,680,696,584,106564,4,106564,5,106564,6,105904,106569,25);a=Ej(4)|0;c[a>>2]=26;da(664,106585,2,1376,106577,16,a|0,0);ca(584,106605,3,1384,106741,5,2);ca(584,106615,3,1508,106741,6,6);return}function pc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=Vb;Vb=Vb+16|0;n=o+8|0;m=o;e=b+224|0;l=b+4|0;if(a[e>>0]|0){f=c[l>>2]|0;if((a[123344]|0)==0?Qk(123344)|0:0)c[30852]=va(1,1296)|0;sa(c[30852]|0,f|0,105917,m|0)}a[e>>0]=1;g=c[l>>2]|0;j=Aa(105923)|0;g=wa(g|0,j|0)|0;ta(j|0);j=Hc(g,105935)|0;ta(g|0);c[n>>2]=105943;c[n+4>>2]=j?105952:105957;Na(0,n|0);a[b+80>>0]=j&1;j=d+11|0;g=a[j>>0]|0;h=g<<24>>24<0;f=h?c[d>>2]|0:d;k=d+4|0;g=h?c[k>>2]|0:g&255;h=f+g|0;e=h;i=f;a:do if((g|0)<4)g=h;else{while(1){g=g+-3|0;if(!g){g=h;break a}f=cj(f,46,g)|0;if(!f){g=h;break a}if(!(Pi(f,105963,4)|0))break;f=f+1|0;g=e-f|0;if((g|0)<4){g=h;break a}}g=f;e=f}while(0);a[b+225>>0]=(e-i|0)!=-1&(g|0)!=(h|0)&1;h=ua(105968)|0;e=a[j>>0]|0;if(e<<24>>24<0){f=c[k>>2]|0;g=yj(f+4|0)|0;c[g>>2]=f;e=c[d>>2]|0}else{f=e&255;g=yj(f+4|0)|0;c[g>>2]=f;e=d}dl(g+4|0,e|0,f|0)|0;c[n>>2]=g;c[m>>2]=za(h|0,1,1304,n|0)|0;ta(h|0);Fc(m,105978,105989);Gc(n,b,105815);k=c[m>>2]|0;d=Aa(106001)|0;Ea(k|0,d|0,c[n>>2]|0);ta(d|0);ta(c[n>>2]|0);c[b+216>>2]=Ja()|0;b=c[l>>2]|0;n=Aa(106011)|0;Ea(b|0,n|0,c[m>>2]|0);ta(n|0);ta(c[m>>2]|0);Vb=o;return}function qc(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=Vb;Vb=Vb+64|0;k=z+24|0;t=z+16|0;w=z;y=z+44|0;s=z+32|0;f=c[e>>2]|0;x=Aa(106139)|0;c[w>>2]=wa(f|0,x|0)|0;ta(x|0);Kc(y,w);ta(c[w>>2]|0);x=y+11|0;f=a[x>>0]|0;j=y+4|0;e=b+220|0;c[e>>2]=(c[e>>2]|0)+(f<<24>>24<0?c[j>>2]|0:f&255);f=Ja()|0;h=b+216|0;i=c[h>>2]|0;if((f|0)>(i|0)){g[b+240>>3]=+(c[e>>2]|0)*1.0e3/+(f-i|0);c[h>>2]=f;c[e>>2]=0}a:do if(!(a[b+225>>0]|0))switch(a[(Wj(y,0)|0)>>0]|0){case 1:{Rj(s,y,1,-1,y);c[w>>2]=c[s>>2];c[w+4>>2]=c[s+4>>2];c[w+8>>2]=c[s+8>>2];q=w+12|0;c[q>>2]=0;v=w+11|0;u=(a[v>>0]|0)<0?c[w>>2]|0:w;s=a[u+3>>0]|0;r=a[u+2>>0]|0;t=a[u+1>>0]|0;u=a[u>>0]|0;c[q>>2]=4;Lc(b,(r&255)<<8|s&255|(t&255)<<16|(u&255)<<24,w);if((a[v>>0]|0)<0)Fj(c[w>>2]|0);break a}case 2:{Rj(s,y,1,-1,y);c[w>>2]=c[s>>2];c[w+4>>2]=c[s+4>>2];c[w+8>>2]=c[s+8>>2];q=w+12|0;c[q>>2]=0;v=w+11|0;u=(a[v>>0]|0)<0?c[w>>2]|0:w;s=a[u+3>>0]|0;r=a[u+2>>0]|0;t=a[u+1>>0]|0;u=a[u>>0]|0;c[q>>2]=4;Mc(b,(r&255)<<8|s&255|(t&255)<<16|(u&255)<<24,w);if((a[v>>0]|0)<0)Fj(c[w>>2]|0);break a}case 10:{e=c[b+4>>2]|0;f=Aa(106011)|0;e=wa(e|0,f|0)|0;ta(f|0);f=Aa(106165)|0;h=f;if((a[123392]|0)==0?Qk(123392)|0:0)c[30858]=va(2,1332)|0;b=c[30858]|0;xa(f|0);c[w>>2]=h;sa(b|0,e|0,106160,w|0);ta(f|0);ta(e|0);break a}default:{b=a[(Wj(y,0)|0)>>0]|0;c[k>>2]=106181;c[k+4>>2]=b;Na(1,k|0);break a}}else{v=b+12|0;p=a[x>>0]|0;r=p<<24>>24<0;Xj(v,r?c[y>>2]|0:y,r?c[j>>2]|0:p&255)|0;j=b+8|0;p=v+11|0;if(!(a[j>>0]|0)){e=a[p>>0]|0;f=e<<24>>24<0;if(f)h=c[b+16>>2]|0;else h=e&255;i=b+24|0;if((h-(c[i>>2]|0)|0)<=12)break;a[j>>0]=1;c[i>>2]=13;if(f){e=c[b+16>>2]|0;f=c[v>>2]|0}else{e=e&255;f=v}b=e+-13|0;el(f|0,f+13|0,b|0)|0;Tj(v,b,0);c[i>>2]=0;break}l=b+16|0;q=b+24|0;m=s+11|0;n=s+4|0;o=w+11|0;while(1){i=a[p>>0]|0;j=i<<24>>24<0;if(j)e=c[l>>2]|0;else e=i&255;r=c[q>>2]|0;if((e-r|0)<=3)break;if(j)e=c[v>>2]|0;else e=v;h=r+1|0;k=a[e+r>>0]|0;c[q>>2]=h;h=e+h+3+-1|0;e=a[h>>0]|0;A=a[h+-1>>0]|0;h=a[h+-2>>0]|0;f=r+4|0;c[q>>2]=f;h=(A&255)<<8|e&255|(h&255)<<16;if(j)e=c[l>>2]|0;else e=i&255;if((e-f|0)>>>0<(h+11|0)>>>0){u=24;break}if(j)e=c[v>>2]|0;else e=v;e=e+f+3+-1|0;e=d[e+-1>>0]<<8|d[e>>0]|d[e+-2>>0]<<16;A=r+11|0;c[q>>2]=A;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;Rj(s,v,A,h,v);A=a[m>>0]|0;r=A<<24>>24<0;A=r?c[n>>2]|0:A&255;c[q>>2]=(c[q>>2]|0)+A;Xj(w,r?c[s>>2]|0:s,A)|0;if((a[m>>0]|0)<0)Fj(c[s>>2]|0);switch(k<<24>>24){case 8:{Lc(b,e,w);break}case 9:{Mc(b,e,w);break}default:{c[t>>2]=106144;c[t+4>>2]=k&255;Na(0,t|0)}}c[q>>2]=(c[q>>2]|0)+4;if((a[o>>0]|0)<0)Fj(c[w>>2]|0)}if((u|0)==24)c[q>>2]=r;if(j){e=c[l>>2]|0;f=c[v>>2]|0}else{e=i&255;f=v}A=e-r|0;el(f|0,f+r|0,A|0)|0;Tj(v,A,0);c[q>>2]=0}while(0);if((a[x>>0]|0)>=0){Vb=z;return}Fj(c[y>>2]|0);Vb=z;return}function rc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=Vb;Vb=Vb+16|0;h=j;g=ua(106502)|0;f=b+208|0;c[h>>2]=c[f>>2];ta(qa(g|0,1,1340,h|0)|0);ta(g|0);g=b+180|0;ad(g);$c(g);h=c[b+184>>2]|0;i=b+188|0;d=c[i>>2]|0;if((d|0)!=(h|0))c[i>>2]=d+(~((d+-4-h|0)>>>2)<<2);bd(g);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;if((a[b+80>>0]|0)==0?(e=c[b+52>>2]|0,e|0):0)zj(e);c[f>>2]=0;a[b+212>>0]=1;a[b+204>>0]=0;Tj(b+12|0,0,0);c[b+24>>2]=0;a[b+8>>0]=0;Vb=j;return}function sc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=Vb;Vb=Vb+16|0;g=o+4|0;i=o;j=b+200|0;a:do if(c[j>>2]|0){k=b+184|0;l=b+196|0;m=b+4|0;n=b+232|0;h=b+44|0;f=0;d=c[l>>2]|0;while(1){p=(d>>>0)/204|0;e=c[(c[k>>2]|0)+(p<<2)>>2]|0;d=d-(p*204|0)|0;if(f?(c[g>>2]=c[e+(d*20|0)>>2],p=Sc(c[m>>2]|0,106493,g)|0,p=((c[n>>2]|0)*1e3|0)+p|0,c[i>>2]=p,(p|0)>0):0)break;Rc(h,e+(d*20|0)+4|0);d=c[l>>2]|0;e=(d>>>0)/204|0;e=(c[(c[k>>2]|0)+(e<<2)>>2]|0)+((d-(e*204|0)|0)*20|0)+4|0;if((a[e+11>>0]|0)<0){Fj(c[e>>2]|0);d=c[l>>2]|0}e=(c[j>>2]|0)+-1|0;c[j>>2]=e;d=d+1|0;c[l>>2]=d;if(d>>>0>407){Fj(c[c[k>>2]>>2]|0);c[k>>2]=(c[k>>2]|0)+4;d=(c[l>>2]|0)+-204|0;c[l>>2]=d;e=c[j>>2]|0}if(!e)break a;else f=1}a[b+204>>0]=1;c[b+208>>2]=Tc(c[m>>2]|0,106477,i)|0;Vb=o;return}while(0);a[b+204>>0]=0;Vb=o;return}function tc(a,b){a=a|0;b=b|0;var e=0,f=0;e=Vb;Vb=Vb+16|0;f=e;c[f>>2]=d[b+224>>0];c[a>>2]=Fa(1184,f|0)|0;Vb=e;return}function uc(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=Vb;Vb=Vb+16|0;g=e;f=+pa(c[d>>2]|0,1184,g|0);Da(c[g>>2]|0);a[b+224>>0]=f!=0.0&1;Vb=e;return}function vc(a,b){a=a|0;b=b|0;var e=0,f=0;e=Vb;Vb=Vb+16|0;f=e;c[f>>2]=d[b+225>>0];c[a>>2]=Fa(1184,f|0)|0;Vb=e;return}function wc(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=Vb;Vb=Vb+16|0;g=e;f=+pa(c[d>>2]|0,1184,g|0);Da(c[g>>2]|0);a[b+225>>0]=f!=0.0&1;Vb=e;return}function xc(a,b){a=a|0;b=b|0;var d=0,e=0;d=Vb;Vb=Vb+16|0;e=d;c[e>>2]=c[b+228>>2];c[a>>2]=Fa(1232,e|0)|0;Vb=d;return}function yc(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=Vb;Vb=Vb+16|0;f=d;e=+pa(c[b>>2]|0,1232,f|0);Da(c[f>>2]|0);c[a+228>>2]=~~e;Vb=d;return}function zc(a,b){a=a|0;b=b|0;var d=0,e=0;d=Vb;Vb=Vb+16|0;e=d;c[e>>2]=c[b+232>>2];c[a>>2]=Fa(1232,e|0)|0;Vb=d;return}function Ac(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=Vb;Vb=Vb+16|0;f=d;e=+pa(c[b>>2]|0,1232,f|0);Da(c[f>>2]|0);c[a+232>>2]=~~e;Vb=d;return}function Bc(a,b){a=a|0;b=b|0;var d=0,e=0;d=Vb;Vb=Vb+16|0;e=d;g[e>>3]=+g[b+240>>3];c[a>>2]=Fa(1272,e|0)|0;Vb=d;return}function Cc(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=Vb;Vb=Vb+16|0;f=d;e=+pa(c[b>>2]|0,1272,f|0);Da(c[f>>2]|0);g[a+240>>3]=e;Vb=d;return}function Dc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=Vb;Vb=Vb+16|0;e=d+4|0;f=d;c[e>>2]=Ba()|0;i=b+184|0;h=b+196|0;j=c[h>>2]|0;g=(j>>>0)/204|0;cd(e,106515,(c[(c[i>>2]|0)+(g<<2)>>2]|0)+((j-(g*204|0)|0)*20|0)|0);b=b+200|0;h=(c[b>>2]|0)+-1+(c[h>>2]|0)|0;g=(h>>>0)/204|0;dd(e,106521,(c[(c[i>>2]|0)+(g<<2)>>2]|0)+((h-(g*204|0)|0)*20|0)|0);c[f>>2]=c[b>>2];ed(e,106526,f);b=c[e>>2]|0;c[a>>2]=b;xa(b|0);ta(c[e>>2]|0);Vb=d;return}function Ec(a){a=a|0;ta(c[a>>2]|0);return}function Fc(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=Aa(b|0)|0;d=Aa(d|0)|0;Ea(a|0,b|0,d|0);ta(d|0);ta(b|0);return}function Gc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;b=b+4|0;f=c[b>>2]|0;e=Aa(d|0)|0;d=wa(f|0,e|0)|0;ta(e|0);Jc(a,d,106115,b);ta(d|0);return}function Hc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0.0;g=Vb;Vb=Vb+16|0;e=g;f=g+8|0;if((a[123352]|0)==0?Qk(123352)|0:0)c[30853]=va(1,1300)|0;h=+ra(c[30853]|0,b|0,d|0,f|0,e|0);Da(c[f>>2]|0);Vb=g;return h!=0.0|0}function Ic(a){a=a|0;Q(a|0)|0;tk()}function Jc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0.0,k=0;i=Vb;Vb=Vb+16|0;g=i;h=i+8|0;if((a[123360]|0)==0?Qk(123360)|0:0)c[30854]=va(2,1308)|0;k=c[30854]|0;xa(c[f>>2]|0);c[g>>2]=c[f>>2];j=+ra(k|0,d|0,e|0,h|0,g|0);h=c[h>>2]|0;c[b>>2]=~~j>>>0;Da(h|0);Vb=i;return}function Kc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0,j=0;h=Vb;Vb=Vb+16|0;e=h;i=+pa(c[d>>2]|0,552,e|0);e=c[e>>2]|0;g=~~i>>>0;f=g+4|0;g=c[g>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(g>>>0>4294967279)Kj(b);if(g>>>0<11){a[b+11>>0]=g;if(!g){f=b;g=f+g|0;a[g>>0]=0;Da(e|0);Vb=h;return}else d=b}else{j=g+16&-16;d=Ej(j)|0;c[b>>2]=d;c[b+8>>2]=j|-2147483648;c[b+4>>2]=g}dl(d|0,f|0,g|0)|0;j=d;j=j+g|0;a[j>>0]=0;Da(e|0);Vb=h;return}function Lc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Vb;Vb=Vb+16|0;i=j;h=e+12|0;f=c[h>>2]|0;d=a[((a[e+11>>0]|0)<0?c[e>>2]|0:e)+f+1+-1>>0]|0;c[h>>2]=f+1;d=d&255;h=d>>>4;f=b+213|0;if(a[f>>0]|0){g=(d&1)+1|0;d=d>>>2;switch(d&3){case 1:{d=11025;break}case 2:{d=22050;break}case 3:{d=44100;break}default:d=d&3}switch(h&15){case 10:{Oc(b,c[b+228>>2]<<10,d,g);break}case 11:{Oc(b,16e3,16e3,g);break}case 2:{Oc(b,(c[b+228>>2]|0)*576|0,d,g);break}default:{}}if(a[f>>0]|0){Vb=j;return}}g=b+28|0;if((h|0)!=10){Vb=j;return}f=b+32|0;d=Pc(g,e,(c[b+36>>2]|0)+(c[f>>2]|0)|0)|0;if(!d){Vb=j;return}h=(c[f>>2]|0)+d|0;e=(h|0)==(c[g>>2]|0);c[f>>2]=e?0:h;if(!e){Vb=j;return}d=c[b+4>>2]|0;if((a[123344]|0)==0?Qk(123344)|0:0)c[30852]=va(1,1296)|0;sa(c[30852]|0,d|0,106264,i|0);Vb=j;return}function Mc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=Vb;Vb=Vb+48|0;m=q+32|0;l=q+24|0;k=q+16|0;j=q+8|0;o=q;n=q+36|0;p=e+12|0;f=c[p>>2]|0;g=((a[e+11>>0]|0)<0?c[e>>2]|0:e)+f|0;h=a[g+1>>0]|0;i=b+212|0;if(a[i>>0]|0){g=a[g>>0]|0;f=g&15;switch(g&15){case 7:{c[j>>2]=106346;Na(0,j|0);break}case 12:{c[k>>2]=106361;Na(0,k|0);break}default:{c[l>>2]=106376;c[l+4>>2]=f;Na(0,l|0);Vb=q;return}}if(!(h<<24>>24==0&(g&-16)<<24>>24==16)){Vb=q;return}Qc(b+44|0,e,f);a[i>>0]=0;c[m>>2]=106436;Na(0,m|0);Vb=q;return}if(h<<24>>24!=1){f=c[b+4>>2]|0;if((a[123344]|0)==0?Qk(123344)|0:0)c[30852]=va(1,1296)|0;sa(c[30852]|0,f|0,106452,o|0);Vb=q;return}if(!d){Vb=q;return}c[p>>2]=f+5;f=b+232|0;a:do if(c[f>>2]|0){g=b+204|0;do if(!(a[g>>0]|0)){c[o>>2]=d;h=b+4|0;o=Sc(c[h>>2]|0,106493,o)|0;o=((c[f>>2]|0)*1e3|0)+o|0;c[n>>2]=o;if((o|0)>0){a[g>>0]=1;c[b+208>>2]=Tc(c[h>>2]|0,106477,n)|0;break}else break a}while(0);j=b+188|0;g=c[j>>2]|0;k=b+184|0;f=c[k>>2]|0;o=g-f|0;i=b+196|0;l=b+200|0;h=(c[l>>2]|0)+(c[i>>2]|0)|0;if((((o|0)==0?0:((o>>2)*204|0)+-1|0)|0)==(h|0)){Uc(b+180|0);h=(c[i>>2]|0)+(c[l>>2]|0)|0;g=c[j>>2]|0;f=c[k>>2]|0}if((g|0)==(f|0))f=0;else{b=(h>>>0)/204|0;f=(c[f+(b<<2)>>2]|0)+((h-(b*204|0)|0)*20|0)|0}c[f>>2]=d;d=f+4|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[f+16>>2]=c[p>>2];c[l>>2]=(c[l>>2]|0)+1;Vb=q;return}while(0);Rc(b+44|0,e);Vb=q;return}function Nc(b){b=b|0;if((a[b+11>>0]|0)>=0)return;Fj(c[b>>2]|0);return}function Oc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;i=Vb;Vb=Vb+32|0;h=i;a[b+213>>0]=0;j=w(d<<1,f)|0;c[b+28>>2]=j;g=b+36|0;c[g>>2]=yj(j)|0;c[h>>2]=106284;c[h+4>>2]=j;Na(0,h|0);g=c[g>>2]>>1;b=c[b+4>>2]|0;if((a[123368]|0)==0?Qk(123368)|0:0)c[30855]=va(5,16)|0;j=c[30855]|0;c[h>>2]=d;c[h+8>>2]=e;c[h+16>>2]=f;c[h+24>>2]=g;sa(j|0,b|0,106274,h|0);Vb=i;return}function Pc(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=Vb;Vb=Vb+128|0;n=q+8|0;p=q;o=q+24|0;i=q+112|0;j=e+11|0;k=a[j>>0]|0;l=k<<24>>24<0;m=c[e>>2]|0;g=e+12|0;h=c[g>>2]|0;r=a[(l?m:e)+h+1+-1>>0]|0;h=h+1|0;c[g>>2]=h;if(!(r<<24>>24)){p=b+12|0;r=Kg(c[p>>2]|0)|0;a[r>>0]=4;Lg(c[p>>2]|0,r)|0;Qg(c[p>>2]|0,((a[j>>0]|0)<0?c[e>>2]|0:e)+(c[g>>2]|0)|0,4,o,i)|0;p=c[o>>2]|0;r=d[i>>0]|0;c[n>>2]=106316;c[n+4>>2]=p;c[n+8>>2]=r;Na(0,n|0);r=0;Vb=q;return r|0}b=ah(c[b+12>>2]|0,o,l?m+h|0:e+h|0,(l?c[e+4>>2]|0:k&255)-h|0)|0;e=a[o+9>>0]|0;if(!(e<<24>>24)){r=c[o+4>>2]<<1;dl(f|0,b|0,r|0)|0;Vb=q;return r|0}else{r=Hg(e)|0;c[p>>2]=106310;c[p+4>>2]=r;Na(1,p|0);r=0;Vb=q;return r|0}return 0}function Qc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=Vb;Vb=Vb+16|0;j=l;k=d+12|0;g=c[k>>2]|0;c[j>>2]=106466;c[j+4>>2]=e;Na(0,j|0);switch(e|0){case 7:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+9>>0]&3;n=g+11|0;c[k>>2]=n;f=a[j>>0]|0;e=c[d>>2]|0;i=f<<24>>24<0?e:d;n=i+n+2+-1|0;m=a[n>>0]|0;n=a[n+-1>>0]|0;h=g+13|0;c[k>>2]=h;g=(n&255)<<8|m&255;if(g){ec[c[(c[b>>2]|0)+20>>2]&7](b,i+h|0,g);h=(c[k>>2]|0)+g|0;c[k>>2]=h;f=a[j>>0]|0;e=c[d>>2]|0}n=h+1|0;c[k>>2]=n;g=f<<24>>24<0?e:d;n=g+n+2+-1|0;e=a[n>>0]|0;n=a[n+-1>>0]|0;f=h+3|0;c[k>>2]=f;e=(n&255)<<8|e&255;if(!e){Vb=l;return}ec[c[(c[b>>2]|0)+20>>2]&7](b,g+f|0,e);Vb=l;return}case 12:{j=d+11|0;c[b+32>>2]=a[((a[j>>0]|0)<0?c[d>>2]|0:d)+(c[k>>2]|0)+27>>0]&3;i=g+31|0;c[k>>2]=i;n=(a[j>>0]|0)<0?c[d>>2]|0:d;i=n+i+2+-1|0;m=a[i>>0]|0;i=a[i+-1>>0]|0;h=g+33|0;c[k>>2]=h;m=(i&255)<<8|m&255;ec[c[(c[b>>2]|0)+20>>2]&7](b,n+h|0,m);m=(c[k>>2]|0)+m|0;h=m+3|0;c[k>>2]=h;n=(a[j>>0]|0)<0?c[d>>2]|0:d;h=n+h+2+-1|0;i=a[h>>0]|0;h=a[h+-1>>0]|0;m=m+5|0;c[k>>2]=m;i=(h&255)<<8|i&255;ec[c[(c[b>>2]|0)+20>>2]&7](b,n+m|0,i);i=(c[k>>2]|0)+i|0;m=i+3|0;c[k>>2]=m;j=(a[j>>0]|0)<0?c[d>>2]|0:d;m=j+m+2+-1|0;n=a[m>>0]|0;m=a[m+-1>>0]|0;d=i+5|0;c[k>>2]=d;ec[c[(c[b>>2]|0)+20>>2]&7](b,j+d|0,(m&255)<<8|n&255);Vb=l;return}default:{Vb=l;return}}}function Rc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=d+11|0;l=a[m>>0]|0;e=l<<24>>24<0;n=d+4|0;o=d+12|0;f=c[o>>2]|0;if(((e?c[n>>2]|0:l&255)-f|0)<=4)return;l=b+32|0;i=0;j=0;k=0;do{switch(c[l>>2]|0){case 3:{e=e?c[d>>2]|0:d;k=e+f+4+-1|0;g=4;h=k;i=a[k+-2>>0]|0;j=a[k+-3>>0]|0;k=a[k+-1>>0]|0;break}case 2:{e=e?c[d>>2]|0:d;k=e+f+3+-1|0;g=3;h=k;i=a[k+-2>>0]|0;k=a[k+-1>>0]|0;break}case 1:{e=e?c[d>>2]|0:d;k=e+f+2+-1|0;g=2;h=k;k=a[k+-1>>0]|0;break}default:{h=e?c[d>>2]|0:d;e=h;g=1;h=h+f+1+-1|0}}h=a[h>>0]|0;g=f+g|0;c[o>>2]=g;h=(i&255)<<16|(j&255)<<24|(k&255)<<8|h&255;ec[c[(c[b>>2]|0)+20>>2]&7](b,e+g|0,h);f=(c[o>>2]|0)+h|0;c[o>>2]=f;h=a[m>>0]|0;e=h<<24>>24<0}while(((e?c[n>>2]|0:h&255)-f|0)>4);return}function Sc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0.0,j=0;h=Vb;Vb=Vb+16|0;f=h;g=h+8|0;if((a[123376]|0)==0?Qk(123376)|0:0)c[30856]=va(2,1316)|0;j=c[30856]|0;c[f>>2]=c[e>>2];i=+ra(j|0,b|0,d|0,g|0,f|0);Da(c[g>>2]|0);Vb=h;return ~~i|0}function Tc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0.0,j=0;h=Vb;Vb=Vb+16|0;f=h;g=h+8|0;if((a[123384]|0)==0?Qk(123384)|0:0)c[30857]=va(2,1324)|0;j=c[30857]|0;c[f>>2]=c[e>>2];i=+ra(j|0,b|0,d|0,g|0,f|0);Da(c[g>>2]|0);Vb=h;return ~~i|0}function Uc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=Vb;Vb=Vb+32|0;k=r+4|0;g=r;b=a+16|0;d=c[b>>2]|0;if(d>>>0>203){c[b>>2]=d+-204;o=a+4|0;m=c[o>>2]|0;q=c[m>>2]|0;m=m+4|0;c[o>>2]=m;p=a+8|0;b=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;e=l;do if((b|0)==(l|0)){i=m;d=c[a>>2]|0;f=d;if(m>>>0>d>>>0){e=((i-f>>2)+1|0)/-2|0;f=m+(e<<2)|0;d=b-i|0;if(!d)b=f;else{el(f|0,m|0,d|0)|0;b=(c[o>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[p>>2]=a;c[o>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){r=P(8)|0;Ij(r,106196);c[r>>2]=102944;U(r|0,1104,16)}else{h=Ej(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;l=e;j=h+(f<<2)|0;if((m|0)==(b|0))b=l;else{f=((b+-4-i|0)>>>2)+1|0;d=m;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[o>>2]=l;c[p>>2]=b;c[n>>2]=j;if(d){Fj(d);b=c[p>>2]|0}}while(0);c[b>>2]=q;c[p>>2]=(c[p>>2]|0)+4;Vb=r;return}q=a+8|0;b=c[q>>2]|0;p=a+4|0;f=b-(c[p>>2]|0)>>2;o=a+12|0;d=c[o>>2]|0;e=d-(c[a>>2]|0)|0;if(f>>>0>=e>>2>>>0){b=(e|0)==0?1:e>>1;i=k+12|0;c[i>>2]=0;c[k+16>>2]=a+12;do if(b)if(b>>>0>1073741823){r=P(8)|0;Ij(r,106196);c[r>>2]=102944;U(r|0,1104,16)}else{d=Ej(b<<2)|0;break}else d=0;while(0);c[k>>2]=d;n=d+(f<<2)|0;j=k+8|0;c[j>>2]=n;h=k+4|0;c[h>>2]=n;c[i>>2]=d+(b<<2);c[g>>2]=Ej(4080)|0;Xc(k,g);b=c[q>>2]|0;d=c[p>>2]|0;if((b|0)!=(d|0)){do{b=b+-4|0;Yc(k,b);d=c[p>>2]|0}while((b|0)!=(d|0));b=c[q>>2]|0}e=d;f=c[a>>2]|0;c[a>>2]=c[k>>2];c[k>>2]=f;c[p>>2]=c[h>>2];c[h>>2]=e;c[q>>2]=c[j>>2];c[j>>2]=b;a=c[o>>2]|0;c[o>>2]=c[i>>2];c[i>>2]=a;if((d|0)!=(b|0))c[j>>2]=b+(~((b+-4-e|0)>>>2)<<2);if(f|0)Fj(f);Vb=r;return}if((d|0)!=(b|0)){c[k>>2]=Ej(4080)|0;Vc(a,k);Vb=r;return}c[k>>2]=Ej(4080)|0;Wc(a,k);m=c[p>>2]|0;n=c[m>>2]|0;m=m+4|0;c[p>>2]=m;b=c[q>>2]|0;l=c[o>>2]|0;e=l;do if((b|0)==(l|0)){j=m;d=c[a>>2]|0;f=d;if(m>>>0>d>>>0){e=((j-f>>2)+1|0)/-2|0;f=m+(e<<2)|0;d=b-j|0;if(!d)b=f;else{el(f|0,m|0,d|0)|0;b=(c[p>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[q>>2]=a;c[p>>2]=b;b=a;break}f=e-f|0;f=(f|0)==0?1:f>>1;g=f>>>2;do if(f)if(f>>>0>1073741823){r=P(8)|0;Ij(r,106196);c[r>>2]=102944;U(r|0,1104,16)}else{h=Ej(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;l=e;i=h+(f<<2)|0;if((m|0)==(b|0))b=l;else{f=((b+-4-j|0)>>>2)+1|0;d=m;while(1){c[e>>2]=c[d>>2];d=d+4|0;if((d|0)==(b|0))break;else e=e+4|0}b=h+(f+g<<2)|0;d=c[a>>2]|0}c[a>>2]=k;c[p>>2]=l;c[q>>2]=b;c[o>>2]=i;if(d){Fj(d);b=c[q>>2]|0}}while(0);c[b>>2]=n;c[q>>2]=(c[q>>2]|0)+4;Vb=r;return}function Vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{el(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=P(8)|0;Ij(q,106196);c[q>>2]=102944;U(q|0,1104,16)}else{i=Ej(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){Fj(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Wc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0<l>>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{el(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=P(8)|0;Ij(q,106196);c[q>>2]=102944;U(q|0,1104,16)}else{h=Ej(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){Fj(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Xc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+8|0;d=c[q>>2]|0;n=a+12|0;p=c[n>>2]|0;g=p;do if((d|0)==(p|0)){p=a+4|0;o=c[p>>2]|0;j=o;e=c[a>>2]|0;f=e;if(o>>>0>e>>>0){f=((j-f>>2)+1|0)/-2|0;g=o+(f<<2)|0;e=d-j|0;if(!e)d=g;else{el(g|0,o|0,e|0)|0;d=(c[p>>2]|0)+(f<<2)|0}o=g+(e>>2<<2)|0;c[q>>2]=o;c[p>>2]=d;d=o;break}g=g-f|0;g=(g|0)==0?1:g>>1;h=g>>>2;do if(g)if(g>>>0>1073741823){q=P(8)|0;Ij(q,106196);c[q>>2]=102944;U(q|0,1104,16)}else{i=Ej(g<<2)|0;break}else i=0;while(0);l=i;f=i+(h<<2)|0;m=f;k=i+(g<<2)|0;if((o|0)==(d|0))d=m;else{g=h+((d+-4-j|0)>>>2)+1|0;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(d|0))break;else f=f+4|0}d=i+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=l;c[p>>2]=m;c[q>>2]=d;c[n>>2]=k;if(e){Fj(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function Yc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+4|0;o=c[q>>2]|0;j=o;p=c[a>>2]|0;e=p;do if((o|0)==(p|0)){p=a+8|0;m=c[p>>2]|0;n=a+12|0;l=c[n>>2]|0;d=l;if(m>>>0<l>>>0){e=m;g=((d-e>>2)+1|0)/2|0;f=m+(g<<2)|0;e=e-j|0;d=f+(0-(e>>2)<<2)|0;if(!e){d=f;e=f}else{el(d|0,o|0,e|0)|0;e=(c[p>>2]|0)+(g<<2)|0}c[q>>2]=d;c[p>>2]=e;break}e=d-e|0;e=(e|0)==0?1:e>>1;f=(e+3|0)>>>2;do if(e)if(e>>>0>1073741823){q=P(8)|0;Ij(q,106196);c[q>>2]=102944;U(q|0,1104,16)}else{h=Ej(e<<2)|0;break}else h=0;while(0);k=h;d=h+(f<<2)|0;l=d;i=h+(e<<2)|0;if((o|0)==(m|0)){f=l;e=o}else{g=((m+-4-j|0)>>>2)+f+1|0;f=d;e=o;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(m|0))break;else f=f+4|0}f=h+(g<<2)|0;e=c[a>>2]|0}c[a>>2]=k;c[q>>2]=l;c[p>>2]=f;c[n>>2]=i;if(e){Fj(e);d=c[q>>2]|0}}else d=o;while(0);c[d+-4>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+-4;return}function Zc(a){a=a|0;var b=0,d=0,e=0,f=0;ad(a);d=a+4|0;b=c[d>>2]|0;f=a+8|0;e=c[f>>2]|0;if((b|0)!=(e|0)){do{Fj(c[b>>2]|0);b=b+4|0}while((b|0)!=(e|0));b=c[d>>2]|0;d=c[f>>2]|0;if((d|0)!=(b|0))c[f>>2]=d+(~((d+-4-b|0)>>>2)<<2)}b=c[a>>2]|0;if(!b)return;Fj(b);return}function _c(b){b=b|0;if(a[b+36>>0]|0)return;b=c[b+8>>2]|0;if(!b)return;zj(b);return}function $c(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;f=a+20|0;g=c[f>>2]|0;if(!g){d=a+8|0;b=c[d>>2]|0;e=a+4|0;if((b|0)!=(c[e>>2]|0))do{Fj(c[b+-4>>2]|0);b=(c[d>>2]|0)+-4|0;c[d>>2]=b}while((c[e>>2]|0)!=(b|0));c[a+16>>2]=0;bd(a);return}b=a+16|0;e=c[b>>2]|0;d=a+4|0;if(e>>>0>203){Fj(c[c[d>>2]>>2]|0);h=(c[d>>2]|0)+4|0;c[d>>2]=h;e=(c[b>>2]|0)+-204|0;c[b>>2]=e;g=c[f>>2]|0}else h=c[d>>2]|0;b=a+8|0;d=c[b>>2]|0;h=d-h|0;if((((h|0)==0?0:((h>>2)*204|0)+-1|0)-(g+e)|0)>>>0<=203){bd(a);return}Fj(c[d+-4>>2]|0);c[b>>2]=(c[b>>2]|0)+-4;bd(a);return}function ad(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+4|0;e=c[l>>2]|0;m=b+16|0;g=c[m>>2]|0;d=(g>>>0)/204|0;h=e+(d<<2)|0;j=b+8|0;n=c[j>>2]|0;f=n;i=e;if((n|0)!=(e|0)){d=(c[h>>2]|0)+((g-(d*204|0)|0)*20|0)|0;b=b+20|0;n=(c[b>>2]|0)+g|0;g=(n>>>0)/204|0;g=(c[e+(g<<2)>>2]|0)+((n-(g*204|0)|0)*20|0)|0;if((g|0)==(d|0)){d=b;k=5}else{f=h;while(1){e=d+4|0;if((a[e+11>>0]|0)<0)Fj(c[e>>2]|0);d=d+20|0;if((d-(c[f>>2]|0)|0)==4080){d=f+4|0;e=d;d=c[d>>2]|0}else e=f;if((g|0)==(d|0))break;else f=e}e=c[l>>2]|0;g=j;f=c[j>>2]|0;d=e}}else{d=b+20|0;k=5}if((k|0)==5){g=j;b=d;d=i}c[b>>2]=0;d=f-d>>2;if(d>>>0>2)do{Fj(c[e>>2]|0);e=(c[l>>2]|0)+4|0;c[l>>2]=e;d=(c[g>>2]|0)-e>>2}while(d>>>0>2);switch(d|0){case 1:{d=102;break}case 2:{d=204;break}default:return}c[m>>2]=d;return}function bd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+12|0;i=c[a>>2]|0;k=a+8|0;h=c[k>>2]|0;l=a+4|0;f=c[l>>2]|0;d=h-f|0;e=d>>2;b=i;if((c[j>>2]|0)-i>>2>>>0<=e>>>0)return;do if(d)if(e>>>0>1073741823){l=P(8)|0;Ij(l,106196);c[l>>2]=102944;U(l|0,1104,16)}else{g=Ej(d)|0;break}else g=0;while(0);i=g;e=g+(e<<2)|0;if((f|0)==(h|0))d=e;else{d=g;b=f;while(1){c[d>>2]=c[b>>2];b=b+4|0;if((b|0)==(h|0))break;else d=d+4|0}d=g+((c[k>>2]|0)-(c[l>>2]|0)>>2<<2)|0;b=c[a>>2]|0}c[a>>2]=i;c[l>>2]=i;c[k>>2]=d;c[j>>2]=e;if(!b)return;Fj(b);return}function cd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Vb;Vb=Vb+16|0;f=e;a=c[a>>2]|0;b=Aa(b|0)|0;c[f>>2]=c[d>>2];d=Fa(1248,f|0)|0;Ea(a|0,b|0,d|0);ta(d|0);ta(b|0);Vb=e;return}function dd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Vb;Vb=Vb+16|0;f=e;a=c[a>>2]|0;b=Aa(b|0)|0;c[f>>2]=c[d>>2];d=Fa(1248,f|0)|0;Ea(a|0,b|0,d|0);ta(d|0);ta(b|0);Vb=e;return}function ed(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Vb;Vb=Vb+16|0;f=e;a=c[a>>2]|0;b=Aa(b|0)|0;c[f>>2]=c[d>>2];d=Fa(1256,f|0)|0;Ea(a|0,b|0,d|0);ta(d|0);ta(b|0);Vb=e;return}function fd(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function gd(a){a=a|0;if(!a)return;cc[c[(c[a>>2]|0)+4>>2]&31](a);return}function hd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Vb;Vb=Vb+16|0;h=j;f=c[b>>2]|0;b=c[b+4>>2]|0;g=d+(b>>1)|0;if(b&1)f=c[(c[g>>2]|0)+f>>2]|0;d=e+4|0;e=c[e>>2]|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;if(e>>>0>4294967279)Kj(h);if(e>>>0<11){a[h+11>>0]=e;if(!e)b=h;else{b=h;i=9}}else{i=e+16&-16;b=Ej(i)|0;c[h>>2]=b;c[h+8>>2]=i|-2147483648;c[h+4>>2]=e;i=9}if((i|0)==9)dl(b|0,d|0,e|0)|0;a[b+e>>0]=0;dc[f&31](g,h);if((a[h+11>>0]|0)>=0){Vb=j;return}Fj(c[h>>2]|0);Vb=j;return}function id(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=Vb;Vb=Vb+16|0;f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;dc[e&31](a,f);ta(c[f>>2]|0);Vb=g;return}function jd(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=c[a+4>>2]|0;a=b+(e>>1)|0;if(!(e&1)){e=d;cc[e&31](a);return}else{e=c[(c[a>>2]|0)+d>>2]|0;cc[e&31](a);return}}function kd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=Vb;Vb=Vb+16|0;e=f;d=c[a>>2]|0;g=c[a+4>>2]|0;a=b+(g>>1)|0;if(g&1)d=c[(c[a>>2]|0)+d>>2]|0;dc[d&31](e,a);xa(c[e>>2]|0);g=c[e>>2]|0;ta(g|0);Vb=f;return g|0}function ld(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=Vb;Vb=Vb+16|0;f=g;e=c[a>>2]|0;h=c[a+4>>2]|0;a=b+(h>>1)|0;if(h&1)e=c[(c[a>>2]|0)+e>>2]|0;c[f>>2]=d;dc[e&31](a,f);ta(c[f>>2]|0);Vb=g;return}function md(b,d){b=b|0;d=d|0;var e=0;e=Ej(256)|0;xd(e,d);a[e+248>>0]=0;c[e+252>>2]=c[b>>2];c[b>>2]=0;c[e>>2]=1404;return e|0}function nd(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=$(((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0,664,c[e>>2]|0)|0;return}function od(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function pd(a){a=a|0;if(!a)return;cc[c[(c[a>>2]|0)+4>>2]&31](a);return}function qd(a){a=a|0;return a|0}function rd(a){a=a|0;return a|0}function sd(a,b){a=a|0;b=b|0;cc[c[a>>2]&31](b);return}function td(b){b=b|0;a[b+248>>0]=1;return}function ud(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=Vb;Vb=Vb+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=_b[a&3](f,g)|0;ta(c[g>>2]|0);ta(c[f>>2]|0);Vb=e;return d|0}function vd(b){b=b|0;var d=0,e=0,f=0,g=0;g=Vb;Vb=Vb+16|0;e=g;c[b>>2]=1420;d=b+252|0;if(!(a[b+248>>0]|0)){f=c[d>>2]|0;ta(f|0);Bd(b);Vb=g;return}f=c[d>>2]|0;if((a[123344]|0)==0?Qk(123344)|0:0)c[30852]=va(1,1296)|0;sa(c[30852]|0,f|0,106979,e|0);f=c[d>>2]|0;ta(f|0);Bd(b);Vb=g;return}function wd(a){a=a|0;vd(a);Fj(a);return}function xd(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=Vb;Vb=Vb+16|0;h=f+8|0;i=f;c[d>>2]=1436;g=d+4|0;c[g>>2]=c[e>>2];c[e>>2]=0;a[d+8>>0]=0;e=d+12|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[d+32>>2]=0;e=Ig()|0;c[d+40>>2]=e;c[i>>2]=106746;c[i+4>>2]=e;Na(0,i|0);c[h>>2]=106759;c[h+4>>2]=d+28;Na(0,h|0);zd(d+44|0);e=d+180|0;c[d+208>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;a[e+24>>0]=0;a[d+212>>0]=1;a[d+213>>0]=1;e=d+216|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;c[d+228>>2]=12;c[d+48>>2]=g;Vb=f;return}function yd(a){a=a|0;vd(a);Fj(a);return}function zd(b){b=b|0;var d=0,e=0,f=0;f=Vb;Vb=Vb+16|0;e=f+8|0;d=f;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+32>>2]=0;a[b+36>>0]=0;c[b>>2]=1452;if(!(cg(b+40|0,0)|0)){c[b+132>>2]=1;c[b+128>>2]=1;c[e>>2]=106805;Na(0,e|0);Vb=f;return}else{c[d>>2]=106774;Na(0,d|0);Vb=f;return}}function Ad(a){a=a|0;var b=0,d=0,e=0;b=Vb;Vb=Vb+16|0;d=b+8|0;e=b;c[e>>2]=106911;Na(0,e|0);Ug(c[a+12>>2]|0);zj(c[a+8>>2]|0);c[d>>2]=106934;Na(0,d|0);Vb=b;return}function Bd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=Vb;Vb=Vb+32|0;j=k+24|0;i=k+16|0;g=k+8|0;d=k;c[b>>2]=1436;f=ua(106502)|0;c[d>>2]=c[b+208>>2];ta(qa(f|0,1,1340,d|0)|0);ta(f|0);c[g>>2]=106958;Na(0,g|0);g=b+180|0;ad(g);f=b+184|0;d=c[f>>2]|0;h=b+188|0;e=c[h>>2]|0;if((d|0)!=(e|0)){do{Fj(c[d>>2]|0);d=d+4|0}while((d|0)!=(e|0));d=c[f>>2]|0;e=c[h>>2]|0;if((e|0)!=(d|0))c[h>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=c[g>>2]|0;if(d|0)Fj(d);Dd(b+44|0);c[i>>2]=106911;Na(0,i|0);Ug(c[b+40>>2]|0);zj(c[b+36>>2]|0);c[j>>2]=106934;Na(0,j|0);d=b+12|0;if((a[d+11>>0]|0)>=0){b=b+4|0;b=c[b>>2]|0;ta(b|0);Vb=k;return}Fj(c[d>>2]|0);b=b+4|0;b=c[b>>2]|0;ta(b|0);Vb=k;return}function Cd(a){a=a|0;Bd(a);Fj(a);return}function Dd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=Vb;Vb=Vb+16|0;g=h;c[b>>2]=1452;d=b+40|0;e=c[d>>2]|0;if(e|0){dg(e);c[d>>2]=0}c[b>>2]=1484;if((a[b+36>>0]|0)==0?(f=c[b+8>>2]|0,f|0):0)zj(f);c[g>>2]=106840;Na(0,g|0);Vb=h;return}function Ed(a){a=a|0;Dd(a);Fj(a);return}function Fd(a,b,d){a=a|0;b=b|0;d=d|0;c[a+44>>2]=b;b=a+48|0;c[b>>2]=d;do Id(a)|0;while((c[b>>2]|0)!=0);return}function Gd(b){b=b|0;var d=0,e=0,f=0;f=Vb;Vb=Vb+16|0;e=f;c[b>>2]=1484;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)zj(d);c[e>>2]=106840;Na(0,e|0);Vb=f;return}function Hd(a){a=a|0;Ua()}function Id(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Vb;Vb=Vb+16|0;g=u+8|0;s=u;t=b+40|0;e=b+44|0;f=b+60|0;d=fg(c[t>>2]|0,e,f)|0;switch(d|0){case 4:{if(eg(c[t>>2]|0,b+80|0)|0){t=-1;Vb=u;return t|0}Jd(b,c[b+84>>2]|0,c[b+88>>2]|0);t=c[f>>2]|0;s=b+48|0;c[s>>2]=(c[e>>2]|0)-t+(c[s>>2]|0);c[e>>2]=t;t=0;Vb=u;return t|0}case 3:{r=c[f>>2]|0;q=b+48|0;c[q>>2]=(c[e>>2]|0)-r+(c[q>>2]|0);c[e>>2]=r;break}case 1:case -2:{c[b+48>>2]=0;t=d;Vb=u;return t|0}case 2:{c[b+48>>2]=0;break}default:{c[g>>2]=106864;c[g+4>>2]=0-d;Na(0,g|0);c[b+48>>2]=0;t=d;Vb=u;return t|0}}h=b+128|0;c[h>>2]=(c[h>>2]|0)+1;h=b+64|0;if((gg(c[t>>2]|0,h,0)|0)!=2){t=d;Vb=u;return t|0}i=b+132|0;j=b+20|0;k=b+84|0;l=b+88|0;m=b+24|0;n=b+28|0;o=b+36|0;p=b+8|0;q=b+12|0;r=b+16|0;b=b+4|0;do{c[i>>2]=(c[i>>2]|0)+1;e=c[h>>2]|0;c[j>>2]=e;g=w(c[l>>2]|0,c[k>>2]|0)|0;f=g+e|0;c[m>>2]=f;g=f+(g>>>2)|0;c[n>>2]=g;if(!(a[o>>0]|0))Kd(e,f,g,c[p>>2]|0,c[q>>2]|0,c[r>>2]|0);e=c[c[b>>2]>>2]|0;if((a[123344]|0)==0?Qk(123344)|0:0)c[30852]=va(1,1296)|0;sa(c[30852]|0,e|0,106906,s|0)}while((gg(c[t>>2]|0,h,0)|0)==2);Vb=u;return d|0}function Jd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=Vb;Vb=Vb+32|0;h=i;f=b+12|0;c[f>>2]=d;g=b+16|0;c[g>>2]=e;c[h>>2]=106880;c[h+4>>2]=d;c[h+8>>2]=e;Na(0,h|0);if(!(a[b+36>>0]|0)){e=c[g>>2]|0;e=(w(e<<2,e)|0)+33554432|0;e=yj((e>>>0>16777216?e:16777216)+16777215&-16777216)|0;c[b+8>>2]=e;d=c[c[b+4>>2]>>2]|0;if((a[123400]|0)==0?Qk(123400)|0:0)c[30859]=va(4,48)|0;b=c[30859]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;sa(b|0,d|0,106893,h|0);Vb=i;return}else{e=b+20|0;c[b+8>>2]=e;e=e>>2;d=c[c[b+4>>2]>>2]|0;if((a[123400]|0)==0?Qk(123400)|0:0)c[30859]=va(4,48)|0;b=c[30859]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;sa(b|0,d|0,106893,h|0);Vb=i;return}}function Kd(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,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;F=g<<2;G=f+(w(F,h)|0)|0;if(!h)return;B=(g|0)==0;E=(g+-1|0)>>>1;C=(E<<3)+8|0;D=g+1&-2;E=E+1|0;j=0;A=0;k=0;i=0;l=0;while(1){if(!B){y=C+j|0;z=E+i|0;x=0;v=k;u=l;while(1){n=d[a+u>>0]|0;p=d[a+(u+g)>>0]|0;s=d[b+i>>0]|0;t=d[e+v>>0]|0;r=s<<8|t;o=G+(r|n<<16)|0;m=c[o>>2]|0;if(!m){J=(n*1192|0)+-19072|0;H=t+-128|0;m=s+-128|0;q=(H*1634|0)+J>>10;H=(w(m,-400)|0)+J+(w(H,-832)|0)>>10;J=(m*2066|0)+J>>10;m=(q|0)>0?q:0;n=(H|0)>0?H:0;I=(J|0)>0?J:0;m=((((J&255|0)==(J|0)?J:(I|0)<255?I:255)<<8)+16711680+((H&255|0)==(H|0)?H:(n|0)<255?n:255)<<8)+((q&255|0)==(q|0)?q:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+j>>2]=m;n=G+(r|p<<16)|0;m=c[n>>2]|0;if(!m){p=(p*1192|0)+-19072|0;H=t+-128|0;m=s+-128|0;J=(H*1634|0)+p>>10;H=(w(m,-400)|0)+p+(w(H,-832)|0)>>10;p=(m*2066|0)+p>>10;m=(J|0)>0?J:0;I=(H|0)>0?H:0;q=(p|0)>0?p:0;m=((((p&255|0)==(p|0)?p:(q|0)<255?q:255)<<8)+16711680+((H&255|0)==(H|0)?H:(I|0)<255?I:255)<<8)+((J&255|0)==(J|0)?J:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(j+F)>>2]=m;q=j+4|0;p=u+1|0;n=d[a+p>>0]|0;p=d[a+(p+g)>>0]|0;o=G+(r|n<<16)|0;m=c[o>>2]|0;if(!m){m=(n*1192|0)+-19072|0;H=t+-128|0;K=s+-128|0;J=m+(H*1634|0)>>10;H=(w(H,-832)|0)+(w(K,-400)|0)+m>>10;K=m+(K*2066|0)>>10;m=(J|0)>0?J:0;I=(H|0)>0?H:0;n=(K|0)>0?K:0;m=((((K&255|0)==(K|0)?K:(n|0)<255?n:255)<<8)+16711680+((H&255|0)==(H|0)?H:(I|0)<255?I:255)<<8)+((J&255|0)==(J|0)?J:(m|0)<255?m:255)|0;c[o>>2]=m}c[f+q>>2]=m;n=G+(r|p<<16)|0;m=c[n>>2]|0;if(!m){m=(p*1192|0)+-19072|0;I=t+-128|0;t=s+-128|0;K=m+(I*1634|0)>>10;I=(w(I,-832)|0)+(w(t,-400)|0)+m>>10;t=m+(t*2066|0)>>10;m=(K|0)>0?K:0;J=(I|0)>0?I:0;H=(t|0)>0?t:0;m=((((t&255|0)==(t|0)?t:(H|0)<255?H:255)<<8)+16711680+((I&255|0)==(I|0)?I:(J|0)<255?J:255)<<8)+((K&255|0)==(K|0)?K:(m|0)<255?m:255)|0;c[n>>2]=m}c[f+(q+F)>>2]=m;x=x+2|0;if(x>>>0>=g>>>0)break;else{j=j+8|0;v=v+1|0;i=i+1|0;u=u+2|0}}l=D+l|0;j=y;k=E+k|0;i=z}A=A+2|0;if(A>>>0>=h>>>0)break;else{j=j+F|0;l=l+g|0}}return}function Ld(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=Vb;Vb=Vb+32|0;h=l+16|0;j=l+4|0;k=l;f=d+4|0;g=c[d>>2]|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;if(g>>>0>4294967279)Kj(j);if(g>>>0<11){a[j+11>>0]=g;if(!g)d=j;else{d=j;i=6}}else{i=g+16&-16;d=Ej(i)|0;c[j>>2]=d;c[j+8>>2]=i|-2147483648;c[j+4>>2]=g;i=6}if((i|0)==6)dl(d|0,f|0,g|0)|0;a[d+g>>0]=0;c[k>>2]=e;ec[b&7](h,j,k);xa(c[h>>2]|0);d=c[h>>2]|0;ta(d|0);ta(c[k>>2]|0);if((a[j+11>>0]|0)>=0){Vb=l;return d|0}Fj(c[j>>2]|0);Vb=l;return d|0}function Md(){oc(0);return}function Nd(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0;g=d[108270+b>>0]|0;r=d[108322+b>>0]|0;b=c[1856+(r*12|0)>>2]<<g;h=c[1856+(r*12|0)+4>>2]<<g;g=c[1856+(r*12|0)+8>>2]<<g;if(!e)c[a>>2]=w(c[a>>2]|0,b)|0;do if(!(f&65436)){if(f&98|0){j=a+4|0;l=w(c[j>>2]|0,h)|0;m=a+20|0;o=w(c[m>>2]|0,b)|0;n=a+24|0;q=w(c[n>>2]|0,h)|0;k=c[a>>2]|0;r=k+o|0;o=k-o|0;k=(l>>1)-q|0;l=(q>>1)+l|0;q=l+32+r>>6;c[a>>2]=q;p=k+32+o>>6;c[j>>2]=p;o=32-k+o>>6;c[a+8>>2]=o;r=32-l+r>>6;c[a+12>>2]=r;c[a+48>>2]=q;c[a+32>>2]=q;c[a+16>>2]=q;c[a+52>>2]=p;c[a+36>>2]=p;c[m>>2]=p;c[a+56>>2]=o;c[a+40>>2]=o;c[n>>2]=o;c[a+60>>2]=r;c[a+44>>2]=r;c[a+28>>2]=r;if((o+512|p+512|q+512|r+512)>>>0>1023)b=1;else break;return b|0}b=(c[a>>2]|0)+32>>6;if((b+512|0)>>>0>1023){a=1;return a|0}else{c[a+60>>2]=b;c[a+56>>2]=b;c[a+52>>2]=b;c[a+48>>2]=b;c[a+44>>2]=b;c[a+40>>2]=b;c[a+36>>2]=b;c[a+32>>2]=b;c[a+28>>2]=b;c[a+24>>2]=b;c[a+20>>2]=b;c[a+16>>2]=b;c[a+12>>2]=b;c[a+8>>2]=b;c[a+4>>2]=b;c[a>>2]=b;break}}else{n=a+4|0;f=a+56|0;t=a+60|0;z=c[t>>2]|0;o=w(c[n>>2]|0,h)|0;c[f>>2]=w(c[f>>2]|0,h)|0;c[t>>2]=w(z,g)|0;t=a+8|0;z=a+16|0;f=w(c[t>>2]|0,h)|0;v=w(c[a+20>>2]|0,b)|0;p=w(c[z>>2]|0,g)|0;x=a+32|0;A=a+12|0;q=w(c[x>>2]|0,h)|0;l=w(c[A>>2]|0,b)|0;s=w(c[a+24>>2]|0,h)|0;u=a+48|0;k=w(c[a+28>>2]|0,h)|0;i=w(c[u>>2]|0,g)|0;e=w(c[a+36>>2]|0,h)|0;r=w(c[a+40>>2]|0,g)|0;B=w(c[a+44>>2]|0,b)|0;y=w(c[a+52>>2]|0,h)|0;j=c[a>>2]|0;g=v+j|0;v=j-v|0;j=(o>>1)-s|0;o=(s>>1)+o|0;s=o+g|0;b=j+v|0;c[n>>2]=b;j=v-j|0;c[t>>2]=j;o=g-o|0;c[A>>2]=o;A=k+f|0;g=f-k|0;k=(p>>1)-i|0;p=(i>>1)+p|0;i=p+A|0;f=k+g|0;c[a+20>>2]=f;k=g-k|0;c[a+24>>2]=k;p=A-p|0;c[a+28>>2]=p;A=B+l|0;B=l-B|0;l=(q>>1)-y|0;q=(y>>1)+q|0;y=q+A|0;g=l+B|0;c[a+36>>2]=g;l=B-l|0;c[a+40>>2]=l;q=A-q|0;c[a+44>>2]=q;A=a+56|0;B=c[A>>2]|0;t=B+e|0;B=e-B|0;e=a+60|0;v=c[e>>2]|0;m=(r>>1)-v|0;r=(v>>1)+r|0;v=r+t|0;h=m+B|0;c[a+52>>2]=h;m=B-m|0;c[A>>2]=m;r=t-r|0;c[e>>2]=r;e=(i>>1)-v|0;i=(v>>1)+i|0;v=y+s+32|0;t=v+i>>6;c[a>>2]=t;y=s-y+32|0;s=y+e>>6;c[z>>2]=s;e=y-e>>6;c[x>>2]=e;i=v-i>>6;c[u>>2]=i;if((t+512|s+512)>>>0>1023){B=1;return B|0}if((i+512|e+512)>>>0>1023){B=1;return B|0}y=(f>>1)-h|0;f=(h>>1)+f|0;z=g+b+32|0;A=z+f>>6;c[n>>2]=A;b=b-g+32|0;B=b+y>>6;c[a+20>>2]=B;b=b-y>>6;c[a+36>>2]=b;f=z-f>>6;c[a+52>>2]=f;if((A+512|B+512)>>>0>1023){B=1;return B|0}if((f+512|b+512)>>>0>1023){B=1;return B|0}b=(k>>1)-m|0;f=(m>>1)+k|0;z=l+j+32|0;A=z+f>>6;c[a+8>>2]=A;y=j-l+32|0;B=y+b>>6;c[a+24>>2]=B;b=y-b>>6;c[a+40>>2]=b;f=z-f>>6;c[a+56>>2]=f;if((A+512|B+512)>>>0>1023){B=1;return B|0}if((f+512|b+512)>>>0>1023){B=1;return B|0}b=(p>>1)-r|0;f=(r>>1)+p|0;z=q+o+32|0;A=z+f>>6;c[a+12>>2]=A;y=o-q+32|0;B=y+b>>6;c[a+28>>2]=B;b=y-b>>6;c[a+44>>2]=b;f=z-f>>6;c[a+60>>2]=f;if((A+512|B+512)>>>0>1023){B=1;return B|0}if((f+512|b+512)>>>0>1023){B=1;return B|0}}while(0);B=0;return B|0}function Od(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;e=a[108322+d>>0]|0;r=a[108270+d>>0]|0;C=b+8|0;t=c[C>>2]|0;i=c[b+20>>2]|0;p=b+16|0;y=c[p>>2]|0;q=b+32|0;z=c[q>>2]|0;D=b+12|0;u=c[D>>2]|0;f=c[b+24>>2]|0;l=c[b+28>>2]|0;n=b+48|0;g=c[n>>2]|0;B=c[b+36>>2]|0;A=c[b+40>>2]|0;E=c[b+44>>2]|0;h=c[b+52>>2]|0;o=c[b>>2]|0;k=i+o|0;i=o-i|0;o=b+4|0;x=c[o>>2]|0;s=x-f|0;x=f+x|0;f=x+k|0;c[b>>2]=f;j=s+i|0;c[o>>2]=j;s=i-s|0;c[C>>2]=s;x=k-x|0;c[D>>2]=x;D=l+t|0;l=t-l|0;t=y-g|0;y=g+y|0;g=y+D|0;c[p>>2]=g;k=t+l|0;c[b+20>>2]=k;t=l-t|0;c[b+24>>2]=t;y=D-y|0;c[b+28>>2]=y;D=E+u|0;E=u-E|0;u=z-h|0;z=h+z|0;h=z+D|0;c[b+32>>2]=h;l=u+E|0;c[b+36>>2]=l;u=E-u|0;c[b+40>>2]=u;z=D-z|0;c[b+44>>2]=z;D=b+56|0;E=c[D>>2]|0;C=E+B|0;E=B-E|0;B=b+60|0;i=c[B>>2]|0;v=A-i|0;A=i+A|0;i=A+C|0;c[b+48>>2]=i;m=v+E|0;c[b+52>>2]=m;v=E-v|0;c[D>>2]=v;A=C-A|0;c[B>>2]=A;r=r&255;e=c[1856+((e&255)*12|0)>>2]|0;if(d>>>0>11){E=e<<r+-2;d=h+f|0;B=f-h|0;C=g-i|0;D=i+g|0;c[b>>2]=w(D+d|0,E)|0;c[p>>2]=w(C+B|0,E)|0;c[q>>2]=w(B-C|0,E)|0;c[n>>2]=w(d-D|0,E)|0;D=l+j|0;d=j-l|0;C=k-m|0;B=m+k|0;c[o>>2]=w(B+D|0,E)|0;c[b+20>>2]=w(C+d|0,E)|0;c[b+36>>2]=w(d-C|0,E)|0;c[b+52>>2]=w(D-B|0,E)|0;B=u+s|0;u=s-u|0;D=t-v|0;C=v+t|0;c[b+8>>2]=w(C+B|0,E)|0;c[b+24>>2]=w(D+u|0,E)|0;c[b+40>>2]=w(u-D|0,E)|0;c[b+56>>2]=w(B-C|0,E)|0;C=z+x|0;z=x-z|0;B=y-A|0;D=A+y|0;c[b+12>>2]=w(D+C|0,E)|0;c[b+28>>2]=w(B+z|0,E)|0;c[b+44>>2]=w(z-B|0,E)|0;c[b+60>>2]=w(C-D|0,E)|0;return}else{D=(d+-6|0)>>>0<6?1:2;E=2-r|0;r=h+f|0;C=f-h|0;d=g-i|0;B=i+g|0;c[b>>2]=(w(B+r|0,e)|0)+D>>E;c[p>>2]=(w(d+C|0,e)|0)+D>>E;c[q>>2]=(w(C-d|0,e)|0)+D>>E;c[n>>2]=(w(r-B|0,e)|0)+D>>E;B=l+j|0;r=j-l|0;d=k-m|0;C=m+k|0;c[o>>2]=(w(C+B|0,e)|0)+D>>E;c[b+20>>2]=(w(d+r|0,e)|0)+D>>E;c[b+36>>2]=(w(r-d|0,e)|0)+D>>E;c[b+52>>2]=(w(B-C|0,e)|0)+D>>E;C=u+s|0;s=s-u|0;u=t-v|0;B=v+t|0;c[b+8>>2]=(w(B+C|0,e)|0)+D>>E;c[b+24>>2]=(w(u+s|0,e)|0)+D>>E;c[b+40>>2]=(w(s-u|0,e)|0)+D>>E;c[b+56>>2]=(w(C-B|0,e)|0)+D>>E;B=z+x|0;x=x-z|0;z=y-A|0;C=A+y|0;c[b+12>>2]=(w(C+B|0,e)|0)+D>>E;c[b+28>>2]=(w(z+x|0,e)|0)+D>>E;c[b+44>>2]=(w(x-z|0,e)|0)+D>>E;c[b+60>>2]=(w(B-C|0,e)|0)+D>>E;return}}function Pd(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=c[1856+((d[108322+b>>0]|0)*12|0)>>2]|0;if(b>>>0>5){e=e<<(d[108270+b>>0]|0)+-1;b=0}else b=1;k=c[a>>2]|0;g=a+8|0;h=c[g>>2]|0;m=h+k|0;h=k-h|0;k=a+4|0;j=c[k>>2]|0;l=a+12|0;f=c[l>>2]|0;i=j-f|0;j=f+j|0;c[a>>2]=(w(j+m|0,e)|0)>>b;c[k>>2]=(w(m-j|0,e)|0)>>b;c[g>>2]=(w(i+h|0,e)|0)>>b;c[l>>2]=(w(h-i|0,e)|0)>>b;l=a+16|0;i=c[l>>2]|0;h=a+24|0;g=c[h>>2]|0;k=g+i|0;g=i-g|0;i=a+20|0;j=c[i>>2]|0;a=a+28|0;m=c[a>>2]|0;f=j-m|0;j=m+j|0;c[l>>2]=(w(j+k|0,e)|0)>>b;c[i>>2]=(w(k-j|0,e)|0)>>b;c[h>>2]=(w(f+g|0,e)|0)>>b;c[a>>2]=(w(g-f|0,e)|0)>>b;return}function Qd(a,b){a=a|0;b=b|0;var c=0;b=1<<b+-1;if(b&a|0){a=0;return a|0}c=b;b=0;do{b=b+1|0;c=c>>>1}while((c|0)!=0&(c&a|0)==0);return b|0}function Rd(a){a=a|0;var b=0;b=8-(c[a+8>>2]|0)|0;a=Sd(a,b)|0;if((a|0)==-1){b=1;return b|0}b=(a|0)!=(c[1928+(b+-1<<2)>>2]|0)&1;return b|0}function Sd(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=a+4|0;i=c[m>>2]|0;l=c[a+12>>2]<<3;n=a+16|0;k=c[n>>2]|0;e=l-k|0;if((e|0)>31){e=a+8|0;g=c[e>>2]|0;f=(d[i+1>>0]|0)<<16|(d[i>>0]|0)<<24|(d[i+2>>0]|0)<<8|(d[i+3>>0]|0);if(!g)h=e;else{h=e;f=(d[i+4>>0]|0)>>>(8-g|0)|f<<g}}else{h=a+8|0;if((e|0)>0){g=c[h>>2]|0;j=g+24|0;f=(d[i>>0]|0)<<j;e=e+-8+g|0;if((e|0)>0){g=e;e=j;while(1){i=i+1|0;e=e+-8|0;f=(d[i>>0]|0)<<e|f;if((g|0)<=8)break;else g=g+-8|0}}}else f=0}e=k+b|0;c[n>>2]=e;c[h>>2]=e&7;if(e>>>0>l>>>0){n=-1;return n|0}c[m>>2]=(c[a>>2]|0)+(e>>>3);n=f>>>(32-b|0);return n|0}function Td(a){a=a|0;var b=0;b=(c[a+12>>2]<<3)-(c[a+16>>2]|0)|0;if(!b){b=0;return b|0}if(b>>>0>8){b=1;return b|0}else return ((Ud(a)|0)>>>(32-b|0)|0)!=(1<<b+-1|0)|0;return 0}function Ud(a){a=a|0;var b=0,e=0,f=0,g=0;f=c[a+4>>2]|0;e=(c[a+12>>2]<<3)-(c[a+16>>2]|0)|0;if((e|0)>31){a=c[a+8>>2]|0;b=(d[f+1>>0]|0)<<16|(d[f>>0]|0)<<24|(d[f+2>>0]|0)<<8|(d[f+3>>0]|0);if(!a){f=b;return f|0}f=(d[f+4>>0]|0)>>>(8-a|0)|b<<a;return f|0}if((e|0)<=0){f=0;return f|0}g=c[a+8>>2]|0;b=g+24|0;a=(d[f>>0]|0)<<b;e=e+-8+g|0;if((e|0)<=0){g=a;return g|0}while(1){f=f+1|0;b=b+-8|0;a=(d[f>>0]|0)<<b|a;if((e|0)<=8)break;else e=e+-8|0}return a|0}function Vd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[a+(d<<2)>>2]|0;d=d+1|0;a:do if(d>>>0<b>>>0)do{if((c[a+(d<<2)>>2]|0)==(e|0))break a;d=d+1|0}while(d>>>0<b>>>0);while(0);return ((d|0)==(b|0)?0:d)|0}function Wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=c[a+4>>2]|0;d=(b>>>0)%(f>>>0)|0;e=b-d|0;b=w(c[a+8>>2]|0,f)|0;f=c[a>>2]|0;c[a+12>>2]=f+(d<<4)+(e<<8);d=f+(b<<8)+(e<<6)+(d<<3)|0;c[a+16>>2]=d;c[a+20>>2]=d+(b<<6);return}function Xd(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;do if(((e>>>0>3?(a[b>>0]|0)==0:0)?(a[b+1>>0]|0)==0:0)?(h=a[b+2>>0]|0,(h&255)<2):0){n=-3;p=3;k=b+3|0;i=2;while(1){if(h<<24>>24)if(h<<24>>24==1&i>>>0>1)break;else i=0;else i=i+1|0;j=p+1|0;if((j|0)==(e|0)){q=6;break}else{h=a[k>>0]|0;n=~p;p=j;k=k+1|0}}if((q|0)==6){c[g>>2]=e;q=1;return q|0}j=(a[k>>0]|0)!=0;l=0;m=p;i=0;o=(j^1)&1;while(1){m=m+1|0;k=k+1|0;h=j?0:o;i=j&o>>>0>2?1:i;if((m|0)==(e|0)){q=15;break}q=a[k>>0]|0;j=q<<24>>24!=0;o=h+((j^1)&1)|0;h=q<<24>>24==3&(o|0)==2?1:l;if(q<<24>>24==1&o>>>0>1){q=13;break}else l=h}if((q|0)==13){m=n+m-o|0;n=f+12|0;c[n>>2]=m;l=h;j=p;h=o-(o>>>0<3?o:3)|0;break}else if((q|0)==15){m=n+e-h|0;n=f+12|0;c[n>>2]=m;j=p;break}}else q=16;while(0);if((q|0)==16){n=f+12|0;c[n>>2]=e;m=e;l=1;j=0;i=0;h=0}k=b+j|0;c[f>>2]=k;c[f+4>>2]=k;c[f+8>>2]=0;c[f+16>>2]=0;c[g>>2]=h+j+m;if(i|0){q=1;return q|0}if(!l){q=0;return q|0}h=c[n>>2]|0;do if(h){i=k;l=k;j=0;a:while(1){h=h+-1|0;k=a[i>>0]|0;do if((j|0)==2){if(k<<24>>24!=3)if((k&255)<3){h=1;q=30;break a}else{q=26;break}if(!h){h=1;q=30;break a}i=i+1|0;if((d[i>>0]|0)>3){h=1;q=30;break a}else j=0}else q=26;while(0);if((q|0)==26){q=0;a[l>>0]=k;i=i+1|0;l=l+1|0;j=k<<24>>24==0?j+1|0:0}if(!h){q=28;break}}if((q|0)==28){j=c[n>>2]|0;h=l;break}else if((q|0)==30)return h|0}else{j=0;i=k;h=k}while(0);c[n>>2]=h-i+j;q=0;return q|0}function Yd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=Vb;Vb=Vb+16|0;n=o;Zd(b,0,92);d=Sd(a,8)|0;a:do if((((d|0)!=-1?(c[b>>2]=d,Sd(a,1)|0,Sd(a,1)|0,(Sd(a,1)|0)!=-1):0)?(Sd(a,5)|0)!=-1:0)?(e=Sd(a,8)|0,(e|0)!=-1):0){m=b+4|0;c[m>>2]=e;e=b+8|0;d=_d(a,e)|0;if(!d)if((c[e>>2]|0)>>>0<=31){d=_d(a,n)|0;if(!d){d=c[n>>2]|0;if(d>>>0<=12){c[b+12>>2]=1<<d+4;d=_d(a,n)|0;if(!d){d=c[n>>2]|0;if(d>>>0<=2){c[b+16>>2]=d;b:do switch(d|0){case 0:{d=_d(a,n)|0;if(d|0)break a;d=c[n>>2]|0;if(d>>>0>12){d=1;break a}c[b+20>>2]=1<<d+4;break}case 1:{d=Sd(a,1)|0;if((d|0)==-1){d=1;break a}c[b+24>>2]=(d|0)==1&1;d=$d(a,b+28|0)|0;if(d|0)break a;d=$d(a,b+32|0)|0;if(d|0)break a;g=b+36|0;d=_d(a,g)|0;if(d|0)break a;d=c[g>>2]|0;if(d>>>0>255){d=1;break a}if(!d){c[b+40>>2]=0;break b}d=ae(4,d)|0;f=b+40|0;c[f>>2]=d;if(!d){d=65535;break a}if(c[g>>2]|0){d=$d(a,d)|0;if(d|0)break a;e=1;while(1){if(e>>>0>=(c[g>>2]|0)>>>0)break b;d=$d(a,(c[f>>2]|0)+(e<<2)|0)|0;if(!d)e=e+1|0;else break a}}break}default:{}}while(0);l=b+44|0;d=_d(a,l)|0;if(!d)if((c[l>>2]|0)>>>0<=16?(h=Sd(a,1)|0,(h|0)!=-1):0){c[b+48>>2]=(h|0)==1&1;d=_d(a,n)|0;if(!d){j=b+52|0;c[j>>2]=(c[n>>2]|0)+1;d=_d(a,n)|0;if(!d){i=b+56|0;c[i>>2]=(c[n>>2]|0)+1;switch(Sd(a,1)|0){case 0:case -1:{d=1;break a}default:{}}if((Sd(a,1)|0)!=-1?(k=Sd(a,1)|0,(k|0)!=-1):0){k=(k|0)==1;c[b+60>>2]=k&1;if(k){h=b+64|0;d=_d(a,h)|0;if(d|0)break;e=b+68|0;d=_d(a,e)|0;if(d|0)break;g=b+72|0;d=_d(a,g)|0;if(d|0)break;f=b+76|0;d=_d(a,f)|0;if(d|0)break;d=c[j>>2]|0;if((c[h>>2]|0)>((d<<3)+~c[e>>2]|0)){d=1;break}e=c[i>>2]|0;if((c[g>>2]|0)>((e<<3)+~c[f>>2]|0)){d=1;break}}else{e=c[i>>2]|0;d=c[j>>2]|0}f=w(e,d)|0;do switch(c[m>>2]|0){case 10:{d=99;e=152064;g=59;break}case 11:{d=396;e=345600;g=59;break}case 12:{d=396;e=912384;g=59;break}case 13:{d=396;e=912384;g=59;break}case 20:{d=396;e=912384;g=59;break}case 21:{d=792;e=1824768;g=59;break}case 22:{d=1620;e=3110400;g=59;break}case 30:{d=1620;e=3110400;g=59;break}case 31:{d=3600;e=6912e3;g=59;break}case 32:{d=5120;e=7864320;g=59;break}case 40:{d=8192;e=12582912;g=59;break}case 41:{d=8192;e=12582912;g=59;break}case 42:{d=8704;e=13369344;g=59;break}case 50:{d=22080;e=42393600;g=59;break}case 51:{d=36864;e=70778880;g=59;break}default:g=61}while(0);do if((g|0)==59){if(d>>>0<f>>>0){g=61;break}e=(e>>>0)/((f*384|0)>>>0)|0;e=e>>>0<16?e:16;c[n>>2]=e;d=c[l>>2]|0;if(d>>>0>e>>>0)g=62;else d=e}while(0);if((g|0)==61){c[n>>2]=2147483647;d=c[l>>2]|0;g=62}if((g|0)==62)c[n>>2]=d;f=b+88|0;c[f>>2]=d;d=Sd(a,1)|0;if((d|0)!=-1){n=(d|0)==1;c[b+80>>2]=n&1;do if(n){d=ae(952,1)|0;e=b+84|0;c[e>>2]=d;if(!d){d=65535;break a}d=be(a,d)|0;if(d|0)break a;d=c[e>>2]|0;if(!(c[d+920>>2]|0))break;e=c[d+948>>2]|0;if((c[d+944>>2]|0)>>>0>e>>>0){d=1;break a}if(e>>>0<(c[l>>2]|0)>>>0){d=1;break a}if(e>>>0>(c[f>>2]|0)>>>0){d=1;break a}c[f>>2]=(e|0)==0?1:e}while(0);Rd(a)|0;d=0}else d=1}else d=1}}}else d=1}else d=1}}else d=1}}else d=1}else d=1;while(0);Vb=o;return d|0}function Zd(a,b,c){a=a|0;b=b|0;c=c|0;fl(a|0,b&255|0,c|0)|0;return}function _d(a,b){a=a|0;b=b|0;var d=0,e=0;d=Ud(a)|0;if((d|0)<0){ce(a,1)|0;c[b>>2]=0;b=0;return b|0}if(d>>>0>1073741823){if((ce(a,3)|0)==-1){b=1;return b|0}c[b>>2]=(d>>>29&1)+1;b=0;return b|0}if(d>>>0>536870911){if((ce(a,5)|0)==-1){b=1;return b|0}c[b>>2]=(d>>>27&3)+3;b=0;return b|0}if(d>>>0>268435455){if((ce(a,7)|0)==-1){b=1;return b|0}c[b>>2]=(d>>>25&7)+7;b=0;return b|0}d=Qd(d,28)|0;e=d+4|0;if((e|0)!=32){ce(a,d+5|0)|0;d=Sd(a,e)|0;if((d|0)==-1){b=1;return b|0}c[b>>2]=(1<<e)+-1+d;b=0;return b|0}c[b>>2]=0;ce(a,32)|0;if((Sd(a,1)|0)!=1){b=1;return b|0}d=Ud(a)|0;if((ce(a,32)|0)==-1){b=1;return b|0}switch(d|0){case 0:{c[b>>2]=-1;b=0;return b|0}case 1:{c[b>>2]=-1;b=1;return b|0}default:{b=1;return b|0}}return 0}function $d(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=Vb;Vb=Vb+16|0;e=f;c[e>>2]=0;d=_d(a,e)|0;a=c[e>>2]|0;d=(d|0)==0;if((a|0)==-1)if(d)a=1;else{c[b>>2]=-2147483648;a=0}else{e=(a+1|0)>>>1;if(d){c[b>>2]=(a&1|0)==0?0-e|0:e;a=0}else a=1}Vb=f;return a|0}function ae(a,b){a=a|0;b=b|0;if((4294967295/(b>>>0)|0)>>>0<a>>>0){a=0;return a|0}a=yj(w(b,a)|0)|0;return a|0}function be(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;Zd(b,0,952);d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}f=(d|0)==1;c[b>>2]=f&1;do if(f){d=Sd(a,8)|0;if((d|0)==-1){b=1;return b|0}c[b+4>>2]=d;if((d|0)==255){d=Sd(a,16)|0;if((d|0)==-1){b=1;return b|0}c[b+8>>2]=d;d=Sd(a,16)|0;if((d|0)==-1){b=1;return b|0}else{c[b+12>>2]=d;break}}}while(0);d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}f=(d|0)==1;c[b+16>>2]=f&1;do if(f){d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}else{c[b+20>>2]=(d|0)==1&1;break}}while(0);d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}f=(d|0)==1;c[b+24>>2]=f&1;if(f){d=Sd(a,3)|0;if((d|0)==-1){b=1;return b|0}c[b+28>>2]=d;d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}c[b+32>>2]=(d|0)==1&1;d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}f=(d|0)==1;c[b+36>>2]=f&1;if(f){d=Sd(a,8)|0;if((d|0)==-1){b=1;return b|0}c[b+40>>2]=d;d=Sd(a,8)|0;if((d|0)==-1){b=1;return b|0}c[b+44>>2]=d;d=Sd(a,8)|0;if((d|0)==-1){b=1;return b|0}}else g=22}else{c[b+28>>2]=5;g=22}if((g|0)==22){c[b+40>>2]=2;c[b+44>>2]=2;d=2}c[b+48>>2]=d;d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}f=(d|0)==1;c[b+52>>2]=f&1;if(f){e=b+56|0;d=_d(a,e)|0;if(d|0){b=d;return b|0}if((c[e>>2]|0)>>>0>5){b=1;return b|0}e=b+60|0;d=_d(a,e)|0;if(d|0){b=d;return b|0}if((c[e>>2]|0)>>>0>5){b=1;return b|0}}d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}f=(d|0)==1;c[b+64>>2]=f&1;do if(f){d=Ud(a)|0;if((d|0)==0|(ce(a,32)|0)==-1){b=1;return b|0}c[b+68>>2]=d;d=Ud(a)|0;if((d|0)==0|(ce(a,32)|0)==-1){b=1;return b|0}c[b+72>>2]=d;d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}else{c[b+76>>2]=(d|0)==1&1;break}}while(0);d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}e=(d|0)==1;f=b+80|0;c[f>>2]=e&1;if(e){d=de(a,b+84|0)|0;if(d|0){b=d;return b|0}}else{c[b+84>>2]=1;c[b+96>>2]=288000001;c[b+224>>2]=288000001;c[b+480>>2]=24;c[b+484>>2]=24;c[b+488>>2]=24;c[b+492>>2]=24}d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}d=(d|0)==1;e=b+496|0;c[e>>2]=d&1;if(d){d=de(a,b+500|0)|0;if(d|0){b=d;return b|0}}else{c[b+500>>2]=1;c[b+512>>2]=240000001;c[b+640>>2]=240000001;c[b+896>>2]=24;c[b+900>>2]=24;c[b+904>>2]=24;c[b+908>>2]=24}if(!((c[f>>2]|0)==0?!(c[e>>2]|0):0))g=45;do if((g|0)==45){d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}else{c[b+912>>2]=(d|0)==1&1;break}}while(0);d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}c[b+916>>2]=(d|0)==1&1;d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}g=(d|0)==1;c[b+920>>2]=g&1;do if(g){d=Sd(a,1)|0;if((d|0)==-1){b=1;return b|0}c[b+924>>2]=(d|0)==1&1;e=b+928|0;d=_d(a,e)|0;if(d|0){b=d;return b|0}if((c[e>>2]|0)>>>0>16){b=1;return b|0}e=b+932|0;d=_d(a,e)|0;if(d|0){b=d;return b|0}if((c[e>>2]|0)>>>0>16){b=1;return b|0}e=b+936|0;d=_d(a,e)|0;if(d|0){b=d;return b|0}if((c[e>>2]|0)>>>0>16){b=1;return b|0}e=b+940|0;d=_d(a,e)|0;if(d|0){b=d;return b|0}if((c[e>>2]|0)>>>0>16){b=1;return b|0}d=_d(a,b+944|0)|0;if(d|0){b=d;return b|0}d=_d(a,b+948|0)|0;if(!d)break;return d|0}else{c[b+924>>2]=1;c[b+928>>2]=2;c[b+932>>2]=1;c[b+936>>2]=16;c[b+940>>2]=16;c[b+944>>2]=16;c[b+948>>2]=16}while(0);b=0;return b|0}function ce(a,b){a=a|0;b=b|0;var d=0;d=a+16|0;b=(c[d>>2]|0)+b|0;c[d>>2]=b;c[a+8>>2]=b&7;if(b>>>0>c[a+12>>2]<<3>>>0){d=-1;return d|0}c[a+4>>2]=(c[a>>2]|0)+(b>>>3);d=0;return d|0}function de(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=_d(a,b)|0;if(d|0){b=d;return b|0}h=(c[b>>2]|0)+1|0;c[b>>2]=h;if(h>>>0>32){b=1;return b|0}d=Sd(a,4)|0;if((d|0)==-1){b=1;return b|0}h=b+4|0;c[h>>2]=d;d=Sd(a,4)|0;if((d|0)==-1){b=1;return b|0}g=b+8|0;c[g>>2]=d;a:do if(c[b>>2]|0){f=0;while(1){e=b+12+(f<<2)|0;d=_d(a,e)|0;if(d|0){e=18;break}d=c[e>>2]|0;if((d|0)==-1){d=1;e=18;break}d=d+1|0;c[e>>2]=d;c[e>>2]=d<<(c[h>>2]|0)+6;e=b+140+(f<<2)|0;d=_d(a,e)|0;if(d|0){e=18;break}d=c[e>>2]|0;if((d|0)==-1){d=1;e=18;break}d=d+1|0;c[e>>2]=d;c[e>>2]=d<<(c[g>>2]|0)+4;d=Sd(a,1)|0;if((d|0)==-1){d=1;e=18;break}c[b+268+(f<<2)>>2]=(d|0)==1&1;f=f+1|0;if(f>>>0>=(c[b>>2]|0)>>>0)break a}if((e|0)==18)return d|0}while(0);d=Sd(a,5)|0;if((d|0)==-1){b=1;return b|0}c[b+396>>2]=d+1;d=Sd(a,5)|0;if((d|0)==-1){b=1;return b|0}c[b+400>>2]=d+1;d=Sd(a,5)|0;if((d|0)==-1){b=1;return b|0}c[b+404>>2]=d+1;d=Sd(a,5)|0;if((d|0)==-1){b=1;return b|0}c[b+408>>2]=d;b=0;return b|0}function ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;if((c[a>>2]|0)!=(c[b>>2]|0)){b=1;return b|0}if((c[a+4>>2]|0)!=(c[b+4>>2]|0)){b=1;return b|0}if((c[a+12>>2]|0)!=(c[b+12>>2]|0)){b=1;return b|0}d=c[a+16>>2]|0;if((d|0)!=(c[b+16>>2]|0)){b=1;return b|0}if((c[a+44>>2]|0)!=(c[b+44>>2]|0)){b=1;return b|0}if((c[a+48>>2]|0)!=(c[b+48>>2]|0)){b=1;return b|0}if((c[a+52>>2]|0)!=(c[b+52>>2]|0)){b=1;return b|0}if((c[a+56>>2]|0)!=(c[b+56>>2]|0)){b=1;return b|0}h=c[a+60>>2]|0;if((h|0)!=(c[b+60>>2]|0)){b=1;return b|0}if((c[a+80>>2]|0)!=(c[b+80>>2]|0)){b=1;return b|0}a:do switch(d|0){case 0:{if((c[a+20>>2]|0)!=(c[b+20>>2]|0)){b=1;return b|0}break}case 1:{if((c[a+24>>2]|0)!=(c[b+24>>2]|0)){b=1;return b|0}if((c[a+28>>2]|0)!=(c[b+28>>2]|0)){b=1;return b|0}if((c[a+32>>2]|0)!=(c[b+32>>2]|0)){b=1;return b|0}d=c[a+36>>2]|0;if((d|0)!=(c[b+36>>2]|0)){b=1;return b|0}if(d|0){e=c[a+40>>2]|0;f=c[b+40>>2]|0;g=0;while(1){if((c[e+(g<<2)>>2]|0)!=(c[f+(g<<2)>>2]|0)){d=1;break}g=g+1|0;if(g>>>0>=d>>>0)break a}return d|0}break}default:{}}while(0);if(h|0){if((c[a+64>>2]|0)!=(c[b+64>>2]|0)){b=1;return b|0}if((c[a+68>>2]|0)!=(c[b+68>>2]|0)){b=1;return b|0}if((c[a+72>>2]|0)!=(c[b+72>>2]|0)){b=1;return b|0}if((c[a+76>>2]|0)!=(c[b+76>>2]|0)){b=1;return b|0}}b=0;return b|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=Vb;Vb=Vb+16|0;i=k+4|0;j=k;Zd(b,0,72);d=_d(a,b)|0;if(d|0){a=d;Vb=k;return a|0}if((c[b>>2]|0)>>>0>255){a=1;Vb=k;return a|0}e=b+4|0;d=_d(a,e)|0;if(d|0){a=d;Vb=k;return a|0}if((c[e>>2]|0)>>>0>31){a=1;Vb=k;return a|0}if(Sd(a,1)|0){a=1;Vb=k;return a|0}d=Sd(a,1)|0;if((d|0)==-1){a=1;Vb=k;return a|0}c[b+8>>2]=(d|0)==1&1;d=_d(a,i)|0;if(d|0){a=d;Vb=k;return a|0}d=(c[i>>2]|0)+1|0;h=b+12|0;c[h>>2]=d;if(d>>>0>8){a=1;Vb=k;return a|0}a:do if(d>>>0>1){e=b+16|0;d=_d(a,e)|0;if(d|0){a=d;Vb=k;return a|0}d=c[e>>2]|0;if(d>>>0>6){a=1;Vb=k;return a|0}switch(d|0){case 0:{g=ae(4,c[h>>2]|0)|0;f=b+20|0;c[f>>2]=g;if(!g){a=65535;Vb=k;return a|0}if(!(c[h>>2]|0))break a;e=0;while(1){d=_d(a,i)|0;if(d|0)break;c[(c[f>>2]|0)+(e<<2)>>2]=(c[i>>2]|0)+1;e=e+1|0;if(e>>>0>=(c[h>>2]|0)>>>0)break a}Vb=k;return d|0}case 2:{g=b+24|0;c[g>>2]=ae(4,(c[h>>2]|0)+-1|0)|0;f=ae(4,(c[h>>2]|0)+-1|0)|0;e=b+28|0;c[e>>2]=f;if((f|0)==0|(c[g>>2]|0)==0){a=65535;Vb=k;return a|0}if((c[h>>2]|0)==1)break a;f=0;while(1){d=_d(a,i)|0;if(d|0){e=49;break}c[(c[g>>2]|0)+(f<<2)>>2]=c[i>>2];d=_d(a,i)|0;if(d|0){e=49;break}c[(c[e>>2]|0)+(f<<2)>>2]=c[i>>2];f=f+1|0;if(f>>>0>=((c[h>>2]|0)+-1|0)>>>0)break a}if((e|0)==49){Vb=k;return d|0}break}case 5:case 4:case 3:{d=Sd(a,1)|0;if((d|0)==-1){a=1;Vb=k;return a|0}c[b+32>>2]=(d|0)==1&1;d=_d(a,i)|0;if(!d){c[b+36>>2]=(c[i>>2]|0)+1;break a}else{a=d;Vb=k;return a|0}}case 6:{d=_d(a,i)|0;if(d|0){a=d;Vb=k;return a|0}e=(c[i>>2]|0)+1|0;f=b+40|0;c[f>>2]=e;e=ae(4,e)|0;g=b+44|0;c[g>>2]=e;if(!e){a=65535;Vb=k;return a|0}d=c[1960+((c[h>>2]|0)+-1<<2)>>2]|0;if(!(c[f>>2]|0))break a;e=0;while(1){l=Sd(a,d)|0;c[(c[g>>2]|0)+(e<<2)>>2]=l;e=e+1|0;if(l>>>0>=(c[h>>2]|0)>>>0){d=1;break}if(e>>>0>=(c[f>>2]|0)>>>0)break a}Vb=k;return d|0}default:break a}}while(0);d=_d(a,i)|0;if(d|0){l=d;Vb=k;return l|0}d=c[i>>2]|0;if(d>>>0>31){l=1;Vb=k;return l|0}c[b+48>>2]=d+1;d=_d(a,i)|0;if(d|0){l=d;Vb=k;return l|0}if((c[i>>2]|0)>>>0>31){l=1;Vb=k;return l|0}if(Sd(a,1)|0){l=1;Vb=k;return l|0}if((Sd(a,2)|0)>>>0>2){l=1;Vb=k;return l|0}d=$d(a,j)|0;if(d|0){l=d;Vb=k;return l|0}d=(c[j>>2]|0)+26|0;if(d>>>0>51){l=1;Vb=k;return l|0}c[b+52>>2]=d;d=$d(a,j)|0;if(d|0){l=d;Vb=k;return l|0}if(((c[j>>2]|0)+26|0)>>>0>51){l=1;Vb=k;return l|0}d=$d(a,j)|0;if(d|0){l=d;Vb=k;return l|0}d=c[j>>2]|0;if((d+12|0)>>>0>24){l=1;Vb=k;return l|0}c[b+56>>2]=d;d=Sd(a,1)|0;if((d|0)==-1){l=1;Vb=k;return l|0}c[b+60>>2]=(d|0)==1&1;d=Sd(a,1)|0;if((d|0)==-1){l=1;Vb=k;return l|0}c[b+64>>2]=(d|0)==1&1;d=Sd(a,1)|0;if((d|0)==-1){l=1;Vb=k;return l|0}c[b+68>>2]=(d|0)==1&1;Rd(a)|0;l=0;Vb=k;return l|0}function ge(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=Vb;Vb=Vb+16|0;p=u+12|0;o=u+8|0;t=u+4|0;r=u;Zd(b,0,988);s=w(c[d+56>>2]|0,c[d+52>>2]|0)|0;g=_d(a,t)|0;if(g|0){t=g;Vb=u;return t|0}m=c[t>>2]|0;c[b>>2]=m;if(m>>>0>=s>>>0){t=1;Vb=u;return t|0}g=_d(a,t)|0;if(g|0){t=g;Vb=u;return t|0}m=c[t>>2]|0;k=b+4|0;c[k>>2]=m;switch(m|0){case 7:case 2:break;case 5:case 0:{q=5;break}default:{t=1;Vb=u;return t|0}}if((q|0)==5){if((c[f>>2]|0)==5){t=1;Vb=u;return t|0}if(!(c[d+44>>2]|0)){t=1;Vb=u;return t|0}}g=_d(a,t)|0;if(g|0){t=g;Vb=u;return t|0}m=c[t>>2]|0;c[b+8>>2]=m;if((m|0)!=(c[e>>2]|0)){t=1;Vb=u;return t|0}l=d+12|0;g=c[l>>2]|0;h=0;while(1)if(!(g>>>h))break;else h=h+1|0;g=Sd(a,h+-1|0)|0;if((g|0)==-1){t=1;Vb=u;return t|0}h=(c[f>>2]|0)==5;if((g|0)!=0&h){t=1;Vb=u;return t|0}c[b+12>>2]=g;if(h){g=_d(a,t)|0;if(g|0){t=g;Vb=u;return t|0}m=c[t>>2]|0;c[b+16>>2]=m;if(m>>>0>65535){t=1;Vb=u;return t|0}}j=d+16|0;g=c[j>>2]|0;if(!g){i=d+20|0;g=c[i>>2]|0;h=0;while(1)if(!(g>>>h))break;else h=h+1|0;g=Sd(a,h+-1|0)|0;if((g|0)==-1){t=1;Vb=u;return t|0}h=b+20|0;c[h>>2]=g;do if(c[e+8>>2]|0){g=$d(a,r)|0;if(!g){c[b+24>>2]=c[r>>2];break}else{t=g;Vb=u;return t|0}}while(0);if((c[f>>2]|0)==5){g=c[h>>2]|0;if(g>>>0>(c[i>>2]|0)>>>1>>>0){t=1;Vb=u;return t|0}m=c[b+24>>2]|0;if((g|0)!=(0-((m|0)<0?m:0)|0)){t=1;Vb=u;return t|0}}g=c[j>>2]|0}if((g|0)==1?(c[d+24>>2]|0)==0:0){g=$d(a,r)|0;if(g|0){t=g;Vb=u;return t|0}g=b+28|0;c[g>>2]=c[r>>2];do if(c[e+8>>2]|0){h=$d(a,r)|0;if(!h){c[b+32>>2]=c[r>>2];break}else{t=h;Vb=u;return t|0}}while(0);if((c[f>>2]|0)==5?(j=c[g>>2]|0,m=(c[d+32>>2]|0)+j+(c[b+32>>2]|0)|0,((j|0)<(m|0)?j:m)|0):0){t=1;Vb=u;return t|0}}if(c[e+68>>2]|0){g=_d(a,t)|0;if(g|0){t=g;Vb=u;return t|0}m=c[t>>2]|0;c[b+36>>2]=m;if(m>>>0>127){t=1;Vb=u;return t|0}}g=c[k>>2]|0;switch(g|0){case 5:case 0:{g=Sd(a,1)|0;if((g|0)==-1){t=1;Vb=u;return t|0}c[b+40>>2]=g;do if(!g){g=c[e+48>>2]|0;if(g>>>0>16){t=1;Vb=u;return t|0}}else{g=_d(a,t)|0;if(g|0){t=g;Vb=u;return t|0}g=c[t>>2]|0;if(g>>>0>15){t=1;Vb=u;return t|0}else{g=g+1|0;break}}while(0);c[b+44>>2]=g;g=c[k>>2]|0;break}default:{}}a:do switch(g|0){case 5:case 0:{j=c[b+44>>2]|0;i=c[l>>2]|0;g=Sd(a,1)|0;b:do if((g|0)==-1)g=1;else{c[b+68>>2]=g;if(g|0){h=0;while(1){if(h>>>0>j>>>0){g=1;break b}g=_d(a,o)|0;if(g|0)break b;g=c[o>>2]|0;if(g>>>0>3){g=1;break b}c[b+72+(h*12|0)>>2]=g;do if(g>>>0<2){g=_d(a,p)|0;if(g|0)break b;g=c[p>>2]|0;if(g>>>0>=i>>>0){g=1;break b}c[b+72+(h*12|0)+4>>2]=g+1}else{if((g|0)!=2)break;g=_d(a,p)|0;if(g|0)break b;c[b+72+(h*12|0)+8>>2]=c[p>>2]}while(0);if((c[o>>2]|0)==3)break;else h=h+1|0}if(!h){g=1;break}}break a}while(0);t=g;Vb=u;return t|0}default:{}}while(0);do if(c[f+4>>2]|0){m=c[d+44>>2]|0;f=(c[f>>2]|0)==5;g=Sd(a,1)|0;h=(g|0)==-1;c:do if(f)if((!h?(c[b+276>>2]=g,n=Sd(a,1)|0,(n|0)!=-1):0)?(c[b+280>>2]=n,(m|0)!=0|(n|0)==0):0)q=92;else g=1;else if(!h){c[b+284>>2]=g;if(g){i=(m<<1)+2|0;j=0;k=0;h=0;l=0;d=0;while(1){if(j>>>0>i>>>0){g=1;break c}g=_d(a,o)|0;if(g|0)break c;g=c[o>>2]|0;if(g>>>0>6){g=1;break c}c[b+288+(j*20|0)>>2]=g;if((g|2|0)==3){g=_d(a,p)|0;if(g|0)break c;c[b+288+(j*20|0)+4>>2]=(c[p>>2]|0)+1;g=c[o>>2]|0}if((g|0)==2){g=_d(a,p)|0;if(g|0)break c;c[b+288+(j*20|0)+8>>2]=c[p>>2];g=c[o>>2]|0}switch(g|0){case 3:case 6:{g=_d(a,p)|0;if(g|0)break c;c[b+288+(j*20|0)+12>>2]=c[p>>2];g=c[o>>2]|0;break}default:{}}if((g|0)==4){g=_d(a,p)|0;if(g|0)break c;g=c[p>>2]|0;if(g>>>0>m>>>0){g=1;break c}c[b+288+(j*20|0)+16>>2]=(g|0)==0?65535:g+-1|0;g=c[o>>2]|0;h=h+1|0}l=l+((g|0)==5&1)|0;k=k+((g+-1|0)>>>0<3&1)|0;d=d+((g|0)==6&1)|0;if(!g)break;else j=j+1|0}if((l|h|d)>>>0<=1?!((l|0)!=0&(k|0)!=0):0)q=92;else g=1}else q=92}else g=1;while(0);if((q|0)==92)break;t=g;Vb=u;return t|0}while(0);g=$d(a,r)|0;if(g|0){t=g;Vb=u;return t|0}q=c[r>>2]|0;c[b+48>>2]=q;q=(c[e+52>>2]|0)+q|0;c[r>>2]=q;if(q>>>0>51){t=1;Vb=u;return t|0}do if(c[e+60>>2]|0){g=_d(a,t)|0;if(g|0){t=g;Vb=u;return t|0}g=c[t>>2]|0;c[b+52>>2]=g;if(g>>>0>2){t=1;Vb=u;return t|0}if((g|0)!=1){g=$d(a,r)|0;if(g|0){t=g;Vb=u;return t|0}g=c[r>>2]|0;if((g+6|0)>>>0>12){t=1;Vb=u;return t|0}c[b+56>>2]=g<<1;g=$d(a,r)|0;if(g|0){t=g;Vb=u;return t|0}g=c[r>>2]|0;if((g+6|0)>>>0>12){t=1;Vb=u;return t|0}else{c[b+60>>2]=g<<1;break}}}while(0);if((c[e+12>>2]|0)>>>0>1?((c[e+16>>2]|0)+-3|0)>>>0<3:0){j=e+36|0;h=c[j>>2]|0;i=(s>>>0)/(h>>>0)|0;h=(s-(w(i,h)|0)|0)==0;i=(h?1:2)+i|0;h=0;while(1){g=h+1|0;if(!(-1<<g&i))break;else h=g}g=Sd(a,((1<<h)+-1&i|0)==0?h:g)|0;c[t>>2]=g;if((g|0)==-1){t=1;Vb=u;return t|0}c[b+64>>2]=g;t=c[j>>2]|0;if(g>>>0>(((s+-1+t|0)>>>0)/(t>>>0)|0)>>>0){t=1;Vb=u;return t|0}}t=0;Vb=u;return t|0}function he(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=Vb;Vb=Vb+32|0;e=f+20|0;d=f;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];a=_d(d,e)|0;if(!a){a=_d(d,e)|0;if(!a){a=_d(d,e)|0;if(!a){a=c[e>>2]|0;if(a>>>0>255)a=1;else{c[b>>2]=a;a=0}}}}Vb=f;return a|0}function ie(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=Vb;Vb=Vb+32|0;e=g+20|0;f=g;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];c[f+16>>2]=c[a+16>>2];a=_d(f,e)|0;if(a|0){d=a;Vb=g;return d|0}a=_d(f,e)|0;if(a|0){d=a;Vb=g;return d|0}a=_d(f,e)|0;if(a|0){d=a;Vb=g;return d|0}a=0;while(1)if(!(b>>>a))break;else a=a+1|0;a=Sd(f,a+-1|0)|0;if((a|0)==-1){d=1;Vb=g;return d|0}c[d>>2]=a;d=0;Vb=g;return d|0}function je(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=Vb;Vb=Vb+32|0;f=h+20|0;g=h;if((d|0)==5){c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2];c[g+16>>2]=c[a+16>>2];d=_d(g,f)|0;if(!d){d=_d(g,f)|0;if(!d){d=_d(g,f)|0;if(!d){d=0;while(1)if(!(b>>>d))break;else d=d+1|0;if((Sd(g,d+-1|0)|0)==-1)d=1;else d=_d(g,e)|0}}}}else d=1;Vb=h;return d|0}function ke(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Vb;Vb=Vb+32|0;h=j+20|0;i=j;c[i>>2]=c[a>>2];c[i+4>>2]=c[a+4>>2];c[i+8>>2]=c[a+8>>2];c[i+12>>2]=c[a+12>>2];c[i+16>>2]=c[a+16>>2];a=_d(i,h)|0;if(a|0){e=a;Vb=j;return e|0}a=_d(i,h)|0;if(a|0){e=a;Vb=j;return e|0}a=_d(i,h)|0;if(a|0){e=a;Vb=j;return e|0}a=c[b+12>>2]|0;f=0;while(1)if(!(a>>>f))break;else f=f+1|0;if((Sd(i,f+-1|0)|0)==-1){e=1;Vb=j;return e|0}if((d|0)==5?(g=_d(i,h)|0,g|0):0){e=g;Vb=j;return e|0}a=c[b+20>>2]|0;f=0;while(1)if(!(a>>>f))break;else f=f+1|0;a=Sd(i,f+-1|0)|0;if((a|0)==-1){e=1;Vb=j;return e|0}c[e>>2]=a;e=0;Vb=j;return e|0}function le(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Vb;Vb=Vb+32|0;h=j+20|0;i=j;c[i>>2]=c[a>>2];c[i+4>>2]=c[a+4>>2];c[i+8>>2]=c[a+8>>2];c[i+12>>2]=c[a+12>>2];c[i+16>>2]=c[a+16>>2];a=_d(i,h)|0;if(a|0){i=a;Vb=j;return i|0}a=_d(i,h)|0;if(a|0){i=a;Vb=j;return i|0}a=_d(i,h)|0;if(a|0){i=a;Vb=j;return i|0}a=c[b+12>>2]|0;f=0;while(1)if(!(a>>>f))break;else f=f+1|0;if((Sd(i,f+-1|0)|0)==-1){i=1;Vb=j;return i|0}if((d|0)==5?(g=_d(i,h)|0,g|0):0){i=g;Vb=j;return i|0}a=c[b+20>>2]|0;f=0;while(1)if(!(a>>>f))break;else f=f+1|0;if((Sd(i,f+-1|0)|0)==-1){i=1;Vb=j;return i|0}i=$d(i,e)|0;Vb=j;return i|0}function me(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=Vb;Vb=Vb+32|0;h=k+20|0;j=k;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[j+16>>2]=c[a+16>>2];a=_d(j,h)|0;if(a|0){j=a;Vb=k;return j|0}a=_d(j,h)|0;if(a|0){j=a;Vb=k;return j|0}a=_d(j,h)|0;if(a|0){j=a;Vb=k;return j|0}a=c[b+12>>2]|0;b=0;while(1)if(!(a>>>b))break;else b=b+1|0;if((Sd(j,b+-1|0)|0)==-1){j=1;Vb=k;return j|0}if((d|0)==5?(g=_d(j,h)|0,g|0):0){j=g;Vb=k;return j|0}a=$d(j,f)|0;if(a|0){j=a;Vb=k;return j|0}if(e|0?(i=$d(j,f+4|0)|0,i|0):0){j=i;Vb=k;return j|0}j=0;Vb=k;return j|0}function ne(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=Vb;Vb=Vb+32|0;k=l+24|0;i=l+20|0;j=l;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[j+16>>2]=c[b+16>>2];f=_d(j,k)|0;if(f|0){e=f;Vb=l;return e|0}f=_d(j,k)|0;if(f|0){e=f;Vb=l;return e|0}f=_d(j,k)|0;if(f|0){e=f;Vb=l;return e|0}f=c[d+12>>2]|0;b=0;while(1)if(!(f>>>b))break;else b=b+1|0;if((Sd(j,b+-1|0)|0)==-1){e=1;Vb=l;return e|0}f=_d(j,k)|0;if(f|0){e=f;Vb=l;return e|0}g=d+16|0;f=c[g>>2]|0;if(!f){f=c[d+20>>2]|0;b=0;while(1)if(!(f>>>b))break;else b=b+1|0;if((Sd(j,b+-1|0)|0)==-1){e=1;Vb=l;return e|0}if(c[e+8>>2]|0?(h=$d(j,i)|0,h|0):0){e=h;Vb=l;return e|0}f=c[g>>2]|0}if((f|0)==1?(c[d+24>>2]|0)==0:0){f=$d(j,i)|0;if(f|0){e=f;Vb=l;return e|0}if(c[e+8>>2]|0?(m=$d(j,i)|0,m|0):0){e=m;Vb=l;return e|0}}if(c[e+68>>2]|0?(n=_d(j,k)|0,n|0):0){e=n;Vb=l;return e|0}e=Sd(j,1)|0;c[a>>2]=e;e=(e|0)==-1&1;Vb=l;return e|0}function oe(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;A=Vb;Vb=Vb+448|0;n=A+8|0;v=A+4|0;t=A;n=n+(0-n&15)|0;l=c[b+3376>>2]|0;h=c[e>>2]|0;c[v>>2]=0;w=b+1192|0;c[w>>2]=(c[w>>2]|0)+1;o=b+1200|0;c[o>>2]=0;m=b+12|0;c[t>>2]=(c[e+48>>2]|0)+(c[(c[m>>2]|0)+52>>2]|0);u=e+36|0;p=b+1212|0;q=e+52|0;r=e+56|0;s=e+60|0;x=e+4|0;j=e+44|0;g=b+1220|0;z=b+1176|0;k=b+1172|0;i=l+12|0;y=0;f=0;while(1){e=c[p>>2]|0;if((c[u>>2]|0)==0?c[e+(h*216|0)+196>>2]|0:0){e=1;f=20;break}B=c[(c[m>>2]|0)+56>>2]|0;E=c[q>>2]|0;D=c[r>>2]|0;C=c[s>>2]|0;c[e+(h*216|0)+4>>2]=c[w>>2];c[e+(h*216|0)+8>>2]=E;c[e+(h*216|0)+12>>2]=D;c[e+(h*216|0)+16>>2]=C;c[e+(h*216|0)+24>>2]=B;e=c[x>>2]|0;if((e|0)!=2?!((f|0)!=0|(e|0)==7):0){e=_d(a,v)|0;if(e|0){f=20;break}e=c[v>>2]|0;if(e>>>0>((c[z>>2]|0)-h|0)>>>0){e=1;f=20;break}if(!e)f=0;else{Zd(i,0,164);c[l>>2]=0;f=1}}e=c[v>>2]|0;if(!e){e=pe(a,l,(c[p>>2]|0)+(h*216|0)|0,c[x>>2]|0,c[j>>2]|0)|0;if(!e)f=0;else{f=20;break}}else c[v>>2]=e+-1;e=qe((c[p>>2]|0)+(h*216|0)|0,l,d,g,t,h,c[(c[m>>2]|0)+64>>2]|0,n)|0;if(e|0){f=20;break}y=y+((c[(c[p>>2]|0)+(h*216|0)+196>>2]|0)==1&1)|0;e=Td(a)|0;e=(c[v>>2]|e|0)!=0;switch(c[x>>2]|0){case 7:case 2:{c[o>>2]=h;break}default:{}}h=Vd(c[k>>2]|0,c[z>>2]|0,h)|0;if(!((h|0)!=0|e^1)){e=1;f=20;break}if(!e){f=18;break}}if((f|0)==18){f=b+1196|0;e=(c[f>>2]|0)+y|0;if(e>>>0>(c[z>>2]|0)>>>0){E=1;Vb=A;return E|0}c[f>>2]=e;E=0;Vb=A;return E|0}else if((f|0)==20){Vb=A;return e|0}return 0}function pe(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=Vb;Vb=Vb+16|0;t=x+12|0;r=x+8|0;w=x+4|0;v=x;Zd(d,0,2088);i=_d(a,w)|0;h=c[w>>2]|0;a:do switch(f|0){case 2:case 7:{h=h+6|0;if((i|0)!=0|h>>>0>31){a=1;Vb=x;return a|0}else{c[d>>2]=h;l=h;u=d;break a}}default:{h=h+1|0;if((i|0)!=0|h>>>0>31){a=1;Vb=x;return a|0}else{c[d>>2]=h;l=h;u=d;break a}}}while(0);b:do if((l|0)!=31){i=l>>>0<6;h=(l|0)!=6;s=i?2:h&1;c:do if(!i){d:do if(!h){c[r>>2]=0;h=Ud(a)|0;q=h>>>31;c[d+12>>2]=q;if(!q){c[d+76>>2]=h>>>28&7;h=h<<4;f=1}else{h=h<<1;f=0}q=h>>>31;c[d+16>>2]=q;if(!q){c[d+80>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+20>>2]=q;if(!q){c[d+84>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+24>>2]=q;if(!q){c[d+88>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+28>>2]=q;if(!q){c[d+92>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+32>>2]=q;if(!q){c[d+96>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+36>>2]=q;if(!q){c[d+100>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+40>>2]=q;if(!q){c[d+104>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;do if((ce(a,(f*3|0)+8|0)|0)!=-1){c[r>>2]=1;h=Ud(a)|0;q=h>>>31;c[d+44>>2]=q;if(!q){c[d+108>>2]=h>>>28&7;h=h<<4;f=1}else{h=h<<1;f=0}q=h>>>31;c[d+48>>2]=q;if(!q){c[d+112>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+52>>2]=q;if(!q){c[d+116>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+56>>2]=q;if(!q){c[d+120>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+60>>2]=q;if(!q){c[d+124>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+64>>2]=q;if(!q){c[d+128>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+68>>2]=q;if(!q){c[d+132>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;q=h>>>31;c[d+72>>2]=q;if(!q){c[d+136>>2]=h>>>28&7;h=h<<4;f=f+1|0}else h=h<<1;if((ce(a,(f*3|0)+8|0)|0)==-1)break;c[r>>2]=2;c[t>>2]=h;break d}while(0);c[t>>2]=h;h=1;q=96;break c}while(0);r=(_d(a,t)|0)!=0;h=c[t>>2]|0;if(r|h>>>0>3){h=1;q=96}else{c[d+140>>2]=h;h=0;q=96}}else{if(l>>>0<4){if(g>>>0>1){switch(l|0){case 0:case 1:{h=0;break}case 3:case 2:{h=1;break}default:h=3}j=g>>>0>2&1;i=0;while(1){if(af(a,t,j)|0){h=1;q=96;break c}f=c[t>>2]|0;if(f>>>0>=g>>>0){h=1;q=96;break c}c[d+144+(i<<2)>>2]=f;if(!h)break;else{h=h+-1|0;i=i+1|0}}}switch(l|0){case 0:case 1:{h=0;break}case 3:case 2:{h=1;break}default:h=3}f=h;i=0;while(1){h=$d(a,r)|0;if(h|0){q=96;break c}b[d+160+(i<<2)>>1]=c[r>>2];h=$d(a,r)|0;if(h|0){q=96;break c}b[d+160+(i<<2)+2>>1]=c[r>>2];if(!f){h=0;q=96;break c}else{f=f+-1|0;i=i+1|0}}}i=(_d(a,t)|0)!=0;h=c[t>>2]|0;e:do if(((!(i|h>>>0>3)?(n=d+176|0,c[n>>2]=h,i=(_d(a,t)|0)!=0,k=c[t>>2]|0,!(i|k>>>0>3)):0)?(o=d+180|0,c[o>>2]=k,k=(_d(a,t)|0)!=0,j=c[t>>2]|0,!(k|j>>>0>3)):0)?(p=d+184|0,c[p>>2]=j,k=(_d(a,t)|0)!=0,m=c[t>>2]|0,!(k|m>>>0>3)):0){i=d+188|0;c[i>>2]=m;if(g>>>0>1&(l|0)!=5){f=g>>>0>2&1;if(af(a,t,f)|0){h=1;break}h=c[t>>2]|0;if(h>>>0>=g>>>0){h=1;break}c[d+192>>2]=h;if(af(a,t,f)|0){h=1;break}h=c[t>>2]|0;if(h>>>0>=g>>>0){h=1;break}c[d+196>>2]=h;if(af(a,t,f)|0){h=1;break}h=c[t>>2]|0;if(h>>>0>=g>>>0){h=1;break}c[d+200>>2]=h;if(af(a,t,f)|0){h=1;break}h=c[t>>2]|0;if(h>>>0>=g>>>0){h=1;break}c[d+204>>2]=h}h=c[n>>2]|0;switch(h|0){case 0:break;case 2:case 1:{h=1;break}default:h=3}c[t>>2]=h;f=0;while(1){h=$d(a,r)|0;if(h|0)break e;b[d+208+(f<<2)>>1]=c[r>>2];h=$d(a,r)|0;if(h|0)break e;b[d+208+(f<<2)+2>>1]=c[r>>2];g=c[t>>2]|0;c[t>>2]=g+-1;if(!g)break;else f=f+1|0}h=c[o>>2]|0;switch(h|0){case 0:break;case 2:case 1:{h=1;break}default:h=3}c[t>>2]=h;f=0;while(1){h=$d(a,r)|0;if(h|0)break e;b[d+224+(f<<2)>>1]=c[r>>2];h=$d(a,r)|0;if(h|0)break e;b[d+224+(f<<2)+2>>1]=c[r>>2];g=c[t>>2]|0;c[t>>2]=g+-1;if(!g)break;else f=f+1|0}h=c[p>>2]|0;switch(h|0){case 0:break;case 2:case 1:{h=1;break}default:h=3}c[t>>2]=h;f=0;while(1){h=$d(a,r)|0;if(h|0)break e;b[d+240+(f<<2)>>1]=c[r>>2];h=$d(a,r)|0;if(h|0)break e;b[d+240+(f<<2)+2>>1]=c[r>>2];p=c[t>>2]|0;c[t>>2]=p+-1;if(!p)break;else f=f+1|0}h=c[i>>2]|0;switch(h|0){case 0:break;case 2:case 1:{h=1;break}default:h=3}c[t>>2]=h;f=0;while(1){h=$d(a,r)|0;if(h|0)break e;b[d+256+(f<<2)>>1]=c[r>>2];h=$d(a,r)|0;if(h|0)break e;b[d+256+(f<<2)+2>>1]=c[r>>2];p=c[t>>2]|0;c[t>>2]=p+-1;if(!p){h=0;break}else f=f+1|0}}else h=1;while(0)}while(0);if(h|0){a=h;Vb=x;return a|0}do if((s|0)!=1){h=bf(a,w,(s|0)==0&1)|0;if(!h){w=c[w>>2]|0;c[d+4>>2]=w;if(!w)break b;else break}else{a=h;Vb=x;return a|0}}else{w=c[u>>2]|0;s=w+-7|0;t=s>>>2<<4;c[d+4>>2]=(s>>>0>11?t+-48|0:t)|(w>>>0>18?15:0)}while(0);w=($d(a,v)|0)!=0;h=c[v>>2]|0;if(w|(h+26|0)>>>0>51){a=1;Vb=x;return a|0}c[d+8>>2]=h;f=c[d+4>>2]|0;l=d+272|0;f:do if((c[u>>2]|0)>>>0>6){h=df(a,d+1864|0,cf(e,0,l)|0,16)|0;if(!(h&15)){b[d+320>>1]=h>>>4&255;j=0;h=f;k=3;while(1){f=h>>>1;if(h&1|0){h=df(a,d+328+(j<<6)+4|0,cf(e,j,l)|0,15)|0;c[d+1992+(j<<2)>>2]=h>>>15;if(h&15|0)break f;b[d+272+(j<<1)>>1]=h>>>4&255;i=j|1;h=df(a,d+328+(i<<6)+4|0,cf(e,i,l)|0,15)|0;c[d+1992+(i<<2)>>2]=h>>>15;if(h&15|0)break f;b[d+272+(i<<1)>>1]=h>>>4&255;i=j|2;h=df(a,d+328+(i<<6)+4|0,cf(e,i,l)|0,15)|0;c[d+1992+(i<<2)>>2]=h>>>15;if(h&15|0)break f;b[d+272+(i<<1)>>1]=h>>>4&255;i=j|3;h=df(a,d+328+(i<<6)+4|0,cf(e,i,l)|0,15)|0;c[d+1992+(i<<2)>>2]=h>>>15;if(h&15|0)break f;b[d+272+(i<<1)>>1]=h>>>4&255}h=j+4|0;if(!k){i=h;q=115;break}else{j=h;h=f;k=k+-1|0}}}}else{j=0;h=f;k=3;while(1){f=h>>>1;if(h&1|0){h=df(a,d+328+(j<<6)|0,cf(e,j,l)|0,16)|0;c[d+1992+(j<<2)>>2]=h>>>16;if(h&15|0)break f;b[d+272+(j<<1)>>1]=h>>>4&255;i=j|1;h=df(a,d+328+(i<<6)|0,cf(e,i,l)|0,16)|0;c[d+1992+(i<<2)>>2]=h>>>16;if(h&15|0)break f;b[d+272+(i<<1)>>1]=h>>>4&255;i=j|2;h=df(a,d+328+(i<<6)|0,cf(e,i,l)|0,16)|0;c[d+1992+(i<<2)>>2]=h>>>16;if(h&15|0)break f;b[d+272+(i<<1)>>1]=h>>>4&255;i=j|3;h=df(a,d+328+(i<<6)|0,cf(e,i,l)|0,16)|0;c[d+1992+(i<<2)>>2]=h>>>16;if(h&15|0)break f;b[d+272+(i<<1)>>1]=h>>>4&255}h=j+4|0;if(!k){i=h;q=115;break}else{j=h;h=f;k=k+-1|0}}}while(0);do if((q|0)==115){if(f&3|0){h=df(a,d+1928|0,-1,4)|0;if(h&15|0)break;b[d+322>>1]=h>>>4&255;h=df(a,d+1944|0,-1,4)|0;if(h&15|0)break;b[d+324>>1]=h>>>4&255}if(f&2){h=df(a,d+328+(i<<6)+4|0,cf(e,i,l)|0,15)|0;if(!(h&15)){b[d+272+(i<<1)>>1]=h>>>4&255;c[d+1992+(i<<2)>>2]=h>>>15;f=i+1|0;h=df(a,d+328+(f<<6)+4|0,cf(e,f,l)|0,15)|0;if(!(h&15)){b[d+272+(f<<1)>>1]=h>>>4&255;c[d+1992+(f<<2)>>2]=h>>>15;f=i+2|0;h=df(a,d+328+(f<<6)+4|0,cf(e,f,l)|0,15)|0;if(!(h&15)){b[d+272+(f<<1)>>1]=h>>>4&255;c[d+1992+(f<<2)>>2]=h>>>15;f=i+3|0;h=df(a,d+328+(f<<6)+4|0,cf(e,f,l)|0,15)|0;if(!(h&15)){b[d+272+(f<<1)>>1]=h>>>4&255;c[d+1992+(f<<2)>>2]=h>>>15;f=i+4|0;h=df(a,d+328+(f<<6)+4|0,cf(e,f,l)|0,15)|0;if(!(h&15)){b[d+272+(f<<1)>>1]=h>>>4&255;c[d+1992+(f<<2)>>2]=h>>>15;f=i+5|0;h=df(a,d+328+(f<<6)+4|0,cf(e,f,l)|0,15)|0;if(!(h&15)){b[d+272+(f<<1)>>1]=h>>>4&255;c[d+1992+(f<<2)>>2]=h>>>15;f=i+6|0;h=df(a,d+328+(f<<6)+4|0,cf(e,f,l)|0,15)|0;if(!(h&15)){b[d+272+(f<<1)>>1]=h>>>4&255;c[d+1992+(f<<2)>>2]=h>>>15;f=i+7|0;h=df(a,d+328+(f<<6)+4|0,cf(e,f,l)|0,15)|0;if(!(h&15)){b[d+272+(f<<1)>>1]=h>>>4&255;c[d+1992+(f<<2)>>2]=h>>>15;h=0}}}}}}}}}else h=0}while(0);c[a+16>>2]=((c[a+4>>2]|0)-(c[a>>2]|0)<<3)+(c[a+8>>2]|0);if(h|0){a=h;Vb=x;return a|0}}else{g:do if(!($e(a)|0)){while(1){if(Sd(a,1)|0){h=1;break}if($e(a)|0)break g}Vb=x;return h|0}while(0);i=0;f=d+328|0;while(1){h=Sd(a,8)|0;c[w>>2]=h;if((h|0)==-1){h=1;break}c[f>>2]=h;i=i+1|0;if(i>>>0>=384)break b;else f=f+4|0}Vb=x;return h|0}while(0);a=0;Vb=x;return a|0}function qe(d,e,f,g,h,i,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=c[e>>2]|0;c[d>>2]=s;m=d+196|0;c[m>>2]=(c[m>>2]|0)+1;Wd(f,i);if((s|0)==31){l=d+28|0;c[d+20>>2]=0;if((c[m>>2]|0)>>>0>1){b[l>>1]=16;b[d+30>>1]=16;b[d+32>>1]=16;b[d+34>>1]=16;b[d+36>>1]=16;b[d+38>>1]=16;b[d+40>>1]=16;b[d+42>>1]=16;b[d+44>>1]=16;b[d+46>>1]=16;b[d+48>>1]=16;b[d+50>>1]=16;b[d+52>>1]=16;b[d+54>>1]=16;b[d+56>>1]=16;b[d+58>>1]=16;b[d+60>>1]=16;b[d+62>>1]=16;b[d+64>>1]=16;b[d+66>>1]=16;b[d+68>>1]=16;b[d+70>>1]=16;b[d+72>>1]=16;b[d+74>>1]=16;k=0;return k|0}n=23;m=e+328|0;h=k;while(1){b[l>>1]=16;a[h>>0]=c[m>>2];a[h+1>>0]=c[m+4>>2];a[h+2>>0]=c[m+8>>2];a[h+3>>0]=c[m+12>>2];a[h+4>>0]=c[m+16>>2];a[h+5>>0]=c[m+20>>2];a[h+6>>0]=c[m+24>>2];a[h+7>>0]=c[m+28>>2];a[h+8>>0]=c[m+32>>2];a[h+9>>0]=c[m+36>>2];a[h+10>>0]=c[m+40>>2];a[h+11>>0]=c[m+44>>2];a[h+12>>0]=c[m+48>>2];a[h+13>>0]=c[m+52>>2];a[h+14>>0]=c[m+56>>2];a[h+15>>0]=c[m+60>>2];if(!n)break;else{n=n+-1|0;m=m+64|0;h=h+16|0;l=l+2|0}}re(f,k);k=0;return k|0}p=d+28|0;if(s){se(p,e+272|0,54);m=c[e+8>>2]|0;l=c[h>>2]|0;do if(m){l=l+m|0;c[h>>2]=l;if((l|0)<0){l=l+52|0;c[h>>2]=l;break}if((l|0)>51){l=l+-52|0;c[h>>2]=l}}while(0);q=d+20|0;c[q>>2]=l;m=e+328|0;h=e+1992|0;a:do if((c[d>>2]|0)>>>0>6){if(b[d+76>>1]|0)Od(e+1864|0,l);n=1992;o=15;l=p;while(1){r=c[e+1864+(c[n>>2]<<2)>>2]|0;n=n+4|0;c[m>>2]=r;if((r|0)==0?(b[l>>1]|0)==0:0)c[m>>2]=16777215;else u=19;if((u|0)==19?(u=0,Nd(m,c[q>>2]|0,1,c[h>>2]|0)|0):0){l=1;break}m=m+64|0;l=l+2|0;h=h+4|0;if(!o){r=l;break a}else o=o+-1|0}return l|0}else{if(b[p>>1]|0){if(Nd(m,l,0,c[h>>2]|0)|0){k=1;return k|0}}else c[m>>2]=16777215;l=e+392|0;if(b[d+30>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+1996>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+456|0;if(b[d+32>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2e3>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+520|0;if(b[d+34>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2004>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+584|0;if(b[d+36>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2008>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+648|0;if(b[d+38>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2012>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+712|0;if(b[d+40>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2016>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+776|0;if(b[d+42>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2020>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+840|0;if(b[d+44>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2024>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+904|0;if(b[d+46>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2028>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+968|0;if(b[d+48>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2032>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+1032|0;if(b[d+50>>1]|0){if(Nd(l,c[q>>2]|0,0,c[e+2036>>2]|0)|0){k=1;return k|0}}else c[l>>2]=16777215;l=e+1096|0;do if(!(b[d+52>>1]|0))c[l>>2]=16777215;else{if(!(Nd(l,c[q>>2]|0,0,c[e+2040>>2]|0)|0))break;else l=1;return l|0}while(0);l=e+1160|0;do if(!(b[d+54>>1]|0))c[l>>2]=16777215;else{if(!(Nd(l,c[q>>2]|0,0,c[e+2044>>2]|0)|0))break;else l=1;return l|0}while(0);l=e+1224|0;do if(!(b[d+56>>1]|0))c[l>>2]=16777215;else{if(!(Nd(l,c[q>>2]|0,0,c[e+2048>>2]|0)|0))break;else l=1;return l|0}while(0);l=e+1288|0;do if(!(b[d+58>>1]|0))c[l>>2]=16777215;else{if(!(Nd(l,c[q>>2]|0,0,c[e+2052>>2]|0)|0))break;else l=1;return l|0}while(0);m=e+1352|0;h=e+2056|0;r=d+60|0}while(0);q=(c[d+24>>2]|0)+(c[q>>2]|0)|0;q=(q|0)<51?q:51;q=c[1520+(((q|0)>0?q:0)<<2)>>2]|0;if((b[d+78>>1]|0)==0?(b[d+80>>1]|0)==0:0)l=e+1928|0;else{l=e+1928|0;Pd(l,q)}o=e+1932|0;p=c[l>>2]|0;c[m>>2]=p;if((p|0)==0?(b[r>>1]|0)==0:0)c[m>>2]=16777215;else u=32;if((u|0)==32?Nd(m,q,1,c[h>>2]|0)|0:0){k=1;return k|0}n=h+4|0;p=e+1936|0;o=c[o>>2]|0;l=m+64|0;c[l>>2]=o;if((o|0)==0?(b[r+2>>1]|0)==0:0)c[l>>2]=16777215;else u=36;if((u|0)==36?Nd(l,q,1,c[n>>2]|0)|0:0){k=1;return k|0}n=h+8|0;o=e+1940|0;p=c[p>>2]|0;l=m+128|0;c[l>>2]=p;if((p|0)==0?(b[r+4>>1]|0)==0:0)c[l>>2]=16777215;else u=40;if((u|0)==40?Nd(l,q,1,c[n>>2]|0)|0:0){k=1;return k|0}n=h+12|0;p=e+1944|0;o=c[o>>2]|0;l=m+192|0;c[l>>2]=o;if((o|0)==0?(b[r+6>>1]|0)==0:0)c[l>>2]=16777215;else u=44;if((u|0)==44?Nd(l,q,1,c[n>>2]|0)|0:0){k=1;return k|0}n=h+16|0;o=e+1948|0;p=c[p>>2]|0;l=m+256|0;c[l>>2]=p;if((p|0)==0?(b[r+8>>1]|0)==0:0)c[l>>2]=16777215;else u=48;if((u|0)==48?Nd(l,q,1,c[n>>2]|0)|0:0){k=1;return k|0}n=h+20|0;p=e+1952|0;o=c[o>>2]|0;l=m+320|0;c[l>>2]=o;if((o|0)==0?(b[r+10>>1]|0)==0:0)c[l>>2]=16777215;else u=52;if((u|0)==52?Nd(l,q,1,c[n>>2]|0)|0:0){k=1;return k|0}n=h+24|0;o=e+1956|0;p=c[p>>2]|0;l=m+384|0;c[l>>2]=p;if((p|0)==0?(b[r+12>>1]|0)==0:0)c[l>>2]=16777215;else u=56;if((u|0)==56?Nd(l,q,1,c[n>>2]|0)|0:0){k=1;return k|0}h=h+28|0;p=c[o>>2]|0;l=m+448|0;c[l>>2]=p;if((p|0)==0?(b[r+14>>1]|0)==0:0)c[l>>2]=16777215;else u=60;if((u|0)==60?Nd(l,q,1,c[h>>2]|0)|0:0){k=1;return k|0}if(s>>>0>=6){l=te(d,e,f,i,j,k)|0;if(l|0){k=l;return k|0}}else u=110}else{Zd(p,0,54);c[d+20>>2]=c[h>>2];u=110}if((u|0)==110?(t=ue(d,e,g,i,f,k)|0,t|0):0){k=t;return k|0}k=0;return k|0}function re(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=c[a+4>>2]|0;g=c[a+12>>2]|0;e=c[a+16>>2]|0;d=c[a+20>>2]|0;a=f<<2;h=c[b+4>>2]|0;c[g>>2]=c[b>>2];c[g+4>>2]=h;h=c[b+12>>2]|0;c[g+8>>2]=c[b+8>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+20>>2]|0;c[g>>2]=c[b+16>>2];c[g+4>>2]=h;h=c[b+28>>2]|0;c[g+8>>2]=c[b+24>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+36>>2]|0;c[g>>2]=c[b+32>>2];c[g+4>>2]=h;h=c[b+44>>2]|0;c[g+8>>2]=c[b+40>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+52>>2]|0;c[g>>2]=c[b+48>>2];c[g+4>>2]=h;h=c[b+60>>2]|0;c[g+8>>2]=c[b+56>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+68>>2]|0;c[g>>2]=c[b+64>>2];c[g+4>>2]=h;h=c[b+76>>2]|0;c[g+8>>2]=c[b+72>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+84>>2]|0;c[g>>2]=c[b+80>>2];c[g+4>>2]=h;h=c[b+92>>2]|0;c[g+8>>2]=c[b+88>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+100>>2]|0;c[g>>2]=c[b+96>>2];c[g+4>>2]=h;h=c[b+108>>2]|0;c[g+8>>2]=c[b+104>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+116>>2]|0;c[g>>2]=c[b+112>>2];c[g+4>>2]=h;h=c[b+124>>2]|0;c[g+8>>2]=c[b+120>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+132>>2]|0;c[g>>2]=c[b+128>>2];c[g+4>>2]=h;h=c[b+140>>2]|0;c[g+8>>2]=c[b+136>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+148>>2]|0;c[g>>2]=c[b+144>>2];c[g+4>>2]=h;h=c[b+156>>2]|0;c[g+8>>2]=c[b+152>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+164>>2]|0;c[g>>2]=c[b+160>>2];c[g+4>>2]=h;h=c[b+172>>2]|0;c[g+8>>2]=c[b+168>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+180>>2]|0;c[g>>2]=c[b+176>>2];c[g+4>>2]=h;h=c[b+188>>2]|0;c[g+8>>2]=c[b+184>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+196>>2]|0;c[g>>2]=c[b+192>>2];c[g+4>>2]=h;h=c[b+204>>2]|0;c[g+8>>2]=c[b+200>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+212>>2]|0;c[g>>2]=c[b+208>>2];c[g+4>>2]=h;h=c[b+220>>2]|0;c[g+8>>2]=c[b+216>>2];c[g+12>>2]=h;g=g+(a<<2)|0;h=c[b+228>>2]|0;c[g>>2]=c[b+224>>2];c[g+4>>2]=h;h=c[b+236>>2]|0;c[g+8>>2]=c[b+232>>2];c[g+12>>2]=h;a=g+(a<<2)|0;g=c[b+244>>2]|0;c[a>>2]=c[b+240>>2];c[a+4>>2]=g;g=c[b+252>>2]|0;c[a+8>>2]=c[b+248>>2];c[a+12>>2]=g;a=f<<1&2147483646;f=c[b+260>>2]|0;c[e>>2]=c[b+256>>2];c[e+4>>2]=f;e=e+(a<<2)|0;f=c[b+268>>2]|0;c[e>>2]=c[b+264>>2];c[e+4>>2]=f;e=e+(a<<2)|0;f=c[b+276>>2]|0;c[e>>2]=c[b+272>>2];c[e+4>>2]=f;e=e+(a<<2)|0;f=c[b+284>>2]|0;c[e>>2]=c[b+280>>2];c[e+4>>2]=f;e=e+(a<<2)|0;f=c[b+292>>2]|0;c[e>>2]=c[b+288>>2];c[e+4>>2]=f;e=e+(a<<2)|0;f=c[b+300>>2]|0;c[e>>2]=c[b+296>>2];c[e+4>>2]=f;e=e+(a<<2)|0;f=c[b+308>>2]|0;c[e>>2]=c[b+304>>2];c[e+4>>2]=f;e=e+(a<<2)|0;f=c[b+316>>2]|0;c[e>>2]=c[b+312>>2];c[e+4>>2]=f;e=c[b+324>>2]|0;c[d>>2]=c[b+320>>2];c[d+4>>2]=e;d=d+(a<<2)|0;e=c[b+332>>2]|0;c[d>>2]=c[b+328>>2];c[d+4>>2]=e;d=d+(a<<2)|0;e=c[b+340>>2]|0;c[d>>2]=c[b+336>>2];c[d+4>>2]=e;d=d+(a<<2)|0;e=c[b+348>>2]|0;c[d>>2]=c[b+344>>2];c[d+4>>2]=e;d=d+(a<<2)|0;e=c[b+356>>2]|0;c[d>>2]=c[b+352>>2];c[d+4>>2]=e;d=d+(a<<2)|0;e=c[b+364>>2]|0;c[d>>2]=c[b+360>>2];c[d+4>>2]=e;d=d+(a<<2)|0;e=c[b+372>>2]|0;c[d>>2]=c[b+368>>2];c[d+4>>2]=e;a=d+(a<<2)|0;d=c[b+380>>2]|0;c[a>>2]=c[b+376>>2];c[a+4>>2]=d;return}function se(a,b,c){a=a|0;b=b|0;c=c|0;dl(a|0,b|0,c|0)|0;return}function te(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=Vb;Vb=Vb+80|0;h=j+32|0;i=j;Pe(d,h,i,e);if((Qe(c[a>>2]|0)|0)==1){e=Re(a,g,b+328|0,h,i,f)|0;if(e|0){a=e;Vb=j;return a|0}}else{e=Se(a,g,b,h,i,f)|0;if(e|0){a=e;Vb=j;return a|0}}e=Te(a,g+256|0,b+1352|0,h+21|0,i+16|0,c[b+140>>2]|0,f)|0;if(e|0){a=e;Vb=j;return a|0}if((c[a+196>>2]|0)>>>0>1){a=0;Vb=j;return a|0}re(d,g);a=0;Vb=j;return a|0}
function uf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=w(f,e)|0;m=c[b+12>>2]|0;if((m|0)==1){Zd(a,0,n<<2);return}g=c[b+16>>2]|0;if((g+-3|0)>>>0<3){d=w(c[b+36>>2]|0,d)|0;d=d>>>0<n>>>0?d:n;if((g&-2|0)==4){k=(c[b+32>>2]|0)==0?d:n-d|0;h=6}else t=d}else{k=0;d=0;h=6}a:do if((h|0)==6)switch(g|0){case 3:{t=d;break a}case 0:{j=c[b+20>>2]|0;if(!m){if(!n)return;while(1){}}d=0;while(1){if(d>>>0>=n>>>0){h=66;break}k=0;do{i=j+(k<<2)|0;g=c[i>>2]|0;b:do if(!g)g=0;else{b=0;do{h=b+d|0;if(h>>>0>=n>>>0)break b;c[a+(h<<2)>>2]=k;b=b+1|0;g=c[i>>2]|0}while(b>>>0<g>>>0)}while(0);k=k+1|0;d=g+d|0;g=d>>>0<n>>>0}while(k>>>0<m>>>0&g);if(!g){h=66;break}}if((h|0)==66)return;break}case 1:{if(!n)return;d=0;do{t=(d>>>0)/(e>>>0)|0;c[a+(d<<2)>>2]=((((w(t,m)|0)>>>1)+(d-(w(t,e)|0))|0)>>>0)%(m>>>0)|0;d=d+1|0}while((d|0)!=(n|0));return}case 2:{l=c[b+24>>2]|0;f=c[b+28>>2]|0;g=m+-1|0;if(n|0){d=0;do{c[a+(d<<2)>>2]=g;d=d+1|0}while((d|0)!=(n|0));if(!g)return}j=m+-2|0;while(1){b=c[l+(j<<2)>>2]|0;d=(b>>>0)/(e>>>0)|0;b=b-(w(d,e)|0)|0;i=c[f+(j<<2)>>2]|0;k=(i>>>0)/(e>>>0)|0;i=i-(w(k,e)|0)|0;c:do if(d>>>0<=k>>>0){if(b>>>0>i>>>0)while(1){d=d+1|0;if(d>>>0>k>>>0)break c}do{g=w(d,e)|0;h=b;do{c[a+(h+g<<2)>>2]=j;h=h+1|0}while(h>>>0<=i>>>0);d=d+1|0}while(d>>>0<=k>>>0)}while(0);if(!j)break;else j=j+-1|0}return}case 4:{d=c[b+32>>2]|0;if(!n)return;h=1-d|0;g=0;do{c[a+(g<<2)>>2]=g>>>0<k>>>0?d:h;g=g+1|0}while((g|0)!=(n|0));return}case 5:{d=c[b+32>>2]|0;if(!e)return;j=1-d|0;if(!f)return;h=0;b=0;while(1){g=0;i=b;while(1){t=a+((w(g,e)|0)+h<<2)|0;c[t>>2]=i>>>0<k>>>0?d:j;g=g+1|0;if((g|0)==(f|0))break;else i=i+1|0}h=h+1|0;if((h|0)==(e|0))break;else b=b+f|0}return}default:{if(!n)return;d=c[b+44>>2]|0;g=0;do{c[a+(g<<2)>>2]=c[d+(g<<2)>>2];g=g+1|0}while((g|0)!=(n|0));return}}while(0);h=c[b+32>>2]|0;if(n|0){d=0;do{c[a+(d<<2)>>2]=1;d=d+1|0}while((d|0)!=(n|0))}d=(e-h|0)>>>1;g=(f-h|0)>>>1;if(!t)return;s=h<<1;q=s+-1|0;r=e+-1|0;s=1-s|0;p=f+-1|0;m=g;o=0;n=d;b=d;i=g;j=d;k=h+-1|0;f=g;while(1){d=a+((w(f,e)|0)+j<<2)|0;g=(c[d>>2]|0)==1;l=g&1;if(g)c[d>>2]=0;do if(!((k|0)==-1&(j|0)==(n|0))){if((k|0)==1&(j|0)==(b|0)){j=b+1|0;j=(j|0)<(r|0)?j:r;d=m;g=n;b=j;k=0;h=s;break}if((h|0)==-1&(f|0)==(i|0)){f=i+-1|0;f=(f|0)>0?f:0;d=m;g=n;i=f;k=s;h=0;break}if((h|0)==1&(f|0)==(m|0)){f=m+1|0;f=(f|0)<(p|0)?f:p;d=f;g=n;k=q;h=0;break}else{d=m;g=n;j=j+k|0;f=f+h|0;break}}else{j=n+-1|0;j=(j|0)>0?j:0;d=m;g=j;k=0;h=q}while(0);o=o+l|0;if(o>>>0>=t>>>0)break;else{m=d;n=g}}return}function vf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Vb;Vb=Vb+32|0;g=s+24|0;i=s+20|0;j=s+16|0;m=s+12|0;q=s+8|0;p=s;c[e>>2]=0;switch(c[b>>2]|0){case 6:case 7:case 8:case 9:case 10:case 11:case 13:case 14:case 15:case 16:case 17:case 18:{c[e>>2]=1;b=0;Vb=s;return b|0}case 5:case 1:{r=d+1300|0;f=d+1332|0;if(c[f>>2]|0){c[e>>2]=1;c[f>>2]=0}f=he(a,g)|0;if(f|0){b=f;Vb=s;return b|0}k=c[d+148+(c[g>>2]<<2)>>2]|0;if(!k){b=65520;Vb=s;return b|0}f=c[k+4>>2]|0;l=c[d+20+(f<<2)>>2]|0;if(!l){b=65520;Vb=s;return b|0}g=c[d+8>>2]|0;if(!((g|0)==32|(f|0)==(g|0))?(c[b>>2]|0)!=5:0){b=65520;Vb=s;return b|0}f=c[d+1304>>2]|0;g=c[b+4>>2]|0;if((f|0)!=(g|0)?(f|0)==0|(g|0)==0:0)c[e>>2]=1;f=(c[b>>2]|0)==5;if((c[r>>2]|0)==5){if(!f)h=16}else if(f)h=16;if((h|0)==16)c[e>>2]=1;g=l+12|0;if(ie(a,c[g>>2]|0,i)|0){b=1;Vb=s;return b|0}h=d+1308|0;f=c[i>>2]|0;if((c[h>>2]|0)!=(f|0)){c[h>>2]=f;c[e>>2]=1}if((c[b>>2]|0)==5){if(je(a,c[g>>2]|0,5,j)|0){b=1;Vb=s;return b|0}if((c[r>>2]|0)==5){f=d+1312|0;h=c[f>>2]|0;g=c[j>>2]|0;if((h|0)==(g|0))g=h;else c[e>>2]=1}else{g=c[j>>2]|0;f=d+1312|0}c[f>>2]=g}switch(c[l+16>>2]|0){case 0:{if(ke(a,l,c[b>>2]|0,m)|0){b=1;Vb=s;return b|0}g=d+1316|0;f=c[m>>2]|0;if((c[g>>2]|0)!=(f|0)){c[g>>2]=f;c[e>>2]=1}if(c[k+8>>2]|0){f=le(a,l,c[b>>2]|0,q)|0;if(f|0){b=f;Vb=s;return b|0}g=d+1320|0;f=c[q>>2]|0;if((c[g>>2]|0)!=(f|0)){c[g>>2]=f;c[e>>2]=1}}break}case 1:{if(!(c[l+24>>2]|0)){h=k+8|0;f=me(a,l,c[b>>2]|0,c[h>>2]|0,p)|0;if(f|0){b=f;Vb=s;return b|0}g=d+1324|0;f=c[p>>2]|0;if((c[g>>2]|0)!=(f|0)){c[g>>2]=f;c[e>>2]=1}if(c[h>>2]|0?(o=d+1328|0,n=c[p+4>>2]|0,(c[o>>2]|0)!=(n|0)):0){c[o>>2]=n;c[e>>2]=1}}break}default:{}}d=b;e=c[d+4>>2]|0;b=r;c[b>>2]=c[d>>2];c[b+4>>2]=e;b=0;Vb=s;return b|0}default:{b=0;Vb=s;return b|0}}return 0}function wf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=0;a:while(1){d=c[a+148+(k<<2)>>2]|0;b:do if(d|0?(j=c[a+20+(c[d+4>>2]<<2)>>2]|0,j|0):0){i=c[j+52>>2]|0;l=w(c[j+56>>2]|0,i)|0;e=c[d+12>>2]|0;if(e>>>0<=1){b=0;d=18;break a}b=c[d+16>>2]|0;switch(b|0){case 0:{b=c[d+20>>2]|0;d=0;while(1){if((c[b+(d<<2)>>2]|0)>>>0>l>>>0)break b;d=d+1|0;if(d>>>0>=e>>>0){b=0;d=18;break a}}}case 2:{h=e+-1|0;g=c[d+24>>2]|0;d=c[d+28>>2]|0;f=0;while(1){e=c[g+(f<<2)>>2]|0;b=c[d+(f<<2)>>2]|0;if(!(e>>>0<=b>>>0&b>>>0<l>>>0))break b;f=f+1|0;if(((e>>>0)%(i>>>0)|0)>>>0>((b>>>0)%(i>>>0)|0)>>>0)break b;if(f>>>0>=h>>>0){b=0;d=18;break a}}}default:{if((b+-3|0)>>>0<3)if((c[d+36>>2]|0)>>>0>l>>>0)break b;else{b=0;d=18;break a}if((b|0)!=6){b=0;d=18;break a}if((c[d+40>>2]|0)>>>0<l>>>0)break b;else{b=0;d=18;break a}}}}while(0);k=k+1|0;if(k>>>0>=256){b=1;d=18;break}}if((d|0)==18)return b|0;return 0}function xf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=c[a+40>>2]|0;if(g|0){h=c[a>>2]|0;j=a+32|0;i=0;do{if(((c[h+(i*40|0)+20>>2]|0)+-1|0)>>>0<2){f=c[h+(i*40|0)+12>>2]|0;if(f>>>0>d>>>0)f=f-(c[j>>2]|0)|0;c[h+(i*40|0)+8>>2]=f}i=i+1|0}while((i|0)!=(g|0))}if(!(c[b>>2]|0)){b=0;return b|0}f=c[b+4>>2]|0;if(f>>>0>=3){b=0;return b|0}o=a+24|0;n=a+32|0;m=a+4|0;k=d;l=0;a:while(1){b:do if((f|0)==2){f=c[b+4+(l*12|0)+8>>2]|0;g=c[o>>2]|0;if(!g){f=1;g=39;break a}i=c[a>>2]|0;h=0;while(1){if((c[i+(h*40|0)+20>>2]|0)==3?(c[i+(h*40|0)+8>>2]|0)==(f|0):0){j=3;g=i;break b}h=h+1|0;if(h>>>0>=g>>>0){f=1;g=39;break a}}}else{g=c[b+4+(l*12|0)+4>>2]|0;if(!f){f=k-g|0;if((f|0)<0)f=(c[n>>2]|0)+f|0}else{k=g+k|0;f=c[n>>2]|0;f=k-((k|0)<(f|0)?0:f)|0}if(f>>>0>d>>>0)i=f-(c[n>>2]|0)|0;else i=f;g=c[o>>2]|0;if(!g){f=1;g=39;break a}k=c[a>>2]|0;h=0;while(1){j=c[k+(h*40|0)+20>>2]|0;if((j+-1|0)>>>0<2?(c[k+(h*40|0)+8>>2]|0)==(i|0):0){g=k;k=f;break b}h=h+1|0;if(h>>>0>=g>>>0){f=1;g=39;break a}}}while(0);if(!((h|0)>-1&j>>>0>1)){f=1;g=39;break}if(l>>>0<e>>>0){f=e;do{i=c[m>>2]|0;j=f;f=f+-1|0;c[i+(j<<2)>>2]=c[i+(f<<2)>>2]}while(f>>>0>l>>>0);f=c[a>>2]|0}else f=g;c[(c[m>>2]|0)+(l<<2)>>2]=f+(h*40|0);l=l+1|0;if(l>>>0<=e>>>0){j=l;f=l;do{g=c[m>>2]|0;i=c[g+(j<<2)>>2]|0;if((i|0)!=((c[a>>2]|0)+(h*40|0)|0)){c[g+(f<<2)>>2]=i;f=f+1|0}j=j+1|0}while(j>>>0<=e>>>0)}f=c[b+4+(l*12|0)>>2]|0;if(f>>>0>=3){f=0;g=39;break}}if((g|0)==39)return f|0;return 0}function yf(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,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;z=a+8|0;j=c[z>>2]|0;if((c[d>>2]|0)!=(c[j>>2]|0)){a=1;return a|0}u=a+52|0;c[u>>2]=0;A=a+56|0;d=(c[A>>2]|0)==0;y=d&1;do if(!b){c[j+20>>2]=0;c[j+12>>2]=e;c[j+8>>2]=e;c[j+16>>2]=f;c[j+24>>2]=y;if(d){q=a+44|0;c[q>>2]=(c[q>>2]|0)+1;q=0}else q=0}else{if(g|0){j=a+20|0;c[j>>2]=0;d=a+16|0;c[d>>2]=0;zf(a);if(!((c[b>>2]|0)==0?!(c[A>>2]|0):0)){c[d>>2]=0;c[j>>2]=0}f=(c[b+4>>2]|0)==0;q=c[z>>2]|0;c[q+20>>2]=f?2:3;c[a+36>>2]=f?65535:0;c[q+12>>2]=0;c[q+8>>2]=0;c[q+16>>2]=0;c[q+24>>2]=y;c[a+44>>2]=1;c[a+40>>2]=1;q=0;break}if(!(c[b+8>>2]|0)){j=a+40|0;l=c[j>>2]|0;p=c[a+24>>2]|0;if(l>>>0>=p>>>0)if(l){o=c[a>>2]|0;m=0;d=-1;k=0;while(1){if(((c[o+(m*40|0)+20>>2]|0)+-1|0)>>>0<2){b=c[o+(m*40|0)+8>>2]|0;x=(d|0)==-1|(b|0)<(k|0);n=x?m:d;k=x?b:k}else n=d;m=m+1|0;if((m|0)==(l|0))break;else d=n}if((n|0)>-1){c[o+(n*40|0)+20>>2]=0;d=l+-1|0;c[j>>2]=d;if(!(c[o+(n*40|0)+24>>2]|0)){l=a+44|0;c[l>>2]=(c[l>>2]|0)+-1;l=d;k=p;d=0}else{l=d;k=p;d=0}}else{k=p;d=1}}else{l=0;k=p;d=1}else{k=p;d=0}}else{v=a+24|0;t=a+36|0;j=a+40|0;s=a+44|0;q=0;r=0;a:while(1){d=c[b+12+(q*20|0)>>2]|0;b:do switch(d|0){case 0:{x=77;break a}case 1:{n=e-(c[b+12+(q*20|0)+4>>2]|0)|0;l=c[v>>2]|0;if(!l){d=1;break a}m=c[a>>2]|0;d=0;while(1){k=m+(d*40|0)+20|0;if(((c[k>>2]|0)+-1|0)>>>0<2?(c[m+(d*40|0)+8>>2]|0)==(n|0):0)break;d=d+1|0;if(d>>>0>=l>>>0){d=1;break a}}if((d|0)<0){d=1;break a}c[k>>2]=0;c[j>>2]=(c[j>>2]|0)+-1;if(!(c[m+(d*40|0)+24>>2]|0)){c[s>>2]=(c[s>>2]|0)+-1;d=r}else d=r;break}case 2:{l=c[b+12+(q*20|0)+8>>2]|0;m=c[v>>2]|0;if(!m){d=1;break a}n=c[a>>2]|0;d=0;while(1){k=n+(d*40|0)+20|0;if((c[k>>2]|0)==3?(c[n+(d*40|0)+8>>2]|0)==(l|0):0)break;d=d+1|0;if(d>>>0>=m>>>0){d=1;break a}}if((d|0)<0){d=1;break a}c[k>>2]=0;c[j>>2]=(c[j>>2]|0)+-1;if(!(c[n+(d*40|0)+24>>2]|0)){c[s>>2]=(c[s>>2]|0)+-1;d=r}else d=r;break}case 3:{d=c[b+12+(q*20|0)+4>>2]|0;n=c[b+12+(q*20|0)+12>>2]|0;p=c[t>>2]|0;if((p|0)==65535|p>>>0<n>>>0){d=1;break a}o=c[v>>2]|0;if(!o){d=1;break a}p=c[a>>2]|0;k=0;while(1){m=p+(k*40|0)+20|0;if((c[m>>2]|0)==3?(c[p+(k*40|0)+8>>2]|0)==(n|0):0){x=34;break}l=k+1|0;if(l>>>0<o>>>0)k=l;else break}if((x|0)==34?(x=0,c[m>>2]=0,c[j>>2]=(c[j>>2]|0)+-1,(c[p+(k*40|0)+24>>2]|0)==0):0)c[s>>2]=(c[s>>2]|0)+-1;m=e-d|0;d=0;while(1){l=p+(d*40|0)+20|0;k=c[l>>2]|0;if((k+-1|0)>>>0<2?(w=p+(d*40|0)+8|0,(c[w>>2]|0)==(m|0)):0)break;d=d+1|0;if(d>>>0>=o>>>0){d=1;break a}}if(!((d|0)>-1&k>>>0>1)){d=1;break a}c[l>>2]=3;c[w>>2]=n;d=r;break}case 4:{d=c[b+12+(q*20|0)+16>>2]|0;c[t>>2]=d;m=c[v>>2]|0;if(!m)d=r;else{n=c[a>>2]|0;if((d|0)==65535){d=0;while(1){k=n+(d*40|0)+20|0;if((c[k>>2]|0)==3?(c[k>>2]=0,c[j>>2]=(c[j>>2]|0)+-1,(c[n+(d*40|0)+24>>2]|0)==0):0)c[s>>2]=(c[s>>2]|0)+-1;d=d+1|0;if((d|0)==(m|0)){d=r;break b}}}k=0;do{l=n+(k*40|0)+20|0;if(((c[l>>2]|0)==3?(c[n+(k*40|0)+8>>2]|0)>>>0>d>>>0:0)?(c[l>>2]=0,c[j>>2]=(c[j>>2]|0)+-1,(c[n+(k*40|0)+24>>2]|0)==0):0)c[s>>2]=(c[s>>2]|0)+-1;k=k+1|0}while((k|0)!=(m|0));d=r}break}case 5:{zf(a);c[u>>2]=1;e=0;d=r;break}case 6:{n=c[b+12+(q*20|0)+12>>2]|0;p=c[t>>2]|0;if((p|0)==65535|p>>>0<n>>>0){d=1;break a}k=c[v>>2]|0;c:do if(k){m=c[a>>2]|0;d=0;while(1){l=m+(d*40|0)+20|0;if((c[l>>2]|0)==3?(c[m+(d*40|0)+8>>2]|0)==(n|0):0)break;d=d+1|0;if(d>>>0>=k>>>0)break c}c[l>>2]=0;c[j>>2]=(c[j>>2]|0)+-1;if(!(c[m+(d*40|0)+24>>2]|0))c[s>>2]=(c[s>>2]|0)+-1}else k=0;while(0);d=c[j>>2]|0;if(d>>>0>=k>>>0){d=1;break a}r=c[z>>2]|0;c[r+12>>2]=e;c[r+8>>2]=n;c[r+16>>2]=f;c[r+20>>2]=3;c[r+24>>2]=(c[A>>2]|0)==0&1;c[j>>2]=d+1;c[s>>2]=(c[s>>2]|0)+1;d=1;break}default:{d=1;break a}}while(0);q=q+1|0;r=d}if(r|0){q=d;break}l=c[j>>2]|0;k=c[v>>2]|0}if(l>>>0<k>>>0){q=c[z>>2]|0;c[q+12>>2]=e;c[q+8>>2]=e;c[q+16>>2]=f;c[q+20>>2]=2;c[q+24>>2]=y;q=a+44|0;c[q>>2]=(c[q>>2]|0)+1;c[j>>2]=l+1;q=d}else q=1}while(0);d=c[z>>2]|0;c[d+36>>2]=g;c[d+28>>2]=h;c[d+32>>2]=i;if(!(c[A>>2]|0)){n=a+44|0;j=c[n>>2]|0;d=c[a+28>>2]|0;if(j>>>0>d>>>0){m=c[a>>2]|0;p=a+12|0;o=a+16|0;do{l=0;e=2147483647;k=0;do{if(c[m+(l*40|0)+24>>2]|0){g=c[m+(l*40|0)+16>>2]|0;i=(g|0)<(e|0);e=i?g:e;k=i?m+(l*40|0)|0:k}l=l+1|0}while(l>>>0<=d>>>0);if((k|0)!=0?(g=c[p>>2]|0,i=c[o>>2]|0,c[g+(i<<4)>>2]=c[k>>2],c[g+(i<<4)+12>>2]=c[k+36>>2],c[g+(i<<4)+4>>2]=c[k+28>>2],c[g+(i<<4)+8>>2]=c[k+32>>2],c[o>>2]=i+1,c[k+24>>2]=0,(c[k+20>>2]|0)==0):0){j=j+-1|0;c[n>>2]=j}}while(j>>>0>d>>>0)}}else{y=c[a+12>>2]|0;A=a+16|0;z=c[A>>2]|0;c[y+(z<<4)>>2]=c[d>>2];c[y+(z<<4)+12>>2]=g;c[y+(z<<4)+4>>2]=h;c[y+(z<<4)+8>>2]=i;c[A>>2]=z+1;d=c[a+28>>2]|0}Af(c[a>>2]|0,d+1|0);a=q;return a|0}function zf(a){a=a|0;var b=0,d=0,e=0;d=c[a>>2]|0;e=a+44|0;b=d+20|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+24>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+60|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+64>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+100|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+104>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+140|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+144>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+180|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+184>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+220|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+224>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+260|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+264>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+300|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+304>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+340|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+344>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+380|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+384>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+420|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+424>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+460|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+464>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+500|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+504>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+540|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+544>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+580|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+584>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;b=d+620|0;if(c[b>>2]|0?(c[b>>2]=0,(c[d+624>>2]|0)==0):0)c[e>>2]=(c[e>>2]|0)+-1;do{}while(!(Bf(a)|0));c[a+40>>2]=0;c[a+36>>2]=65535;c[a+48>>2]=0;return}function Af(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=Vb;Vb=Vb+32|0;o=q+16|0;p=q;if(b>>>0>7){j=7;do{d=a+(j*40|0)|0;i=d;h=c[i>>2]|0;i=c[i+4>>2]|0;k=c[a+(j*40|0)+8>>2]|0;n=a+(j*40|0)+12|0;m=c[n+4>>2]|0;l=o;c[l>>2]=c[n>>2];c[l+4>>2]=m;l=c[a+(j*40|0)+20>>2]|0;m=c[a+(j*40|0)+24>>2]|0;n=a+(j*40|0)+28|0;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];c[p+8>>2]=c[n+8>>2];a:do if(j>>>0<7)e=j;else{if(!l){if(!m){e=j;break}e=j;while(1){d=a+(e*40|0)|0;f=d+-280|0;if(c[f+20>>2]|0)break a;if(c[f+24>>2]|0)break a;e=e+-7|0;f=a+(e*40|0)|0;g=f;n=d+40|0;do{c[d>>2]=c[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(n|0));if(e>>>0<7){d=f;break a}}}if((l+-1|0)>>>0<2){e=j;while(1){d=a+(e*40|0)|0;n=d+-280|0;g=c[n+20>>2]|0;if((g|0)!=0&(g+-1|0)>>>0<2?(c[n+8>>2]|0)>=(k|0):0)break a;e=e+-7|0;f=a+(e*40|0)|0;g=f;n=d+40|0;do{c[d>>2]=c[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(n|0));if(e>>>0<7){d=f;break a}}}e=j;while(1){d=a+(e*40|0)|0;g=d+-280|0;f=c[g+20>>2]|0;if(f|0){if((f+-1|0)>>>0<2)break a;if((c[g+8>>2]|0)<=(k|0))break a}e=e+-7|0;f=a+(e*40|0)|0;g=f;n=d+40|0;do{c[d>>2]=c[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(n|0));if(e>>>0<7){d=f;break}}}while(0);n=d;c[n>>2]=h;c[n+4>>2]=i;c[a+(e*40|0)+8>>2]=k;i=o;k=c[i+4>>2]|0;n=a+(e*40|0)+12|0;c[n>>2]=c[i>>2];c[n+4>>2]=k;c[a+(e*40|0)+20>>2]=l;c[a+(e*40|0)+24>>2]=m;n=a+(e*40|0)+28|0;c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];j=j+1|0}while((j|0)!=(b|0))}if(b>>>0>3){j=3;do{d=a+(j*40|0)|0;i=d;h=c[i>>2]|0;i=c[i+4>>2]|0;k=c[a+(j*40|0)+8>>2]|0;n=a+(j*40|0)+12|0;m=c[n+4>>2]|0;l=o;c[l>>2]=c[n>>2];c[l+4>>2]=m;l=c[a+(j*40|0)+20>>2]|0;m=c[a+(j*40|0)+24>>2]|0;n=a+(j*40|0)+28|0;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];c[p+8>>2]=c[n+8>>2];b:do if(j>>>0<3)e=j;else{if(!l){if(!m){e=j;break}e=j;while(1){d=a+(e*40|0)|0;f=d+-120|0;if(c[f+20>>2]|0)break b;if(c[f+24>>2]|0)break b;e=e+-3|0;f=a+(e*40|0)|0;g=f;n=d+40|0;do{c[d>>2]=c[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(n|0));if(e>>>0<3){d=f;break b}}}if((l+-1|0)>>>0<2){e=j;while(1){d=a+(e*40|0)|0;n=d+-120|0;g=c[n+20>>2]|0;if((g|0)!=0&(g+-1|0)>>>0<2?(c[n+8>>2]|0)>=(k|0):0)break b;e=e+-3|0;f=a+(e*40|0)|0;g=f;n=d+40|0;do{c[d>>2]=c[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(n|0));if(e>>>0<3){d=f;break b}}}e=j;while(1){d=a+(e*40|0)|0;g=d+-120|0;f=c[g+20>>2]|0;if(f|0){if((f+-1|0)>>>0<2)break b;if((c[g+8>>2]|0)<=(k|0))break b}e=e+-3|0;f=a+(e*40|0)|0;g=f;n=d+40|0;do{c[d>>2]=c[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(n|0));if(e>>>0<3){d=f;break}}}while(0);n=d;c[n>>2]=h;c[n+4>>2]=i;c[a+(e*40|0)+8>>2]=k;i=o;k=c[i+4>>2]|0;n=a+(e*40|0)+12|0;c[n>>2]=c[i>>2];c[n+4>>2]=k;c[a+(e*40|0)+20>>2]=l;c[a+(e*40|0)+24>>2]=m;n=a+(e*40|0)+28|0;c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];j=j+1|0}while((j|0)!=(b|0))}if(b>>>0<=1){Vb=q;return}j=1;do{d=a+(j*40|0)|0;i=d;h=c[i>>2]|0;i=c[i+4>>2]|0;k=c[a+(j*40|0)+8>>2]|0;n=a+(j*40|0)+12|0;m=c[n+4>>2]|0;l=o;c[l>>2]=c[n>>2];c[l+4>>2]=m;l=c[a+(j*40|0)+20>>2]|0;m=c[a+(j*40|0)+24>>2]|0;n=a+(j*40|0)+28|0;c[p>>2]=c[n>>2];c[p+4>>2]=c[n+4>>2];c[p+8>>2]=c[n+8>>2];c:do if(!l)if(!m)e=j;else{e=j;while(1){d=a+(e*40|0)|0;f=d+-40|0;if(c[f+20>>2]|0)break c;if(c[f+24>>2]|0)break c;e=e+-1|0;f=a+(e*40|0)|0;g=f;n=d+40|0;do{c[d>>2]=c[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(n|0));if(!e){d=f;break}}}else{if((l+-1|0)>>>0<2){e=j;while(1){d=a+(e*40|0)|0;n=d+-40|0;g=c[n+20>>2]|0;if((g|0)!=0&(g+-1|0)>>>0<2?(c[n+8>>2]|0)>=(k|0):0)break c;e=e+-1|0;f=a+(e*40|0)|0;g=f;n=d+40|0;do{c[d>>2]=c[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(n|0));if(!e){d=f;break c}}}e=j;while(1){d=a+(e*40|0)|0;g=d+-40|0;f=c[g+20>>2]|0;if(f|0){if((f+-1|0)>>>0<2)break c;if((c[g+8>>2]|0)<=(k|0))break c}e=e+-1|0;f=a+(e*40|0)|0;g=f;n=d+40|0;do{c[d>>2]=c[g>>2];d=d+4|0;g=g+4|0}while((d|0)<(n|0));if(!e){d=f;break}}}while(0);n=d;c[n>>2]=h;c[n+4>>2]=i;c[a+(e*40|0)+8>>2]=k;i=o;k=c[i+4>>2]|0;n=a+(e*40|0)+12|0;c[n>>2]=c[i>>2];c[n+4>>2]=k;c[a+(e*40|0)+20>>2]=l;c[a+(e*40|0)+24>>2]=m;n=a+(e*40|0)+28|0;c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];j=j+1|0}while((j|0)!=(b|0));Vb=q;return}function Bf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;if(c[a+56>>2]|0){g=1;return g|0}e=c[a>>2]|0;f=c[a+28>>2]|0;g=0;b=2147483647;d=0;do{if(c[e+(g*40|0)+24>>2]|0){i=c[e+(g*40|0)+16>>2]|0;h=(i|0)<(b|0);b=h?i:b;d=h?e+(g*40|0)|0:d}g=g+1|0}while(g>>>0<=f>>>0);if(!d){i=1;return i|0}g=c[a+12>>2]|0;i=a+16|0;h=c[i>>2]|0;c[g+(h<<4)>>2]=c[d>>2];c[g+(h<<4)+12>>2]=c[d+36>>2];c[g+(h<<4)+4>>2]=c[d+28>>2];c[g+(h<<4)+8>>2]=c[d+32>>2];c[i>>2]=h+1;c[d+24>>2]=0;if(c[d+20>>2]|0){i=0;return i|0}i=a+44|0;c[i>>2]=(c[i>>2]|0)+-1;i=0;return i|0}function Cf(a){a=a|0;var b=0;b=(c[a>>2]|0)+((c[a+28>>2]|0)*40|0)|0;c[a+8>>2]=b;return c[b>>2]|0}function Df(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;if((b|0)!=0?(e=a+28|0,(c[e>>2]|0)!=-1):0){d=0;do{lf(c[b+(d*40|0)+4>>2]|0);b=c[a>>2]|0;c[b+(d*40|0)+4>>2]=0;d=d+1|0}while(d>>>0<((c[e>>2]|0)+1|0)>>>0)}lf(b);c[a>>2]=0;e=a+4|0;lf(c[e>>2]|0);c[e>>2]=0;a=a+12|0;lf(c[a>>2]|0);c[a>>2]=0;return}function Ef(a){a=a|0;var b=0,d=0,e=0;b=c[a+40>>2]|0;if(!b)return;e=a+4|0;d=0;do{c[(c[e>>2]|0)+(d<<2)>>2]=(c[a>>2]|0)+(d*40|0);d=d+1|0}while(d>>>0<b>>>0);return}function Ff(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;t=a+16|0;c[t>>2]=0;c[a+20>>2]=0;if(!e){b=0;return b|0}v=a+48|0;e=c[v>>2]|0;f=(e|0)==(b|0);do if(!f?(r=a+32|0,g=c[r>>2]|0,h=((e+1|0)>>>0)%(g>>>0)|0,(h|0)!=(b|0)):0){s=a+28|0;u=c[(c[a>>2]|0)+((c[s>>2]|0)*40|0)>>2]|0;p=a+40|0;n=a+24|0;m=a+44|0;o=a+56|0;q=a+12|0;l=h;while(1){j=c[p>>2]|0;f=(j|0)==0;if(!f){e=c[a>>2]|0;h=0;do{if(((c[e+(h*40|0)+20>>2]|0)+-1|0)>>>0<2){k=c[e+(h*40|0)+12>>2]|0;c[e+(h*40|0)+8>>2]=k-(k>>>0>l>>>0?g:0)}h=h+1|0}while((h|0)!=(j|0))}if(j>>>0>=(c[n>>2]|0)>>>0){if(f){e=1;m=49;break}i=c[a>>2]|0;g=0;e=-1;f=0;while(1){if(((c[i+(g*40|0)+20>>2]|0)+-1|0)>>>0<2){k=c[i+(g*40|0)+8>>2]|0;w=(e|0)==-1|(k|0)<(f|0);h=w?g:e;f=w?k:f}else h=e;g=g+1|0;if((g|0)==(j|0))break;else e=h}if((h|0)<=-1){e=1;m=49;break}c[i+(h*40|0)+20>>2]=0;e=j+-1|0;c[p>>2]=e;if(!(c[i+(h*40|0)+24>>2]|0)){c[m>>2]=(c[m>>2]|0)+-1;j=e}else j=e}e=c[m>>2]|0;k=c[s>>2]|0;if(e>>>0>=k>>>0){if(c[o>>2]|0){m=21;break}i=c[a>>2]|0;do{h=0;f=2147483647;g=0;do{if(c[i+(h*40|0)+24>>2]|0){x=c[i+(h*40|0)+16>>2]|0;w=(x|0)<(f|0);f=w?x:f;g=w?i+(h*40|0)|0:g}h=h+1|0}while(h>>>0<=k>>>0);if((g|0)!=0?(w=c[q>>2]|0,x=c[t>>2]|0,c[w+(x<<4)>>2]=c[g>>2],c[w+(x<<4)+12>>2]=c[g+36>>2],c[w+(x<<4)+4>>2]=c[g+28>>2],c[w+(x<<4)+8>>2]=c[g+32>>2],c[t>>2]=x+1,c[g+24>>2]=0,(c[g+20>>2]|0)==0):0){e=e+-1|0;c[m>>2]=e}}while(e>>>0>=k>>>0)}g=c[a>>2]|0;c[g+(k*40|0)+20>>2]=1;c[g+(k*40|0)+12>>2]=l;c[g+(k*40|0)+8>>2]=l;c[g+(k*40|0)+16>>2]=0;c[g+(k*40|0)+24>>2]=0;c[m>>2]=e+1;c[p>>2]=j+1;Af(g,k+1|0);g=c[r>>2]|0;l=((l+1|0)>>>0)%(g>>>0)|0;if((l|0)==(b|0)){m=33;break}}if((m|0)==21)while(1){}else if((m|0)==33){h=c[t>>2]|0;a:do if(h|0){g=c[q>>2]|0;l=c[a>>2]|0;i=c[s>>2]|0;k=l+(i*40|0)|0;e=c[k>>2]|0;j=e;f=0;while(1){if((c[g+(f<<4)>>2]|0)==(e|0))break;f=f+1|0;if(f>>>0>=h>>>0)break a}if(i|0){f=0;while(1){e=l+(f*40|0)|0;f=f+1|0;if((c[e>>2]|0)==(u|0))break;if(f>>>0>=i>>>0)break a}c[e>>2]=j;c[k>>2]=u}}while(0);if(d|0){m=46;break}e=c[v>>2]|0;break}else if((m|0)==49)return e|0}else m=42;while(0);if((m|0)==42)if(d)if(f){x=1;return x|0}else m=46;if((m|0)==46){c[v>>2]=b;x=0;return x|0}if((e|0)==(b|0)){x=0;return x|0}x=c[a+32>>2]|0;c[v>>2]=((b+-1+x|0)>>>0)%(x>>>0)|0;x=0;return x|0}function Gf(a){a=a|0;var b=0,d=0;d=a+20|0;b=c[d>>2]|0;if(b>>>0>=(c[a+16>>2]|0)>>>0){d=0;return d|0}a=c[a+12>>2]|0;c[d>>2]=b+1;d=a+(b<<4)|0;return d|0}function Hf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=c[a>>2]|0;if(!f)return;c[a+60>>2]=1;if(c[a+56>>2]|0)return;g=c[a+28>>2]|0;i=a+12|0;h=a+16|0;e=a+44|0;a=0;b=2147483647;d=0;while(1){if(c[f+(a*40|0)+24>>2]|0){k=c[f+(a*40|0)+16>>2]|0;j=(k|0)<(b|0);b=j?k:b;d=j?f+(a*40|0)|0:d}a=a+1|0;if(a>>>0>g>>>0){if(!d)break;j=c[i>>2]|0;k=c[h>>2]|0;c[j+(k<<4)>>2]=c[d>>2];c[j+(k<<4)+12>>2]=c[d+36>>2];c[j+(k<<4)+4>>2]=c[d+28>>2];c[j+(k<<4)+8>>2]=c[d+32>>2];c[h>>2]=k+1;c[d+24>>2]=0;if(!(c[d+20>>2]|0)){c[e>>2]=(c[e>>2]|0)+-1;a=0;b=2147483647;d=0}else{a=0;b=2147483647;d=0}}}return}function If(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0;Cb=Vb;Vb=Vb+176|0;Ia=Cb+40|0;mb=Cb;Ca=c[e+4>>2]|0;Ma=e+8|0;Bb=c[Ma>>2]|0;g=w(Bb,Ca)|0;if(!Bb){Vb=Cb;return}zb=Ia+24|0;Ab=Ia+16|0;Bb=Ia+8|0;Na=Ia+100|0;Oa=Ia+68|0;Pa=Ia+36|0;Qa=Ia+4|0;Fa=mb+28|0;Ja=mb+32|0;kb=mb+24|0;nb=Ia+120|0;ob=Ia+112|0;pb=Ia+104|0;qb=Ia+96|0;rb=Ia+88|0;sb=Ia+80|0;tb=Ia+72|0;ub=Ia+64|0;vb=Ia+56|0;wb=Ia+48|0;xb=Ia+40|0;yb=Ia+32|0;Ra=Ia+124|0;Sa=Ia+116|0;Ta=Ia+108|0;Ua=Ia+92|0;Va=Ia+84|0;Wa=Ia+76|0;Xa=Ia+60|0;Ya=Ia+52|0;Za=Ia+44|0;_a=Ia+28|0;$a=Ia+20|0;ab=Ia+12|0;eb=Ca<<4;Da=mb+12|0;Ea=mb+24|0;cb=Ca<<6;jb=0-eb|0;bb=jb<<1;ib=w(Ca,-48)|0;db=Ca<<5;gb=jb<<2;hb=Ca*48|0;Ha=mb+4|0;La=mb+8|0;Ga=mb+16|0;Ka=mb+20|0;lb=mb+12|0;fb=g<<8;ta=g<<6;ua=Ca<<3;ka=Ia+4|0;qa=Ia+36|0;ia=Ia+16|0;ma=Ia+20|0;oa=Ia+52|0;ya=Ia+8|0;la=Ia+68|0;Aa=Ia+24|0;ra=Ia+100|0;ja=Ia+80|0;na=Ia+84|0;pa=Ia+116|0;wa=Ia+24|0;va=Ia+64|0;za=Ia+72|0;Ba=Ia+88|0;xa=Ia+88|0;ga=0;sa=0;ha=f;while(1){g=c[ha+8>>2]|0;do if((g|0)!=1){fa=ha+200|0;n=c[fa>>2]|0;do if(!n)f=1;else{if((g|0)==2?(c[ha+4>>2]|0)!=(c[n+4>>2]|0):0){f=1;break}f=5}while(0);ea=ha+204|0;k=c[ea>>2]|0;do if(k){if((g|0)==2?(c[ha+4>>2]|0)!=(c[k+4>>2]|0):0)break;f=f|2}while(0);da=(f&2|0)==0;do if(da){c[zb>>2]=0;c[Ab>>2]=0;c[Bb>>2]=0;c[Ia>>2]=0;i=0}else{if((c[ha>>2]|0)>>>0<=5?(c[k>>2]|0)>>>0<=5:0){if((b[ha+28>>1]|0)==0?(b[k+48>>1]|0)==0:0)if((c[ha+116>>2]|0)==(c[k+124>>2]|0)?(ca=(b[ha+132>>1]|0)-(b[k+172>>1]|0)|0,(((ca|0)<0?0-ca|0:ca)|0)<=3):0){j=(b[ha+134>>1]|0)-(b[k+174>>1]|0)|0;j=(((j|0)<0?0-j|0:j)|0)>3&1}else j=1;else j=2;c[Ia>>2]=j;if((b[ha+30>>1]|0)==0?(b[k+50>>1]|0)==0:0)if((c[ha+116>>2]|0)==(c[k+124>>2]|0)?(ca=(b[ha+136>>1]|0)-(b[k+176>>1]|0)|0,(((ca|0)<0?0-ca|0:ca)|0)<=3):0){h=(b[ha+138>>1]|0)-(b[k+178>>1]|0)|0;h=(((h|0)<0?0-h|0:h)|0)>3&1}else h=1;else h=2;c[Bb>>2]=h;if((b[ha+36>>1]|0)==0?(b[k+56>>1]|0)==0:0)if((c[ha+120>>2]|0)==(c[k+128>>2]|0)?(ca=(b[ha+148>>1]|0)-(b[k+188>>1]|0)|0,(((ca|0)<0?0-ca|0:ca)|0)<=3):0){i=(b[ha+150>>1]|0)-(b[k+190>>1]|0)|0;i=(((i|0)<0?0-i|0:i)|0)>3&1}else i=1;else i=2;c[Ab>>2]=i;if((b[ha+38>>1]|0)==0?(b[k+58>>1]|0)==0:0)if((c[ha+120>>2]|0)==(c[k+128>>2]|0)?(ca=(b[ha+152>>1]|0)-(b[k+192>>1]|0)|0,(((ca|0)<0?0-ca|0:ca)|0)<=3):0){g=(b[ha+154>>1]|0)-(b[k+194>>1]|0)|0;g=(((g|0)<0?0-g|0:g)|0)>3&1}else g=1;else g=2;c[zb>>2]=g;i=(h|j|i|g|0)!=0&1;break}c[zb>>2]=4;c[Ab>>2]=4;c[Bb>>2]=4;c[Ia>>2]=4;i=1}while(0);ca=(f&4|0)==0;do if(ca){c[Na>>2]=0;c[Oa>>2]=0;c[Pa>>2]=0;c[Qa>>2]=0;g=0;f=c[ha>>2]|0;h=ha;ba=64}else{f=c[ha>>2]|0;if(f>>>0<=5?(c[n>>2]|0)>>>0<=5:0){if((b[ha+28>>1]|0)==0?(b[n+38>>1]|0)==0:0)if((c[ha+116>>2]|0)==(c[n+120>>2]|0)?(ba=(b[ha+132>>1]|0)-(b[n+152>>1]|0)|0,(((ba|0)<0?0-ba|0:ba)|0)<=3):0){k=(b[ha+134>>1]|0)-(b[n+154>>1]|0)|0;k=(((k|0)<0?0-k|0:k)|0)>3&1}else k=1;else k=2;c[Qa>>2]=k;if((b[ha+32>>1]|0)==0?(b[n+42>>1]|0)==0:0)if((c[ha+116>>2]|0)==(c[n+120>>2]|0)?(ba=(b[ha+140>>1]|0)-(b[n+160>>1]|0)|0,(((ba|0)<0?0-ba|0:ba)|0)<=3):0){l=(b[ha+142>>1]|0)-(b[n+162>>1]|0)|0;l=(((l|0)<0?0-l|0:l)|0)>3&1}else l=1;else l=2;c[Pa>>2]=l;if((b[ha+44>>1]|0)==0?(b[n+54>>1]|0)==0:0)if((c[ha+124>>2]|0)==(c[n+128>>2]|0)?(ba=(b[ha+164>>1]|0)-(b[n+184>>1]|0)|0,(((ba|0)<0?0-ba|0:ba)|0)<=3):0){m=(b[ha+166>>1]|0)-(b[n+186>>1]|0)|0;m=(((m|0)<0?0-m|0:m)|0)>3&1}else m=1;else m=2;c[Oa>>2]=m;if((b[ha+48>>1]|0)==0?(b[n+58>>1]|0)==0:0)if((c[ha+124>>2]|0)==(c[n+128>>2]|0)?(ba=(b[ha+172>>1]|0)-(b[n+192>>1]|0)|0,(((ba|0)<0?0-ba|0:ba)|0)<=3):0){j=(b[ha+174>>1]|0)-(b[n+194>>1]|0)|0;j=(((j|0)<0?0-j|0:j)|0)>3&1}else j=1;else j=2;c[Na>>2]=j;g=k;h=ha;i=(k|i|l|m|j|0)!=0&1;ba=66;break}c[Na>>2]=4;c[Oa>>2]=4;c[Pa>>2]=4;c[Qa>>2]=4;g=4;h=ha;i=1;ba=64}while(0);if((ba|0)==64){ba=0;if(f>>>0>5){c[nb>>2]=3;c[ob>>2]=3;c[pb>>2]=3;c[qb>>2]=3;c[rb>>2]=3;c[sb>>2]=3;c[tb>>2]=3;c[ub>>2]=3;c[vb>>2]=3;c[wb>>2]=3;c[xb>>2]=3;c[yb>>2]=3;c[Ra>>2]=3;c[Sa>>2]=3;c[Ta>>2]=3;c[Ua>>2]=3;c[Va>>2]=3;c[Wa>>2]=3;c[Xa>>2]=3;c[Ya>>2]=3;c[Za>>2]=3;c[_a>>2]=3;c[$a>>2]=3;c[ab>>2]=3}else ba=66}if((ba|0)==66){ba=0;a:do if((ff(f)|0)==1){p=ha+28|0;r=b[ha+32>>1]|0;if(r<<16>>16==0?(b[p>>1]|0)==0:0)K=0;else K=2;c[yb>>2]=K;f=b[ha+34>>1]|0;t=f<<16>>16==0;if(t?(b[ha+30>>1]|0)==0:0)I=0;else I=2;c[xb>>2]=I;h=b[ha+40>>1]|0;u=h<<16>>16==0;if(u?(b[ha+36>>1]|0)==0:0)H=0;else H=2;c[wb>>2]=H;j=b[ha+42>>1]|0;v=j<<16>>16==0;if(v?(b[ha+38>>1]|0)==0:0)G=0;else G=2;c[vb>>2]=G;s=b[ha+44>>1]|0;F=(s|r)<<16>>16==0?0:2;c[ub>>2]=F;q=b[ha+46>>1]|0;x=f<<16>>16!=0;E=(q|f)<<16>>16==0?0:2;c[tb>>2]=E;n=b[ha+52>>1]|0;o=h<<16>>16!=0;D=(n|h)<<16>>16==0?0:2;c[sb>>2]=D;m=b[ha+54>>1]|0;C=(m|j)<<16>>16==0?0:2;c[rb>>2]=C;f=b[ha+48>>1]|0;B=(f|s)<<16>>16==0?0:2;c[qb>>2]=B;h=b[ha+50>>1]|0;A=(h|q)<<16>>16==0?0:2;c[pb>>2]=A;j=b[ha+56>>1]|0;z=(j|n)<<16>>16==0?0:2;c[ob>>2]=z;k=b[ha+58>>1]|0;y=(k|m)<<16>>16==0?0:2;c[nb>>2]=y;l=b[ha+30>>1]|0;if(l<<16>>16==0?(b[p>>1]|0)==0:0)p=0;else p=2;c[ab>>2]=p;_=b[ha+36>>1]|0;$=(_|l)<<16>>16==0?0:2;c[$a>>2]=$;_=(b[ha+38>>1]|_)<<16>>16==0?0:2;c[_a>>2]=_;J=r<<16>>16!=0|t^1?2:0;c[Za>>2]=J;aa=x|u^1?2:0;c[Ya>>2]=aa;u=o|v^1?2:0;c[Xa>>2]=u;s=(q|s)<<16>>16==0?0:2;c[Wa>>2]=s;q=(n|q)<<16>>16==0?0:2;c[Va>>2]=q;o=(m|n)<<16>>16==0?0:2;c[Ua>>2]=o;n=(h|f)<<16>>16==0?0:2;c[Ta>>2]=n;m=(j|h)<<16>>16==0?0:2;c[Sa>>2]=m;h=(k|j)<<16>>16==0?0:2;c[Ra>>2]=h;k=m;m=q;q=aa;aa=p;t=E;r=F;p=G;l=H;j=I;f=K}else switch(c[h>>2]|0){case 2:{q=ha+28|0;r=b[ha+32>>1]|0;if(r<<16>>16==0?(b[q>>1]|0)==0:0)f=0;else f=2;c[yb>>2]=f;s=b[ha+34>>1]|0;A=s<<16>>16==0;if(A?(b[ha+30>>1]|0)==0:0)N=0;else N=2;c[xb>>2]=N;t=b[ha+40>>1]|0;B=t<<16>>16==0;if(B?(b[ha+36>>1]|0)==0:0)l=0;else l=2;c[wb>>2]=l;n=b[ha+42>>1]|0;C=n<<16>>16==0;if(C?(b[ha+38>>1]|0)==0:0)p=0;else p=2;c[vb>>2]=p;u=b[ha+48>>1]|0;if(u<<16>>16==0?(b[ha+44>>1]|0)==0:0)L=0;else L=2;c[qb>>2]=L;v=b[ha+50>>1]|0;D=v<<16>>16==0;if(D?(b[ha+46>>1]|0)==0:0)I=0;else I=2;c[pb>>2]=I;x=b[ha+56>>1]|0;if(x<<16>>16==0?(b[ha+52>>1]|0)==0:0)H=0;else H=2;c[ob>>2]=H;y=b[ha+58>>1]|0;if(y<<16>>16==0?(b[ha+54>>1]|0)==0:0)G=0;else G=2;c[nb>>2]=G;z=b[ha+44>>1]|0;h=b[ha+166>>1]|0;j=b[ha+142>>1]|0;do if(!((z|r)<<16>>16)){aa=(b[ha+164>>1]|0)-(b[ha+140>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){M=1;break}aa=h-j|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){M=1;break}M=(c[ha+124>>2]|0)!=(c[ha+116>>2]|0)&1}else M=2;while(0);c[ub>>2]=M;o=b[ha+46>>1]|0;h=b[ha+170>>1]|0;j=b[ha+146>>1]|0;do if(!((o|s)<<16>>16)){aa=(b[ha+168>>1]|0)-(b[ha+144>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){K=1;break}aa=h-j|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){K=1;break}K=(c[ha+124>>2]|0)!=(c[ha+116>>2]|0)&1}else K=2;while(0);c[tb>>2]=K;m=b[ha+52>>1]|0;h=b[ha+182>>1]|0;j=b[ha+158>>1]|0;do if(!((m|t)<<16>>16)){aa=(b[ha+180>>1]|0)-(b[ha+156>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){F=1;break}aa=h-j|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){F=1;break}F=(c[ha+128>>2]|0)!=(c[ha+120>>2]|0)&1}else F=2;while(0);c[sb>>2]=F;k=b[ha+54>>1]|0;h=b[ha+186>>1]|0;j=b[ha+162>>1]|0;do if(!((k|n)<<16>>16)){aa=(b[ha+184>>1]|0)-(b[ha+160>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){E=1;break}aa=h-j|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){E=1;break}E=(c[ha+128>>2]|0)!=(c[ha+120>>2]|0)&1}else E=2;while(0);c[rb>>2]=E;h=b[ha+30>>1]|0;if(h<<16>>16==0?(b[q>>1]|0)==0:0)j=0;else j=2;c[ab>>2]=j;_=b[ha+36>>1]|0;$=(_|h)<<16>>16==0?0:2;c[$a>>2]=$;_=(b[ha+38>>1]|_)<<16>>16==0?0:2;c[_a>>2]=_;J=r<<16>>16!=0|A^1?2:0;c[Za>>2]=J;q=s<<16>>16!=0|B^1?2:0;c[Ya>>2]=q;aa=t<<16>>16!=0|C^1?2:0;c[Xa>>2]=aa;s=(o|z)<<16>>16==0?0:2;c[Wa>>2]=s;z=(m|o)<<16>>16==0?0:2;c[Va>>2]=z;o=(k|m)<<16>>16==0?0:2;c[Ua>>2]=o;n=u<<16>>16!=0|D^1?2:0;c[Ta>>2]=n;k=(x|v)<<16>>16==0?0:2;c[Sa>>2]=k;h=(y|x)<<16>>16==0?0:2;c[Ra>>2]=h;m=z;u=aa;aa=j;y=G;z=H;A=I;B=L;C=E;D=F;t=K;r=M;j=N;break a}case 3:{h=ha+28|0;j=b[ha+32>>1]|0;if(j<<16>>16==0?(b[h>>1]|0)==0:0)O=0;else O=2;c[yb>>2]=O;u=b[ha+34>>1]|0;k=u<<16>>16==0;if(k?(b[ha+30>>1]|0)==0:0)N=0;else N=2;c[xb>>2]=N;v=b[ha+40>>1]|0;if(v<<16>>16==0?(b[ha+36>>1]|0)==0:0)l=0;else l=2;c[wb>>2]=l;f=b[ha+42>>1]|0;m=f<<16>>16==0;if(m?(b[ha+38>>1]|0)==0:0)p=0;else p=2;c[vb>>2]=p;n=b[ha+44>>1]|0;M=(n|j)<<16>>16==0?0:2;c[ub>>2]=M;x=b[ha+46>>1]|0;t=(x|u)<<16>>16==0?0:2;c[tb>>2]=t;E=b[ha+52>>1]|0;D=(E|v)<<16>>16==0?0:2;c[sb>>2]=D;o=b[ha+54>>1]|0;C=(o|f)<<16>>16==0?0:2;c[rb>>2]=C;q=b[ha+48>>1]|0;B=(q|n)<<16>>16==0?0:2;c[qb>>2]=B;G=b[ha+50>>1]|0;A=(G|x)<<16>>16==0?0:2;c[pb>>2]=A;H=b[ha+56>>1]|0;z=(H|E)<<16>>16==0?0:2;c[ob>>2]=z;r=b[ha+58>>1]|0;y=(r|o)<<16>>16==0?0:2;c[nb>>2]=y;s=b[ha+30>>1]|0;if(s<<16>>16==0?(b[h>>1]|0)==0:0)L=0;else L=2;c[ab>>2]=L;f=ha+36|0;if(!(b[ha+38>>1]|0)){f=b[f>>1]|0;if(!(f<<16>>16)){K=0;f=0}else ba=146}else{f=b[f>>1]|0;ba=146}if((ba|0)==146){ba=0;K=2}c[_a>>2]=K;J=j<<16>>16!=0|k^1?2:0;c[Za>>2]=J;I=v<<16>>16!=0|m^1?2:0;c[Xa>>2]=I;F=(x|n)<<16>>16==0?0:2;c[Wa>>2]=F;o=(o|E)<<16>>16==0?0:2;c[Ua>>2]=o;n=(G|q)<<16>>16==0?0:2;c[Ta>>2]=n;h=(r|H)<<16>>16==0?0:2;c[Ra>>2]=h;j=b[ha+150>>1]|0;k=b[ha+138>>1]|0;do if(!((f|s)<<16>>16)){aa=(b[ha+148>>1]|0)-(b[ha+136>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){r=1;break}aa=j-k|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){r=1;break}r=(c[ha+120>>2]|0)!=(c[ha+116>>2]|0)&1}else r=2;while(0);c[$a>>2]=r;f=b[ha+158>>1]|0;j=b[ha+146>>1]|0;do if(!((v|u)<<16>>16)){aa=(b[ha+156>>1]|0)-(b[ha+144>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){q=1;break}aa=f-j|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){q=1;break}q=(c[ha+120>>2]|0)!=(c[ha+116>>2]|0)&1}else q=2;while(0);c[Ya>>2]=q;f=b[ha+182>>1]|0;j=b[ha+170>>1]|0;do if(!((E|x)<<16>>16)){aa=(b[ha+180>>1]|0)-(b[ha+168>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){m=1;break}aa=f-j|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){m=1;break}m=(c[ha+128>>2]|0)!=(c[ha+124>>2]|0)&1}else m=2;while(0);c[Va>>2]=m;f=b[ha+190>>1]|0;j=b[ha+178>>1]|0;do if(!((H|G)<<16>>16)){aa=(b[ha+188>>1]|0)-(b[ha+176>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){f=1;break}aa=f-j|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){f=1;break}f=(c[ha+128>>2]|0)!=(c[ha+124>>2]|0)&1}else f=2;while(0);c[Sa>>2]=f;k=f;s=F;u=I;_=K;$=r;aa=L;r=M;j=N;f=O;break a}default:{v=b[ha+32>>1]|0;h=b[ha+28>>1]|0;x=b[ha+142>>1]|0;k=b[ha+134>>1]|0;if(!((h|v)<<16>>16)){f=(b[ha+140>>1]|0)-(b[ha+132>>1]|0)|0;aa=x-k|0;f=((((aa|0)<0?0-aa|0:aa)|0)>3|(((f|0)<0?0-f|0:f)|0)>3)&1}else f=2;c[yb>>2]=f;E=b[ha+34>>1]|0;m=b[ha+30>>1]|0;F=b[ha+146>>1]|0;n=b[ha+138>>1]|0;if(!((m|E)<<16>>16)){j=(b[ha+144>>1]|0)-(b[ha+136>>1]|0)|0;aa=F-n|0;j=((((aa|0)<0?0-aa|0:aa)|0)>3|(((j|0)<0?0-j|0:j)|0)>3)&1}else j=2;c[xb>>2]=j;G=b[ha+40>>1]|0;o=b[ha+36>>1]|0;I=b[ha+158>>1]|0;s=b[ha+150>>1]|0;if(!((o|G)<<16>>16)){l=(b[ha+156>>1]|0)-(b[ha+148>>1]|0)|0;aa=I-s|0;l=((((aa|0)<0?0-aa|0:aa)|0)>3|(((l|0)<0?0-l|0:l)|0)>3)&1}else l=2;c[wb>>2]=l;H=b[ha+42>>1]|0;q=b[ha+38>>1]|0;J=b[ha+162>>1]|0;u=b[ha+154>>1]|0;if(!((q|H)<<16>>16)){p=(b[ha+160>>1]|0)-(b[ha+152>>1]|0)|0;aa=J-u|0;p=((((aa|0)<0?0-aa|0:aa)|0)>3|(((p|0)<0?0-p|0:p)|0)>3)&1}else p=2;c[vb>>2]=p;K=b[ha+44>>1]|0;L=b[ha+166>>1]|0;if(!((K|v)<<16>>16)){aa=(b[ha+164>>1]|0)-(b[ha+140>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)<=3?(aa=L-x|0,(((aa|0)<0?0-aa|0:aa)|0)<=3):0)r=(c[ha+124>>2]|0)!=(c[ha+116>>2]|0)&1;else r=1}else r=2;c[ub>>2]=r;M=b[ha+46>>1]|0;N=b[ha+170>>1]|0;do if(!((M|E)<<16>>16)){aa=(b[ha+168>>1]|0)-(b[ha+144>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3)t=1;else{aa=N-F|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){t=1;break}t=(c[ha+124>>2]|0)!=(c[ha+116>>2]|0)&1}}else t=2;while(0);c[tb>>2]=t;O=b[ha+52>>1]|0;R=b[ha+182>>1]|0;do if(!((O|G)<<16>>16)){aa=(b[ha+180>>1]|0)-(b[ha+156>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){D=1;break}aa=R-I|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){D=1;break}D=(c[ha+128>>2]|0)!=(c[ha+120>>2]|0)&1}else D=2;while(0);c[sb>>2]=D;P=b[ha+54>>1]|0;Q=b[ha+186>>1]|0;do if(!((P|H)<<16>>16)){aa=(b[ha+184>>1]|0)-(b[ha+160>>1]|0)|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){C=1;break}aa=Q-J|0;if((((aa|0)<0?0-aa|0:aa)|0)>3){C=1;break}C=(c[ha+128>>2]|0)!=(c[ha+120>>2]|0)&1}else C=2;while(0);c[rb>>2]=C;S=b[ha+48>>1]|0;T=b[ha+174>>1]|0;if(!((S|K)<<16>>16)){B=(b[ha+172>>1]|0)-(b[ha+164>>1]|0)|0;aa=T-L|0;B=((((aa|0)<0?0-aa|0:aa)|0)>3|(((B|0)<0?0-B|0:B)|0)>3)&1}else B=2;c[qb>>2]=B;U=b[ha+50>>1]|0;V=b[ha+178>>1]|0;if(!((U|M)<<16>>16)){A=(b[ha+176>>1]|0)-(b[ha+168>>1]|0)|0;aa=V-N|0;A=((((aa|0)<0?0-aa|0:aa)|0)>3|(((A|0)<0?0-A|0:A)|0)>3)&1}else A=2;c[pb>>2]=A;W=b[ha+56>>1]|0;Z=b[ha+190>>1]|0;if(!((W|O)<<16>>16)){z=(b[ha+188>>1]|0)-(b[ha+180>>1]|0)|0;aa=Z-R|0;z=((((aa|0)<0?0-aa|0:aa)|0)>3|(((z|0)<0?0-z|0:z)|0)>3)&1}else z=2;c[ob>>2]=z;X=b[ha+58>>1]|0;Y=b[ha+194>>1]|0;if(!((X|P)<<16>>16)){y=(b[ha+192>>1]|0)-(b[ha+184>>1]|0)|0;aa=Y-Q|0;y=((((aa|0)<0?0-aa|0:aa)|0)>3|(((y|0)<0?0-y|0:y)|0)>3)&1}else y=2;c[nb>>2]=y;if(!((m|h)<<16>>16)){aa=(b[ha+136>>1]|0)-(b[ha+132>>1]|0)|0;$=n-k|0;aa=(((($|0)<0?0-$|0:$)|0)>3|(((aa|0)<0?0-aa|0:aa)|0)>3)&1}else aa=2;c[ab>>2]=aa;do if(!((o|m)<<16>>16)){$=(b[ha+148>>1]|0)-(b[ha+136>>1]|0)|0;if(((($|0)<0?0-$|0:$)|0)>3){$=1;break}$=s-n|0;if(((($|0)<0?0-$|0:$)|0)>3){$=1;break}$=(c[ha+120>>2]|0)!=(c[ha+116>>2]|0)&1}else $=2;while(0);c[$a>>2]=$;if(!((q|o)<<16>>16)){_=(b[ha+152>>1]|0)-(b[ha+148>>1]|0)|0;u=u-s|0;_=((((u|0)<0?0-u|0:u)|0)>3|(((_|0)<0?0-_|0:_)|0)>3)&1}else _=2;c[_a>>2]=_;if(!((E|v)<<16>>16)){v=(b[ha+144>>1]|0)-(b[ha+140>>1]|0)|0;x=F-x|0;v=((((x|0)<0?0-x|0:x)|0)>3|(((v|0)<0?0-v|0:v)|0)>3)&1}else v=2;c[Za>>2]=v;do if(!((G|E)<<16>>16)){E=(b[ha+156>>1]|0)-(b[ha+144>>1]|0)|0;if((((E|0)<0?0-E|0:E)|0)>3){q=1;break}F=I-F|0;if((((F|0)<0?0-F|0:F)|0)>3){q=1;break}q=(c[ha+120>>2]|0)!=(c[ha+116>>2]|0)&1}else q=2;while(0);c[Ya>>2]=q;if(!((H|G)<<16>>16)){u=(b[ha+160>>1]|0)-(b[ha+156>>1]|0)|0;J=J-I|0;u=((((J|0)<0?0-J|0:J)|0)>3|(((u|0)<0?0-u|0:u)|0)>3)&1}else u=2;c[Xa>>2]=u;if(!((M|K)<<16>>16)){s=(b[ha+168>>1]|0)-(b[ha+164>>1]|0)|0;L=N-L|0;s=((((L|0)<0?0-L|0:L)|0)>3|(((s|0)<0?0-s|0:s)|0)>3)&1}else s=2;c[Wa>>2]=s;do if(!((O|M)<<16>>16)){M=(b[ha+180>>1]|0)-(b[ha+168>>1]|0)|0;if((((M|0)<0?0-M|0:M)|0)>3){m=1;break}N=R-N|0;if((((N|0)<0?0-N|0:N)|0)>3){m=1;break}m=(c[ha+128>>2]|0)!=(c[ha+124>>2]|0)&1}else m=2;while(0);c[Va>>2]=m;if(!((P|O)<<16>>16)){o=(b[ha+184>>1]|0)-(b[ha+180>>1]|0)|0;R=Q-R|0;o=((((R|0)<0?0-R|0:R)|0)>3|(((o|0)<0?0-o|0:o)|0)>3)&1}else o=2;c[Ua>>2]=o;if(!((U|S)<<16>>16)){n=(b[ha+176>>1]|0)-(b[ha+172>>1]|0)|0;T=V-T|0;n=((((T|0)<0?0-T|0:T)|0)>3|(((n|0)<0?0-n|0:n)|0)>3)&1}else n=2;c[Ta>>2]=n;do if(!((W|U)<<16>>16)){U=(b[ha+188>>1]|0)-(b[ha+176>>1]|0)|0;if((((U|0)<0?0-U|0:U)|0)>3){k=1;break}V=Z-V|0;if((((V|0)<0?0-V|0:V)|0)>3){k=1;break}k=(c[ha+128>>2]|0)!=(c[ha+124>>2]|0)&1}else k=2;while(0);c[Sa>>2]=k;if(!((X|W)<<16>>16)){h=(b[ha+192>>1]|0)-(b[ha+188>>1]|0)|0;Z=Y-Z|0;h=((((Z|0)<0?0-Z|0:Z)|0)>3|(((h|0)<0?0-h|0:h)|0)>3)&1}else h=2;c[Ra>>2]=h;J=v;break a}}while(0);if((i|0)==0?(k|h|n|o|m|s|u|q|J|_|$|aa|y|z|A|B|C|D|t|r|p|l|j|f|0)==0:0)break}A=ha+20|0;h=c[A>>2]|0;C=ha+12|0;i=c[C>>2]|0;k=i+h|0;k=(k|0)<51?k:51;k=(k|0)>0?k:0;D=ha+16|0;j=c[D>>2]|0;m=j+h|0;m=(m|0)<51?m:51;l=d[109092+k>>0]|0;c[Fa>>2]=l;m=d[109144+((m|0)>0?m:0)>>0]|0;c[Ja>>2]=m;k=109196+(k*3|0)|0;c[kb>>2]=k;do if(!da){f=c[(c[ea>>2]|0)+20>>2]|0;if((f|0)==(h|0)){c[Ha>>2]=l;c[La>>2]=m;c[mb>>2]=k;break}else{$=(h+1+f|0)>>>1;aa=$+i|0;aa=(aa|0)<51?aa:51;aa=(aa|0)>0?aa:0;$=$+j|0;$=($|0)<51?$:51;c[Ha>>2]=d[109092+aa>>0];c[La>>2]=d[109144+(($|0)>0?$:0)>>0];c[mb>>2]=109196+(aa*3|0);break}}while(0);do if(!ca){f=c[(c[fa>>2]|0)+20>>2]|0;if((f|0)==(h|0)){c[Ga>>2]=l;c[Ka>>2]=m;c[Da>>2]=k;break}else{$=(h+1+f|0)>>>1;aa=$+i|0;aa=(aa|0)<51?aa:51;aa=(aa|0)>0?aa:0;$=$+j|0;$=($|0)<51?$:51;c[Ga>>2]=d[109092+aa>>0];c[Ka>>2]=d[109144+(($|0)>0?$:0)>>0];c[lb>>2]=109196+(aa*3|0);break}}while(0);B=w(sa,Ca)|0;x=3;k=0;y=(c[e>>2]|0)+(B<<8)+(ga<<4)|0;z=Ia;while(1){if(g|0)Jf(y,g,Da,eb);g=c[z+12>>2]|0;if(g|0)Jf(y+4|0,g,Ea,eb);i=z+16|0;g=c[z+20>>2]|0;if(g|0)Jf(y+8|0,g,Ea,eb);j=z+24|0;g=c[z+28>>2]|0;if(g|0)Jf(y+12|0,g,Ea,eb);f=c[z>>2]|0;h=z+8|0;g=c[h>>2]|0;b:do if(((f|0)==(g|0)?(f|0)==(c[i>>2]|0):0)?(f|0)==(c[j>>2]|0):0){if(f|0){if(f>>>0<4){u=d[(c[mb+(k*12|0)>>2]|0)+(f+-1)>>0]|0;t=mb+(k*12|0)+4|0;l=mb+(k*12|0)+8|0;s=0-u|0;r=u+1|0;p=y;q=16;while(1){h=p+bb|0;k=p+jb|0;i=p+eb|0;g=a[i>>0]|0;n=d[k>>0]|0;o=d[p>>0]|0;aa=n-o|0;do if(((aa|0)<0?0-aa|0:aa)>>>0<(c[t>>2]|0)>>>0){m=d[h>>0]|0;aa=m-n|0;f=c[l>>2]|0;if(((aa|0)<0?0-aa|0:aa)>>>0>=f>>>0)break;j=g&255;aa=j-o|0;if(((aa|0)<0?0-aa|0:aa)>>>0>=f>>>0)break;g=d[p+ib>>0]|0;aa=g-n|0;if(((aa|0)<0?0-aa|0:aa)>>>0<f>>>0){f=((n+1+o|0)>>>1)-(m<<1)+g>>1;a[h>>0]=((f|0)<(s|0)?s:(f|0)>(u|0)?u:f)+m;f=c[l>>2]|0;g=r}else g=u;h=d[p+db>>0]|0;aa=h-o|0;if(((aa|0)<0?0-aa|0:aa)>>>0<f>>>0){aa=((n+1+o|0)>>>1)-(j<<1)+h>>1;a[i>>0]=((aa|0)<(s|0)?s:(aa|0)>(u|0)?u:aa)+j;g=g+1|0}$=4-j+(o-n<<2)+m>>3;aa=0-g|0;$=($|0)<(aa|0)?aa:($|0)>(g|0)?g:$;aa=a[107502+(o-$)>>0]|0;a[k>>0]=a[107502+($+n)>>0]|0;a[p>>0]=aa}while(0);q=q+-1|0;if(!q)break b;else p=p+1|0}}v=mb+(k*12|0)+4|0;p=mb+(k*12|0)+8|0;t=y;u=16;while(1){j=t+bb|0;k=t+jb|0;o=t+eb|0;g=a[o>>0]|0;q=d[k>>0]|0;r=d[t>>0]|0;h=q-r|0;h=(h|0)<0?0-h|0:h;f=c[v>>2]|0;c:do if(h>>>0<f>>>0){s=d[j>>0]|0;aa=s-q|0;i=c[p>>2]|0;if(((aa|0)<0?0-aa|0:aa)>>>0>=i>>>0)break;n=g&255;aa=n-r|0;if(((aa|0)<0?0-aa|0:aa)>>>0>=i>>>0)break;g=t+ib|0;m=t+db|0;l=a[m>>0]|0;do if(h>>>0<((f>>>2)+2|0)>>>0){f=d[g>>0]|0;aa=f-q|0;if(((aa|0)<0?0-aa|0:aa)>>>0<i>>>0){aa=r+q+s|0;a[k>>0]=(n+4+(aa<<1)+f|0)>>>3;a[j>>0]=(aa+2+f|0)>>>2;h=f*3|0;i=3;j=aa+4|0;f=d[t+gb>>0]|0}else{h=2;i=2;j=n+q|0;g=k;f=s}a[g>>0]=(j+h+(f<<1)|0)>>>i;g=l&255;aa=g-r|0;if(((aa|0)<0?0-aa|0:aa)>>>0>=(c[p>>2]|0)>>>0)break;aa=n+q+r|0;a[t>>0]=((aa<<1)+4+s+g|0)>>>3;a[o>>0]=(aa+2+g|0)>>>2;a[m>>0]=(aa+4+(g*3|0)+(d[t+hb>>0]<<1)|0)>>>3;break c}else a[k>>0]=(n+q+2+(s<<1)|0)>>>2;while(0);a[t>>0]=(s+r+2+(n<<1)|0)>>>2}while(0);u=u+-1|0;if(!u)break;else t=t+1|0}}}else ba=276;while(0);do if((ba|0)==276){ba=0;if(f){Kf(y,f,mb+(k*12|0)|0,eb);g=c[h>>2]|0}if(g|0)Kf(y+4|0,g,mb+(k*12|0)|0,eb);g=c[i>>2]|0;if(g|0)Kf(y+8|0,g,mb+(k*12|0)|0,eb);g=c[j>>2]|0;if(!g)break;Kf(y+12|0,g,mb+(k*12|0)|0,eb)}while(0);if(!x)break;g=c[z+36>>2]|0;x=x+-1|0;k=2;y=y+cb|0;z=z+32|0}n=c[ha+24>>2]|0;l=c[A>>2]|0;m=l+n|0;m=(m|0)<51?m:51;m=c[1520+(((m|0)>0?m:0)<<2)>>2]|0;k=c[C>>2]|0;h=k+m|0;h=(h|0)<51?h:51;h=(h|0)>0?h:0;f=c[D>>2]|0;j=f+m|0;j=(j|0)<51?j:51;i=d[109092+h>>0]|0;c[Fa>>2]=i;j=d[109144+((j|0)>0?j:0)>>0]|0;c[Ja>>2]=j;h=109196+(h*3|0)|0;c[kb>>2]=h;do if(!da){g=c[(c[ea>>2]|0)+20>>2]|0;if((g|0)==(l|0)){c[Ha>>2]=i;c[La>>2]=j;c[mb>>2]=h;break}else{da=g+n|0;da=(da|0)<51?da:51;da=(m+1+(c[1520+(((da|0)>0?da:0)<<2)>>2]|0)|0)>>>1;ea=da+k|0;ea=(ea|0)<51?ea:51;ea=(ea|0)>0?ea:0;da=da+f|0;da=(da|0)<51?da:51;c[Ha>>2]=d[109092+ea>>0];c[La>>2]=d[109144+((da|0)>0?da:0)>>0];c[mb>>2]=109196+(ea*3|0);break}}while(0);do if(!ca){g=c[(c[fa>>2]|0)+20>>2]|0;if((g|0)==(l|0)){c[Ga>>2]=i;c[Ka>>2]=j;c[Da>>2]=h;break}else{ea=g+n|0;ea=(ea|0)<51?ea:51;ea=(m+1+(c[1520+(((ea|0)>0?ea:0)<<2)>>2]|0)|0)>>>1;fa=ea+k|0;fa=(fa|0)<51?fa:51;fa=(fa|0)>0?fa:0;ea=ea+f|0;ea=(ea|0)<51?ea:51;c[Ga>>2]=d[109092+fa>>0];c[Ka>>2]=d[109144+((ea|0)>0?ea:0)>>0];c[lb>>2]=109196+(fa*3|0);break}}while(0);i=(c[e>>2]|0)+fb+(B<<6)+(ga<<3)|0;k=i+ta|0;g=c[ka>>2]|0;if(g|0){Lf(i,g,Da,ua);Lf(k,c[ka>>2]|0,Da,ua)}g=c[qa>>2]|0;if(g|0){Lf(i+eb|0,g,Da,ua);Lf(k+eb|0,c[qa>>2]|0,Da,ua)}g=c[ma>>2]|0;if(g|0){Lf(i+4|0,g,Ea,ua);Lf(k+4|0,c[ma>>2]|0,Ea,ua)}g=c[oa>>2]|0;if(g|0){Lf(i+eb+4|0,g,Ea,ua);Lf(k+eb+4|0,c[oa>>2]|0,Ea,ua)}f=c[Ia>>2]|0;g=c[ya>>2]|0;h=(f|0)==0;do if(((f|0)==(g|0)?(f|0)==(c[ia>>2]|0):0)&(f|0)==(c[Aa>>2]|0)){if(!h){Mf(i,f,mb,ua);Mf(k,c[Ia>>2]|0,mb,ua)}}else{if(!h){Nf(i,f,mb,ua);Nf(k,c[Ia>>2]|0,mb,ua);g=c[ya>>2]|0}if(g|0){Nf(i+2|0,g,mb,ua);Nf(k+2|0,c[ya>>2]|0,mb,ua)}g=c[ia>>2]|0;if(g|0){Nf(i+4|0,g,mb,ua);Nf(k+4|0,c[ia>>2]|0,mb,ua)}g=c[wa>>2]|0;if(!g)break;Nf(i+6|0,g,mb,ua);Nf(k+6|0,c[wa>>2]|0,mb,ua)}while(0);j=i+db|0;i=k+db|0;g=c[la>>2]|0;if(g|0){Lf(j,g,Da,ua);Lf(i,c[la>>2]|0,Da,ua)}g=c[ra>>2]|0;if(g|0){Lf(j+eb|0,g,Da,ua);Lf(i+eb|0,c[ra>>2]|0,Da,ua)}g=c[na>>2]|0;if(g|0){Lf(j+4|0,g,Ea,ua);Lf(i+4|0,c[na>>2]|0,Ea,ua)}g=c[pa>>2]|0;if(g|0){Lf(j+eb+4|0,g,Ea,ua);Lf(i+eb+4|0,c[pa>>2]|0,Ea,ua)}f=c[va>>2]|0;g=c[za>>2]|0;h=(f|0)==0;if(((f|0)==(g|0)?(f|0)==(c[ja>>2]|0):0)&(f|0)==(c[Ba>>2]|0)){if(h)break;Mf(j,f,Ea,ua);Mf(i,c[va>>2]|0,Ea,ua);break}if(!h){Nf(j,f,Ea,ua);Nf(i,c[va>>2]|0,Ea,ua);g=c[za>>2]|0}if(g|0){Nf(j+2|0,g,Ea,ua);Nf(i+2|0,c[za>>2]|0,Ea,ua)}g=c[ja>>2]|0;if(g|0){Nf(j+4|0,g,Ea,ua);Nf(i+4|0,c[ja>>2]|0,Ea,ua)}g=c[xa>>2]|0;if(!g)break;Nf(j+6|0,g,Ea,ua);Nf(i+6|0,c[xa>>2]|0,Ea,ua)}while(0);f=ga+1|0;g=(f|0)==(Ca|0);sa=sa+(g&1)|0;if(sa>>>0>=(c[Ma>>2]|0)>>>0)break;else{ga=g?0:f;ha=ha+216|0}}Vb=Cb;return}function Jf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;if(e>>>0<4){s=d[(c[f>>2]|0)+(e+-1)>>0]|0;r=f+4|0;o=f+8|0;q=0-s|0;p=s+1|0;n=4;while(1){f=b+-2|0;k=b+-1|0;j=b+1|0;e=a[j>>0]|0;l=d[k>>0]|0;m=d[b>>0]|0;y=l-m|0;if((((y|0)<0?0-y|0:y)>>>0<(c[r>>2]|0)>>>0?(u=d[f>>0]|0,y=u-l|0,t=c[o>>2]|0,((y|0)<0?0-y|0:y)>>>0<t>>>0):0)?(v=e&255,y=v-m|0,((y|0)<0?0-y|0:y)>>>0<t>>>0):0){i=a[b+2>>0]|0;e=d[b+-3>>0]|0;y=e-l|0;if(((y|0)<0?0-y|0:y)>>>0<t>>>0){h=((l+1+m|0)>>>1)-(u<<1)+e>>1;a[f>>0]=((h|0)<(q|0)?q:(h|0)>(s|0)?s:h)+u;h=c[o>>2]|0;e=p}else{h=t;e=s}f=i&255;y=f-m|0;if(((y|0)<0?0-y|0:y)>>>0<h>>>0){y=((l+1+m|0)>>>1)-(v<<1)+f>>1;a[j>>0]=((y|0)<(q|0)?q:(y|0)>(s|0)?s:y)+v;e=e+1|0}x=4-v+(m-l<<2)+u>>3;y=0-e|0;x=(x|0)<(y|0)?y:(x|0)>(e|0)?e:x;y=a[107502+(m-x)>>0]|0;a[k>>0]=a[107502+(x+l)>>0]|0;a[b>>0]=y}n=n+-1|0;if(!n)break;else b=b+g|0}return}t=f+4|0;s=f+8|0;r=4;while(1){i=b+-2|0;l=b+-1|0;o=b+1|0;e=a[o>>0]|0;p=d[l>>0]|0;q=d[b>>0]|0;h=p-q|0;h=(h|0)<0?0-h|0:h;f=c[t>>2]|0;do if((h>>>0<f>>>0?(x=d[i>>0]|0,v=x-p|0,w=c[s>>2]|0,((v|0)<0?0-v|0:v)>>>0<w>>>0):0)?(y=e&255,v=y-q|0,((v|0)<0?0-v|0:v)>>>0<w>>>0):0){k=b+-3|0;n=b+2|0;m=a[n>>0]|0;if(h>>>0<((f>>>2)+2|0)>>>0){e=d[k>>0]|0;v=e-p|0;if(((v|0)<0?0-v|0:v)>>>0<w>>>0){j=q+p+x|0;a[l>>0]=(y+4+(j<<1)+e|0)>>>3;a[i>>0]=(j+2+e|0)>>>2;h=e*3|0;i=3;j=j+4|0;e=k;f=d[b+-4>>0]|0}else{h=2;i=2;j=y+p|0;e=l;f=x}a[e>>0]=(j+h+(f<<1)|0)>>>i;e=m&255;v=e-q|0;if(((v|0)<0?0-v|0:v)>>>0<(c[s>>2]|0)>>>0){v=y+p+q|0;a[b>>0]=((v<<1)+4+x+e|0)>>>3;a[o>>0]=(v+2+e|0)>>>2;a[n>>0]=(v+4+(e*3|0)+((d[b+3>>0]|0)<<1)|0)>>>3;break}}else a[l>>0]=(y+p+2+(x<<1)|0)>>>2;a[b>>0]=(x+q+2+(y<<1)|0)>>>2}while(0);r=r+-1|0;if(!r)break;else b=b+g|0}return}function Kf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0;t=d[(c[f>>2]|0)+(e+-1)>>0]|0;v=0-g|0;u=v<<1;s=f+4|0;n=f+8|0;q=w(g,-3)|0;r=0-t|0;o=t+1|0;p=g<<1;m=4;while(1){f=b+u|0;j=b+v|0;i=b+g|0;e=a[i>>0]|0;k=d[j>>0]|0;l=d[b>>0]|0;h=k-l|0;if((((h|0)<0?0-h|0:h)>>>0<(c[s>>2]|0)>>>0?(y=d[f>>0]|0,h=y-k|0,x=c[n>>2]|0,((h|0)<0?0-h|0:h)>>>0<x>>>0):0)?(z=e&255,h=z-l|0,((h|0)<0?0-h|0:h)>>>0<x>>>0):0){e=d[b+q>>0]|0;h=e-k|0;if(((h|0)<0?0-h|0:h)>>>0<x>>>0){e=((k+1+l|0)>>>1)-(y<<1)+e>>1;a[f>>0]=((e|0)<(r|0)?r:(e|0)>(t|0)?t:e)+y;f=c[n>>2]|0;e=o}else{f=x;e=t}h=d[b+p>>0]|0;A=h-l|0;if(((A|0)<0?0-A|0:A)>>>0<f>>>0){A=((k+1+l|0)>>>1)-(z<<1)+h>>1;a[i>>0]=((A|0)<(r|0)?r:(A|0)>(t|0)?t:A)+z;e=e+1|0}i=4-z+(l-k<<2)+y>>3;A=0-e|0;i=(i|0)<(A|0)?A:(i|0)>(e|0)?e:i;A=a[107502+(l-i)>>0]|0;a[j>>0]=a[107502+(i+k)>>0]|0;a[b>>0]=A}m=m+-1|0;if(!m)break;else b=b+1|0}return}function Lf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=b+-1|0;h=a[b+1>>0]|0;k=d[j>>0]|0;n=d[b>>0]|0;p=k-n|0;o=f+4|0;do if((((p|0)<0?0-p|0:p)>>>0<(c[o>>2]|0)>>>0?(l=d[b+-2>>0]|0,p=l-k|0,i=c[f+8>>2]|0,((p|0)<0?0-p|0:p)>>>0<i>>>0):0)?(m=h&255,p=m-n|0,((p|0)<0?0-p|0:p)>>>0<i>>>0):0)if(e>>>0<4){i=d[(c[f>>2]|0)+(e+-1)>>0]|0;p=i+1|0;m=4-m+(n-k<<2)+l>>3;l=~i;m=(m|0)<(l|0)?l:(m|0)>(p|0)?p:m;p=a[107502+(n-m)>>0]|0;a[j>>0]=a[107502+(m+k)>>0]|0;a[b>>0]=p;break}else{a[j>>0]=(k+2+m+(l<<1)|0)>>>2;a[b>>0]=(n+2+(m<<1)+l|0)>>>2;break}while(0);k=b+g|0;l=k+-1|0;m=d[l>>0]|0;n=d[k>>0]|0;p=m-n|0;if(((p|0)<0?0-p|0:p)>>>0>=(c[o>>2]|0)>>>0)return;i=d[k+-2>>0]|0;p=i-m|0;h=c[f+8>>2]|0;if(((p|0)<0?0-p|0:p)>>>0>=h>>>0)return;j=d[k+1>>0]|0;p=j-n|0;if(((p|0)<0?0-p|0:p)>>>0>=h>>>0)return;if(e>>>0<4){e=d[(c[f>>2]|0)+(e+-1)>>0]|0;p=e+1|0;f=4-j+(n-m<<2)+i>>3;e=~e;f=(f|0)<(e|0)?e:(f|0)>(p|0)?p:f;p=a[107502+(n-f)>>0]|0;a[l>>0]=a[107502+(f+m)>>0]|0;a[k>>0]=p;return}else{a[l>>0]=(m+2+j+(i<<1)|0)>>>2;a[k>>0]=(n+2+(j<<1)+i|0)>>>2;return}}function Mf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;if(e>>>0<4){m=d[(c[f>>2]|0)+(e+-1)>>0]|0;n=m+1|0;q=0-g|0;o=f+4|0;p=q<<1;l=f+8|0;m=~m;j=b;k=8;while(1){f=j+q|0;e=a[j+g>>0]|0;h=d[f>>0]|0;i=d[j>>0]|0;b=h-i|0;if((((b|0)<0?0-b|0:b)>>>0<(c[o>>2]|0)>>>0?(s=d[j+p>>0]|0,b=s-h|0,r=c[l>>2]|0,((b|0)<0?0-b|0:b)>>>0<r>>>0):0)?(t=e&255,b=t-i|0,((b|0)<0?0-b|0:b)>>>0<r>>>0):0){I=4-t+(i-h<<2)+s>>3;I=(I|0)<(m|0)?m:(I|0)>(n|0)?n:I;b=a[107502+(i-I)>>0]|0;a[f>>0]=a[107502+(I+h)>>0]|0;a[j>>0]=b}k=k+-1|0;if(!k)break;else j=j+1|0}return}s=0-g|0;r=f+4|0;I=s<<1;t=f+8|0;h=b+s|0;f=a[b+g>>0]|0;i=d[h>>0]|0;j=d[b>>0]|0;J=i-j|0;e=c[r>>2]|0;if((((J|0)<0?0-J|0:J)>>>0<e>>>0?(l=d[b+I>>0]|0,J=l-i|0,k=c[t>>2]|0,((J|0)<0?0-J|0:J)>>>0<k>>>0):0)?(m=f&255,J=m-j|0,((J|0)<0?0-J|0:J)>>>0<k>>>0):0){a[h>>0]=(i+2+m+(l<<1)|0)>>>2;a[b>>0]=(j+2+(m<<1)+l|0)>>>2;e=c[r>>2]|0}k=b+1|0;h=k+s|0;f=a[k+g>>0]|0;i=d[h>>0]|0;j=d[k>>0]|0;J=i-j|0;if((((J|0)<0?0-J|0:J)>>>0<e>>>0?(o=d[k+I>>0]|0,J=o-i|0,n=c[t>>2]|0,((J|0)<0?0-J|0:J)>>>0<n>>>0):0)?(p=f&255,J=p-j|0,((J|0)<0?0-J|0:J)>>>0<n>>>0):0){a[h>>0]=(i+2+p+(o<<1)|0)>>>2;a[k>>0]=(j+2+(p<<1)+o|0)>>>2;e=c[r>>2]|0}k=b+2|0;h=k+s|0;f=a[k+g>>0]|0;i=d[h>>0]|0;j=d[k>>0]|0;J=i-j|0;if((((J|0)<0?0-J|0:J)>>>0<e>>>0?(u=d[k+I>>0]|0,J=u-i|0,q=c[t>>2]|0,((J|0)<0?0-J|0:J)>>>0<q>>>0):0)?(v=f&255,J=v-j|0,((J|0)<0?0-J|0:J)>>>0<q>>>0):0){a[h>>0]=(i+2+v+(u<<1)|0)>>>2;a[k>>0]=(j+2+(v<<1)+u|0)>>>2;e=c[r>>2]|0}k=b+3|0;h=k+s|0;f=a[k+g>>0]|0;i=d[h>>0]|0;j=d[k>>0]|0;J=i-j|0;if((((J|0)<0?0-J|0:J)>>>0<e>>>0?(x=d[k+I>>0]|0,J=x-i|0,w=c[t>>2]|0,((J|0)<0?0-J|0:J)>>>0<w>>>0):0)?(y=f&255,J=y-j|0,((J|0)<0?0-J|0:J)>>>0<w>>>0):0){a[h>>0]=(i+2+y+(x<<1)|0)>>>2;a[k>>0]=(j+2+(y<<1)+x|0)>>>2;e=c[r>>2]|0}k=b+4|0;h=k+s|0;f=a[k+g>>0]|0;i=d[h>>0]|0;j=d[k>>0]|0;J=i-j|0;if((((J|0)<0?0-J|0:J)>>>0<e>>>0?(A=d[k+I>>0]|0,J=A-i|0,z=c[t>>2]|0,((J|0)<0?0-J|0:J)>>>0<z>>>0):0)?(B=f&255,J=B-j|0,((J|0)<0?0-J|0:J)>>>0<z>>>0):0){a[h>>0]=(i+2+B+(A<<1)|0)>>>2;a[k>>0]=(j+2+(B<<1)+A|0)>>>2;e=c[r>>2]|0}k=b+5|0;h=k+s|0;f=a[k+g>>0]|0;i=d[h>>0]|0;j=d[k>>0]|0;J=i-j|0;if((((J|0)<0?0-J|0:J)>>>0<e>>>0?(D=d[k+I>>0]|0,J=D-i|0,C=c[t>>2]|0,((J|0)<0?0-J|0:J)>>>0<C>>>0):0)?(E=f&255,J=E-j|0,((J|0)<0?0-J|0:J)>>>0<C>>>0):0){a[h>>0]=(i+2+E+(D<<1)|0)>>>2;a[k>>0]=(j+2+(E<<1)+D|0)>>>2;e=c[r>>2]|0}k=b+6|0;h=k+s|0;f=a[k+g>>0]|0;i=d[h>>0]|0;j=d[k>>0]|0;J=i-j|0;if((((J|0)<0?0-J|0:J)>>>0<e>>>0?(G=d[k+I>>0]|0,J=G-i|0,F=c[t>>2]|0,((J|0)<0?0-J|0:J)>>>0<F>>>0):0)?(H=f&255,J=H-j|0,((J|0)<0?0-J|0:J)>>>0<F>>>0):0){a[h>>0]=(i+2+H+(G<<1)|0)>>>2;a[k>>0]=(j+2+(H<<1)+G|0)>>>2;e=c[r>>2]|0}l=b+7|0;i=l+s|0;j=d[i>>0]|0;k=d[l>>0]|0;J=j-k|0;if(((J|0)<0?0-J|0:J)>>>0>=e>>>0)return;h=d[l+I>>0]|0;J=h-j|0;f=c[t>>2]|0;if(((J|0)<0?0-J|0:J)>>>0>=f>>>0)return;e=d[l+g>>0]|0;J=e-k|0;if(((J|0)<0?0-J|0:J)>>>0>=f>>>0)return;a[i>>0]=(j+2+e+(h<<1)|0)>>>2;a[l>>0]=(k+2+(e<<1)+h|0)>>>2;return}function Nf(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=d[(c[f>>2]|0)+(e+-1)>>0]|0;s=r+1|0;o=0-g|0;k=f+4|0;q=o<<1;p=f+8|0;r=~r;h=b+o|0;f=a[b+g>>0]|0;i=d[h>>0]|0;j=d[b>>0]|0;t=i-j|0;e=c[k>>2]|0;if((((t|0)<0?0-t|0:t)>>>0<e>>>0?(m=d[b+q>>0]|0,t=m-i|0,l=c[p>>2]|0,((t|0)<0?0-t|0:t)>>>0<l>>>0):0)?(n=f&255,t=n-j|0,((t|0)<0?0-t|0:t)>>>0<l>>>0):0){t=4-n+(j-i<<2)+m>>3;t=(t|0)<(r|0)?r:(t|0)>(s|0)?s:t;e=a[107502+(j-t)>>0]|0;a[h>>0]=a[107502+(t+i)>>0]|0;a[b>>0]=e;e=c[k>>2]|0}l=b+1|0;i=l+o|0;j=d[i>>0]|0;k=d[l>>0]|0;t=j-k|0;if(((t|0)<0?0-t|0:t)>>>0>=e>>>0)return;h=d[l+q>>0]|0;t=h-j|0;f=c[p>>2]|0;if(((t|0)<0?0-t|0:t)>>>0>=f>>>0)return;e=d[l+g>>0]|0;t=e-k|0;if(((t|0)<0?0-t|0:t)>>>0>=f>>>0)return;g=4-e+(k-j<<2)+h>>3;g=(g|0)<(r|0)?r:(g|0)>(s|0)?s:g;t=a[107502+(k-g)>>0]|0;a[i>>0]=a[107502+(g+j)>>0]|0;a[l>>0]=t;return}function Of(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=c[b+4>>2]|0;q=c[b+8>>2]|0;switch(d|0){case 0:case 5:{e=3;break}default:if(!(c[a+3384>>2]|0))f=0;else e=3}if((e|0)==3){e=a+1220|0;g=0;do{f=ve(e,g)|0;g=g+1|0}while(g>>>0<16&(f|0)==0)}k=a+1176|0;j=c[k>>2]|0;if(j|0){h=c[a+1212>>2]|0;e=0;g=0;i=0;while(1){if(c[h+(g*216|0)+196>>2]|0){h=e;e=g;n=i;break}g=g+1|0;e=e+1|0;o=(e|0)==(p|0);i=i+(o&1)|0;e=o?0:e;if(g>>>0>=j>>>0){h=e;e=g;n=i;break}}if((e|0)!=(j|0)){o=a+1212|0;j=(c[o>>2]|0)+((w(n,p)|0)*216|0)|0;if(h|0){g=a+1204|0;e=h;do{e=e+-1|0;m=j+(e*216|0)|0;Pf(m,b,n,e,d,f);c[m+196>>2]=1;c[g>>2]=(c[g>>2]|0)+1}while((e|0)!=0)}e=h+1|0;if(e>>>0<p>>>0){i=a+1204|0;do{g=j+(e*216|0)|0;h=g+196|0;if(!(c[h>>2]|0)){Pf(g,b,n,e,d,f);c[h>>2]=1;c[i>>2]=(c[i>>2]|0)+1}e=e+1|0}while((e|0)!=(p|0))}a:do if((n|0)!=0&(p|0)!=0){k=n+-1|0;l=w(k,p)|0;m=a+1204|0;i=0-p|0;g=n+-2|0;if(!k){e=0;while(1){k=(c[o>>2]|0)+(l*216|0)+(e*216|0)|0;Pf(k,b,0,e,d,f);c[k+196>>2]=1;c[m>>2]=(c[m>>2]|0)+1;e=e+1|0;if((e|0)==(p|0))break a}}j=0;do{e=(c[o>>2]|0)+(l*216|0)+(j*216|0)|0;Pf(e,b,k,j,d,f);c[e+196>>2]=1;c[m>>2]=(c[m>>2]|0)+1;h=g;while(1){r=e;e=e+(i*216|0)|0;Pf(e,b,h,j,d,f);c[r+(i*216|0)+196>>2]=1;c[m>>2]=(c[m>>2]|0)+1;if(!h)break;else h=h+-1|0}j=j+1|0}while((j|0)!=(p|0))}while(0);e=n+1|0;if(e>>>0>=q>>>0)return 0;k=a+1204|0;if(!p)return 0;do{g=(c[o>>2]|0)+((w(e,p)|0)*216|0)|0;j=0;do{h=g+(j*216|0)|0;i=h+196|0;if(!(c[i>>2]|0)){Pf(h,b,e,j,d,f);c[i>>2]=1;c[k>>2]=(c[k>>2]|0)+1}j=j+1|0}while((j|0)!=(p|0));e=e+1|0}while((e|0)!=(q|0));return 0}}switch(d|0){case 2:case 7:{if((f|0)==0|(c[a+3384>>2]|0)==0)e=13;else e=14;break}default:if(!f)e=13;else e=14}if((e|0)==13)Zd(c[b>>2]|0,128,w(p*384|0,q)|0);else if((e|0)==14)se(c[b>>2]|0,f,w(p*384|0,q)|0);g=c[k>>2]|0;c[a+1204>>2]=g;if(!g)return 0;e=c[a+1212>>2]|0;f=0;do{c[e+(f*216|0)+8>>2]=1;f=f+1|0}while((f|0)!=(g|0));return 0}function Pf(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;ha=Vb;Vb=Vb+480|0;fa=ha+96|0;ga=ha+32|0;k=ha+24|0;l=ha;da=c[e+4>>2]|0;u=c[e+8>>2]|0;Wd(e,(w(da,f)|0)+g|0);j=g<<4;m=(c[e>>2]|0)+(w(f<<8,da)|0)+j|0;c[b+20>>2]=40;c[b+8>>2]=0;c[b>>2]=6;c[b+12>>2]=0;c[b+16>>2]=0;c[b+24>>2]=0;a:do switch(h|0){case 2:case 7:{Zd(fa,0,384);break}default:{c[k>>2]=0;c[l+4>>2]=da;c[l+8>>2]=u;c[l>>2]=i;if(!i){Zd(fa,0,384);break a}we(fa,k,l,j,f<<4,0,0,16,16);re(e,fa);Vb=ha;return}}while(0);Zd(ga,0,64);if((f|0)!=0?(c[b+((0-da|0)*216|0)+196>>2]|0)!=0:0){ca=m+(0-(da<<4))|0;x=ca+1|0;y=x+1|0;v=y+1|0;s=v+1|0;v=(d[x>>0]|0)+(d[ca>>0]|0)+(d[y>>0]|0)+(d[v>>0]|0)|0;y=s+1|0;ca=y+1|0;x=ca+1|0;z=x+1|0;x=(d[y>>0]|0)+(d[s>>0]|0)+(d[ca>>0]|0)+(d[x>>0]|0)|0;ca=z+1|0;s=ca+1|0;y=s+1|0;ea=y+1|0;y=(d[ca>>0]|0)+(d[z>>0]|0)+(d[s>>0]|0)+(d[y>>0]|0)|0;s=ea+1|0;z=s+1|0;z=(d[s>>0]|0)+(d[ea>>0]|0)+(d[z>>0]|0)+(d[z+1>>0]|0)|0;ea=x+v|0;c[ga>>2]=y+ea+(c[ga>>2]|0)+z;s=ga+4|0;c[s>>2]=ea-y-z+(c[s>>2]|0);s=1}else{v=0;x=0;y=0;z=0;s=0}if((u+-1|0)!=(f|0)?(c[b+(da*216|0)+196>>2]|0)!=0:0){ea=m+(da<<8)|0;B=ea+1|0;C=B+1|0;A=C+1|0;t=A+1|0;A=(d[B>>0]|0)+(d[ea>>0]|0)+(d[C>>0]|0)+(d[A>>0]|0)|0;C=t+1|0;ea=C+1|0;B=ea+1|0;D=B+1|0;B=(d[C>>0]|0)+(d[t>>0]|0)+(d[ea>>0]|0)+(d[B>>0]|0)|0;ea=D+1|0;t=ea+1|0;C=t+1|0;q=C+1|0;C=(d[ea>>0]|0)+(d[D>>0]|0)+(d[t>>0]|0)+(d[C>>0]|0)|0;t=q+1|0;D=t+1|0;D=(d[t>>0]|0)+(d[q>>0]|0)+(d[D>>0]|0)+(d[D+1>>0]|0)|0;q=B+A|0;c[ga>>2]=C+q+(c[ga>>2]|0)+D;t=ga+4|0;c[t>>2]=q-C-D+(c[t>>2]|0);t=1;q=s+1|0}else{t=0;A=0;B=0;C=0;D=0;q=s}if((g|0)!=0?(c[b+-20>>2]|0)!=0:0){ca=m+-1|0;ea=da<<4;k=da<<5;$=da*48|0;E=(d[ca+ea>>0]|0)+(d[ca>>0]|0)+(d[ca+k>>0]|0)+(d[ca+$>>0]|0)|0;r=da<<6;ca=ca+r|0;Z=(d[ca+ea>>0]|0)+(d[ca>>0]|0)+(d[ca+k>>0]|0)+(d[ca+$>>0]|0)|0;ca=ca+r|0;_=(d[ca+ea>>0]|0)+(d[ca>>0]|0)+(d[ca+k>>0]|0)+(d[ca+$>>0]|0)|0;r=ca+r|0;$=(d[r+ea>>0]|0)+(d[r>>0]|0)+(d[r+k>>0]|0)+(d[r+$>>0]|0)|0;r=Z+E|0;c[ga>>2]=_+r+(c[ga>>2]|0)+$;k=ga+16|0;c[k>>2]=r-_-$+(c[k>>2]|0);k=q+1|0;r=1}else{k=q;E=0;Z=0;_=0;$=0;r=0}do if((da+-1|0)!=(g|0)?(c[b+412>>2]|0)!=0:0){m=m+16|0;i=da<<4;l=da<<5;p=da*48|0;b=(d[m+i>>0]|0)+(d[m>>0]|0)+(d[m+l>>0]|0)+(d[m+p>>0]|0)|0;h=da<<6;m=m+h|0;n=(d[m+i>>0]|0)+(d[m>>0]|0)+(d[m+l>>0]|0)+(d[m+p>>0]|0)|0;m=m+h|0;o=(d[m+i>>0]|0)+(d[m>>0]|0)+(d[m+l>>0]|0)+(d[m+p>>0]|0)|0;h=m+h|0;p=(d[h+i>>0]|0)+(d[h>>0]|0)+(d[h+l>>0]|0)+(d[h+p>>0]|0)|0;k=k+1|0;h=r+1|0;l=n+b|0;c[ga>>2]=o+l+(c[ga>>2]|0)+p;i=ga+16|0;l=l-o-p+(c[i>>2]|0)|0;c[i>>2]=l;m=(q|0)==0;j=(r|0)!=0;if(!(m&j)){if(!m){l=1;m=ga+4|0;i=h;p=21;break}}else c[ga+4>>2]=_+$+Z+E-b-n-o-p>>5;o=l;b=1;m=(s|0)!=0;l=(t|0)!=0;p=27}else p=17;while(0);if((p|0)==17){j=(r|0)!=0;if(!q){b=0;n=k;h=r;p=23}else{l=0;m=ga+4|0;i=r;p=21}}if((p|0)==21){c[m>>2]=c[m>>2]>>q+3;b=l;n=k;h=i;p=23}do if((p|0)==23){k=(h|0)==0;m=(s|0)!=0;l=(t|0)!=0;if(l&(m&k)){c[ga+16>>2]=y+z+x+v-D-C-B-A>>5;k=n;ea=j;m=1;ca=1;break}i=ga+16|0;if(k){k=n;ea=j;ca=l}else{o=c[i>>2]|0;k=n;p=27}}while(0);if((p|0)==27){c[i>>2]=o>>h+3;ea=j;ca=l}switch(k|0){case 1:{i=c[ga>>2]>>4;break}case 2:{i=c[ga>>2]>>5;break}case 3:{i=(c[ga>>2]|0)*21>>10;break}default:i=c[ga>>2]>>6}c[ga>>2]=i;aa=ga+4|0;j=c[aa>>2]|0;ba=ga+16|0;k=c[ba>>2]|0;if(!(k|j)){c[ga+60>>2]=i;c[ga+56>>2]=i;c[ga+52>>2]=i;c[ga+48>>2]=i;c[ga+44>>2]=i;c[ga+40>>2]=i;c[ga+36>>2]=i;c[ga+32>>2]=i;c[ga+28>>2]=i;c[ga+24>>2]=i;c[ga+20>>2]=i;c[ba>>2]=i;c[ga+12>>2]=i;c[ga+8>>2]=i;c[aa>>2]=i}else{U=i+j|0;W=j>>1;V=i+W|0;W=i-W|0;Y=i-j|0;c[ga>>2]=U+k;X=k>>1;c[ba>>2]=U+X;c[ga+32>>2]=U-X;c[ga+48>>2]=U-k;c[aa>>2]=V+k;c[ga+20>>2]=V+X;c[ga+36>>2]=V-X;c[ga+52>>2]=V-k;c[ga+8>>2]=W+k;c[ga+24>>2]=W+X;c[ga+40>>2]=W-X;c[ga+56>>2]=W-k;c[ga+12>>2]=Y+k;c[ga+28>>2]=Y+X;c[ga+44>>2]=Y-X;c[ga+60>>2]=Y-k}j=0;i=fa;l=ga;while(1){k=c[l+((j>>>2&3)<<2)>>2]|0;k=(k|0)<255?k:255;a[i>>0]=(k|0)>0?k:0;k=j+1|0;if((k|0)==256)break;else{j=k;i=i+1|0;l=(k&63|0)==0?l+16|0:l}}u=w(u,da)|0;V=da<<3;U=0-V|0;W=da<<6;X=da<<4;O=ga+60|0;P=ga+56|0;Q=ga+52|0;R=ga+48|0;S=ga+44|0;T=ga+40|0;H=ga+36|0;I=ga+32|0;J=ga+28|0;K=ga+24|0;L=ga+20|0;M=ga+12|0;N=ga+8|0;G=fa+256|0;Y=u<<6;t=v;s=x;r=y;j=z;q=A;p=B;n=C;l=D;F=0;o=E;h=Z;i=_;k=$;E=(c[e>>2]|0)+(u<<8)+(w(f<<6,da)|0)+(g<<3)|0;while(1){Zd(ga,0,64);if(m){t=E+U|0;j=t+1|0;s=j+1|0;t=(d[j>>0]|0)+(d[t>>0]|0)|0;j=s+1|0;r=j+1|0;s=(d[j>>0]|0)+(d[s>>0]|0)|0;j=r+1|0;z=j+1|0;r=(d[j>>0]|0)+(d[r>>0]|0)|0;z=(d[z+1>>0]|0)+(d[z>>0]|0)|0;j=s+t|0;c[ga>>2]=r+j+(c[ga>>2]|0)+z;c[aa>>2]=j-r-z+(c[aa>>2]|0);j=1}else{z=j;j=0}if(ca){A=E+W|0;q=A+1|0;B=q+1|0;A=(d[q>>0]|0)+(d[A>>0]|0)|0;q=B+1|0;C=q+1|0;B=(d[q>>0]|0)+(d[B>>0]|0)|0;q=C+1|0;D=q+1|0;C=(d[q>>0]|0)+(d[C>>0]|0)|0;D=(d[D+1>>0]|0)+(d[D>>0]|0)|0;q=B+A|0;c[ga>>2]=C+q+(c[ga>>2]|0)+D;c[aa>>2]=q-C-D+(c[aa>>2]|0);q=j+1|0}else{A=q;B=p;C=n;D=l;q=j}if(ea){y=E+-1|0;u=(d[y+V>>0]|0)+(d[y>>0]|0)|0;y=y+X|0;v=(d[y+V>>0]|0)+(d[y>>0]|0)|0;y=y+X|0;x=(d[y+V>>0]|0)+(d[y>>0]|0)|0;y=y+X|0;y=(d[y+V>>0]|0)+(d[y>>0]|0)|0;j=v+u|0;c[ga>>2]=x+j+(c[ga>>2]|0)+y;c[ba>>2]=j-x-y+(c[ba>>2]|0);j=q+1|0;i=1}else{j=q;u=o;v=h;x=i;y=k;i=0}do if(b){p=E+8|0;h=(d[p+V>>0]|0)+(d[p>>0]|0)|0;p=p+X|0;n=(d[p+V>>0]|0)+(d[p>>0]|0)|0;p=p+X|0;o=(d[p+V>>0]|0)+(d[p>>0]|0)|0;p=p+X|0;p=(d[p+V>>0]|0)+(d[p>>0]|0)|0;j=j+1|0;i=i+1|0;k=n+h|0;c[ga>>2]=o+k+(c[ga>>2]|0)+p;k=k-o-p+(c[ba>>2]|0)|0;c[ba>>2]=k;l=(q|0)==0;if(!(ea&l))if(l){p=55;break}else{p=50;break}else{c[aa>>2]=x+y+v+u-h-n-o-p>>4;p=55;break}}else if(!q)p=51;else p=50;while(0);if((p|0)==50){c[aa>>2]=c[aa>>2]>>q+2;p=51}do if((p|0)==51){p=0;k=(i|0)==0;if(ca&(m&k)){k=r+z+s+t-D-C-B-A>>4;p=56;break}if(!k){k=c[ba>>2]|0;p=55}}while(0);if((p|0)==55){k=k>>i+2;p=56}if((p|0)==56)c[ba>>2]=k;switch(j|0){case 1:{i=c[ga>>2]>>3;break}case 2:{i=c[ga>>2]>>4;break}case 3:{i=(c[ga>>2]|0)*21>>9;break}default:i=c[ga>>2]>>5}c[ga>>2]=i;j=c[aa>>2]|0;k=c[ba>>2]|0;if(!(k|j)){c[O>>2]=i;c[P>>2]=i;c[Q>>2]=i;c[R>>2]=i;c[S>>2]=i;c[T>>2]=i;c[H>>2]=i;c[I>>2]=i;c[J>>2]=i;c[K>>2]=i;c[L>>2]=i;c[ba>>2]=i;c[M>>2]=i;c[N>>2]=i;c[aa>>2]=i}else{_=i+j|0;da=j>>1;$=i+da|0;da=i-da|0;f=i-j|0;c[ga>>2]=_+k;g=k>>1;c[ba>>2]=_+g;c[I>>2]=_-g;c[R>>2]=_-k;c[aa>>2]=$+k;c[L>>2]=$+g;c[H>>2]=$-g;c[Q>>2]=$-k;c[N>>2]=da+k;c[K>>2]=da+g;c[T>>2]=da-g;c[P>>2]=da-k;c[M>>2]=f+k;c[J>>2]=f+g;c[S>>2]=f-g;c[O>>2]=f-k}j=0;i=G+(F<<6)|0;l=ga;while(1){k=c[l+((j>>>1&3)<<2)>>2]|0;k=(k|0)<255?k:255;a[i>>0]=(k|0)>0?k:0;k=j+1|0;if((k|0)==64)break;else{j=k;i=i+1|0;l=(k&15|0)==0?l+16|0:l}}F=F+1|0;if((F|0)==2)break;else{j=z;q=A;p=B;n=C;l=D;o=u;h=v;i=x;k=y;E=E+Y|0}}re(e,fa);Vb=ha;return}function Qf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;a:do if(!(c[d+284>>2]|0))n=0;else{g=0;b:while(1){f=c[d+288+(g*20|0)>>2]|0;switch(f|0){case 5:{n=1;break a}case 0:break b;default:{}}g=g+1|0}n=f}while(0);switch(c[b+16>>2]|0){case 0:{if((c[e>>2]|0)!=5){g=c[a>>2]|0;f=c[d+20>>2]|0;if(g>>>0>f>>>0?(h=c[b+20>>2]|0,(g-f|0)>>>0>=h>>>1>>>0):0){k=f;j=(c[a+4>>2]|0)+h|0;i=a}else{i=a;l=12}}else{c[a+4>>2]=0;c[a>>2]=0;f=c[d+20>>2]|0;g=0;i=a;l=12}do if((l|0)==12){if(f>>>0>g>>>0?(j=c[b+20>>2]|0,(f-g|0)>>>0>j>>>1>>>0):0){k=f;j=(c[a+4>>2]|0)-j|0;break}k=f;j=c[a+4>>2]|0}while(0);if(!(c[e+4>>2]|0)){d=c[d+24>>2]|0;d=j+k+((d|0)<0?d:0)|0;return d|0}h=a+4|0;c[h>>2]=j;f=c[d+24>>2]|0;g=(f|0)<0;if(!n){c[i>>2]=k;d=j+k+(g?f:0)|0;return d|0}else{c[h>>2]=0;c[i>>2]=g?0-f|0:0;d=0;return d|0}}case 1:{if((c[e>>2]|0)!=5){f=c[a+12>>2]|0;if((c[a+8>>2]|0)>>>0>(c[d+12>>2]|0)>>>0)f=(c[b+12>>2]|0)+f|0}else f=0;l=c[b+36>>2]|0;h=(l|0)==0;if(h)g=0;else g=(c[d+12>>2]|0)+f|0;m=(c[e+4>>2]|0)==0;g=g+(((g|0)!=0&m)<<31>>31)|0;k=(g|0)!=0;g=g+-1|0;if(k){j=(g>>>0)/(l>>>0)|0;e=g-(w(j,l)|0)|0}else{e=0;j=0}if(h)g=0;else{h=c[b+40>>2]|0;g=0;i=0;do{g=(c[h+(i<<2)>>2]|0)+g|0;i=i+1|0}while((i|0)!=(l|0))}if(k){g=w(g,j)|0;h=c[b+40>>2]|0;i=0;do{g=(c[h+(i<<2)>>2]|0)+g|0;i=i+1|0}while(i>>>0<=e>>>0)}else g=0;if(m)i=(c[b+28>>2]|0)+g|0;else i=g;g=(c[d+32>>2]|0)+(c[b+32>>2]|0)|0;h=a+12|0;if(!n){n=((g|0)<0?g:0)+i+(c[d+28>>2]|0)|0;c[h>>2]=f;c[a+8>>2]=c[d+12>>2];d=n;return d|0}else{c[h>>2]=0;c[a+8>>2]=0;d=0;return d|0}}default:{if((c[e>>2]|0)==5){i=0;g=0;f=a+12|0}else{h=c[d+12>>2]|0;f=a+12|0;g=c[f>>2]|0;if((c[a+8>>2]|0)>>>0>h>>>0)g=(c[b+12>>2]|0)+g|0;i=g;g=(h+g<<1)+(((c[e+4>>2]|0)==0)<<31>>31)|0}if(!n){c[f>>2]=i;c[a+8>>2]=c[d+12>>2];d=g;return d|0}else{c[f>>2]=0;c[a+8>>2]=0;d=0;return d|0}}}return 0}function Rf(a,b){a=a|0;b=b|0;var d=0;jf(a);d=ae(2112,1)|0;c[a+3376>>2]=d;if(!d){d=1;return d|0}if(!b){d=0;return d|0}c[a+1216>>2]=1;d=0;return d|0}function Sf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=Vb;Vb=Vb+208|0;k=s+204|0;q=s;j=s+112|0;i=s+40|0;r=s+16|0;h=s+12|0;n=s+8|0;c[h>>2]=0;o=a+3344|0;if((c[o>>2]|0)!=0?(c[a+3348>>2]|0)==(b|0):0){l=a+3356|0;c[r>>2]=c[l>>2];c[r+4>>2]=c[l+4>>2];c[r+8>>2]=c[l+8>>2];c[r+12>>2]=c[l+12>>2];c[r+4>>2]=c[r>>2];c[r+8>>2]=0;c[r+16>>2]=0;c[f>>2]=c[a+3352>>2]}else p=4;do if((p|0)==4)if(!(Xd(b,d,r,f)|0)){l=a+3356|0;c[l>>2]=c[r>>2];c[l+4>>2]=c[r+4>>2];c[l+8>>2]=c[r+8>>2];c[l+12>>2]=c[r+12>>2];c[l+16>>2]=c[r+16>>2];c[a+3352>>2]=c[f>>2];c[a+3348>>2]=b;break}else{a=3;Vb=s;return a|0}while(0);c[o>>2]=0;if(gf(r,q)|0){a=3;Vb=s;return a|0}if(((c[q>>2]|0)+-1|0)>>>0>11){a=0;Vb=s;return a|0}b=vf(r,q,a,h)|0;a:do if((b|0)<65520){switch(b|0){case 0:break;default:break a}do if(!(c[h>>2]|0))p=19;else{if(c[a+1184>>2]|0?(g=a+16|0,c[g>>2]|0):0){if(c[a+3380>>2]|0){a=3;Vb=s;return a|0}d=a+1188|0;if(!(c[d>>2]|0)){r=a+1220|0;b=a+1336|0;c[b>>2]=Cf(r)|0;Ef(r);Of(a,b,0)|0}else{b=a+1336|0;Of(a,b,c[a+1372>>2]|0)|0}c[f>>2]=0;c[o>>2]=1;c[a+1180>>2]=0;h=b;b=a+1360|0;break}c[a+1188>>2]=0;c[a+1180>>2]=0;p=19}while(0);b:do if((p|0)==19)switch(c[q>>2]|0){case 7:if(!(Yd(r,j)|0)){kf(a,j)|0;a=0;Vb=s;return a|0}else{a=j+40|0;lf(c[a>>2]|0);c[a>>2]=0;a=j+84|0;lf(c[a>>2]|0);c[a>>2]=0;a=3;Vb=s;return a|0}case 8:if(!(fe(r,i)|0)){mf(a,i)|0;a=0;Vb=s;return a|0}else{a=i+20|0;lf(c[a>>2]|0);c[a>>2]=0;a=i+24|0;lf(c[a>>2]|0);c[a>>2]=0;a=i+28|0;lf(c[a>>2]|0);c[a>>2]=0;a=i+44|0;lf(c[a>>2]|0);c[a>>2]=0;a=3;Vb=s;return a|0}case 1:case 5:{l=a+1180|0;if(c[l>>2]|0){a=0;Vb=s;return a|0}c[a+1184>>2]=1;if(rf(a)|0){c[a+1204>>2]=0;c[a+1208>>2]=e;he(r,k)|0;d=a+8|0;g=c[d>>2]|0;b=nf(a,c[k>>2]|0,(c[q>>2]|0)==5&1)|0;if(b|0){c[a+4>>2]=256;c[a+12>>2]=0;c[d>>2]=32;c[a+16>>2]=0;c[a+3380>>2]=0;a=(b|0)==65535?5:4;Vb=s;return a|0}if((g|0)!=(c[d>>2]|0)){g=c[a+16>>2]|0;c[n>>2]=1;b=c[a>>2]|0;if(b>>>0<32)b=c[a+20+(b<<2)>>2]|0;else b=0;c[f>>2]=0;c[o>>2]=1;do if(((((c[q>>2]|0)==5?(r=ne(n,r,g,c[a+12>>2]|0,5)|0,(c[n>>2]|r|0)==0):0)?(m=a+1220|0,!((b|0)==0|(c[a+1276>>2]|0)!=0)):0)?(c[b+52>>2]|0)==(c[g+52>>2]|0):0)?(c[b+56>>2]|0)==(c[g+56>>2]|0):0){if((c[b+88>>2]|0)!=(c[g+88>>2]|0)){p=39;break}Hf(m)}else p=39;while(0);if((p|0)==39)c[a+1280>>2]=0;c[a>>2]=c[d>>2];a=2;Vb=s;return a|0}}if(c[a+3380>>2]|0){a=3;Vb=s;return a|0}j=a+1368|0;g=a+2356|0;h=a+16|0;if(ge(r,g,c[h>>2]|0,c[a+12>>2]|0,q)|0){a=3;Vb=s;return a|0}if(!(rf(a)|0))b=a+1220|0;else{b=a+1220|0;if((c[q>>2]|0)!=5?Ff(b,c[a+2368>>2]|0,(c[q+4>>2]|0)!=0&1,c[(c[h>>2]|0)+48>>2]|0)|0:0){a=3;Vb=s;return a|0}c[a+1336>>2]=Cf(b)|0}dl(j|0,g|0,988)|0;d=a+1188|0;c[d>>2]=1;i=a+1360|0;f=q;p=c[f+4>>2]|0;q=i;c[q>>2]=c[f>>2];c[q+4>>2]=p;tf(a,c[a+1432>>2]|0);Ef(b);if(xf(b,a+1436|0,c[a+1380>>2]|0,c[a+1412>>2]|0)|0){a=3;Vb=s;return a|0}b=a+1336|0;if(oe(r,a,b,j)|0){ef(a,c[j>>2]|0);a=3;Vb=s;return a|0}if(!(sf(a)|0)){a=0;Vb=s;return a|0}else{c[l>>2]=1;g=h;h=b;b=i;break b}}default:{a=0;Vb=s;return a|0}}while(0);If(h,c[a+1212>>2]|0);qf(a);g=Qf(a+1284|0,c[g>>2]|0,a+1368|0,b)|0;do if(c[d>>2]|0){b=a+1220|0;if(!(c[a+1364>>2]|0)){yf(b,0,h,c[a+1380>>2]|0,g,(c[a+1360>>2]|0)==5&1,c[a+1208>>2]|0,c[a+1204>>2]|0)|0;break}else{yf(b,a+1644|0,h,c[a+1380>>2]|0,g,(c[a+1360>>2]|0)==5&1,c[a+1208>>2]|0,c[a+1204>>2]|0)|0;break}}while(0);c[a+1184>>2]=0;c[d>>2]=0;a=1;Vb=s;return a|0}else{switch(b|0){case 65520:{b=4;break}default:break a}Vb=s;return b|0}while(0);a=3;Vb=s;return a|0}function Tf(a){a=a|0;var b=0,d=0,e=0;e=0;do{d=a+20+(e<<2)|0;b=c[d>>2]|0;if(b|0){lf(c[b+40>>2]|0);c[(c[d>>2]|0)+40>>2]=0;lf(c[(c[d>>2]|0)+84>>2]|0);c[(c[d>>2]|0)+84>>2]=0;lf(c[d>>2]|0);c[d>>2]=0}e=e+1|0}while((e|0)!=32);e=0;do{d=a+148+(e<<2)|0;b=c[d>>2]|0;if(b|0){lf(c[b+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;lf(c[(c[d>>2]|0)+24>>2]|0);c[(c[d>>2]|0)+24>>2]=0;lf(c[(c[d>>2]|0)+28>>2]|0);c[(c[d>>2]|0)+28>>2]=0;lf(c[(c[d>>2]|0)+44>>2]|0);c[(c[d>>2]|0)+44>>2]=0;lf(c[d>>2]|0);c[d>>2]=0}e=e+1|0}while((e|0)!=256);e=a+3376|0;lf(c[e>>2]|0);c[e>>2]=0;e=a+1212|0;lf(c[e>>2]|0);c[e>>2]=0;e=a+1172|0;lf(c[e>>2]|0);c[e>>2]=0;Df(a+1220|0);return}function Uf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=Gf(a+1220|0)|0;if(!a){b=0;return b|0}c[b>>2]=c[a+4>>2];c[d>>2]=c[a+12>>2];c[e>>2]=c[a+8>>2];b=c[a>>2]|0;return b|0}function Vf(a){a=a|0;a=c[a+16>>2]|0;if(!a){a=0;return a|0}a=c[a+52>>2]|0;return a|0}function Wf(a){a=a|0;a=c[a+16>>2]|0;if(!a){a=0;return a|0}a=c[a+56>>2]|0;return a|0}function Xf(a){a=a|0;Hf(a+1220|0);return}function Yf(a){a=a|0;return (wf(a)|0)==0|0}function Zf(a){a=a|0;var b=0;a=c[a+16>>2]|0;if((((a|0?c[a+80>>2]|0:0)?(b=c[a+84>>2]|0,b|0):0)?c[b+24>>2]|0:0)?c[b+32>>2]|0:0){b=1;return b|0}b=0;return b|0}function _f(a){a=a|0;a=c[a+16>>2]|0;if(!a){a=2;return a|0}if(!(c[a+80>>2]|0)){a=2;return a|0}a=c[a+84>>2]|0;if(!a){a=2;return a|0}if(!(c[a+24>>2]|0)){a=2;return a|0}if(!(c[a+36>>2]|0)){a=2;return a|0}a=c[a+48>>2]|0;return a|0}function $f(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a=c[a+16>>2]|0;if(a|0?c[a+60>>2]|0:0){c[b>>2]=1;b=a+64|0;c[d>>2]=c[b>>2]<<1;c[e>>2]=(c[a+52>>2]<<4)-((c[a+68>>2]|0)+(c[b>>2]|0)<<1);e=a+72|0;c[f>>2]=c[e>>2]<<1;e=(c[a+56>>2]<<4)-((c[a+76>>2]|0)+(c[e>>2]|0)<<1)|0;c[g>>2]=e;return}c[b>>2]=0;c[d>>2]=0;c[e>>2]=0;c[f>>2]=0;e=0;c[g>>2]=e;return}function ag(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a=c[a+16>>2]|0;a:do if((((a|0)!=0?(c[a+80>>2]|0)!=0:0)?(e=c[a+84>>2]|0,(e|0)!=0):0)?(c[e>>2]|0)!=0:0)do switch(c[e+4>>2]|0){case 255:{f=c[e+8>>2]|0;a=c[e+12>>2]|0;e=(f|0)==0|(a|0)==0;a=e?0:a;e=e?0:f;break a}case 1:{a=1;e=1;break a}case 2:{a=11;e=12;break a}case 3:{a=11;e=10;break a}case 4:{a=11;e=16;break a}case 5:{a=33;e=40;break a}case 6:{a=11;e=24;break a}case 7:{a=11;e=20;break a}case 8:{a=11;e=32;break a}case 9:{a=33;e=80;break a}case 10:{a=11;e=18;break a}case 11:{a=11;e=15;break a}case 12:{a=33;e=64;break a}case 13:{a=99;e=160;break a}default:{a=0;e=0;break a}}while(0);else{a=1;e=1}while(0);c[b>>2]=e;c[d>>2]=a;return}function bg(a){a=a|0;a=c[a+16>>2]|0;if(!a){a=0;return a|0}a=c[a>>2]|0;return a|0}function cg(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){e=-1;return e|0}d=yj(3396)|0;if(!d){e=-4;return e|0}e=d+8|0;if(!(Rf(e,b)|0)){c[d>>2]=1;c[d+4>>2]=0;c[a>>2]=d;e=0;return e|0}else{Tf(e);zj(d);e=-4;return e|0}return 0}function dg(a){a=a|0;if(!a)return;Tf(a+8|0);zj(a);return}function eg(a,b){a=a|0;b=b|0;var d=0;if((a|0)==0|(b|0)==0){d=-1;return d|0}d=a+8|0;if(!(c[a+24>>2]|0)){d=-6;return d|0}if(!(c[a+20>>2]|0)){d=-6;return d|0}c[b+4>>2]=(Vf(d)|0)<<4;c[b+8>>2]=(Wf(d)|0)<<4;c[b+12>>2]=Zf(d)|0;c[b+16>>2]=_f(d)|0;$f(d,b+28|0,b+32|0,b+36|0,b+40|0,b+44|0);ag(d,b+20|0,b+24|0);c[b>>2]=bg(d)|0;d=0;return d|0}function fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=Vb;Vb=Vb+16|0;j=l;a:do if((!((b|0)==0|(d|0)==0)?(e=c[b>>2]|0,(e|0)!=0):0)?(g=c[b+4>>2]|0,(g|0)!=0):0)if((a|0)!=0?(f=c[a>>2]|0,(f|0)!=0):0){c[d>>2]=0;c[j>>2]=0;i=a+8|0;c[a+3392>>2]=c[b+12>>2];h=b+8|0;b:do if((f|0)==2){b=e;k=8}else{b=1;c:while(1){m=Sf(i,e,g,c[h>>2]|0,j)|0;f=c[j>>2]|0;e=e+f|0;f=g-f|0;g=(f|0)>0?f:0;c[d>>2]=e;switch(m|0){case 5:{b=-4;break a}case 2:break b;case 1:break c;case 4:{m=(Yf(i)|0|g|0)==0;b=m?-2:b;break}default:{}}if((f|0)<1)break a;if((c[a>>2]|0)==2){b=e;k=8;break b}}b=a+4|0;c[b>>2]=(c[b>>2]|0)+1;b=(f|0)<1?2:3;break a}while(0);if((k|0)==8){c[a>>2]=1;c[d>>2]=b+(c[j>>2]|0)}b=a+1288|0;if((c[b>>2]|0)!=0?(c[a+1244>>2]|0)!=(c[a+1248>>2]|0):0){c[b>>2]=0;c[a>>2]=2;b=3}else b=4}else b=-3;else b=-1;while(0);Vb=l;return b|0}function gg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Vb;Vb=Vb+16|0;f=h+8|0;e=h+4|0;g=h;if((a|0)==0|(b|0)==0){g=-1;Vb=h;return g|0}a=a+8|0;if(d|0)Xf(a);a=Uf(a,g,e,f)|0;if(!a){g=0;Vb=h;return g|0}c[b>>2]=a;c[b+4>>2]=c[g>>2];c[b+8>>2]=c[e>>2];c[b+12>>2]=c[f>>2];g=2;Vb=h;return g|0}function hg(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;if(!b)return;if((e|0)==0|(f|0)==0)f=1;else{c[b+32>>2]=e;c[b+12>>2]=f;k=b+16|0;c[k>>2]=f;j=e;a:do if(f>>>0>3){i=(d[e+2>>0]|0)<<8|(d[e+3>>0]|0)|(d[e+1>>0]|0)<<16|(d[e>>0]|0)<<24;h=f+-4|0;c[k>>2]=h;c[b>>2]=i;i=e+4|0;if(h>>>0>3){g=(d[e+6>>0]|0)<<8|(d[e+7>>0]|0)|(d[e+5>>0]|0)<<16|(d[i>>0]|0)<<24;f=f+-8|0;break}switch(f|0){case 7:{f=a[e+6>>0]|0;l=13;break}case 6:{f=0;l=13;break}case 5:{f=0;g=0;break}default:{f=0;h=0;g=0;l=15;break a}}if((l|0)==13)g=a[e+5>>0]|0;h=g;g=a[i>>0]|0;l=15}else{switch(f|0){case 3:{f=a[e+2>>0]|0;l=6;break}case 2:{f=0;l=6;break}case 1:{f=0;g=0;l=7;break}default:{f=0;g=0;h=0}}if((l|0)==6){g=a[e+1>>0]|0;l=7}if((l|0)==7)h=a[e>>0]|0;c[k>>2]=0;c[b>>2]=(g&255)<<16|(h&255)<<24|(f&255)<<8;f=0;h=0;g=0;l=15}while(0);if((l|0)==15){g=(h&255)<<16|(g&255)<<24|(f&255)<<8;f=0}c[k>>2]=f;c[b+4>>2]=g;c[b+28>>2]=j;c[b+24>>2]=e+8;c[b+8>>2]=32;f=0}a[b+20>>0]=f;return}function ig(a){a=a|0;return}function jg(a){a=a|0;return -32-(c[a+8>>2]|0)+((c[a+24>>2]|0)-(c[a+28>>2]|0)<<3)|0}function kg(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=b+8|0;e=c[n>>2]|0;f=0-e&7;if(!f){n=0;return n|0}m=8-f|0;if(!(a[b+20>>0]|0)){if(e>>>0<=m>>>0){k=b+4|0;c[b>>2]=c[k>>2];l=b+16|0;f=c[l>>2]|0;h=b+24|0;i=c[h>>2]|0;if(f>>>0>3){b=d[i+2>>0]<<8|d[i+3>>0]|d[i+1>>0]<<16|d[i>>0]<<24;f=f+-4|0}else{switch(f|0){case 3:{f=a[i+2>>0]|0;j=8;break}case 2:{f=0;j=8;break}case 1:{f=0;b=0;j=9;break}default:{f=0;b=0;g=0}}if((j|0)==8){b=a[i+1>>0]|0;j=9}if((j|0)==9)g=a[i>>0]|0;b=(b&255)<<16|(g&255)<<24|(f&255)<<8;f=0}c[l>>2]=f;c[k>>2]=b;c[h>>2]=i+4;e=e+32|0}c[n>>2]=e-m}n=m&255;return n|0}function lg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=b+4|0;c[b>>2]=c[i>>2];j=b+16|0;f=c[j>>2]|0;k=b+24|0;l=c[k>>2]|0;if(f>>>0>3){m=(d[l+2>>0]|0)<<8|(d[l+3>>0]|0)|(d[l+1>>0]|0)<<16|(d[l>>0]|0)<<24;h=f+-4|0;c[j>>2]=h;c[i>>2]=m;m=l+4|0;c[k>>2]=m;k=32-e|0;m=b+8|0;l=c[m>>2]|0;l=k+l|0;c[m>>2]=l;return}switch(f|0){case 3:{f=a[l+2>>0]|0;m=5;break}case 2:{f=0;m=5;break}case 1:{f=0;g=0;m=6;break}default:{f=0;g=0;h=0}}if((m|0)==5){g=a[l+1>>0]|0;m=6}if((m|0)==6)h=a[l>>0]|0;m=(g&255)<<16|(h&255)<<24|(f&255)<<8;h=0;c[j>>2]=h;c[i>>2]=m;m=l+4|0;c[k>>2]=m;k=32-e|0;m=b+8|0;l=c[m>>2]|0;l=k+l|0;c[m>>2]=l;return}function mg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e>>5;k=e&31;e=(c[b+12>>2]|0)-(m<<2)|0;l=b+16|0;c[l>>2]=e;j=c[b+28>>2]|0;h=j+(m<<2)|0;a:do if(e>>>0>3){f=(d[h+2>>0]|0)<<8|(d[h+3>>0]|0)|(d[h+1>>0]|0)<<16|(d[h>>0]|0)<<24;h=e+-4|0;c[l>>2]=h;c[b>>2]=f;f=j+(m+1<<2)|0;if(h>>>0>3){i=(d[f+2>>0]|0)<<8|(d[f+3>>0]|0)|(d[f+1>>0]|0)<<16|(d[f>>0]|0)<<24;h=e+-8|0;c[l>>2]=h;l=b+4|0;c[l>>2]=i;k=32-k|0;l=b+8|0;c[l>>2]=k;l=m+2|0;l=j+(l<<2)|0;m=b+24|0;c[m>>2]=l;m=b+20|0;a[m>>0]=0;return}switch(e|0){case 7:{e=a[f+2>>0]|0;i=11;break}case 6:{e=0;i=11;break}case 5:{e=0;g=0;break}default:{e=0;g=0;f=0;break a}}if((i|0)==11)g=a[f+1>>0]|0;f=a[f>>0]|0}else{switch(e|0){case 3:{e=a[h+2>>0]|0;i=4;break}case 2:{e=0;i=4;break}case 1:{e=0;f=0;i=5;break}default:{e=0;g=0;f=0}}if((i|0)==4){f=a[h+1>>0]|0;i=5}if((i|0)==5){g=f;f=a[h>>0]|0}c[l>>2]=0;c[b>>2]=(g&255)<<16|(f&255)<<24|(e&255)<<8;e=0;g=0;f=0}while(0);i=(g&255)<<16|(f&255)<<24|(e&255)<<8;h=0;c[l>>2]=h;l=b+4|0;c[l>>2]=i;k=32-k|0;l=b+8|0;c[l>>2]=k;l=m+2|0;l=j+(l<<2)|0;m=b+24|0;c[m>>2]=l;m=b+20|0;a[m>>0]=0;return}function ng(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;f=c>>>3;d=c&7;e=og(f+1|0)|0;if(f|0){c=0;do{a[e+c>>0]=pg(b,8)|0;c=c+1|0}while((c|0)!=(f|0))}if(!d)return e|0;a[e+f>>0]=(pg(b,d)|0)<<8-d;return e|0}function og(a){a=a|0;return yj(a)|0}function pg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(!e){o=0;return o|0}o=b+8|0;m=c[o>>2]|0;if(m>>>0<e>>>0){n=e-m|0;n=(c[b>>2]&(1<<m)+-1)<<n|(c[b+4>>2]|0)>>>(32-n|0)}else n=c[b>>2]<<32-m>>>(32-e|0);if(a[b+20>>0]|0){o=n;return o|0}if(m>>>0>e>>>0)b=m-e|0;else{k=b+4|0;c[b>>2]=c[k>>2];l=b+16|0;g=c[l>>2]|0;i=b+24|0;j=c[i>>2]|0;if(g>>>0>3){f=d[j+2>>0]<<8|d[j+3>>0]|d[j+1>>0]<<16|d[j>>0]<<24;b=g+-4|0}else{switch(g|0){case 3:{b=a[j+2>>0]|0;h=12;break}case 2:{b=0;h=12;break}case 1:{b=0;f=0;h=13;break}default:{b=0;f=0;g=0}}if((h|0)==12){f=a[j+1>>0]|0;h=13}if((h|0)==13)g=a[j>>0]|0;f=(f&255)<<16|(g&255)<<24|(b&255)<<8;b=0}c[l>>2]=b;c[k>>2]=f;c[i>>2]=j+4;b=32-e+m|0}c[o>>2]=b;o=n;return o|0}function qg(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;s=b[a>>1]|0;v=c[a+32>>2]|0;t=c[a+36>>2]|0;r=(e[a+4>>1]|0)+1|0;if(r>>>0<2)return;u=s&65535;p=2;q=1;g=0;l=0;f=2;while(1){j=b[a+2+(f<<1)>>1]|0;m=j&65535;n=w(m,q&65535)|0;o=(u>>>0)/((n&65535)>>>0)|0;k=o&65535;switch(j<<16>>16){case 4:{f=g&65535;i=o+f|0;g=t+(f<<3)|0;h=t+((i&65535)<<3)|0;i=t+((i+o&65535)<<3)|0;if(!(l<<16>>16))rg(k,q,d,v,g,h,i);else rg(k,q,v,d,g,h,i);h=1-(l&65535)&65535;break}case 2:{f=g&65535;g=t+(f<<3)|0;if(!(l<<16>>16))sg(k,q,d,v,g);else sg(k,q,v,d,g);h=1-(l&65535)&65535;break}case 3:{f=g&65535;g=t+(f<<3)|0;h=t+((o+f&65535)<<3)|0;if(!(l<<16>>16))tg(k,q,d,v,g,h,-1);else tg(k,q,v,d,g,h,-1);h=1-(l&65535)&65535;break}case 5:{f=g&65535;h=o+f|0;j=h+o|0;g=t+(f<<3)|0;h=t+((h&65535)<<3)|0;i=t+((j&65535)<<3)|0;j=t+((j+o&65535)<<3)|0;if(!(l<<16>>16))ug(k,q,d,v,g,h,i,j,-1);else ug(k,q,v,d,g,h,i,j,-1);h=1-(l&65535)&65535;break}default:{h=l;f=g&65535}}q=n&65535;g=f+(w(m+-1|0,o)|0)&65535;p=p+1<<16>>16;f=p&65535;if(r>>>0<f>>>0)break;else l=h}if(s<<16>>16!=0&h<<16>>16!=0)f=0;else return;do{c[d+(f<<3)>>2]=c[v+(f<<3)>>2];c[d+(f<<3)+4>>2]=c[v+(f<<3)+4>>2];f=f+1|0}while((f|0)!=(u|0));return}function rg(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0.0,v=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,D=0,E=0;r=a&65535;s=b&65535;b=b<<16>>16!=0;if(a<<16>>16==1){if(!b)return;b=s<<1;a=s*3|0;i=0;do{r=i<<2&65532;C=+f[c+(r<<3)>>2];h=r|2;x=+f[c+(h<<3)>>2];B=C+x;x=C-x;C=+f[c+(r<<3)+4>>2];u=+f[c+(h<<3)+4>>2];z=C+u;u=C-u;h=r|1;C=+f[c+(h<<3)>>2];r=r|3;t=+f[c+(r<<3)>>2];A=C+t;t=C-t;C=+f[c+(r<<3)+4>>2];v=+f[c+(h<<3)+4>>2];y=C+v;v=C-v;f[d+(i<<3)>>2]=B+A;h=i+b|0;f[d+(h<<3)>>2]=B-A;f[d+(i<<3)+4>>2]=z+y;f[d+(h<<3)+4>>2]=z-y;h=i+s|0;f[d+(h<<3)>>2]=x-v;r=i+a|0;f[d+(r<<3)>>2]=x+v;f[d+(h<<3)+4>>2]=u-t;f[d+(r<<3)+4>>2]=u+t;i=i+1|0}while((i|0)!=(s|0));return}if(!b)return;q=r<<2;b=a<<16>>16==0;a=r<<1;i=r*3|0;j=w(s,r)|0;k=w(a,s)|0;l=w(i,s)|0;p=0;do{if(!b){m=(w(q,p)|0)&65532;n=(w(p,r)|0)&65535;o=0;do{E=o+m|0;A=+f[c+(E<<3)>>2];D=E+a|0;u=+f[c+(D<<3)>>2];y=A+u;u=A-u;A=+f[c+(E<<3)+4>>2];t=+f[c+(D<<3)+4>>2];v=A+t;t=A-t;D=E+r|0;A=+f[c+(D<<3)>>2];E=E+i|0;z=+f[c+(E<<3)>>2];C=A+z;z=A-z;A=+f[c+(E<<3)+4>>2];B=+f[c+(D<<3)+4>>2];x=A+B;B=A-B;A=u-B;B=u+B;u=t-z;z=t+z;D=o+n|0;f[d+(D<<3)>>2]=y+C;C=y-C;f[d+(D<<3)+4>>2]=v+x;x=v-x;E=D+j|0;v=+f[e+(o<<3)>>2];y=+f[e+(o<<3)+4>>2];f[d+(E<<3)>>2]=A*v+u*y;f[d+(E<<3)+4>>2]=u*v-A*y;E=D+k|0;y=+f[g+(o<<3)>>2];A=+f[g+(o<<3)+4>>2];f[d+(E<<3)>>2]=C*y+x*A;f[d+(E<<3)+4>>2]=x*y-C*A;D=D+l|0;A=+f[h+(o<<3)>>2];C=+f[h+(o<<3)+4>>2];f[d+(D<<3)>>2]=B*A+z*C;f[d+(D<<3)+4>>2]=z*A-B*C;o=o+1|0}while((o|0)!=(r|0))}p=p+1|0}while((p|0)!=(s|0));return}function sg(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.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0;l=a&65535;g=b<<16>>16==0;if(a<<16>>16==1){if(g)return;b=b&65535;g=0;do{k=g<<2&65532;h=c+(k<<3)|0;e=k|1;i=c+(e<<3)|0;j=g<<1&65534;f[d+(j<<3)>>2]=+f[h>>2]+ +f[i>>2];l=j+b|0;f[d+(l<<3)>>2]=+f[h>>2]-+f[i>>2];k=c+(k<<3)+4|0;e=c+(e<<3)+4|0;f[d+(j<<3)+4>>2]=+f[k>>2]+ +f[e>>2];f[d+(l<<3)+4>>2]=+f[k>>2]-+f[e>>2];g=g+1|0}while((g|0)!=(b|0));return}if(g)return;j=b&65535;k=l<<1;i=w(j,l)|0;if(!(a<<16>>16))return;else h=0;do{b=(w(k,h)|0)&65534;g=(w(h,l)|0)&65535;a=0;do{s=a+b|0;u=c+(s<<3)|0;r=s+l|0;t=c+(r<<3)|0;m=a+g|0;f[d+(m<<3)>>2]=+f[u>>2]+ +f[t>>2];o=+f[u>>2]-+f[t>>2];s=c+(s<<3)+4|0;r=c+(r<<3)+4|0;f[d+(m<<3)+4>>2]=+f[s>>2]+ +f[r>>2];q=+f[s>>2]-+f[r>>2];m=m+i|0;p=+f[e+(a<<3)>>2];n=+f[e+(a<<3)+4>>2];f[d+(m<<3)>>2]=o*p+q*n;f[d+(m<<3)+4>>2]=q*p-o*n;a=a+1|0}while((a|0)!=(l|0));h=h+1|0}while((h|0)!=(j|0));return}function tg(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0,t=0,u=0.0,v=0,x=0,y=0,z=0;l=a&65535;i=h<<24>>24==1;m=b&65535;h=b<<16>>16!=0;if(a<<16>>16==1)if(i){if(!h)return;h=m<<1;b=0;do{j=(b*3|0)+1&65535;k=c+(j<<3)|0;l=j+1|0;e=c+(l<<3)|0;r=+f[k>>2]+ +f[e>>2];g=c+(j<<3)+4|0;l=c+(l<<3)+4|0;n=+f[g>>2]+ +f[l>>2];j=j+-1|0;p=+f[c+(j<<3)>>2];q=p-r*.5;j=c+(j<<3)+4|0;o=+f[j>>2]-n*.5;f[d+(b<<3)>>2]=r+p;f[d+(b<<3)+4>>2]=n+ +f[j>>2];n=(+f[k>>2]-+f[e>>2])*.8660253882408142;p=(+f[g>>2]-+f[l>>2])*.8660253882408142;l=b+m|0;f[d+(l<<3)>>2]=q-p;f[d+(l<<3)+4>>2]=o+n;l=b+h|0;f[d+(l<<3)>>2]=q+p;f[d+(l<<3)+4>>2]=o-n;b=b+1|0}while((b|0)!=(m|0));return}else{if(!h)return;h=m<<1;b=0;do{j=(b*3|0)+1&65535;k=c+(j<<3)|0;l=j+1|0;e=c+(l<<3)|0;n=+f[k>>2]+ +f[e>>2];g=c+(j<<3)+4|0;l=c+(l<<3)+4|0;r=+f[g>>2]+ +f[l>>2];j=j+-1|0;p=+f[c+(j<<3)>>2];o=p-n*.5;j=c+(j<<3)+4|0;q=+f[j>>2]-r*.5;f[d+(b<<3)>>2]=n+p;f[d+(b<<3)+4>>2]=r+ +f[j>>2];r=(+f[k>>2]-+f[e>>2])*.8660253882408142;p=(+f[g>>2]-+f[l>>2])*.8660253882408142;l=b+m|0;f[d+(l<<3)>>2]=o+p;f[d+(l<<3)+4>>2]=q-r;l=b+h|0;f[d+(l<<3)>>2]=o-p;f[d+(l<<3)+4>>2]=q+r;b=b+1|0}while((b|0)!=(m|0));return}if(i){if(!h)return;j=w(m,l)|0;k=w(l<<1,m)|0;if(!(a<<16>>16))return;else a=0;do{h=w((a*3|0)+1|0,l)|0;b=w(a,l)|0;i=0;do{v=i+h&65535;y=c+(v<<3)|0;t=v+l|0;x=c+(t<<3)|0;o=+f[y>>2]+ +f[x>>2];z=v-l|0;n=+f[c+(z<<3)>>2];p=n-o*.5;v=c+(v<<3)+4|0;t=c+(t<<3)+4|0;r=+f[v>>2]+ +f[t>>2];z=c+(z<<3)+4|0;u=+f[z>>2]-r*.5;s=i+b&65535;f[d+(s<<3)>>2]=n+o;f[d+(s<<3)+4>>2]=r+ +f[z>>2];r=(+f[y>>2]-+f[x>>2])*.8660253882408142;o=(+f[v>>2]-+f[t>>2])*.8660253882408142;n=p-o;q=u-r;o=p+o;r=u+r;t=s+j|0;u=+f[e+(i<<3)>>2];p=+f[e+(i<<3)+4>>2];f[d+(t<<3)+4>>2]=r*u+p*n;f[d+(t<<3)>>2]=u*n-r*p;s=s+k|0;p=+f[g+(i<<3)>>2];r=+f[g+(i<<3)+4>>2];f[d+(s<<3)+4>>2]=q*p+o*r;f[d+(s<<3)>>2]=o*p-q*r;i=i+1|0}while((i|0)!=(l|0));a=a+1|0}while((a|0)!=(m|0));return}else{if(!h)return;j=w(m,l)|0;k=w(l<<1,m)|0;if(!(a<<16>>16))return;else a=0;do{h=w((a*3|0)+1|0,l)|0;b=w(a,l)|0;i=0;do{x=i+h&65535;t=c+(x<<3)|0;y=x+l|0;v=c+(y<<3)|0;r=+f[t>>2]+ +f[v>>2];s=x-l|0;q=+f[c+(s<<3)>>2];u=q-r*.5;x=c+(x<<3)+4|0;y=c+(y<<3)+4|0;n=+f[x>>2]+ +f[y>>2];s=c+(s<<3)+4|0;o=+f[s>>2]-n*.5;z=i+b&65535;f[d+(z<<3)>>2]=q+r;f[d+(z<<3)+4>>2]=n+ +f[s>>2];n=(+f[t>>2]-+f[v>>2])*.8660253882408142;r=(+f[x>>2]-+f[y>>2])*.8660253882408142;q=u+r;p=o+n;r=u-r;n=o-n;y=z+j|0;o=+f[e+(i<<3)>>2];u=+f[e+(i<<3)+4>>2];f[d+(y<<3)>>2]=n*u+o*q;f[d+(y<<3)+4>>2]=n*o-u*q;z=z+k|0;q=+f[g+(i<<3)>>2];u=+f[g+(i<<3)+4>>2];f[d+(z<<3)>>2]=r*q+p*u;f[d+(z<<3)+4>>2]=p*q-r*u;i=i+1|0}while((i|0)!=(l|0));a=a+1|0}while((a|0)!=(m|0));return}}
function ue(a,f,g,h,i,j){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=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=Vb;Vb=Vb+32|0;R=S;m=c[i+4>>2]|0;Q=(h>>>0)/(m>>>0)|0;P=Q<<4;Q=h-(w(Q,m)|0)<<4;c[R+4>>2]=m;c[R+8>>2]=c[i+8>>2];m=c[a>>2]|0;a:do switch(m|0){case 1:case 0:{y=c[f+144>>2]|0;o=c[a+4>>2]|0;l=c[a+200>>2]|0;if((l|0)!=0?(c[l+4>>2]|0)==(o|0):0)if((c[l>>2]|0)>>>0<6){k=l+152|0;k=e[k>>1]|e[k+2>>1]<<16;p=1;v=k&65535;k=k>>>16&65535;r=c[l+104>>2]|0}else{p=1;v=0;k=0;r=-1}else{p=0;v=0;k=0;r=-1}l=c[a+204>>2]|0;if((l|0)!=0?(c[l+4>>2]|0)==(o|0):0)if((c[l>>2]|0)>>>0<6){t=l+172|0;t=e[t>>1]|e[t+2>>1]<<16;n=1;q=c[l+108>>2]|0;s=t&65535;t=t>>>16&65535}else{n=1;q=-1;s=0;t=0}else{n=0;q=-1;s=0;t=0}if(!m)if((!((p|0)==0|(n|0)==0)?((k&65535)<<16|v&65535|r|0)!=0:0)?((t&65535)<<16|s&65535|q|0)!=0:0)O=14;else{m=0;l=0}else O=14;if((O|0)==14){u=b[f+160>>1]|0;x=b[f+162>>1]|0;l=c[a+208>>2]|0;if((l|0)!=0?(c[l+4>>2]|0)==(o|0):0)if((c[l>>2]|0)>>>0<6){o=l+172|0;n=c[l+108>>2]|0;o=e[o>>1]|e[o+2>>1]<<16;O=23}else{n=-1;o=0;O=23}else O=18;do if((O|0)==18){l=c[a+212>>2]|0;if(l|0?(c[l+4>>2]|0)==(o|0):0){if((c[l>>2]|0)>>>0>=6){n=-1;o=0;O=23;break}o=l+192|0;n=c[l+112>>2]|0;o=e[o>>1]|e[o+2>>1]<<16;O=23;break}if((p|0)==0|(n|0)!=0){n=-1;o=0;O=23}else l=v}while(0);do if((O|0)==23){m=(r|0)==(y|0);l=(q|0)==(y|0);if(((l&1)+(m&1)+((n|0)==(y|0)&1)|0)!=1){M=v<<16>>16;K=s<<16>>16;l=o<<16>>16;J=s<<16>>16>v<<16>>16;L=J?s:v;M=J?M:(K|0)<(M|0)?K:M;K=k<<16>>16;J=t<<16>>16;O=o>>16;I=t<<16>>16>k<<16>>16;N=I?t:k;k=I?K:(J|0)<(K|0)?J:K;l=(L<<16>>16<(o&65535)<<16>>16?L&65535:(M|0)>(l|0)?M:l)&65535;k=(N<<16>>16<(o>>>16&65535)<<16>>16?N&65535:(k|0)>(O|0)?k:O)&65535;break}if(m|l){l=m?v:s;k=m?k:t}else{l=o&65535;k=o>>>16&65535}}while(0);l=(l&65535)+(u&65535)|0;k=(k&65535)+(x&65535)|0;if(((l<<16>>16)+8192|0)>>>0>16383){R=1;Vb=S;return R|0}if(((k<<16>>16)+2048|0)>>>0>4095){R=1;Vb=S;return R|0}else{m=l&65535;l=k&65535}}k=ve(g,y)|0;if(!k){R=1;Vb=S;return R|0}else{b[a+192>>1]=m;b[a+194>>1]=l;g=c[a+192>>2]|0;c[a+188>>2]=g;c[a+184>>2]=g;c[a+180>>2]=g;c[a+176>>2]=g;c[a+172>>2]=g;c[a+168>>2]=g;c[a+164>>2]=g;c[a+160>>2]=g;c[a+156>>2]=g;c[a+152>>2]=g;c[a+148>>2]=g;c[a+144>>2]=g;c[a+140>>2]=g;c[a+136>>2]=g;c[a+132>>2]=g;c[a+100>>2]=y;c[a+104>>2]=y;c[a+108>>2]=y;c[a+112>>2]=y;c[a+116>>2]=k;c[a+120>>2]=k;c[a+124>>2]=k;c[a+128>>2]=k;c[R>>2]=k;we(j,a+132|0,R,Q,P,0,0,16,16);break a}}case 2:{t=b[f+160>>1]|0;u=b[f+162>>1]|0;z=c[f+144>>2]|0;y=a+4|0;o=c[y>>2]|0;k=c[a+204>>2]|0;if((k|0)!=0?(c[k+4>>2]|0)==(o|0):0)if((c[k>>2]|0)>>>0<6){s=k+172|0;s=e[s>>1]|e[s+2>>1]<<16;q=1;k=c[k+108>>2]|0;r=s&65535;s=s>>>16&65535}else{q=1;k=-1;r=0;s=0}else{q=0;k=-1;r=0;s=0}b:do if((k|0)!=(z|0)){m=c[a+200>>2]|0;if((m|0)!=0?(c[m+4>>2]|0)==(o|0):0)if((c[m>>2]|0)>>>0<6){k=m+152|0;k=e[k>>1]|e[k+2>>1]<<16;n=1;l=k&65535;k=k>>>16&65535;p=c[m+104>>2]|0}else{n=1;l=0;k=0;p=-1}else{n=0;l=0;k=0;p=-1}m=c[a+208>>2]|0;if((m|0)!=0?(c[m+4>>2]|0)==(o|0):0)if((c[m>>2]|0)>>>0<6){o=m+172|0;n=c[m+108>>2]|0;o=e[o>>1]|e[o+2>>1]<<16}else{n=-1;o=0}else O=44;do if((O|0)==44){m=c[a+212>>2]|0;if(m|0?(c[m+4>>2]|0)==(o|0):0){if((c[m>>2]|0)>>>0>=6){n=-1;o=0;break}o=m+192|0;n=c[m+112>>2]|0;o=e[o>>1]|e[o+2>>1]<<16;break}if((q|0)!=0|(n|0)==0){n=-1;o=0}else break b}while(0);m=(p|0)==(z|0);if((((n|0)==(z|0)&1)+(m&1)|0)!=1){K=l<<16>>16;J=r<<16>>16;M=o<<16>>16;O=r<<16>>16>l<<16>>16;L=O?r:l;l=O?K:(J|0)<(K|0)?J:K;K=k<<16>>16;J=s<<16>>16;O=o>>16;I=s<<16>>16>k<<16>>16;N=I?s:k;k=I?K:(J|0)<(K|0)?J:K;l=(L<<16>>16<(o&65535)<<16>>16?L&65535:(l|0)>(M|0)?l:M)&65535;k=(N<<16>>16<(o>>>16&65535)<<16>>16?N&65535:(k|0)>(O|0)?k:O)&65535;break}if(!m){l=o&65535;k=o>>>16&65535}}else{l=r;k=s}while(0);m=(l&65535)+(t&65535)|0;k=(k&65535)+(u&65535)|0;if(((m<<16>>16)+8192|0)>>>0>16383){R=1;Vb=S;return R|0}if(((k<<16>>16)+2048|0)>>>0>4095){R=1;Vb=S;return R|0}l=ve(g,z)|0;if(!l){R=1;Vb=S;return R|0}b[a+160>>1]=m;b[a+162>>1]=k;t=c[a+160>>2]|0;c[a+156>>2]=t;c[a+152>>2]=t;c[a+148>>2]=t;c[a+144>>2]=t;c[a+140>>2]=t;c[a+136>>2]=t;c[a+132>>2]=t;c[a+100>>2]=z;c[a+104>>2]=z;c[a+116>>2]=l;c[a+120>>2]=l;u=b[f+164>>1]|0;v=b[f+166>>1]|0;x=c[f+148>>2]|0;l=c[y>>2]|0;m=c[a+200>>2]|0;n=(m|0)==0;if((!n?(c[m+4>>2]|0)==(l|0):0)?(c[m>>2]|0)>>>0<6:0){r=m+184|0;r=e[r>>1]|e[r+2>>1]<<16;q=r&65535;r=r>>>16&65535;k=c[m+112>>2]|0}else{q=0;r=0;k=-1}do if((k|0)!=(x|0)){o=t&65535;s=t>>>16;p=s&65535;if((!n?(c[m+4>>2]|0)==(l|0):0)?(c[m>>2]|0)>>>0<6:0){n=m+160|0;k=c[m+104>>2]|0;n=e[n>>1]|e[n+2>>1]<<16}else{k=-1;n=0}m=(z|0)==(x|0);if((((k|0)==(x|0)&1)+(m&1)|0)==1){l=m?t:n;k=m?s:n>>>16;break}else{M=q<<16>>16;O=t<<16>>16;l=n<<16>>16;K=q<<16>>16<o<<16>>16;L=K?o:q;M=K?M:(O|0)<(M|0)?O:M;O=r<<16>>16;K=t>>16;k=n>>16;J=r<<16>>16<p<<16>>16;N=J?p:r;O=J?O:(K|0)<(O|0)?K:O;l=L<<16>>16<(n&65535)<<16>>16?L&65535:(M|0)>(l|0)?M:l;k=N<<16>>16<(n>>>16&65535)<<16>>16?N&65535:(O|0)>(k|0)?O:k;break}}else{k=r&65535;l=k<<16|q&65535}while(0);m=(l&65535)+(u&65535)|0;l=(k&65535)+(v&65535)|0;if(((m<<16>>16)+8192|0)>>>0>16383){R=1;Vb=S;return R|0}if(((l<<16>>16)+2048|0)>>>0>4095){R=1;Vb=S;return R|0}k=ve(g,x)|0;if(!k){R=1;Vb=S;return R|0}else{g=a+164|0;b[a+192>>1]=m;b[a+194>>1]=l;O=c[a+192>>2]|0;c[a+188>>2]=O;c[a+184>>2]=O;c[a+180>>2]=O;c[a+176>>2]=O;c[a+172>>2]=O;c[a+168>>2]=O;c[g>>2]=O;c[a+108>>2]=x;c[a+112>>2]=x;O=a+124|0;c[O>>2]=k;c[a+128>>2]=k;c[R>>2]=c[a+116>>2];we(j,a+132|0,R,Q,P,0,0,16,8);c[R>>2]=c[O>>2];we(j,g,R,Q,P,0,8,16,8);break a}}case 3:{s=b[f+160>>1]|0;t=b[f+162>>1]|0;y=c[f+144>>2]|0;x=a+4|0;n=c[x>>2]|0;m=c[a+200>>2]|0;if((m|0)!=0?(c[m+4>>2]|0)==(n|0):0)if((c[m>>2]|0)>>>0<6){k=m+152|0;k=e[k>>1]|e[k+2>>1]<<16;o=1;l=k&65535;k=k>>>16&65535;m=c[m+104>>2]|0}else{o=1;l=0;k=0;m=-1}else{o=0;l=0;k=0;m=-1}c:do if((m|0)!=(y|0)){m=c[a+204>>2]|0;if((m|0)!=0?(c[m+4>>2]|0)==(n|0):0)if((c[m>>2]|0)>>>0<6){r=m+172|0;r=e[r>>1]|e[r+2>>1]<<16;p=m+188|0;o=c[m+108>>2]|0;q=r&65535;r=r>>>16&65535;n=c[m+112>>2]|0;p=e[p>>1]|e[p+2>>1]<<16}else{o=-1;q=0;r=0;n=-1;p=0}else O=82;do if((O|0)==82){m=c[a+212>>2]|0;if(m|0?(c[m+4>>2]|0)==(n|0):0){if((c[m>>2]|0)>>>0>=6){o=-1;q=0;r=0;n=-1;p=0;break}p=m+192|0;o=-1;q=0;r=0;n=c[m+112>>2]|0;p=e[p>>1]|e[p+2>>1]<<16;break}if(!o){o=-1;q=0;r=0;n=-1;p=0}else break c}while(0);m=(o|0)==(y|0);if(((m&1)+((n|0)==(y|0)&1)|0)!=1){K=l<<16>>16;J=q<<16>>16;M=p<<16>>16;O=q<<16>>16>l<<16>>16;L=O?q:l;l=O?K:(J|0)<(K|0)?J:K;K=k<<16>>16;J=r<<16>>16;O=p>>16;I=r<<16>>16>k<<16>>16;N=I?r:k;k=I?K:(J|0)<(K|0)?J:K;l=(L<<16>>16<(p&65535)<<16>>16?L&65535:(l|0)>(M|0)?l:M)&65535;k=(N<<16>>16<(p>>>16&65535)<<16>>16?N&65535:(k|0)>(O|0)?k:O)&65535;break}if(m){l=q;k=r}else{l=p&65535;k=p>>>16&65535}}while(0);m=(l&65535)+(s&65535)|0;k=(k&65535)+(t&65535)|0;if(((m<<16>>16)+8192|0)>>>0>16383){R=1;Vb=S;return R|0}if(((k<<16>>16)+2048|0)>>>0>4095){R=1;Vb=S;return R|0}l=ve(g,y)|0;if(!l){R=1;Vb=S;return R|0}b[a+176>>1]=m;b[a+178>>1]=k;s=c[a+176>>2]|0;c[a+172>>2]=s;c[a+168>>2]=s;c[a+164>>2]=s;c[a+144>>2]=s;c[a+140>>2]=s;c[a+136>>2]=s;c[a+132>>2]=s;c[a+100>>2]=y;c[a+108>>2]=y;c[a+116>>2]=l;c[a+124>>2]=l;t=b[f+164>>1]|0;u=b[f+166>>1]|0;v=c[f+148>>2]|0;m=c[x>>2]|0;k=c[a+208>>2]|0;if((k|0)!=0?(c[k+4>>2]|0)==(m|0):0)if((c[k>>2]|0)>>>0<6){r=k+172|0;n=1;k=c[k+108>>2]|0;r=e[r>>1]|e[r+2>>1]<<16}else{n=1;k=-1;r=0}else{k=c[a+204>>2]|0;if((k|0)!=0?(c[k+4>>2]|0)==(m|0):0)if((c[k>>2]|0)>>>0<6){r=k+176|0;n=1;k=c[k+108>>2]|0;r=e[r>>1]|e[r+2>>1]<<16}else{n=1;k=-1;r=0}else{n=0;k=-1;r=0}}do if((k|0)!=(v|0)){p=s&65535;k=s>>>16;q=k&65535;l=c[a+204>>2]|0;if((l|0)!=0?(c[l+4>>2]|0)==(m|0):0)if((c[l>>2]|0)>>>0<6){o=l+188|0;o=e[o>>1]|e[o+2>>1]<<16;l=c[l+112>>2]|0;n=o&65535;o=o>>>16&65535}else{l=-1;n=0;o=0}else if(!n){l=s;break}else{l=-1;n=0;o=0}m=(y|0)==(v|0);l=(l|0)==(v|0);if(((l&1)+(m&1)|0)!=1){M=s<<16>>16;O=n<<16>>16;l=r<<16>>16;K=n<<16>>16>p<<16>>16;L=K?n:p;M=K?M:(M|0)>(O|0)?O:M;O=s>>16;K=o<<16>>16;k=r>>16;J=o<<16>>16>q<<16>>16;N=J?o:q;O=J?O:(O|0)>(K|0)?K:O;l=L<<16>>16<(r&65535)<<16>>16?L&65535:(M|0)>(l|0)?M:l;k=N<<16>>16<(r>>>16&65535)<<16>>16?N&65535:(O|0)>(k|0)?O:k;break}if(!m)if(l){k=o&65535;l=k<<16|n&65535;break}else{l=r;k=r>>>16;break}else l=s}else{l=r;k=r>>>16}while(0);m=(l&65535)+(t&65535)|0;l=(k&65535)+(u&65535)|0;if(((m<<16>>16)+8192|0)>>>0>16383){R=1;Vb=S;return R|0}if(((l<<16>>16)+2048|0)>>>0>4095){R=1;Vb=S;return R|0}k=ve(g,v)|0;if(!k){R=1;Vb=S;return R|0}else{g=a+148|0;b[a+192>>1]=m;b[a+194>>1]=l;O=c[a+192>>2]|0;c[a+188>>2]=O;c[a+184>>2]=O;c[a+180>>2]=O;c[a+160>>2]=O;c[a+156>>2]=O;c[a+152>>2]=O;c[g>>2]=O;c[a+104>>2]=v;c[a+112>>2]=v;O=a+120|0;c[O>>2]=k;c[a+128>>2]=k;c[R>>2]=c[a+116>>2];we(j,a+132|0,R,Q,P,0,0,8,16);c[R>>2]=c[O>>2];we(j,g,R,Q,P,8,0,8,16);break a}}default:{N=a+4|0;C=0;d:while(1){z=f+176+(C<<2)|0;B=xe(c[z>>2]|0)|0;A=f+192+(C<<2)|0;c[a+100+(C<<2)>>2]=c[A>>2];O=ve(g,c[A>>2]|0)|0;c[a+116+(C<<2)>>2]=O;if(!O){k=1;O=165;break}e:do if(B|0){E=C<<2;F=a+132+(E<<2)|0;J=a+132+(E<<2)+2|0;M=E|1;I=a+132+(M<<2)|0;M=a+132+(M<<2)+2|0;K=E|2;G=a+132+(K<<2)|0;K=a+132+(K<<2)+2|0;L=E|3;H=a+132+(L<<2)|0;L=a+132+(L<<2)+2|0;D=0;while(1){v=b[f+208+(C<<4)+(D<<2)>>1]|0;x=b[f+208+(C<<4)+(D<<2)+2>>1]|0;y=ye(c[z>>2]|0)|0;u=c[A>>2]|0;k=ze(a,c[2056+(C<<7)+(y<<5)+(D<<3)>>2]|0)|0;l=d[2056+(C<<7)+(y<<5)+(D<<3)+4>>0]|0;if((k|0)!=0?(c[k+4>>2]|0)==(c[N>>2]|0):0)if((c[k>>2]|0)>>>0<6){O=k+132+(l<<2)|0;O=e[O>>1]|e[O+2>>1]<<16;p=1;s=c[k+100+(l>>>2<<2)>>2]|0;l=O&65535;k=O>>>16&65535}else{p=1;s=-1;l=0;k=0}else{p=0;s=-1;l=0;k=0}m=ze(a,c[2568+(C<<7)+(y<<5)+(D<<3)>>2]|0)|0;n=d[2568+(C<<7)+(y<<5)+(D<<3)+4>>0]|0;if((m|0)!=0?(c[m+4>>2]|0)==(c[N>>2]|0):0)if((c[m>>2]|0)>>>0<6){t=m+132+(n<<2)|0;t=e[t>>1]|e[t+2>>1]<<16;o=1;q=c[m+100+(n>>>2<<2)>>2]|0;r=t&65535;t=t>>>16&65535}else{o=1;q=-1;r=0;t=0}else{o=0;q=-1;r=0;t=0}m=ze(a,c[3080+(C<<7)+(y<<5)+(D<<3)>>2]|0)|0;n=d[3080+(C<<7)+(y<<5)+(D<<3)+4>>0]|0;if((m|0)!=0?(c[m+4>>2]|0)==(c[N>>2]|0):0)if((c[m>>2]|0)>>>0<6){p=m+132+(n<<2)|0;n=c[m+100+(n>>>2<<2)>>2]|0;p=e[p>>1]|e[p+2>>1]<<16;O=140}else{n=-1;p=0;O=140}else O=135;do if((O|0)==135){O=0;m=ze(a,c[3592+(C<<7)+(y<<5)+(D<<3)>>2]|0)|0;n=d[3592+(C<<7)+(y<<5)+(D<<3)+4>>0]|0;if(m|0?(c[m+4>>2]|0)==(c[N>>2]|0):0){if((c[m>>2]|0)>>>0>=6){n=-1;p=0;O=140;break}p=m+132+(n<<2)|0;n=c[m+100+(n>>>2<<2)>>2]|0;p=e[p>>1]|e[p+2>>1]<<16;O=140;break}if((p|0)==0|(o|0)!=0){n=-1;p=0;O=140}}while(0);do if((O|0)==140){O=0;o=(s|0)==(u|0);m=(q|0)==(u|0);if(((m&1)+(o&1)+((n|0)==(u|0)&1)|0)!=1){q=l<<16>>16;o=r<<16>>16;s=p<<16>>16;u=r<<16>>16>l<<16>>16;r=u?r:l;l=u?q:(o|0)<(q|0)?o:q;q=k<<16>>16;o=t<<16>>16;u=p>>16;n=t<<16>>16>k<<16>>16;t=n?t:k;k=n?q:(o|0)<(q|0)?o:q;l=(r<<16>>16<(p&65535)<<16>>16?r&65535:(l|0)>(s|0)?l:s)&65535;k=(t<<16>>16<(p>>>16&65535)<<16>>16?t&65535:(k|0)>(u|0)?k:u)&65535;break}if(o|m){l=o?l:r;k=o?k:t}else{l=p&65535;k=p>>>16&65535}}while(0);v=(l&65535)+(v&65535)|0;m=v&65535;k=(k&65535)+(x&65535)|0;l=k&65535;if(((v<<16>>16)+8192|0)>>>0>16383){k=1;O=165;break d}if(((k<<16>>16)+2048|0)>>>0>4095){k=1;O=165;break d}switch(y|0){case 0:{b[F>>1]=m;b[J>>1]=l;b[I>>1]=m;b[M>>1]=l;b[G>>1]=m;b[K>>1]=l;b[H>>1]=m;k=L;O=151;break}case 1:{k=(D<<1)+E|0;b[a+132+(k<<2)>>1]=m;b[a+132+(k<<2)+2>>1]=l;k=k|1;b[a+132+(k<<2)>>1]=m;k=a+132+(k<<2)+2|0;O=151;break}case 2:{k=D+E|0;b[a+132+(k<<2)>>1]=m;b[a+132+(k<<2)+2>>1]=l;k=k+2|0;b[a+132+(k<<2)>>1]=m;k=a+132+(k<<2)+2|0;O=151;break}case 3:{k=D+E|0;b[a+132+(k<<2)>>1]=m;k=a+132+(k<<2)+2|0;O=151;break}default:{}}if((O|0)==151)b[k>>1]=l;D=D+1|0;if(D>>>0>=B>>>0)break e}}while(0);C=C+1|0;if(C>>>0>=4){O=154;break}}if((O|0)==154){m=0;while(1){c[R>>2]=c[a+116+(m<<2)>>2];g=ye(c[f+176+(m<<2)>>2]|0)|0;k=m<<3&8;l=m>>>0<2?0:8;switch(g|0){case 0:{we(j,a+132+(m<<2<<2)|0,R,Q,P,k,l,8,8);break}case 1:{g=a+132+(m<<2<<2)|0;we(j,g,R,Q,P,k,l,8,4);we(j,g+8|0,R,Q,P,k,l|4,8,4);break}case 2:{g=a+132+(m<<2<<2)|0;we(j,g,R,Q,P,k,l,4,8);we(j,g+4|0,R,Q,P,k|4,l,4,8);break}default:{N=a+132+(m<<2<<2)|0;we(j,N,R,Q,P,k,l,4,4);O=k|4;we(j,N+4|0,R,Q,P,O,l,4,4);g=l|4;we(j,N+8|0,R,Q,P,k,g,4,4);we(j,N+12|0,R,Q,P,O,g,4,4)}}m=m+1|0;if((m|0)==4)break a}}else if((O|0)==165){Vb=S;return k|0}}}while(0);if((c[a+196>>2]|0)>>>0>1){R=0;Vb=S;return R|0}if(!(c[a>>2]|0)){re(i,j);R=0;Vb=S;return R|0}else{Ae(i,h,j,f+328|0);R=0;Vb=S;return R|0}return 0}function ve(a,b){a=a|0;b=b|0;var d=0;if((b>>>0<=16?(d=c[(c[a+4>>2]|0)+(b<<2)>>2]|0,(d|0)!=0):0)?(c[d+20>>2]|0)>>>0>1:0)d=c[d>>2]|0;else d=0;return d|0}function we(a,d,e,f,g,h,i,j,k){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;m=a+(i<<4)+h|0;u=b[d>>1]|0;t=d+2|0;q=b[t>>1]|0;r=e+4|0;n=c[r>>2]<<4;p=e+8|0;o=c[p>>2]<<4;s=h+f|0;l=(u>>2)+s|0;g=i+g|0;f=(q>>2)+g|0;do switch(c[4104+((u&3)<<4)+((q&3)<<2)>>2]|0){case 0:{Be(c[e>>2]|0,m,l,f,n,o,j,k,16);f=e;break}case 1:{Ce(c[e>>2]|0,m,l,f+-2|0,n,o,j,k,0);f=e;break}case 2:{De(c[e>>2]|0,m,l,f+-2|0,n,o,j,k);f=e;break}case 3:{Ce(c[e>>2]|0,m,l,f+-2|0,n,o,j,k,1);f=e;break}case 4:{Ee(c[e>>2]|0,m,l+-2|0,f,n,o,j,k,0);f=e;break}case 5:{Fe(c[e>>2]|0,m,l+-2|0,f+-2|0,n,o,j,k,0);f=e;break}case 6:{Ge(c[e>>2]|0,m,l+-2|0,f+-2|0,n,o,j,k,0);f=e;break}case 7:{Fe(c[e>>2]|0,m,l+-2|0,f+-2|0,n,o,j,k,2);f=e;break}case 8:{He(c[e>>2]|0,m,l+-2|0,f,n,o,j,k);f=e;break}case 9:{Ie(c[e>>2]|0,m,l+-2|0,f+-2|0,n,o,j,k,0);f=e;break}case 10:{Je(c[e>>2]|0,m,l+-2|0,f+-2|0,n,o,j,k);f=e;break}case 11:{Ie(c[e>>2]|0,m,l+-2|0,f+-2|0,n,o,j,k,1);f=e;break}case 12:{Ee(c[e>>2]|0,m,l+-2|0,f,n,o,j,k,1);f=e;break}case 13:{Fe(c[e>>2]|0,m,l+-2|0,f+-2|0,n,o,j,k,1);f=e;break}case 14:{Ge(c[e>>2]|0,m,l+-2|0,f+-2|0,n,o,j,k,1);f=e;break}default:{Fe(c[e>>2]|0,m,l+-2|0,f+-2|0,n,o,j,k,3);f=e}}while(0);q=a+256+(i>>>1<<3)+(h>>>1)|0;u=c[r>>2]|0;l=c[p>>2]|0;i=u<<3;p=l<<3;e=b[d>>1]|0;h=(e>>3)+(s>>>1)|0;a=b[t>>1]|0;o=(a>>3)+(g>>>1)|0;e=e&7;a=a&7;n=j>>>1;m=k>>>1;f=(c[f>>2]|0)+(w(u<<8,l)|0)|0;g=(e|0)!=0;l=(a|0)!=0;if(g&l){Ke(f,q,h,o,i,p,e,a,n,m);return}if(g){Le(f,q,h,o,i,p,e,n,m);return}if(l){Me(f,q,h,o,i,p,a,n,m);return}else{Be(f,q,h,o,i,p,n,m,8);Be(f+(w(p,i)|0)|0,q+64|0,h,o,i,p,n,m,8);return}}function xe(a){a=a|0;switch(a|0){case 0:{a=1;break}case 2:case 1:{a=2;break}default:a=4}return a|0}function ye(a){a=a|0;return a|0}function ze(a,b){a=a|0;b=b|0;switch(b|0){case 0:{a=c[a+200>>2]|0;break}case 1:{a=c[a+204>>2]|0;break}case 2:{a=c[a+208>>2]|0;break}case 3:{a=c[a+212>>2]|0;break}case 4:break;default:a=0}return a|0}function Ae(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;r=c[b+4>>2]|0;q=w(c[b+8>>2]|0,r)|0;m=(e>>>0)%(r>>>0)|0;p=c[b>>2]|0;l=e-m|0;i=p+(l<<8)+(m<<4)|0;o=q<<8;l=l<<6;m=m<<3;q=q<<6;n=r<<4;k=r<<2&1073741820;j=0;do{h=c[1728+(j<<2)>>2]|0;b=c[1792+(j<<2)>>2]|0;e=f+(b<<4)+h|0;h=i+(w(b,n)|0)+h|0;b=c[g+(j<<6)>>2]|0;if((b|0)==16777215){b=e+16|0;s=c[b>>2]|0;b=b+16|0;c[h>>2]=c[e>>2];h=h+(k<<2)|0;c[h>>2]=s;h=h+(k<<2)|0;e=c[b+16>>2]|0;c[h>>2]=c[b>>2];c[h+(k<<2)>>2]=e}else{s=d[e+1>>0]|0;u=c[g+(j<<6)+4>>2]|0;a[h>>0]=a[107502+(b+(d[e>>0]|0))>>0]|0;b=d[e+2>>0]|0;t=c[g+(j<<6)+8>>2]|0;a[h+1>>0]=a[107502+(u+s)>>0]|0;s=d[e+3>>0]|0;u=c[g+(j<<6)+12>>2]|0;a[h+2>>0]=a[107502+(t+b)>>0]|0;b=e+16|0;a[h+3>>0]=a[107502+(u+s)>>0]|0;s=h+n|0;e=d[b+1>>0]|0;u=c[g+(j<<6)+20>>2]|0;a[s>>0]=a[107502+((c[g+(j<<6)+16>>2]|0)+(d[b>>0]|0))>>0]|0;h=d[b+2>>0]|0;t=c[g+(j<<6)+24>>2]|0;a[s+1>>0]=a[107502+(u+e)>>0]|0;e=d[b+3>>0]|0;u=c[g+(j<<6)+28>>2]|0;a[s+2>>0]=a[107502+(t+h)>>0]|0;h=b+16|0;a[s+3>>0]=a[107502+(u+e)>>0]|0;s=s+n|0;e=d[h+1>>0]|0;u=c[g+(j<<6)+36>>2]|0;a[s>>0]=a[107502+((c[g+(j<<6)+32>>2]|0)+(d[h>>0]|0))>>0]|0;b=d[h+2>>0]|0;t=c[g+(j<<6)+40>>2]|0;a[s+1>>0]=a[107502+(u+e)>>0]|0;e=d[h+3>>0]|0;u=c[g+(j<<6)+44>>2]|0;a[s+2>>0]=a[107502+(t+b)>>0]|0;h=h+16|0;a[s+3>>0]=a[107502+(u+e)>>0]|0;s=s+n|0;e=d[h+1>>0]|0;u=c[g+(j<<6)+52>>2]|0;a[s>>0]=a[107502+((c[g+(j<<6)+48>>2]|0)+(d[h>>0]|0))>>0]|0;b=d[h+2>>0]|0;t=c[g+(j<<6)+56>>2]|0;a[s+1>>0]=a[107502+(u+e)>>0]|0;h=d[h+3>>0]|0;e=c[g+(j<<6)+60>>2]|0;a[s+2>>0]=a[107502+(t+b)>>0]|0;a[s+3>>0]=a[107502+(e+h)>>0]|0}j=j+1|0}while((j|0)!=16);m=p+o+l+m|0;l=m+q|0;k=r<<3&2147483640;j=k>>>2;i=16;do{b=i&3;h=c[1728+(b<<2)>>2]|0;b=c[1792+(b<<2)>>2]|0;u=i>>>0>19;e=f+(u?320:256)+((b<<3)+h)|0;h=(u?l:m)+((w(b,k)|0)+h)|0;b=c[g+(i<<6)>>2]|0;if((b|0)==16777215){s=e+8|0;t=c[s>>2]|0;s=s+8|0;c[h>>2]=c[e>>2];u=h+(j<<2)|0;c[u>>2]=t;u=u+(j<<2)|0;t=c[s+8>>2]|0;c[u>>2]=c[s>>2];c[u+(j<<2)>>2]=t}else{u=d[e+1>>0]|0;s=c[g+(i<<6)+4>>2]|0;a[h>>0]=a[107502+(b+(d[e>>0]|0))>>0]|0;t=d[e+2>>0]|0;p=c[g+(i<<6)+8>>2]|0;a[h+1>>0]=a[107502+(s+u)>>0]|0;u=d[e+3>>0]|0;s=c[g+(i<<6)+12>>2]|0;a[h+2>>0]=a[107502+(p+t)>>0]|0;t=e+8|0;a[h+3>>0]=a[107502+(s+u)>>0]|0;u=h+k|0;s=d[t+1>>0]|0;p=c[g+(i<<6)+20>>2]|0;a[u>>0]=a[107502+((c[g+(i<<6)+16>>2]|0)+(d[t>>0]|0))>>0]|0;r=d[t+2>>0]|0;q=c[g+(i<<6)+24>>2]|0;a[u+1>>0]=a[107502+(p+s)>>0]|0;s=d[t+3>>0]|0;p=c[g+(i<<6)+28>>2]|0;a[u+2>>0]=a[107502+(q+r)>>0]|0;t=t+8|0;a[u+3>>0]=a[107502+(p+s)>>0]|0;u=u+k|0;s=d[t+1>>0]|0;p=c[g+(i<<6)+36>>2]|0;a[u>>0]=a[107502+((c[g+(i<<6)+32>>2]|0)+(d[t>>0]|0))>>0]|0;r=d[t+2>>0]|0;q=c[g+(i<<6)+40>>2]|0;a[u+1>>0]=a[107502+(p+s)>>0]|0;s=d[t+3>>0]|0;p=c[g+(i<<6)+44>>2]|0;a[u+2>>0]=a[107502+(q+r)>>0]|0;t=t+8|0;a[u+3>>0]=a[107502+(p+s)>>0]|0;u=u+k|0;s=d[t+1>>0]|0;p=c[g+(i<<6)+52>>2]|0;a[u>>0]=a[107502+((c[g+(i<<6)+48>>2]|0)+(d[t>>0]|0))>>0]|0;r=d[t+2>>0]|0;q=c[g+(i<<6)+56>>2]|0;a[u+1>>0]=a[107502+(p+s)>>0]|0;t=d[t+3>>0]|0;s=c[g+(i<<6)+60>>2]|0;a[u+2>>0]=a[107502+(q+r)>>0]|0;a[u+3>>0]=a[107502+(s+t)>>0]|0}i=i+1|0}while((i|0)!=24);return}function Be(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=g+c|0;p=(c|0)<0|(n|0)>(e|0)?5:4;k=(h+d|0)<0?0-h|0:d;n=(n|0)<0?0-g|0:c;k=(k|0)>(f|0)?f:k;n=(n|0)>(e|0)?e:n;o=n+g|0;l=k+h|0;c=(n|0)>0?a+n|0:a;m=c+(w(k,e)|0)|0;c=(k|0)>0?m:c;n=(n|0)<0?0-n|0:0;o=(o|0)>(e|0)?o-e|0:0;m=g-n-o|0;d=0-k|0;g=(k|0)<0?d:0;a=l-f|0;l=(l|0)>(f|0)?a:0;k=h-g-l|0;if(g){g=w(g,i)|0;f=b;while(1){gc[p&7](c,f,n,m,o);d=d+-1|0;if(!d)break;else f=f+i|0}b=b+g|0}if(k){j=w(k,e)|0;g=w(k,i)|0;f=b;h=c;d=k;while(1){gc[p&7](h,f,n,m,o);d=d+-1|0;if(!d)break;else{f=f+i|0;h=h+e|0}}b=b+g|0;c=c+j|0}c=c+(0-e)|0;if(!l)return;while(1){gc[p&7](c,b,n,m,o);a=a+-1|0;if(!a)break;else b=b+i|0}return}function Ce(b,c,e,f,g,h,i,j,k){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0;s=Vb;Vb=Vb+448|0;l=s;if(((e|0)>=0?!((f|0)<0|(i+e|0)>>>0>g>>>0):0)?(j+5+f|0)>>>0<=h>>>0:0)l=b;else{Be(b,l,e,f,g,h,i,j+5|0,i);g=i;e=0;f=0}e=l+((w(f,g)|0)+e)+g|0;f=j>>>2;if(!f){Vb=s;return}o=g<<2;r=0-g|0;p=r<<1;q=g<<1;if(!i){Vb=s;return}n=e;m=e+(w(g,k+2|0)|0)|0;j=e+(g*5|0)|0;while(1){e=i;h=c;l=n;b=m;k=j;while(1){t=d[k+p>>0]|0;x=d[k+r>>0]|0;y=d[k+g>>0]|0;A=d[k>>0]|0;z=y+t|0;u=d[l+q>>0]|0;a[h+48>>0]=((d[107502+((d[k+q>>0]|0)+16-z-(z<<2)+u+((A+x|0)*20|0)>>5)>>0]|0)+1+(d[b+q>>0]|0)|0)>>>1;z=u+A|0;v=d[l+g>>0]|0;a[h+32>>0]=((d[107502+(y+16+((x+t|0)*20|0)-z-(z<<2)+v>>5)>>0]|0)+1+(d[b+g>>0]|0)|0)>>>1;z=v+x|0;y=d[l>>0]|0;a[h+16>>0]=((d[107502+(A+16+((u+t|0)*20|0)-z-(z<<2)+y>>5)>>0]|0)+1+(d[b>>0]|0)|0)>>>1;t=y+t|0;a[h>>0]=((d[107502+(x+16+((v+u|0)*20|0)-t-(t<<2)+(d[l+r>>0]|0)>>5)>>0]|0)+1+(d[b+r>>0]|0)|0)>>>1;e=e+-1|0;if(!e)break;else{h=h+1|0;l=l+1|0;b=b+1|0;k=k+1|0}}f=f+-1|0;if(!f)break;else{c=c+64|0;n=n+o|0;m=m+o|0;j=j+o|0}}Vb=s;return}function De(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0;q=Vb;Vb=Vb+448|0;k=q;if(((e|0)>=0?!((f|0)<0|(i+e|0)>>>0>g>>>0):0)?(j+5+f|0)>>>0<=h>>>0:0)k=b;else{Be(b,k,e,f,g,h,i,j+5|0,i);g=i;e=0;f=0}e=k+((w(f,g)|0)+e)+g|0;f=j>>>2;if(!f){Vb=q;return}m=g<<2;p=0-g|0;n=p<<1;o=g<<1;if(!i){Vb=q;return}l=e;b=e+(g*5|0)|0;while(1){e=i;h=c;k=l;j=b;while(1){r=d[j+n>>0]|0;u=d[j+p>>0]|0;v=d[j+g>>0]|0;y=d[j>>0]|0;x=v+r|0;s=d[k+o>>0]|0;a[h+48>>0]=a[107502+((d[j+o>>0]|0)+16-x-(x<<2)+s+((y+u|0)*20|0)>>5)>>0]|0;x=s+y|0;t=d[k+g>>0]|0;a[h+32>>0]=a[107502+(v+16+((u+r|0)*20|0)-x-(x<<2)+t>>5)>>0]|0;x=t+u|0;v=d[k>>0]|0;a[h+16>>0]=a[107502+(y+16+((s+r|0)*20|0)-x-(x<<2)+v>>5)>>0]|0;r=v+r|0;a[h>>0]=a[107502+(u+16+((t+s|0)*20|0)-r-(r<<2)+(d[k+p>>0]|0)>>5)>>0]|0;e=e+-1|0;if(!e)break;else{h=h+1|0;k=k+1|0;j=j+1|0}}f=f+-1|0;if(!f)break;else{c=c+64|0;l=l+m|0;b=b+m|0}}Vb=q;return}function Ee(b,c,e,f,g,h,i,j,k){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=Vb;Vb=Vb+448|0;l=t;m=i+5|0;if((e|0)>=0?!((j+f|0)>>>0>h>>>0|((f|0)<0|(m+e|0)>>>0>g>>>0)):0){l=b;m=g}else{Be(b,l,e,f,g,h,m,j,m);e=0;f=0}if(!j){Vb=t;return}p=i>>>2;s=(p|0)==0;q=m-i|0;r=16-i|0;o=(k|0)==0;n=i&-4;h=l+((w(f,m)|0)+e)+5|0;while(1){l=d[h+-5>>0]|0;m=d[h+-4>>0]|0;g=d[h+-3>>0]|0;e=d[h+-2>>0]|0;b=d[h+-1>>0]|0;do if(!s){i=h+n|0;if(o){k=c;f=b;b=p;while(1){u=m+f|0;v=m;m=d[h>>0]|0;a[k>>0]=(g+1+(d[107502+(l+16-u+((g+e|0)*20|0)-(u<<2)+m>>5)>>0]|0)|0)>>>1;u=g+m|0;l=g;g=d[h+1>>0]|0;a[k+1>>0]=(e+1+(d[107502+(v+16+((e+f|0)*20|0)-u-(u<<2)+g>>5)>>0]|0)|0)>>>1;u=e+g|0;v=e;e=d[h+2>>0]|0;a[k+2>>0]=(f+1+(d[107502+(l+16+((f+m|0)*20|0)-u-(u<<2)+e>>5)>>0]|0)|0)>>>1;u=f+e|0;l=d[h+3>>0]|0;a[k+3>>0]=(m+1+(d[107502+(v+16+((g+m|0)*20|0)-u-(u<<2)+l>>5)>>0]|0)|0)>>>1;b=b+-1|0;if(!b)break;else{v=f;k=k+4|0;h=h+4|0;f=l;l=v}}c=c+n|0;h=i;break}else{k=c;f=b;b=p;while(1){v=m+f|0;u=m;m=d[h>>0]|0;a[k>>0]=(e+1+(d[107502+(l+16-v+((g+e|0)*20|0)-(v<<2)+m>>5)>>0]|0)|0)>>>1;v=g+m|0;l=g;g=d[h+1>>0]|0;a[k+1>>0]=(f+1+(d[107502+(u+16+((e+f|0)*20|0)-v-(v<<2)+g>>5)>>0]|0)|0)>>>1;v=e+g|0;u=e;e=d[h+2>>0]|0;a[k+2>>0]=(m+1+(d[107502+(l+16+((f+m|0)*20|0)-v-(v<<2)+e>>5)>>0]|0)|0)>>>1;v=f+e|0;l=d[h+3>>0]|0;a[k+3>>0]=(g+1+(d[107502+(u+16+((g+m|0)*20|0)-v-(v<<2)+l>>5)>>0]|0)|0)>>>1;b=b+-1|0;if(!b)break;else{v=f;k=k+4|0;h=h+4|0;f=l;l=v}}c=c+n|0;h=i;break}}while(0);j=j+-1|0;if(!j)break;else{c=c+r|0;h=h+q|0}}Vb=t;return}function Fe(b,c,e,f,g,h,i,j,k){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0;y=Vb;Vb=Vb+448|0;l=y;m=i+5|0;if(((e|0)>=0?!((f|0)<0|(m+e|0)>>>0>g>>>0):0)?(j+5+f|0)>>>0<=h>>>0:0){l=b;m=g}else{Be(b,l,e,f,g,h,m,j+5|0,m);e=0;f=0}x=l+((w(f,m)|0)+e)|0;f=x+(w(m,k>>>1&1|2)|0)+5|0;x=x+m+2+(k&1)|0;do if(!j)f=c;else{t=i>>>2;u=m-i|0;v=16-i|0;if(!t){f=c+((w(j+-1|0,v)|0)+16-i)|0;break}r=i&-4;q=(w(r+16-i|0,j+-1|0)|0)+r+16-i|0;s=c;p=j;while(1){b=f+r|0;h=s;l=f;g=d[f+-1>>0]|0;k=d[f+-2>>0]|0;n=d[f+-3>>0]|0;o=d[f+-4>>0]|0;f=d[f+-5>>0]|0;e=t;while(1){z=o+g|0;A=o;o=d[l>>0]|0;a[h>>0]=a[107502+(f+16-z+((n+k|0)*20|0)-(z<<2)+o>>5)>>0]|0;z=n+o|0;f=n;n=d[l+1>>0]|0;a[h+1>>0]=a[107502+(A+16+((k+g|0)*20|0)-z-(z<<2)+n>>5)>>0]|0;z=k+n|0;A=k;k=d[l+2>>0]|0;a[h+2>>0]=a[107502+(f+16+((g+o|0)*20|0)-z-(z<<2)+k>>5)>>0]|0;z=g+k|0;f=d[l+3>>0]|0;a[h+3>>0]=a[107502+(A+16+((n+o|0)*20|0)-z-(z<<2)+f>>5)>>0]|0;e=e+-1|0;if(!e)break;else{A=g;h=h+4|0;l=l+4|0;g=f;f=A}}p=p+-1|0;if(!p)break;else{s=s+r+v|0;f=b+u|0}}f=c+q|0}while(0);e=j>>>2;if(!e){Vb=y;return}q=m<<2;r=0-m|0;o=r<<1;p=m<<1;if(!i){Vb=y;return}k=f+(0-(j<<4))|0;n=x;g=x+(m*5|0)|0;while(1){f=k;h=n;l=g;b=i;while(1){A=d[l+o>>0]|0;c=d[l+r>>0]|0;v=d[l+m>>0]|0;t=d[l>>0]|0;j=v+A|0;z=d[h+p>>0]|0;u=f+48|0;a[u>>0]=((d[107502+((d[l+p>>0]|0)+16-j-(j<<2)+z+((t+c|0)*20|0)>>5)>>0]|0)+1+(d[u>>0]|0)|0)>>>1;u=z+t|0;j=d[h+m>>0]|0;x=f+32|0;a[x>>0]=((d[107502+(v+16+((c+A|0)*20|0)-u-(u<<2)+j>>5)>>0]|0)+1+(d[x>>0]|0)|0)>>>1;x=d[h>>0]|0;u=j+c|0;v=f+16|0;a[v>>0]=((d[107502+(t+16+((z+A|0)*20|0)-u-(u<<2)+x>>5)>>0]|0)+1+(d[v>>0]|0)|0)>>>1;A=x+A|0;a[f>>0]=((d[107502+(c+16+((j+z|0)*20|0)-A-(A<<2)+(d[h+r>>0]|0)>>5)>>0]|0)+1+(d[f>>0]|0)|0)>>>1;b=b+-1|0;if(!b)break;else{f=f+1|0;h=h+1|0;l=l+1|0}}e=e+-1|0;if(!e)break;else{k=k+64|0;n=n+q|0;g=g+q|0}}Vb=y;return}function Ge(b,e,f,g,h,i,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;A=Vb;Vb=Vb+1792|0;m=A+1344|0;z=A;q=j+5|0;if(((f|0)>=0?!((g|0)<0|(q+f|0)>>>0>h>>>0):0)?(k+5+g|0)>>>0<=i>>>0:0)m=b;else{Be(b,m,f,g,h,i,q,k+5|0,q);h=q;f=0;g=0}g=m+((w(g,h)|0)+f)+h|0;f=k>>>2;if(f|0?(u=h<<2,v=q*3|0,x=0-h|0,r=x<<1,s=h<<1,t=q<<1,y=-5-j|0,q|0):0){i=z+(q<<2)|0;p=g;o=g+(h*5|0)|0;while(1){n=i+(q<<2)|0;g=p;m=o;b=q;while(1){B=d[m+r>>0]|0;C=d[m+x>>0]|0;G=d[m+h>>0]|0;H=d[m>>0]|0;F=G+B|0;D=d[g+s>>0]|0;c[i+(t<<2)>>2]=(d[m+s>>0]|0)-F-(F<<2)+D+((H+C|0)*20|0);F=D+H|0;E=d[g+h>>0]|0;c[i+(q<<2)>>2]=((C+B|0)*20|0)+G-F-(F<<2)+E;F=d[g>>0]|0;G=E+C|0;c[i>>2]=((D+B|0)*20|0)+H-G-(G<<2)+F;B=F+B|0;c[i+(y<<2)>>2]=((E+D|0)*20|0)+C-B-(B<<2)+(d[g+x>>0]|0);b=b+-1|0;if(!b)break;else{i=i+4|0;g=g+1|0;m=m+1|0}}f=f+-1|0;if(!f)break;else{i=n+(v<<2)|0;p=p+u|0;o=o+u|0}}}if(!k){Vb=A;return}t=j>>>2;v=(t|0)==0;u=16-j|0;s=j&-4;g=z+8+(l<<2)|0;f=z+20|0;while(1){if(!v){r=g+(s<<2)|0;q=e;m=f;b=c[f+-4>>2]|0;h=c[f+-8>>2]|0;n=c[f+-12>>2]|0;o=c[f+-16>>2]|0;i=c[f+-20>>2]|0;p=t;while(1){H=o+b|0;G=o;o=c[m>>2]|0;a[q>>0]=((d[107502+(i+512-H+((n+h|0)*20|0)-(H<<2)+o>>10)>>0]|0)+1+(d[107502+((c[g>>2]|0)+16>>5)>>0]|0)|0)>>>1;H=o+n|0;i=n;n=c[m+4>>2]|0;a[q+1>>0]=((d[107502+(G+512+((h+b|0)*20|0)-H-(H<<2)+n>>10)>>0]|0)+1+(d[107502+((c[g+4>>2]|0)+16>>5)>>0]|0)|0)>>>1;H=n+h|0;G=h;h=c[m+8>>2]|0;a[q+2>>0]=((d[107502+(i+512+((o+b|0)*20|0)-H-(H<<2)+h>>10)>>0]|0)+1+(d[107502+((c[g+8>>2]|0)+16>>5)>>0]|0)|0)>>>1;H=h+b|0;i=c[m+12>>2]|0;a[q+3>>0]=((d[107502+(G+512+((n+o|0)*20|0)-H-(H<<2)+i>>10)>>0]|0)+1+(d[107502+((c[g+12>>2]|0)+16>>5)>>0]|0)|0)>>>1;p=p+-1|0;if(!p)break;else{H=b;q=q+4|0;g=g+16|0;m=m+16|0;b=i;i=H}}e=e+s|0;g=r;f=f+(s<<2)|0}k=k+-1|0;if(!k)break;else{e=e+u|0;g=g+20|0;f=f+20|0}}Vb=A;return}function He(b,c,e,f,g,h,i,j){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=Vb;Vb=Vb+448|0;k=r;l=i+5|0;if((e|0)>=0?!((j+f|0)>>>0>h>>>0|((f|0)<0|(l+e|0)>>>0>g>>>0)):0){k=b;l=g}else{Be(b,k,e,f,g,h,l,j,l);e=0;f=0}f=k+((w(f,l)|0)+e)+5|0;if(!j){Vb=r;return}q=i>>>2;o=l-i|0;p=16-i|0;if(!q){Vb=r;return}n=i&-4;m=c;while(1){b=f+n|0;h=m;k=f;l=d[f+-1>>0]|0;g=d[f+-2>>0]|0;i=d[f+-3>>0]|0;c=d[f+-4>>0]|0;f=d[f+-5>>0]|0;e=q;while(1){s=c+l|0;t=c;c=d[k>>0]|0;a[h>>0]=a[107502+(f+16-s+((i+g|0)*20|0)-(s<<2)+c>>5)>>0]|0;s=i+c|0;f=i;i=d[k+1>>0]|0;a[h+1>>0]=a[107502+(t+16+((g+l|0)*20|0)-s-(s<<2)+i>>5)>>0]|0;s=g+i|0;t=g;g=d[k+2>>0]|0;a[h+2>>0]=a[107502+(f+16+((l+c|0)*20|0)-s-(s<<2)+g>>5)>>0]|0;s=l+g|0;f=d[k+3>>0]|0;a[h+3>>0]=a[107502+(t+16+((i+c|0)*20|0)-s-(s<<2)+f>>5)>>0]|0;e=e+-1|0;if(!e)break;else{t=l;h=h+4|0;k=k+4|0;l=f;f=t}}j=j+-1|0;if(!j)break;else{m=m+n+p|0;f=b+o|0}}Vb=r;return}function Ie(b,e,f,g,h,i,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0;x=Vb;Vb=Vb+1792|0;n=x+1344|0;v=x;o=j+5|0;if(((f|0)>=0?!((g|0)<0|(o+f|0)>>>0>h>>>0):0)?(m=k+5|0,(m+g|0)>>>0<=i>>>0):0){n=b;i=h}else{m=k+5|0;Be(b,n,f,g,h,i,o,m,o);i=o;f=0;g=0}g=n+((w(g,i)|0)+f)+5|0;if(m|0?(t=j>>>2,u=i-j|0,t|0):0){r=j&-4;s=v;while(1){b=g+r|0;i=s;n=g;o=d[g+-1>>0]|0;h=d[g+-2>>0]|0;p=d[g+-3>>0]|0;q=d[g+-4>>0]|0;g=d[g+-5>>0]|0;f=t;while(1){y=q+o|0;z=q;q=d[n>>0]|0;c[i>>2]=g-y+((p+h|0)*20|0)-(y<<2)+q;y=p+q|0;g=p;p=d[n+1>>0]|0;c[i+4>>2]=((h+o|0)*20|0)+z-y-(y<<2)+p;y=h+p|0;z=h;h=d[n+2>>0]|0;c[i+8>>2]=((o+q|0)*20|0)+g-y-(y<<2)+h;y=o+h|0;g=d[n+3>>0]|0;c[i+12>>2]=((p+q|0)*20|0)+z-y-(y<<2)+g;f=f+-1|0;if(!f)break;else{z=o;i=i+16|0;n=n+4|0;o=g;g=z}}m=m+-1|0;if(!m)break;else{s=s+(r<<2)|0;g=b+u|0}}}g=v+(j<<2)|0;f=k>>>2;if(!f){Vb=x;return}k=(j|0)==0;u=64-j|0;s=j*3|0;v=0-j|0;t=v<<1;r=j<<1;n=e;m=g;i=g+((w(l+2|0,j)|0)<<2)|0;g=g+(j*5<<2)|0;while(1){if(!k){q=g+(j<<2)|0;p=m+(j<<2)|0;h=n;o=i;b=j;while(1){z=c[g+(t<<2)>>2]|0;e=c[g+(v<<2)>>2]|0;B=c[g+(j<<2)>>2]|0;C=c[g>>2]|0;A=B+z|0;y=c[m+(r<<2)>>2]|0;a[h+48>>0]=((d[107502+((c[g+(r<<2)>>2]|0)+512-A-(A<<2)+y+((C+e|0)*20|0)>>10)>>0]|0)+1+(d[107502+((c[o+(r<<2)>>2]|0)+16>>5)>>0]|0)|0)>>>1;A=y+C|0;l=c[m+(j<<2)>>2]|0;a[h+32>>0]=((d[107502+(B+512+((e+z|0)*20|0)-A-(A<<2)+l>>10)>>0]|0)+1+(d[107502+((c[o+(j<<2)>>2]|0)+16>>5)>>0]|0)|0)>>>1;A=c[m>>2]|0;B=l+e|0;a[h+16>>0]=((d[107502+(C+512+((y+z|0)*20|0)-B-(B<<2)+A>>10)>>0]|0)+1+(d[107502+((c[o>>2]|0)+16>>5)>>0]|0)|0)>>>1;z=A+z|0;a[h>>0]=((d[107502+(e+512+((l+y|0)*20|0)-z-(z<<2)+(c[m+(v<<2)>>2]|0)>>10)>>0]|0)+1+(d[107502+((c[o+(v<<2)>>2]|0)+16>>5)>>0]|0)|0)>>>1;b=b+-1|0;if(!b)break;else{h=h+1|0;m=m+4|0;o=o+4|0;g=g+4|0}}n=n+j|0;m=p;i=i+(j<<2)|0;g=q}f=f+-1|0;if(!f)break;else{n=n+u|0;m=m+(s<<2)|0;i=i+(s<<2)|0;g=g+(s<<2)|0}}Vb=x;return}function Je(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0;v=Vb;Vb=Vb+1792|0;m=v+1344|0;u=v;n=j+5|0;if(((f|0)>=0?!((g|0)<0|(n+f|0)>>>0>h>>>0):0)?(l=k+5|0,(l+g|0)>>>0<=i>>>0):0){m=b;i=h}else{l=k+5|0;Be(b,m,f,g,h,i,n,l,n);i=n;f=0;g=0}g=m+((w(g,i)|0)+f)+5|0;if(l|0?(s=j>>>2,t=i-j|0,s|0):0){q=j&-4;r=u;while(1){b=g+q|0;i=r;m=g;n=d[g+-1>>0]|0;h=d[g+-2>>0]|0;o=d[g+-3>>0]|0;p=d[g+-4>>0]|0;g=d[g+-5>>0]|0;f=s;while(1){x=p+n|0;y=p;p=d[m>>0]|0;c[i>>2]=g-x+((o+h|0)*20|0)-(x<<2)+p;x=o+p|0;g=o;o=d[m+1>>0]|0;c[i+4>>2]=((h+n|0)*20|0)+y-x-(x<<2)+o;x=h+o|0;y=h;h=d[m+2>>0]|0;c[i+8>>2]=((n+p|0)*20|0)+g-x-(x<<2)+h;x=n+h|0;g=d[m+3>>0]|0;c[i+12>>2]=((o+p|0)*20|0)+y-x-(x<<2)+g;f=f+-1|0;if(!f)break;else{y=n;i=i+16|0;m=m+4|0;n=g;g=y}}l=l+-1|0;if(!l)break;else{r=r+(q<<2)|0;g=b+t|0}}}g=u+(j<<2)|0;f=k>>>2;if(!f){Vb=v;return}o=j*3|0;q=0-j|0;p=q<<1;h=j<<1;if(!j){Vb=v;return}n=g;b=g+(j*5<<2)|0;while(1){g=e;l=n;i=b;m=j;while(1){y=c[i+(p<<2)>>2]|0;u=c[i+(q<<2)>>2]|0;s=c[i+(j<<2)>>2]|0;r=c[i>>2]|0;t=s+y|0;x=c[l+(h<<2)>>2]|0;a[g+48>>0]=a[107502+((c[i+(h<<2)>>2]|0)+512-t-(t<<2)+x+((r+u|0)*20|0)>>10)>>0]|0;t=x+r|0;k=c[l+(j<<2)>>2]|0;a[g+32>>0]=a[107502+(s+512+((u+y|0)*20|0)-t-(t<<2)+k>>10)>>0]|0;t=c[l>>2]|0;s=k+u|0;a[g+16>>0]=a[107502+(r+512+((x+y|0)*20|0)-s-(s<<2)+t>>10)>>0]|0;y=t+y|0;a[g>>0]=a[107502+(u+512+((k+x|0)*20|0)-y-(y<<2)+(c[l+(q<<2)>>2]|0)>>10)>>0]|0;m=m+-1|0;if(!m)break;else{g=g+1|0;l=l+4|0;i=i+4|0}}f=f+-1|0;if(!f)break;else{e=e+64|0;n=n+(j<<2)+(o<<2)|0;b=b+(j<<2)+(o<<2)|0}}Vb=v;return}function Ke(b,c,e,f,g,h,i,j,k,l){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;D=Vb;Vb=Vb+176|0;m=D;n=k+1|0;if(((e|0)>=0?!((f|0)<0|(n+e|0)>>>0>g>>>0):0)?(l+1+f|0)>>>0<=h>>>0:0){m=b;n=g}else{C=l+1|0;Be(b,m,e,f,g,h,n,C,n);Be(b+(w(h,g)|0)|0,m+(w(C,n)|0)|0,e,f,g,h,n,C,n);h=C;e=0;f=0}B=8-i|0;C=8-j|0;l=l>>>1;t=(l|0)==0;x=n<<1;y=k>>>1;u=(y|0)==0;z=16-k|0;A=x-k|0;v=k&-2;if(t|u){Vb=D;return}k=c;b=m+(w(f,n)|0)+e|0;s=l;while(1){g=d[b+n>>0]|0;q=b+v|0;o=k;p=b;r=(w(g,j)|0)+(w(C,d[b>>0]|0)|0)|0;b=(w(d[b+x>>0]|0,j)|0)+(w(C,g)|0)|0;g=y;while(1){G=p+1|0;F=d[G+n>>0]|0;E=(w(F,j)|0)+(w(C,d[G>>0]|0)|0)|0;F=(w(d[G+x>>0]|0,j)|0)+(w(C,F)|0)|0;G=((w(r,B)|0)+32+(w(E,i)|0)|0)>>>6;a[o+8>>0]=((w(b,B)|0)+32+(w(F,i)|0)|0)>>>6;a[o>>0]=G;p=p+2|0;G=d[p+n>>0]|0;r=(w(G,j)|0)+(w(C,d[p>>0]|0)|0)|0;b=(w(d[p+x>>0]|0,j)|0)+(w(C,G)|0)|0;E=((w(E,B)|0)+32+(w(r,i)|0)|0)>>>6;a[o+9>>0]=((w(F,B)|0)+32+(w(b,i)|0)|0)>>>6;a[o+1>>0]=E;g=g+-1|0;if(!g)break;else o=o+2|0}s=s+-1|0;if(!s)break;else{k=k+v+z|0;b=q+A|0}}if(t|u){Vb=D;return}k=c+64|0;h=m+(w(h+f|0,n)|0)+e|0;while(1){m=d[h+n>>0]|0;e=h+v|0;b=k;g=h;f=(w(m,j)|0)+(w(C,d[h>>0]|0)|0)|0;h=(w(d[h+x>>0]|0,j)|0)+(w(C,m)|0)|0;m=y;while(1){E=g+1|0;F=d[E+n>>0]|0;G=(w(F,j)|0)+(w(C,d[E>>0]|0)|0)|0;F=(w(d[E+x>>0]|0,j)|0)+(w(C,F)|0)|0;E=((w(f,B)|0)+32+(w(G,i)|0)|0)>>>6;a[b+8>>0]=((w(h,B)|0)+32+(w(F,i)|0)|0)>>>6;a[b>>0]=E;g=g+2|0;E=d[g+n>>0]|0;f=(w(E,j)|0)+(w(C,d[g>>0]|0)|0)|0;h=(w(d[g+x>>0]|0,j)|0)+(w(C,E)|0)|0;G=((w(G,B)|0)+32+(w(f,i)|0)|0)>>>6;a[b+9>>0]=((w(F,B)|0)+32+(w(h,i)|0)|0)>>>6;a[b+1>>0]=G;m=m+-1|0;if(!m)break;else b=b+2|0}l=l+-1|0;if(!l)break;else{k=k+v+z|0;h=e+A|0}}Vb=D;return}function Le(b,c,e,f,g,h,i,j,k){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0;y=Vb;Vb=Vb+144|0;l=y;m=j+1|0;if((e|0)>=0?!((k+f|0)>>>0>h>>>0|((f|0)<0|(m+e|0)>>>0>g>>>0)):0){l=b;m=g}else{Be(b,l,e,f,g,h,m,k,m);Be(b+(w(h,g)|0)|0,l+(w(m,k)|0)|0,e,f,g,h,m,k,m);h=k;e=0;f=0}x=8-i|0;r=k>>>1;q=(r|0)==0;t=j>>>1;p=(t|0)==0;u=16-j|0;v=(m<<1)-j|0;s=j&-2;if(q|p){Vb=y;return}k=c;b=l+(w(f,m)|0)+e|0;o=r;while(1){n=b+s|0;j=k;g=t;while(1){z=b+1|0;A=d[b>>0]|0;B=d[z+m>>0]|0;z=d[z>>0]|0;a[j+8>>0]=(((w(B,i)|0)+(w(x,d[b+m>>0]|0)|0)<<3)+32|0)>>>6;b=b+2|0;a[j>>0]=(((w(z,i)|0)+(w(x,A)|0)<<3)+32|0)>>>6;A=d[b>>0]|0;a[j+9>>0]=(((w(d[b+m>>0]|0,i)|0)+(w(x,B)|0)<<3)+32|0)>>>6;a[j+1>>0]=(((w(A,i)|0)+(w(x,z)|0)<<3)+32|0)>>>6;g=g+-1|0;if(!g)break;else j=j+2|0}o=o+-1|0;if(!o)break;else{k=k+s+u|0;b=n+v|0}}if(q|p){Vb=y;return}k=c+64|0;h=l+(w(h+f|0,m)|0)+e|0;e=r;while(1){g=h+s|0;b=k;l=t;while(1){B=h+1|0;A=d[h>>0]|0;z=d[B+m>>0]|0;B=d[B>>0]|0;a[b+8>>0]=(((w(z,i)|0)+(w(x,d[h+m>>0]|0)|0)<<3)+32|0)>>>6;h=h+2|0;a[b>>0]=(((w(B,i)|0)+(w(x,A)|0)<<3)+32|0)>>>6;A=d[h>>0]|0;a[b+9>>0]=(((w(d[h+m>>0]|0,i)|0)+(w(x,z)|0)<<3)+32|0)>>>6;a[b+1>>0]=(((w(A,i)|0)+(w(x,B)|0)<<3)+32|0)>>>6;l=l+-1|0;if(!l)break;else b=b+2|0}e=e+-1|0;if(!e)break;else{k=k+s+u|0;h=g+v|0}}Vb=y;return}function Me(b,c,e,f,g,h,i,j,k){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0;z=Vb;Vb=Vb+144|0;l=z;if(((e|0)>=0?!((f|0)<0|(j+e|0)>>>0>g>>>0):0)?(k+1+f|0)>>>0<=h>>>0:0)l=b;else{y=k+1|0;Be(b,l,e,f,g,h,j,y,j);Be(b+(w(h,g)|0)|0,l+(w(y,j)|0)|0,e,f,g,h,j,y,j);h=y;g=j;e=0;f=0}y=8-i|0;r=k>>>1;q=(r|0)==0;u=j>>>1;p=(u|0)==0;v=16-j|0;t=g<<1;x=t-j|0;s=j&-2;if(q|p){Vb=z;return}j=c;b=l+(w(f,g)|0)+e|0;o=r;while(1){n=b+s|0;m=j;k=u;while(1){A=d[b+g>>0]|0;C=b+1|0;B=d[b>>0]|0;a[m+8>>0]=(((w(y,A)|0)+(w(d[b+t>>0]|0,i)|0)<<3)+32|0)>>>6;a[m>>0]=(((w(y,B)|0)+(w(A,i)|0)<<3)+32|0)>>>6;A=d[C+g>>0]|0;B=d[C>>0]|0;a[m+9>>0]=(((w(y,A)|0)+(w(d[C+t>>0]|0,i)|0)<<3)+32|0)>>>6;a[m+1>>0]=(((w(y,B)|0)+(w(A,i)|0)<<3)+32|0)>>>6;k=k+-1|0;if(!k)break;else{m=m+2|0;b=b+2|0}}o=o+-1|0;if(!o)break;else{j=j+s+v|0;b=n+x|0}}if(q|p){Vb=z;return}k=c+64|0;h=l+(w(h+f|0,g)|0)+e|0;f=r;while(1){e=h+s|0;b=k;l=u;while(1){C=d[h+g>>0]|0;A=h+1|0;B=d[h>>0]|0;a[b+8>>0]=(((w(y,C)|0)+(w(d[h+t>>0]|0,i)|0)<<3)+32|0)>>>6;a[b>>0]=(((w(y,B)|0)+(w(C,i)|0)<<3)+32|0)>>>6;C=d[A+g>>0]|0;B=d[A>>0]|0;a[b+9>>0]=(((w(y,C)|0)+(w(d[A+t>>0]|0,i)|0)<<3)+32|0)>>>6;a[b+1>>0]=(((w(y,B)|0)+(w(C,i)|0)<<3)+32|0)>>>6;l=l+-1|0;if(!l)break;else{b=b+2|0;h=h+2|0}}f=f+-1|0;if(!f)break;else{k=k+s+v|0;h=e+x|0}}Vb=z;return}function Ne(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;if(d){fl(c|0,a[b>>0]|0,d|0)|0;c=c+d|0}if(e){h=b+e|0;d=e;g=c;while(1){a[g>>0]=a[b>>0]|0;d=d+-1|0;if(!d)break;else{g=g+1|0;b=b+1|0}}c=c+e|0;b=h}if(!f)return;fl(c|0,a[b+-1>>0]|0,f|0)|0;return}function Oe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;se(b,a,d);return}function Pe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!f)return;m=c[b+4>>2]|0;n=w(c[b+8>>2]|0,m)|0;j=(f>>>0)/(m>>>0)|0;k=f-(w(j,m)|0)|0;h=m<<4;g=(c[b>>2]|0)+(w(m<<8,j)|0)+(k<<4)|0;l=m>>>0<=f>>>0;if(l){f=g+(0-(h|1))|0;i=f+1|0;a[d>>0]=a[f>>0]|0;f=i+1|0;a[d+1>>0]=a[i>>0]|0;i=f+1|0;a[d+2>>0]=a[f>>0]|0;f=i+1|0;a[d+3>>0]=a[i>>0]|0;i=f+1|0;a[d+4>>0]=a[f>>0]|0;f=i+1|0;a[d+5>>0]=a[i>>0]|0;i=f+1|0;a[d+6>>0]=a[f>>0]|0;f=i+1|0;a[d+7>>0]=a[i>>0]|0;i=f+1|0;a[d+8>>0]=a[f>>0]|0;f=i+1|0;a[d+9>>0]=a[i>>0]|0;i=f+1|0;a[d+10>>0]=a[f>>0]|0;f=i+1|0;a[d+11>>0]=a[i>>0]|0;i=f+1|0;a[d+12>>0]=a[f>>0]|0;f=i+1|0;a[d+13>>0]=a[i>>0]|0;i=f+1|0;a[d+14>>0]=a[f>>0]|0;f=i+1|0;a[d+15>>0]=a[i>>0]|0;i=f+1|0;a[d+16>>0]=a[f>>0]|0;f=i+1|0;a[d+17>>0]=a[i>>0]|0;i=f+1|0;a[d+18>>0]=a[f>>0]|0;a[d+19>>0]=a[i>>0]|0;a[d+20>>0]=a[i+1>>0]|0;d=d+21|0}i=(k|0)!=0;if(i){g=g+-1|0;a[e>>0]=a[g>>0]|0;g=g+h|0;a[e+1>>0]=a[g>>0]|0;g=g+h|0;a[e+2>>0]=a[g>>0]|0;g=g+h|0;a[e+3>>0]=a[g>>0]|0;g=g+h|0;a[e+4>>0]=a[g>>0]|0;g=g+h|0;a[e+5>>0]=a[g>>0]|0;g=g+h|0;a[e+6>>0]=a[g>>0]|0;g=g+h|0;a[e+7>>0]=a[g>>0]|0;g=g+h|0;a[e+8>>0]=a[g>>0]|0;g=g+h|0;a[e+9>>0]=a[g>>0]|0;g=g+h|0;a[e+10>>0]=a[g>>0]|0;g=g+h|0;a[e+11>>0]=a[g>>0]|0;g=g+h|0;a[e+12>>0]=a[g>>0]|0;g=g+h|0;a[e+13>>0]=a[g>>0]|0;g=g+h|0;a[e+14>>0]=a[g>>0]|0;a[e+15>>0]=a[g+h>>0]|0;e=e+16|0}g=m<<3&2147483640;f=(c[b>>2]|0)+(n<<8)+(w(j<<3,g)|0)+(k<<3)|0;if(l){k=f+(0-(g|1))|0;l=k+1|0;a[d>>0]=a[k>>0]|0;k=l+1|0;a[d+1>>0]=a[l>>0]|0;l=k+1|0;a[d+2>>0]=a[k>>0]|0;k=l+1|0;a[d+3>>0]=a[l>>0]|0;l=k+1|0;a[d+4>>0]=a[k>>0]|0;k=l+1|0;a[d+5>>0]=a[l>>0]|0;l=k+1|0;a[d+6>>0]=a[k>>0]|0;k=l+1|0;a[d+7>>0]=a[l>>0]|0;a[d+8>>0]=a[k>>0]|0;k=k+1+((n<<6)+-9)|0;l=k+1|0;a[d+9>>0]=a[k>>0]|0;k=l+1|0;a[d+10>>0]=a[l>>0]|0;l=k+1|0;a[d+11>>0]=a[k>>0]|0;k=l+1|0;a[d+12>>0]=a[l>>0]|0;l=k+1|0;a[d+13>>0]=a[k>>0]|0;k=l+1|0;a[d+14>>0]=a[l>>0]|0;l=k+1|0;a[d+15>>0]=a[k>>0]|0;a[d+16>>0]=a[l>>0]|0;a[d+17>>0]=a[l+1>>0]|0}if(!i)return;l=f+-1|0;a[e>>0]=a[l>>0]|0;l=l+g|0;a[e+1>>0]=a[l>>0]|0;l=l+g|0;a[e+2>>0]=a[l>>0]|0;l=l+g|0;a[e+3>>0]=a[l>>0]|0;l=l+g|0;a[e+4>>0]=a[l>>0]|0;l=l+g|0;a[e+5>>0]=a[l>>0]|0;l=l+g|0;a[e+6>>0]=a[l>>0]|0;l=l+g|0;a[e+7>>0]=a[l>>0]|0;n=l+g+(n-m<<6)|0;a[e+8>>0]=a[n>>0]|0;n=n+g|0;a[e+9>>0]=a[n>>0]|0;n=n+g|0;a[e+10>>0]=a[n>>0]|0;n=n+g|0;a[e+11>>0]=a[n>>0]|0;n=n+g|0;a[e+12>>0]=a[n>>0]|0;n=n+g|0;a[e+13>>0]=a[n>>0]|0;n=n+g|0;a[e+14>>0]=a[n>>0]|0;a[e+15>>0]=a[n+g>>0]|0;return}function Qe(a){a=a|0;return (a>>>0<6?2:(a|0)!=6&1)|0}function Re(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0;k=b+200|0;j=Ue(b,c[k>>2]|0)|0;m=(i|0)!=0;if(m&(j|0)!=0){y=(Qe(c[c[k>>2]>>2]|0)|0)==2;j=y?0:j}k=b+204|0;i=Ue(b,c[k>>2]|0)|0;if(m&(i|0)!=0){l=(Qe(c[c[k>>2]>>2]|0)|0)==2;l=l?0:i}else l=i;k=b+212|0;i=Ue(b,c[k>>2]|0)|0;if(m&(i|0)!=0){y=(Qe(c[c[k>>2]>>2]|0)|0)==2;i=y?0:i}switch(_e(c[b>>2]|0)|0){case 0:{if(!l){f=1;return f|0}l=g+1|0;m=g+2|0;q=g+3|0;r=g+4|0;s=g+5|0;t=g+6|0;u=g+7|0;v=g+8|0;x=g+9|0;y=g+10|0;b=g+11|0;h=g+12|0;n=g+13|0;o=g+14|0;p=g+15|0;i=g+16|0;j=e;k=0;while(1){a[j>>0]=a[l>>0]|0;a[j+1>>0]=a[m>>0]|0;a[j+2>>0]=a[q>>0]|0;a[j+3>>0]=a[r>>0]|0;a[j+4>>0]=a[s>>0]|0;a[j+5>>0]=a[t>>0]|0;a[j+6>>0]=a[u>>0]|0;a[j+7>>0]=a[v>>0]|0;a[j+8>>0]=a[x>>0]|0;a[j+9>>0]=a[y>>0]|0;a[j+10>>0]=a[b>>0]|0;a[j+11>>0]=a[h>>0]|0;a[j+12>>0]=a[n>>0]|0;a[j+13>>0]=a[o>>0]|0;a[j+14>>0]=a[p>>0]|0;a[j+15>>0]=a[i>>0]|0;k=k+1|0;if((k|0)==16)break;else j=j+16|0}break}case 1:{if(!j){f=1;return f|0}i=e;j=0;while(1){g=h+j|0;a[i>>0]=a[g>>0]|0;a[i+1>>0]=a[g>>0]|0;a[i+2>>0]=a[g>>0]|0;a[i+3>>0]=a[g>>0]|0;a[i+4>>0]=a[g>>0]|0;a[i+5>>0]=a[g>>0]|0;a[i+6>>0]=a[g>>0]|0;a[i+7>>0]=a[g>>0]|0;a[i+8>>0]=a[g>>0]|0;a[i+9>>0]=a[g>>0]|0;a[i+10>>0]=a[g>>0]|0;a[i+11>>0]=a[g>>0]|0;a[i+12>>0]=a[g>>0]|0;a[i+13>>0]=a[g>>0]|0;a[i+14>>0]=a[g>>0]|0;a[i+15>>0]=a[g>>0]|0;j=j+1|0;if((j|0)==16)break;else i=i+16|0}break}case 2:{k=g+1|0;j=(j|0)!=0;i=(l|0)!=0;do if(!(j&i)){if(j){i=((d[h>>0]|0)+8+(d[h+1>>0]|0)+(d[h+2>>0]|0)+(d[h+3>>0]|0)+(d[h+4>>0]|0)+(d[h+5>>0]|0)+(d[h+6>>0]|0)+(d[h+7>>0]|0)+(d[h+8>>0]|0)+(d[h+9>>0]|0)+(d[h+10>>0]|0)+(d[h+11>>0]|0)+(d[h+12>>0]|0)+(d[h+13>>0]|0)+(d[h+14>>0]|0)+(d[h+15>>0]|0)|0)>>>4;break}if(i)i=((d[k>>0]|0)+8+(d[g+2>>0]|0)+(d[g+3>>0]|0)+(d[g+4>>0]|0)+(d[g+5>>0]|0)+(d[g+6>>0]|0)+(d[g+7>>0]|0)+(d[g+8>>0]|0)+(d[g+9>>0]|0)+(d[g+10>>0]|0)+(d[g+11>>0]|0)+(d[g+12>>0]|0)+(d[g+13>>0]|0)+(d[g+14>>0]|0)+(d[g+15>>0]|0)+(d[g+16>>0]|0)|0)>>>4;else i=128}else i=((d[k>>0]|0)+16+(d[h>>0]|0)+(d[g+2>>0]|0)+(d[h+1>>0]|0)+(d[g+3>>0]|0)+(d[h+2>>0]|0)+(d[g+4>>0]|0)+(d[h+3>>0]|0)+(d[g+5>>0]|0)+(d[h+4>>0]|0)+(d[g+6>>0]|0)+(d[h+5>>0]|0)+(d[g+7>>0]|0)+(d[h+6>>0]|0)+(d[g+8>>0]|0)+(d[h+7>>0]|0)+(d[g+9>>0]|0)+(d[h+8>>0]|0)+(d[g+10>>0]|0)+(d[h+9>>0]|0)+(d[g+11>>0]|0)+(d[h+10>>0]|0)+(d[g+12>>0]|0)+(d[h+11>>0]|0)+(d[g+13>>0]|0)+(d[h+12>>0]|0)+(d[g+14>>0]|0)+(d[h+13>>0]|0)+(d[g+15>>0]|0)+(d[h+14>>0]|0)+(d[g+16>>0]|0)+(d[h+15>>0]|0)|0)>>>5;while(0);fl(e|0,i&255|0,256)|0;break}default:{if(!((j|0)!=0&(l|0)!=0&(i|0)!=0)){f=1;return f|0}v=d[g+16>>0]|0;t=d[h+15>>0]|0;u=d[g>>0]|0;x=t+v<<4;v=(((d[g+9>>0]|0)-(d[g+7>>0]|0)+((d[g+10>>0]|0)-(d[g+6>>0]|0)<<1)+(((d[g+11>>0]|0)-(d[g+5>>0]|0)|0)*3|0)+((d[g+12>>0]|0)-(d[g+4>>0]|0)<<2)+(((d[g+13>>0]|0)-(d[g+3>>0]|0)|0)*5|0)+(((d[g+14>>0]|0)-(d[g+2>>0]|0)|0)*6|0)+(((d[g+15>>0]|0)-(d[g+1>>0]|0)|0)*7|0)+(v-u<<3)|0)*5|0)+32>>6;u=(((d[h+8>>0]|0)-(d[h+6>>0]|0)+(t-u<<3)+((d[h+9>>0]|0)-(d[h+5>>0]|0)<<1)+(((d[h+10>>0]|0)-(d[h+4>>0]|0)|0)*3|0)+((d[h+11>>0]|0)-(d[h+3>>0]|0)<<2)+(((d[h+12>>0]|0)-(d[h+2>>0]|0)|0)*5|0)+(((d[h+13>>0]|0)-(d[h+1>>0]|0)|0)*6|0)+(((d[h+14>>0]|0)-(d[h>>0]|0)|0)*7|0)|0)*5|0)+32>>6;t=w(v,-7)|0;j=w(v,-6)|0;o=w(v,-5)|0;p=w(v,-4)|0;q=w(v,-3)|0;r=w(v,-2)|0;s=v<<1;k=v*3|0;l=v<<2;m=v*5|0;b=v*6|0;h=v*7|0;n=v<<3;i=0;do{z=(w(i+-7|0,u)|0)+x|0;g=i<<4;y=z+t|0;A=y+16>>5;a[e+g>>0]=(y|0)<-16?0:((A|0)<255?A:255)&255;A=z+j|0;y=A+16>>5;a[e+(g|1)>>0]=(A|0)<-16?0:((y|0)<255?y:255)&255;y=z+o|0;A=y+16>>5;a[e+(g|2)>>0]=(y|0)<-16?0:((A|0)<255?A:255)&255;A=z+p|0;y=A+16>>5;a[e+(g|3)>>0]=(A|0)<-16?0:((y|0)<255?y:255)&255;y=z+q|0;A=y+16>>5;a[e+(g|4)>>0]=(y|0)<-16?0:((A|0)<255?A:255)&255;A=z+r|0;y=A+16>>5;a[e+(g|5)>>0]=(A|0)<-16?0:((y|0)<255?y:255)&255;y=z-v|0;A=y+16>>5;a[e+(g|6)>>0]=(y|0)<-16?0:((A|0)<255?A:255)&255;A=z+16>>5;a[e+(g|7)>>0]=(z|0)<-16?0:((A|0)<255?A:255)&255;A=z+v|0;y=A+16>>5;a[e+(g|8)>>0]=(A|0)<-16?0:((y|0)<255?y:255)&255;y=z+s|0;A=y+16>>5;a[e+(g|9)>>0]=(y|0)<-16?0:((A|0)<255?A:255)&255;A=z+k|0;y=A+16>>5;a[e+(g|10)>>0]=(A|0)<-16?0:((y|0)<255?y:255)&255;y=z+l|0;A=y+16>>5;a[e+(g|11)>>0]=(y|0)<-16?0:((A|0)<255?A:255)&255;A=z+m|0;y=A+16>>5;a[e+(g|12)>>0]=(A|0)<-16?0:((y|0)<255?y:255)&255;y=z+b|0;A=y+16>>5;a[e+(g|13)>>0]=(y|0)<-16?0:((A|0)<255?A:255)&255;A=z+h|0;y=A+16>>5;a[e+(g|14)>>0]=(A|0)<-16?0:((y|0)<255?y:255)&255;z=z+n|0;y=z+16>>5;a[e+(g|15)>>0]=(z|0)<-16?0:((y|0)<255?y:255)&255;i=i+1|0}while((i|0)!=16)}}Ve(e,f,0);Ve(e,f+64|0,1);Ve(e,f+128|0,2);Ve(e,f+192|0,3);Ve(e,f+256|0,4);Ve(e,f+320|0,5);Ve(e,f+384|0,6);Ve(e,f+448|0,7);Ve(e,f+512|0,8);Ve(e,f+576|0,9);Ve(e,f+640|0,10);Ve(e,f+704|0,11);Ve(e,f+768|0,12);Ve(e,f+832|0,13);Ve(e,f+896|0,14);Ve(e,f+960|0,15);A=0;return A|0}function Se(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;L=(i|0)!=0;K=0;a:while(1){m=We(K)|0;l=c[m+4>>2]|0;m=ze(b,c[m>>2]|0)|0;i=Ue(b,m)|0;if(L&(i|0)!=0){J=(Qe(c[m>>2]|0)|0)==2;i=J?0:i}n=Xe(K)|0;k=c[n+4>>2]|0;n=ze(b,c[n>>2]|0)|0;j=Ue(b,n)|0;if(L&(j|0)!=0){J=(Qe(c[n>>2]|0)|0)==2;j=J?0:j}H=(i|0)!=0;G=(j|0)!=0;F=H&G;if(F){if(!(Qe(c[m>>2]|0)|0))j=d[(l&255)+(m+82)>>0]|0;else j=2;if(!(Qe(c[n>>2]|0)|0))i=d[(k&255)+(n+82)>>0]|0;else i=2;i=j>>>0<i>>>0?j:i}else i=2;if(!(c[f+12+(K<<2)>>2]|0)){J=c[f+76+(K<<2)>>2]|0;i=J+(J>>>0>=i>>>0&1)|0}a[b+82+K>>0]=i;j=c[(Ye(K)|0)>>2]|0;j=ze(b,j)|0;k=Ue(b,j)|0;if(L&(k|0)!=0){J=(Qe(c[j>>2]|0)|0)==2;k=J?0:k}j=c[(Ze(K)|0)>>2]|0;j=ze(b,j)|0;l=Ue(b,j)|0;if(L&(l|0)!=0){J=(Qe(c[j>>2]|0)|0)==2;l=J?0:l}I=c[1728+(K<<2)>>2]|0;J=c[1792+(K<<2)>>2]|0;s=(1285>>>K&1|0)!=0;if(s){p=h+(J+2)|0;n=J+3|0;o=h;j=h+J|0;m=h+(J+1)|0}else{m=(J<<4)+I|0;p=e+(m+31)|0;n=m+47|0;o=e;j=e+(m+-1)|0;m=e+(m+15)|0}A=a[j>>0]|0;z=a[m>>0]|0;E=a[o+n>>0]|0;D=a[p>>0]|0;do if(!(51>>>K&1)){m=J+-1|0;j=(m<<4)+I|0;t=a[e+j>>0]|0;u=a[e+(j+1)>>0]|0;v=a[e+(j+2)>>0]|0;n=a[e+(j+3)>>0]|0;o=a[e+(j+4)>>0]|0;p=a[e+(j+5)>>0]|0;q=a[e+(j+6)>>0]|0;r=a[e+(j+7)>>0]|0;if(s){j=h+m|0;C=n;B=q;m=r;y=t;x=u;break}else{j=e+(j+-1)|0;C=n;B=q;m=r;y=t;x=u;break}}else{j=g+I|0;C=a[g+(I+4)>>0]|0;o=a[g+(I+5)>>0]|0;p=a[g+(I+6)>>0]|0;B=a[g+(I+7)>>0]|0;m=a[g+(I+8)>>0]|0;y=a[g+(I+1)>>0]|0;x=a[g+(I+2)>>0]|0;v=a[g+(I+3)>>0]|0}while(0);j=a[j>>0]|0;switch(i|0){case 0:{if(!G){i=1;j=51;break a}j=y;k=x;l=v;m=C;n=y;o=x;p=v;q=C;r=y;s=x;t=v;u=C;i=(v&255)<<16|(C&255)<<24|y&255|(x&255)<<8;break}case 1:{if(!H){i=1;j=51;break a}m=w(A&255,16843009)|0;q=w(z&255,16843009)|0;u=w(D&255,16843009)|0;j=m&255;k=m>>>8&255;l=m>>>16&255;m=m>>>24&255;n=q&255;o=q>>>8&255;p=q>>>16&255;q=q>>>24&255;r=u&255;s=u>>>8&255;t=u>>>16&255;u=u>>>24&255;i=w(E&255,16843009)|0;break}case 2:{do if(!F){if(H){i=((A&255)+2+(z&255)+(E&255)+(D&255)|0)>>>2;break}if(G)i=((C&255)+2+(v&255)+(x&255)+(y&255)|0)>>>2;else i=128}else i=((A&255)+4+(z&255)+(E&255)+(D&255)+(C&255)+(v&255)+(x&255)+(y&255)|0)>>>3;while(0);i=w(i&255,16843009)|0;r=i&255;s=i>>>8&255;t=i>>>16&255;u=i>>>24&255;j=r;k=s;l=t;m=u;n=r;o=s;p=t;q=u;break}case 3:{if(!G){i=1;j=51;break a}G=(k|0)==0;j=x&255;k=v&255;r=C&255;E=r+2|0;n=(E+j+(k<<1)|0)>>>2&255;H=(G?C:o)&255;r=(H+2+k+(r<<1)|0)>>>2&255;l=(G?C:p)&255;E=(E+l+(H<<1)|0)>>>2;s=E&255;i=(G?C:B)&255;F=i+2|0;H=(F+H+(l<<1)|0)>>>2;t=H&255;G=(G?C:m)&255;i=(l+2+G+(i<<1)|0)>>>2;j=(k+2+(y&255)+(j<<1)|0)>>>2&255;k=n;l=r;m=s;o=r;p=s;q=t;u=i&255;i=E&255|(F+(G*3|0)|0)>>>2<<24|H<<8&65280|i<<16&16711680;break}case 4:{if(!(F&(l|0)!=0)){i=1;j=51;break a}u=y&255;i=j&255;j=A&255;q=u+2|0;H=(q+j+(i<<1)|0)>>>2;t=H&255;G=x&255;n=G+2|0;u=(n+(u<<1)+i|0)>>>2&255;m=v&255;q=((G<<1)+m+q|0)>>>2&255;G=z&255;B=G+2|0;i=(B+(j<<1)+i|0)>>>2;s=i&255;F=D&255;G=(j+2+(G<<1)+F|0)>>>2;j=t;k=u;l=q;m=(n+(C&255)+(m<<1)|0)>>>2&255;n=s;o=t;p=u;r=G&255;i=(B+(E&255)+(F<<1)|0)>>>2&255|G<<8&65280|H<<24|i<<16&16711680;break}case 5:{if(!(F&(l|0)!=0)){i=1;j=51;break a}r=j&255;t=y&255;s=(t+1+r|0)>>>1&255;u=x&255;B=u+2|0;i=(B+(t<<1)+r|0)>>>2;F=A&255;E=t+2|0;H=(E+F+(r<<1)|0)>>>2;t=(u+1+t|0)>>>1&255;q=v&255;E=((u<<1)+q+E|0)>>>2;m=q+1|0;u=(m+u|0)>>>1&255;C=C&255;G=z&255;j=s;k=t;l=u;m=(m+C|0)>>>1&255;n=H&255;o=i&255;p=E&255;q=(B+C+(q<<1)|0)>>>2&255;r=(G+2+(F<<1)+r|0)>>>2&255;i=E<<24|(F+2+(G<<1)+(D&255)|0)>>>2&255|H<<8&65280|i<<16&16711680;break}case 6:{if(!(F&(l|0)!=0)){i=1;j=51;break a}l=j&255;q=A&255;t=q+1|0;p=(t+l|0)>>>1&255;H=z&255;G=H+2|0;u=(G+(q<<1)+l|0)>>>2&255;t=(t+H|0)>>>1&255;i=D&255;q=q+2|0;F=(q+(H<<1)+i|0)>>>2;D=(H+1+i|0)>>>1;H=E&255;n=y&255;q=(q+n+(l<<1)|0)>>>2&255;m=x&255;j=p;k=q;l=(m+2+(n<<1)+l|0)>>>2&255;m=(n+2+(v&255)+(m<<1)|0)>>>2&255;n=t;o=u;r=D&255;s=F&255;i=D<<16&16711680|F<<24|(i+1+H|0)>>>1&255|G+H+(i<<1)<<6&65280;break}case 7:{if(!G){i=1;j=51;break a}F=(k|0)==0;q=y&255;n=x&255;A=v&255;r=(A+1+n|0)>>>1&255;D=C&255;t=D+1|0;s=(t+A|0)>>>1&255;u=(F?C:o)&255;t=(t+u|0)>>>1&255;i=D+2|0;H=(i+n+(A<<1)|0)>>>2;E=u+2|0;D=(E+A+(D<<1)|0)>>>2;G=(F?C:p)&255;i=(i+G+(u<<1)|0)>>>2;j=(n+1+q|0)>>>1&255;k=r;l=s;m=t;n=(A+2+q+(n<<1)|0)>>>2&255;o=H&255;p=D&255;q=i&255;u=(u+1+G|0)>>>1&255;i=D<<8&65280|(E+((F?C:B)&255)+(G<<1)|0)>>>2<<24|H&255|i<<16&16711680;break}default:{if(!H){i=1;j=51;break a}l=A&255;k=z&255;j=k+1|0;r=D&255;m=r+2|0;n=(j+r|0)>>>1&255;i=E&255;o=(k+2+i+(r<<1)|0)>>>2&255;r=(r+1+i|0)>>>1&255;s=(m+(i*3|0)|0)>>>2&255;j=(j+l|0)>>>1&255;k=(m+l+(k<<1)|0)>>>2&255;l=n;m=o;p=r;q=s;t=E;u=E;i=i<<8|i|i<<16|i<<24}}J=e+((J<<4)+I)|0;c[J>>2]=(l&255)<<16|(m&255)<<24|(k&255)<<8|j&255;c[J+16>>2]=(p&255)<<16|(q&255)<<24|(o&255)<<8|n&255;c[J+32>>2]=(t&255)<<16|(u&255)<<24|(s&255)<<8|r&255;c[J+48>>2]=i;Ve(e,f+328+(K<<6)|0,K);K=K+1|0;if(K>>>0>=16){i=0;j=51;break}}if((j|0)==51)return i|0;return 0}function Te(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;l=b+200|0;k=Ue(b,c[l>>2]|0)|0;m=(j|0)!=0;if(m&(k|0)!=0){v=(Qe(c[c[l>>2]>>2]|0)|0)==2;k=v?0:k}l=b+204|0;j=Ue(b,c[l>>2]|0)|0;if(m&(j|0)!=0){n=(Qe(c[c[l>>2]>>2]|0)|0)==2;n=n?0:j}else n=j;l=b+212|0;j=Ue(b,c[l>>2]|0)|0;if(m&(j|0)!=0){v=(Qe(c[c[l>>2]>>2]|0)|0)==2;j=v?0:j}u=(k|0)!=0;v=(n|0)!=0;t=u&v;s=t&(j|0)!=0;r=(k|0)==0;q=(n|0)==0;o=16;p=1;n=f;a:while(1){switch(i|0){case 0:{l=g+1|0;do if(!t){if(v){j=((d[l>>0]|0)+2+(d[g+2>>0]|0)+(d[g+3>>0]|0)+(d[g+4>>0]|0)|0)>>>2;k=((d[g+5>>0]|0)+2+(d[g+6>>0]|0)+(d[g+7>>0]|0)+(d[g+8>>0]|0)|0)>>>2;break}if(u){k=((d[h>>0]|0)+2+(d[h+1>>0]|0)+(d[h+2>>0]|0)+(d[h+3>>0]|0)|0)>>>2;j=k}else{j=128;k=128}}else{j=((d[l>>0]|0)+4+(d[g+2>>0]|0)+(d[g+3>>0]|0)+(d[g+4>>0]|0)+(d[h>>0]|0)+(d[h+1>>0]|0)+(d[h+2>>0]|0)+(d[h+3>>0]|0)|0)>>>3;k=((d[g+5>>0]|0)+2+(d[g+6>>0]|0)+(d[g+7>>0]|0)+(d[g+8>>0]|0)|0)>>>2}while(0);b=j&255;f=k&255;fl(e|0,b|0,4)|0;fl(e+4|0,f|0,4)|0;fl(e+8|0,b|0,4)|0;fl(e+12|0,f|0,4)|0;fl(e+16|0,b|0,4)|0;fl(e+20|0,f|0,4)|0;m=e+32|0;fl(e+24|0,b|0,4)|0;fl(e+28|0,f|0,4)|0;if(u){l=d[h+7>>0]|0;k=(d[h+5>>0]|0)+(d[h+4>>0]|0)+(d[h+6>>0]|0)|0;j=(k+2+l|0)>>>2;if(v){b=j;j=(k+4+l+(d[g+5>>0]|0)+(d[g+6>>0]|0)+(d[g+7>>0]|0)+(d[g+8>>0]|0)|0)>>>3}else b=j}else if(v){b=((d[l>>0]|0)+2+(d[g+2>>0]|0)+(d[g+3>>0]|0)+(d[g+4>>0]|0)|0)>>>2;j=((d[g+5>>0]|0)+2+(d[g+6>>0]|0)+(d[g+7>>0]|0)+(d[g+8>>0]|0)|0)>>>2}else{b=128;j=128}b=b&255;f=j&255;fl(m|0,b|0,4)|0;fl(e+36|0,f|0,4)|0;fl(e+40|0,b|0,4)|0;fl(e+44|0,f|0,4)|0;fl(e+48|0,b|0,4)|0;fl(e+52|0,f|0,4)|0;fl(e+56|0,b|0,4)|0;fl(e+60|0,f|0,4)|0;break}case 1:{if(r){j=1;k=28;break a}a[e>>0]=a[h>>0]|0;a[e+1>>0]=a[h>>0]|0;a[e+2>>0]=a[h>>0]|0;a[e+3>>0]=a[h>>0]|0;a[e+4>>0]=a[h>>0]|0;a[e+5>>0]=a[h>>0]|0;a[e+6>>0]=a[h>>0]|0;f=h+1|0;a[e+7>>0]=a[h>>0]|0;a[e+8>>0]=a[f>>0]|0;a[e+9>>0]=a[f>>0]|0;a[e+10>>0]=a[f>>0]|0;a[e+11>>0]=a[f>>0]|0;a[e+12>>0]=a[f>>0]|0;a[e+13>>0]=a[f>>0]|0;a[e+14>>0]=a[f>>0]|0;m=h+2|0;a[e+15>>0]=a[f>>0]|0;a[e+16>>0]=a[m>>0]|0;a[e+17>>0]=a[m>>0]|0;a[e+18>>0]=a[m>>0]|0;a[e+19>>0]=a[m>>0]|0;a[e+20>>0]=a[m>>0]|0;a[e+21>>0]=a[m>>0]|0;a[e+22>>0]=a[m>>0]|0;f=h+3|0;a[e+23>>0]=a[m>>0]|0;a[e+24>>0]=a[f>>0]|0;a[e+25>>0]=a[f>>0]|0;a[e+26>>0]=a[f>>0]|0;a[e+27>>0]=a[f>>0]|0;a[e+28>>0]=a[f>>0]|0;a[e+29>>0]=a[f>>0]|0;a[e+30>>0]=a[f>>0]|0;m=h+4|0;a[e+31>>0]=a[f>>0]|0;a[e+32>>0]=a[m>>0]|0;a[e+33>>0]=a[m>>0]|0;a[e+34>>0]=a[m>>0]|0;a[e+35>>0]=a[m>>0]|0;a[e+36>>0]=a[m>>0]|0;a[e+37>>0]=a[m>>0]|0;a[e+38>>0]=a[m>>0]|0;f=h+5|0;a[e+39>>0]=a[m>>0]|0;a[e+40>>0]=a[f>>0]|0;a[e+41>>0]=a[f>>0]|0;a[e+42>>0]=a[f>>0]|0;a[e+43>>0]=a[f>>0]|0;a[e+44>>0]=a[f>>0]|0;a[e+45>>0]=a[f>>0]|0;a[e+46>>0]=a[f>>0]|0;m=h+6|0;a[e+47>>0]=a[f>>0]|0;a[e+48>>0]=a[m>>0]|0;a[e+49>>0]=a[m>>0]|0;a[e+50>>0]=a[m>>0]|0;a[e+51>>0]=a[m>>0]|0;a[e+52>>0]=a[m>>0]|0;a[e+53>>0]=a[m>>0]|0;a[e+54>>0]=a[m>>0]|0;f=h+7|0;a[e+55>>0]=a[m>>0]|0;a[e+56>>0]=a[f>>0]|0;a[e+57>>0]=a[f>>0]|0;a[e+58>>0]=a[f>>0]|0;a[e+59>>0]=a[f>>0]|0;a[e+60>>0]=a[f>>0]|0;a[e+61>>0]=a[f>>0]|0;a[e+62>>0]=a[f>>0]|0;a[e+63>>0]=a[f>>0]|0;break}case 2:{if(q){j=1;k=28;break a}m=g+1|0;a[e>>0]=a[m>>0]|0;a[e+8>>0]=a[m>>0]|0;a[e+16>>0]=a[m>>0]|0;a[e+24>>0]=a[m>>0]|0;a[e+32>>0]=a[m>>0]|0;a[e+40>>0]=a[m>>0]|0;a[e+48>>0]=a[m>>0]|0;f=g+2|0;a[e+56>>0]=a[m>>0]|0;a[e+1>>0]=a[f>>0]|0;a[e+9>>0]=a[f>>0]|0;a[e+17>>0]=a[f>>0]|0;a[e+25>>0]=a[f>>0]|0;a[e+33>>0]=a[f>>0]|0;a[e+41>>0]=a[f>>0]|0;a[e+49>>0]=a[f>>0]|0;m=g+3|0;a[e+57>>0]=a[f>>0]|0;a[e+2>>0]=a[m>>0]|0;a[e+10>>0]=a[m>>0]|0;a[e+18>>0]=a[m>>0]|0;a[e+26>>0]=a[m>>0]|0;a[e+34>>0]=a[m>>0]|0;a[e+42>>0]=a[m>>0]|0;a[e+50>>0]=a[m>>0]|0;f=g+4|0;a[e+58>>0]=a[m>>0]|0;a[e+3>>0]=a[f>>0]|0;a[e+11>>0]=a[f>>0]|0;a[e+19>>0]=a[f>>0]|0;a[e+27>>0]=a[f>>0]|0;a[e+35>>0]=a[f>>0]|0;a[e+43>>0]=a[f>>0]|0;a[e+51>>0]=a[f>>0]|0;m=g+5|0;a[e+59>>0]=a[f>>0]|0;a[e+4>>0]=a[m>>0]|0;a[e+12>>0]=a[m>>0]|0;a[e+20>>0]=a[m>>0]|0;a[e+28>>0]=a[m>>0]|0;a[e+36>>0]=a[m>>0]|0;a[e+44>>0]=a[m>>0]|0;a[e+52>>0]=a[m>>0]|0;f=g+6|0;a[e+60>>0]=a[m>>0]|0;a[e+5>>0]=a[f>>0]|0;a[e+13>>0]=a[f>>0]|0;a[e+21>>0]=a[f>>0]|0;a[e+29>>0]=a[f>>0]|0;a[e+37>>0]=a[f>>0]|0;a[e+45>>0]=a[f>>0]|0;a[e+53>>0]=a[f>>0]|0;m=g+7|0;a[e+61>>0]=a[f>>0]|0;a[e+6>>0]=a[m>>0]|0;a[e+14>>0]=a[m>>0]|0;a[e+22>>0]=a[m>>0]|0;a[e+30>>0]=a[m>>0]|0;a[e+38>>0]=a[m>>0]|0;a[e+46>>0]=a[m>>0]|0;a[e+54>>0]=a[m>>0]|0;f=g+8|0;a[e+62>>0]=a[m>>0]|0;a[e+7>>0]=a[f>>0]|0;a[e+15>>0]=a[f>>0]|0;a[e+23>>0]=a[f>>0]|0;a[e+31>>0]=a[f>>0]|0;a[e+39>>0]=a[f>>0]|0;a[e+47>>0]=a[f>>0]|0;a[e+55>>0]=a[f>>0]|0;a[e+63>>0]=a[f>>0]|0;break}default:{if(!s){j=1;k=28;break a}l=d[g+8>>0]|0;b=d[h+7>>0]|0;m=d[g>>0]|0;f=(((d[g+5>>0]|0)-(d[g+3>>0]|0)+((d[g+6>>0]|0)-(d[g+2>>0]|0)<<1)+(((d[g+7>>0]|0)-(d[g+1>>0]|0)|0)*3|0)+(l-m<<2)|0)*17|0)+16>>5;m=(((d[h+4>>0]|0)-(d[h+2>>0]|0)+(b-m<<2)+((d[h+5>>0]|0)-(d[h+1>>0]|0)<<1)+(((d[h+6>>0]|0)-(d[h>>0]|0)|0)*3|0)|0)*17|0)+16>>5;l=(b+l<<4)+16+(w(m,-3)|0)|0;b=w(f,-3)|0;k=l+b|0;a[e>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+1>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+2>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+3>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+4>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+5>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+6>>0]=a[107502+(k>>5)>>0]|0;a[e+7>>0]=a[107502+(k+f>>5)>>0]|0;l=l+m|0;k=l+b|0;a[e+8>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+9>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+10>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+11>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+12>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+13>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+14>>0]=a[107502+(k>>5)>>0]|0;a[e+15>>0]=a[107502+(k+f>>5)>>0]|0;l=l+m|0;k=l+b|0;a[e+16>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+17>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+18>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+19>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+20>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+21>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+22>>0]=a[107502+(k>>5)>>0]|0;a[e+23>>0]=a[107502+(k+f>>5)>>0]|0;l=l+m|0;k=l+b|0;a[e+24>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+25>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+26>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+27>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+28>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+29>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+30>>0]=a[107502+(k>>5)>>0]|0;a[e+31>>0]=a[107502+(k+f>>5)>>0]|0;l=l+m|0;k=l+b|0;a[e+32>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+33>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+34>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+35>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+36>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+37>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+38>>0]=a[107502+(k>>5)>>0]|0;a[e+39>>0]=a[107502+(k+f>>5)>>0]|0;l=l+m|0;k=l+b|0;a[e+40>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+41>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+42>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+43>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+44>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+45>>0]=a[107502+(k>>5)>>0]|0;k=k+f|0;a[e+46>>0]=a[107502+(k>>5)>>0]|0;a[e+47>>0]=a[107502+(k+f>>5)>>0]|0;b=l+m+b|0;a[e+48>>0]=a[107502+(b>>5)>>0]|0;l=b+f|0;a[e+49>>0]=a[107502+(l>>5)>>0]|0;l=l+f|0;a[e+50>>0]=a[107502+(l>>5)>>0]|0;l=l+f|0;a[e+51>>0]=a[107502+(l>>5)>>0]|0;l=l+f|0;a[e+52>>0]=a[107502+(l>>5)>>0]|0;l=l+f|0;a[e+53>>0]=a[107502+(l>>5)>>0]|0;l=l+f|0;a[e+54>>0]=a[107502+(l>>5)>>0]|0;a[e+55>>0]=a[107502+(l+f>>5)>>0]|0;m=b+m|0;a[e+56>>0]=a[107502+(m>>5)>>0]|0;m=m+f|0;a[e+57>>0]=a[107502+(m>>5)>>0]|0;m=m+f|0;a[e+58>>0]=a[107502+(m>>5)>>0]|0;m=m+f|0;a[e+59>>0]=a[107502+(m>>5)>>0]|0;m=m+f|0;a[e+60>>0]=a[107502+(m>>5)>>0]|0;m=m+f|0;a[e+61>>0]=a[107502+(m>>5)>>0]|0;m=m+f|0;a[e+62>>0]=a[107502+(m>>5)>>0]|0;a[e+63>>0]=a[107502+(m+f>>5)>>0]|0}}Ve(e,n,o);f=o|1;Ve(e,n+64|0,f);Ve(e,n+128|0,f+1|0);Ve(e,n+192|0,o|3);if(p>>>0<2){g=g+9|0;o=o+4|0;p=2;e=e+64|0;h=h+8|0;n=n+256|0}else{j=0;k=28;break}}if((k|0)==28)return j|0;return 0}function Ue(a,b){a=a|0;b=b|0;if(!b)return 0;else return (c[a+4>>2]|0)==(c[b+4>>2]|0)|0;return 0}function Ve(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c[e>>2]|0;if((g|0)==16777215)return;m=f>>>0<16;k=m?16:8;m=m?f:f&3;b=b+(w(c[1792+(m<<2)>>2]|0,k)|0)+(c[1728+(m<<2)>>2]|0)|0;m=c[e+4>>2]|0;f=b+1|0;l=d[f>>0]|0;a[b>>0]=a[107502+(g+(d[b>>0]|0))>>0]|0;j=c[e+8>>2]|0;i=b+2|0;h=d[i>>0]|0;a[f>>0]=a[107502+(m+l)>>0]|0;f=b+3|0;l=a[107502+((c[e+12>>2]|0)+(d[f>>0]|0))>>0]|0;a[i>>0]=a[107502+(j+h)>>0]|0;a[f>>0]=l;b=b+k|0;f=c[e+20>>2]|0;l=b+1|0;i=d[l>>0]|0;a[b>>0]=a[107502+((c[e+16>>2]|0)+(d[b>>0]|0))>>0]|0;h=c[e+24>>2]|0;j=b+2|0;g=d[j>>0]|0;a[l>>0]=a[107502+(f+i)>>0]|0;l=b+3|0;i=a[107502+((c[e+28>>2]|0)+(d[l>>0]|0))>>0]|0;a[j>>0]=a[107502+(h+g)>>0]|0;a[l>>0]=i;b=b+k|0;l=c[e+36>>2]|0;i=b+1|0;j=d[i>>0]|0;a[b>>0]=a[107502+((c[e+32>>2]|0)+(d[b>>0]|0))>>0]|0;g=c[e+40>>2]|0;h=b+2|0;f=d[h>>0]|0;a[i>>0]=a[107502+(l+j)>>0]|0;i=b+3|0;j=a[107502+((c[e+44>>2]|0)+(d[i>>0]|0))>>0]|0;a[h>>0]=a[107502+(g+f)>>0]|0;a[i>>0]=j;b=b+k|0;k=c[e+52>>2]|0;i=b+1|0;j=d[i>>0]|0;a[b>>0]=a[107502+((c[e+48>>2]|0)+(d[b>>0]|0))>>0]|0;h=c[e+56>>2]|0;f=b+2|0;g=d[f>>0]|0;a[i>>0]=a[107502+(k+j)>>0]|0;b=b+3|0;e=a[107502+((c[e+60>>2]|0)+(d[b>>0]|0))>>0]|0;a[f>>0]=a[107502+(h+g)>>0]|0;a[b>>0]=e;return}function We(a){a=a|0;return 4744+(a<<3)|0}function Xe(a){a=a|0;return 4552+(a<<3)|0}function Ye(a){a=a|0;return 4360+(a<<3)|0}function Ze(a){a=a|0;return 4168+(a<<3)|0}function _e(a){a=a|0;return a+1&3|0}function $e(a){a=a|0;return (c[a+8>>2]|0)==0|0}function af(a,b,d){a=a|0;b=b|0;d=d|0;if(d|0){b=_d(a,b)|0;return b|0}d=Sd(a,1)|0;c[b>>2]=d;if((d|0)==-1){b=1;return b|0}c[b>>2]=d^1;b=0;return b|0}function bf(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0;g=Vb;Vb=Vb+16|0;f=g;if(_d(a,f)|0){b=1;Vb=g;return b|0}f=c[f>>2]|0;if(f>>>0>47){b=1;Vb=g;return b|0}c[b>>2]=d[((e|0)==0?108996:109044)+f>>0];b=0;Vb=g;return b|0}function cf(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=We(e)|0;e=Xe(e)|0;h=a[g+4>>0]|0;i=a[e+4>>0]|0;e=(c[e>>2]|0)==4;if((c[g>>2]|0)==4){g=b[f+((h&255)<<1)>>1]|0;if(e){d=g+1+(b[f+((i&255)<<1)>>1]|0)>>1;return d|0}e=d+204|0;if(!(Ue(d,c[e>>2]|0)|0)){d=g;return d|0}d=g+1+(b[(c[e>>2]|0)+28+((i&255)<<1)>>1]|0)>>1;return d|0}if(e){e=b[f+((i&255)<<1)>>1]|0;g=d+200|0;if(!(Ue(d,c[g>>2]|0)|0)){d=e;return d|0}d=e+1+(b[(c[g>>2]|0)+28+((h&255)<<1)>>1]|0)>>1;return d|0}e=d+200|0;if(!(Ue(d,c[e>>2]|0)|0)){g=0;f=0}else{g=b[(c[e>>2]|0)+28+((h&255)<<1)>>1]|0;f=1}e=d+204|0;if(!(Ue(d,c[e>>2]|0)|0)){d=g;return d|0}else{d=b[(c[e>>2]|0)+28+((i&255)<<1)>>1]|0;return ((f|0)==0?d:g+1+d>>1)|0}return 0}function df(a,b,f,g){a=a|0;b=b|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;S=Vb;Vb=Vb+128|0;Q=S+64|0;R=S;o=Ud(a)|0;m=o>>>16;do if(f>>>0<2)if((o|0)>=0){if(o>>>0>201326591){n=e[103052+(o>>>26<<1)>>1]|0;J=25;break}if(o>>>0>16777215){n=e[103116+(o>>>22<<1)>>1]|0;J=25;break}if(o>>>0>2097151){n=e[103212+((o>>>18)+-8<<1)>>1]|0;J=25;break}else{n=e[103324+(m<<1)>>1]|0;J=25;break}}else p=1;else if(f>>>0<4){if((o|0)<0){p=(o&1073741824|0)==0?2082:2;break}if(o>>>0>268435455){n=e[103388+(o>>>26<<1)>>1]|0;J=25;break}if(o>>>0>33554431){n=e[103452+(o>>>23<<1)>>1]|0;J=25;break}else{n=e[103516+(o>>>18<<1)>>1]|0;J=25;break}}else{if(f>>>0<8){f=o>>>26;if((f+-8|0)>>>0<56){n=e[103772+(f<<1)>>1]|0;J=25;break}n=e[103900+(o>>>22<<1)>>1]|0;J=25;break}if(f>>>0<17){n=e[104156+(o>>>26<<1)>>1]|0;J=25;break}f=o>>>29;if(f|0){n=e[104284+(f<<1)>>1]|0;J=25;break}n=e[104300+(o>>>24<<1)>>1]|0;J=25;break}while(0);if((J|0)==25)if(!n){R=1;Vb=S;return R|0}else p=n;n=p&31;f=o<<n;m=32-n|0;x=p>>>11;K=x&31;if(K>>>0>g>>>0){R=1;Vb=S;return R|0}v=p>>>5&63;do if(K){if(!v)n=0;else{do if(m>>>0<v>>>0)if((ce(a,n)|0)==-1){R=1;Vb=S;return R|0}else{m=32;f=Ud(a)|0;break}while(0);o=f>>>(32-v|0);f=f<<v;p=0;n=1<<v+-1;do{c[Q+(p<<2)>>2]=(n&o|0)==0?1:-1;n=n>>>1;p=p+1|0}while((n|0)!=0);m=m-v|0;n=p}u=v>>>0<3;a:do if(n>>>0<K>>>0){t=n;s=K>>>0>10&u&1;b:while(1){if(m>>>0<16){if((ce(a,32-m|0)|0)==-1){N=1;J=125;break}r=32;f=Ud(a)|0}else r=m;do if((f|0)>=0)if(f>>>0<=1073741823)if(f>>>0<=536870911)if(f>>>0<=268435455)if(f>>>0<=134217727)if(f>>>0<=67108863)if(f>>>0<=33554431)if(f>>>0<=16777215)if(f>>>0<=8388607)if(f>>>0>4194303){H=9;J=59}else{if(f>>>0>2097151){H=10;J=59;break}if(f>>>0>1048575){H=11;J=59;break}if(f>>>0>524287){H=12;J=59;break}if(f>>>0>262143){H=13;J=59;break}if(f>>>0>131071){n=14;m=f<<15;o=r+-15|0;q=s;p=(s|0)==0?4:s}else{if((f&-65536|0)!=65536){N=1;J=125;break b}n=15;m=f<<16;o=r+-16|0;q=(s|0)==0?1:s;p=12}G=m;B=n<<q;y=o;z=q;w=p;q=(q|0)==0;J=60}else{H=8;J=59}else{H=7;J=59}else{H=6;J=59}else{H=5;J=59}else{H=4;J=59}else{H=3;J=59}else{H=2;J=59}else{H=1;J=59}else{H=0;J=59}while(0);if((J|0)==59){J=0;m=H+1|0;n=f<<m;m=r-m|0;f=H<<s;if(!s){E=m;F=n;A=f;C=0;D=1}else{G=n;B=f;y=m;z=s;w=s;q=0;J=60}}if((J|0)==60){J=0;if(y>>>0<w>>>0){if((ce(a,32-y|0)|0)==-1){N=1;J=125;break}f=32;m=Ud(a)|0}else{f=y;m=G}E=f-w|0;F=m<<w;A=(m>>>(32-w|0))+B|0;C=z;D=q}s=u&(t|0)==(v|0)?A+2|0:A;n=(s+2|0)>>>1;o=D?1:C;c[Q+(t<<2)>>2]=(s&1|0)==0?n:0-n|0;t=t+1|0;if(t>>>0>=K>>>0){l=E;j=F;break a}else{m=E;f=F;s=o+(o>>>0<6&(n|0)>(3<<o+-1|0)&1)|0}}if((J|0)==125){Vb=S;return N|0}}else{l=m;j=f}while(0);if(K>>>0<g>>>0){do if(l>>>0<9)if((ce(a,32-l|0)|0)==-1){R=1;Vb=S;return R|0}else{l=32;j=Ud(a)|0;break}while(0);f=j>>>23;c:do if((g|0)==4)if((j|0)>=0)if((K|0)!=3)if(j>>>0>1073741823)k=18;else k=(K|0)==2?34:j>>>0>536870911?35:51;else k=17;else k=1;else{do switch(x&31){case 1:{if(j>>>0>268435455)k=d[108374+(j>>>27)>>0]|0;else{I=108406+f|0;J=91}break}case 2:{I=108438+(j>>>26)|0;J=91;break}case 3:{I=108502+(j>>>26)|0;J=91;break}case 4:{I=108566+(j>>>27)|0;J=91;break}case 5:{I=108598+(j>>>27)|0;J=91;break}case 6:{I=108630+(j>>>26)|0;J=91;break}case 7:{I=108694+(j>>>26)|0;J=91;break}case 8:{I=108758+(j>>>26)|0;J=91;break}case 9:{I=108822+(j>>>26)|0;J=91;break}case 10:{I=108886+(j>>>27)|0;J=91;break}case 11:{I=108918+(j>>>28)|0;J=91;break}case 12:{I=108934+(j>>>28)|0;J=91;break}case 13:{I=108950+(j>>>29)|0;J=91;break}case 14:{I=108958+(j>>>30)|0;J=91;break}default:{k=j>>31&16|1;break c}}while(0);if((J|0)==91)k=d[I>>0]|0;if(!k){R=1;Vb=S;return R|0}}while(0);g=k&15;l=l-g|0;j=j<<g;k=k>>>4&15}else k=0;n=K+-1|0;if(!n){c[b+(k<<2)>>2]=c[Q+(n<<2)>>2];O=l;h=1<<k;break}m=0;f=k;d:while(1){if(!f){c[R+(m<<2)>>2]=1;P=l;i=0}else{if(l>>>0<11){if((ce(a,32-l|0)|0)==-1){N=1;J=125;break}l=32;j=Ud(a)|0}switch(f|0){case 1:{M=108962+(j>>>31)|0;J=117;break}case 2:{M=108964+(j>>>30)|0;J=117;break}case 3:{M=108968+(j>>>30)|0;J=117;break}case 4:{M=108972+(j>>>29)|0;J=117;break}case 5:{M=108980+(j>>>29)|0;J=117;break}case 6:{M=108988+(j>>>29)|0;J=117;break}default:{if(j>>>0<=536870911)if(j>>>0<=268435455)if(j>>>0<=134217727)if(j>>>0<=67108863)if(j>>>0<=33554431)if(j>>>0>16777215)k=184;else k=j>>>0>8388607?201:j>>>0>4194303?218:j>>>0<2097152?0:235;else k=167;else k=150;else k=133;else k=116;else k=112-(j>>>29<<4)|3;if((k>>>4&15)>>>0>f>>>0){N=1;J=125;break d}else L=k}}if((J|0)==117){J=0;L=d[M>>0]|0}if(!L){N=1;J=125;break}g=L&15;i=L>>>4&15;c[R+(m<<2)>>2]=i+1;P=l-g|0;j=j<<g;i=f-i|0}m=m+1|0;if(m>>>0>=n>>>0){J=122;break}else{l=P;f=i}}if((J|0)==122){c[b+(i<<2)>>2]=c[Q+(n<<2)>>2];j=K+-2|0;h=1<<i;while(1){i=(c[R+(j<<2)>>2]|0)+i|0;h=1<<i|h;c[b+(i<<2)>>2]=c[Q+(j<<2)>>2];if(!j){O=P;break}else j=j+-1|0}}else if((J|0)==125){Vb=S;return N|0}}else{O=m;h=0}while(0);R=(ce(a,32-O|0)|0)==0;R=R?h<<16|K<<4:1;Vb=S;return R|0}function ef(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=c[a+1192>>2]|0;d=c[a+1200>>2]|0;a:do if(d){d=d+-1|0;if(d>>>0>b>>>0){f=c[a+1212>>2]|0;g=a+16|0;e=0;do{if((c[f+(d*216|0)+4>>2]|0)==(i|0)){e=e+1|0;h=c[(c[g>>2]|0)+52>>2]|0;if(e>>>0>=(h>>>0>10?h:10)>>>0)break a}d=d+-1|0}while(d>>>0>b>>>0)}}else d=b;while(0);b=a+1212|0;h=a+1172|0;g=a+1176|0;f=d;while(1){d=c[b>>2]|0;if((c[d+(f*216|0)+4>>2]|0)!=(i|0)){d=11;break}e=d+(f*216|0)+196|0;d=c[e>>2]|0;if(!d){d=11;break}c[e>>2]=d+-1;f=Vd(c[h>>2]|0,c[g>>2]|0,f)|0;if(!f){d=11;break}}if((d|0)==11)return}function ff(a){a=a|0;switch(a|0){case 0:case 1:{a=1;break}case 3:case 2:{a=2;break}default:a=4}return a|0}function gf(a,b){a=a|0;b=b|0;var d=0;if((Sd(a,1)|0)==-1){b=1;return b|0}d=b+4|0;c[d>>2]=Sd(a,2)|0;a=Sd(a,5)|0;c[b>>2]=a;if((a+-2|0)>>>0<3){b=1;return b|0}switch(a|0){case 5:case 7:case 8:{if((a|0)==6|(c[d>>2]|0)==0){b=1;return b|0}break}case 6:case 9:case 10:case 11:case 12:{if(c[d>>2]|0){b=1;return b|0}break}default:{}}b=0;return b|0}function hf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(!d)return;k=0-b|0;o=b+-1|0;l=1-b|0;m=~b;i=0;j=0;n=0;while(1){g=(i|0)!=0;f=a+(j*216|0)|0;c[a+(j*216|0)+200>>2]=g?f+-216|0:0;h=(n|0)!=0;if(h){c[a+(j*216|0)+204>>2]=f+(k*216|0);e=i>>>0<o>>>0?f+(l*216|0)|0:0}else{c[a+(j*216|0)+204>>2]=0;e=0}c[a+(j*216|0)+208>>2]=e;c[a+(j*216|0)+212>>2]=h&g?f+(m*216|0)|0:0;e=i+1|0;f=(e|0)==(b|0);j=j+1|0;if((j|0)==(d|0))break;else{i=f?0:e;n=n+(f&1)|0}}return}function jf(a){a=a|0;Zd(a,0,3388);c[a+8>>2]=32;c[a+4>>2]=256;c[a+1332>>2]=1;return}function kf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=c[b+8>>2]|0;g=a+20+(d<<2)|0;e=c[g>>2]|0;do if(!e){a=ae(92,1)|0;c[g>>2]=a;if(!a){a=65535;return a|0}}else{f=a+8|0;if((d|0)!=(c[f>>2]|0)){lf(c[e+40>>2]|0);c[(c[g>>2]|0)+40>>2]=0;lf(c[(c[g>>2]|0)+84>>2]|0);c[(c[g>>2]|0)+84>>2]=0;break}d=a+16|0;if(ee(b,c[d>>2]|0)|0){lf(c[(c[g>>2]|0)+40>>2]|0);c[(c[g>>2]|0)+40>>2]=0;lf(c[(c[g>>2]|0)+84>>2]|0);c[(c[g>>2]|0)+84>>2]=0;c[f>>2]=33;c[a+4>>2]=257;c[d>>2]=0;c[a+12>>2]=0;break}a=b+40|0;lf(c[a>>2]|0);c[a>>2]=0;a=b+84|0;lf(c[a>>2]|0);c[a>>2]=0;a=0;return a|0}while(0);e=c[g>>2]|0;d=e+92|0;do{c[e>>2]=c[b>>2];e=e+4|0;b=b+4|0}while((e|0)<(d|0));a=0;return a|0}function lf(a){a=a|0;zj(a);return}function mf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=c[b>>2]|0;g=a+148+(d<<2)|0;e=c[g>>2]|0;if(!e){a=ae(72,1)|0;c[g>>2]=a;if(!a){a=65535;return a|0}}else{f=a+4|0;if((d|0)==(c[f>>2]|0)){if((c[b+4>>2]|0)!=(c[a+8>>2]|0))c[f>>2]=257;lf(c[e+20>>2]|0);c[(c[g>>2]|0)+20>>2]=0;lf(c[(c[g>>2]|0)+24>>2]|0);c[(c[g>>2]|0)+24>>2]=0;lf(c[(c[g>>2]|0)+28>>2]|0);c[(c[g>>2]|0)+28>>2]=0;lf(c[(c[g>>2]|0)+44>>2]|0)}else{lf(c[e+20>>2]|0);c[(c[g>>2]|0)+20>>2]=0;lf(c[(c[g>>2]|0)+24>>2]|0);c[(c[g>>2]|0)+24>>2]=0;lf(c[(c[g>>2]|0)+28>>2]|0);c[(c[g>>2]|0)+28>>2]=0;lf(c[(c[g>>2]|0)+44>>2]|0)}c[(c[g>>2]|0)+44>>2]=0}e=c[g>>2]|0;d=e+72|0;do{c[e>>2]=c[b>>2];e=e+4|0;b=b+4|0}while((e|0)<(d|0));a=0;return a|0}function nf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;m=c[a+148+(b<<2)>>2]|0;n=m;if(!m){a=1;return a|0}o=c[m+4>>2]|0;p=a+20+(o<<2)|0;e=c[p>>2]|0;if(!e){a=1;return a|0}k=c[e+52>>2]|0;l=w(c[e+56>>2]|0,k)|0;g=c[m+12>>2]|0;a:do if(g>>>0>1){e=c[m+16>>2]|0;switch(e|0){case 0:{e=c[m+20>>2]|0;f=0;while(1){if((c[e+(f<<2)>>2]|0)>>>0>l>>>0){e=1;break}f=f+1|0;if(f>>>0>=g>>>0)break a}return e|0}case 2:{j=g+-1|0;g=c[m+24>>2]|0;h=c[m+28>>2]|0;i=0;while(1){e=c[g+(i<<2)>>2]|0;f=c[h+(i<<2)>>2]|0;if(!(e>>>0<=f>>>0&f>>>0<l>>>0)){e=1;f=37;break}i=i+1|0;if(((e>>>0)%(k>>>0)|0)>>>0>((f>>>0)%(k>>>0)|0)>>>0){e=1;f=37;break}if(i>>>0>=j>>>0)break a}if((f|0)==37)return e|0;break}default:{if((e+-3|0)>>>0<3){if((c[m+36>>2]|0)>>>0>l>>>0)e=1;else break a;return e|0}if((e|0)!=6)break a;if((c[m+40>>2]|0)>>>0<l>>>0)e=1;else break a;return e|0}}}while(0);f=a+4|0;e=c[f>>2]|0;do if((e|0)!=256){g=a+3380|0;if(!(c[g>>2]|0)){if((e|0)==(b|0))break;e=a+8|0;if((o|0)==(c[e>>2]|0)){c[f>>2]=b;c[a+12>>2]=n;break}if(!d){a=1;return a|0}else{c[f>>2]=b;c[a+12>>2]=m;c[e>>2]=o;q=c[p>>2]|0;c[a+16>>2]=q;b=c[q+52>>2]|0;q=c[q+56>>2]|0;c[a+1176>>2]=w(q,b)|0;c[a+1340>>2]=b;c[a+1344>>2]=q;c[g>>2]=1;break}}c[g>>2]=0;f=a+1212|0;lf(c[f>>2]|0);c[f>>2]=0;e=a+1172|0;lf(c[e>>2]|0);c[e>>2]=0;g=a+1176|0;c[f>>2]=ae(216,c[g>>2]|0)|0;b=ae(4,c[g>>2]|0)|0;c[e>>2]=b;e=c[f>>2]|0;if((b|0)==0|(e|0)==0){a=65535;return a|0}Zd(e,0,(c[g>>2]|0)*216|0);b=a+16|0;hf(c[f>>2]|0,c[(c[b>>2]|0)+52>>2]|0,c[g>>2]|0);f=c[b>>2]|0;do if((c[a+1216>>2]|0)==0?(c[f+16>>2]|0)!=2:0){if((c[f+80>>2]|0?(q=c[f+84>>2]|0,c[q+920>>2]|0):0)?(c[q+944>>2]|0)==0:0){e=1;break}e=0}else e=1;while(0);q=w(c[f+56>>2]|0,c[f+52>>2]|0)|0;e=of(a+1220|0,q,c[f+88>>2]|0,c[f+44>>2]|0,c[f+12>>2]|0,e)|0;if(e|0){a=e;return a|0}}else{c[f>>2]=b;c[a+12>>2]=m;c[a+8>>2]=o;e=c[p>>2]|0;c[a+16>>2]=e;f=c[e+52>>2]|0;do if(f){e=c[e+56>>2]|0;if(e>>>0>(4294967295/(f>>>0)|0)>>>0){a=65535;return a|0}else{c[a+1176>>2]=w(e,f)|0;break}}else{c[a+1176>>2]=0;e=c[e+56>>2]|0}while(0);c[a+1340>>2]=f;c[a+1344>>2]=e;c[a+3380>>2]=1}while(0);a=0;return a|0}function of(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=c[a>>2]|0;if((h|0)!=0?(j=a+28|0,(c[j>>2]|0)!=-1):0){i=0;do{lf(c[h+(i*40|0)+4>>2]|0);h=c[a>>2]|0;c[h+(i*40|0)+4>>2]=0;i=i+1|0}while(i>>>0<((c[j>>2]|0)+1|0)>>>0)}lf(h);c[a>>2]=0;j=a+4|0;lf(c[j>>2]|0);c[j>>2]=0;j=a+12|0;lf(c[j>>2]|0);c[j>>2]=0;return pf(a,b,d,e,f,g)|0}function pf(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;if(b>>>0>11184810){a=65535;return a|0}c[a+36>>2]=65535;e=e>>>0>1?e:1;c[a+24>>2]=e;h=a+28|0;c[h>>2]=(g|0)==0?d:e;c[a+32>>2]=f;c[a+56>>2]=g;c[a+44>>2]=0;c[a+40>>2]=0;c[a+48>>2]=0;e=ae(40,17)|0;c[a>>2]=e;if(!e){a=65535;return a|0}Zd(e,0,680);a:do if((c[h>>2]|0)!=-1){d=b*384|47;g=0;while(1){f=ae(1,d)|0;e=c[a>>2]|0;c[e+(g*40|0)+4>>2]=f;if(!f){e=65535;break}c[e+(g*40|0)>>2]=f+(0-f&15);g=g+1|0;if(g>>>0>=((c[h>>2]|0)+1|0)>>>0)break a}return e|0}while(0);e=a+4|0;c[e>>2]=ae(4,17)|0;h=ae(16,(c[h>>2]|0)+1|0)|0;c[a+12>>2]=h;e=c[e>>2]|0;if((h|0)==0|(e|0)==0){a=65535;return a|0}Zd(e,0,68);c[a+20>>2]=0;c[a+16>>2]=0;a=0;return a|0}function qf(a){a=a|0;var b=0,d=0;c[a+1196>>2]=0;c[a+1192>>2]=0;d=c[a+1176>>2]|0;if(!d)return;a=c[a+1212>>2]|0;b=0;do{c[a+(b*216|0)+4>>2]=0;c[a+(b*216|0)+196>>2]=0;b=b+1|0}while(b>>>0<d>>>0);return}function rf(a){a=a|0;return (c[a+1188>>2]|0)==0|0}function sf(a){a=a|0;var b=0,d=0,e=0;if(!(c[a+1404>>2]|0)){if((c[a+1196>>2]|0)==(c[a+1176>>2]|0)){e=1;return e|0}}else{e=c[a+1176>>2]|0;if(!e){e=1;return e|0}a=c[a+1212>>2]|0;b=0;d=0;do{d=d+((c[a+(b*216|0)+196>>2]|0)!=0&1)|0;b=b+1|0}while(b>>>0<e>>>0);if((d|0)==(e|0)){e=1;return e|0}}e=0;return e|0}function tf(a,b){a=a|0;b=b|0;var d=0;d=c[a+16>>2]|0;uf(c[a+1172>>2]|0,c[a+12>>2]|0,b,c[d+52>>2]|0,c[d+56>>2]|0);return}
function zj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[30881]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0<f>>>0)return;if((c[30882]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[30879]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[30877]=c[30877]&~(1<<d);i=h;b=g;break}else{c[a+12>>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){b=h+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){a=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=123812+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[30878]=c[30878]&~(1<<b);i=h;b=g;break}}else{i=f+16|0;c[((c[i>>2]|0)==(h|0)?i:f+20|0)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){if((c[30883]|0)==(j|0)){j=(c[30880]|0)+b|0;c[30880]=j;c[30883]=i;c[i+4>>2]=j|1;if((i|0)!=(c[30882]|0))return;c[30882]=0;c[30879]=0;return}if((c[30882]|0)==(j|0)){j=(c[30879]|0)+b|0;c[30879]=j;c[30882]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[30877]=c[30877]&~(1<<d);break}else{c[b+12>>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){b=j+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){d=0;break}}else b=d;while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=123812+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[30878]=c[30878]&~(1<<a);break}}else{e=g+16|0;c[((c[e>>2]|0)==(j|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[30882]|0)){c[30879]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=123548+(a<<1<<2)|0;b=c[30877]|0;a=1<<a;if(!(b&a)){c[30877]=b|a;a=d;b=d+8|0}else{b=d+8|0;a=c[b>>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)e=31;else{h=(a+1048320|0)>>>16&8;j=a<<h;g=(j+520192|0)>>>16&4;j=j<<g;e=(j+245760|0)>>>16&2;e=14-(g|h|e)+(j<<e>>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;a=123812+(e<<2)|0;c[i+28>>2]=e;c[i+20>>2]=0;c[i+16>>2]=0;b=c[30878]|0;d=1<<e;a:do if(!(b&d)){c[30878]=b|d;c[a>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i}else{a=c[a>>2]|0;b:do if((c[a+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(f|0)){a=b;break b}else{e=e<<1;a=b}}c[d>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break a}while(0);h=a+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=a;c[i+24>>2]=0}while(0);j=(c[30885]|0)+-1|0;c[30885]=j;if(j|0)return;a=123964;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[30885]=-1;return}function Aj(a,b){a=a|0;b=b|0;if(!a){b=22;return b|0}b=yj(8)|0;c[b>>2]=0;c[b+4>>2]=38177486;c[a>>2]=b;b=0;return b|0}function Bj(a){a=a|0;if((c[a+4>>2]|0)!=38177486){a=0;return a|0}a=c[a>>2]|0;return a|0}function Cj(a,b){a=a|0;b=b|0;if((c[a+4>>2]|0)!=38177486){b=22;return b|0}c[a>>2]=b;b=0;return b|0}function Dj(a,b){a=a|0;b=b|0;if((c[a>>2]|0)==324508639)return 0;bc[b&3]();c[a>>2]=324508639;return 0}function Ej(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=yj(b)|0;if(a|0)break;a=Tk()|0;if(!a){a=0;break}bc[a&3]()}return a|0}function Fj(a){a=a|0;zj(a);return}function Gj(a,b){a=a|0;b=b|0;var d=0,e=0;e=uj(b)|0;d=Ej(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=Hj(d)|0;dl(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function Hj(a){a=a|0;return a+12|0}function Ij(a,b){a=a|0;b=b|0;c[a>>2]=102924;Gj(a+4|0,b);return}function Jj(a){a=a|0;return 1}function Kj(a){a=a|0;Ia()}function Lj(a){a=a|0;Ia()}function Mj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=Vb;Vb=Vb+16|0;f=g;if(e>>>0>4294967279)Kj(b);if(e>>>0<11)a[b+11>>0]=e;else{i=e+16&-16;h=Ej(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=h}Nj(b,d,e)|0;a[f>>0]=0;Oj(b+e|0,f);Vb=g;return}function Nj(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)dl(a|0,b|0,c|0)|0;return a|0}function Oj(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Pj(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)fl(a|0,(Qj(c)|0)&255|0,b|0)|0;return a|0}function Qj(a){a=a|0;return a&255|0}function Rj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=a[d+11>>0]|0;h=g<<24>>24<0;g=h?c[d+4>>2]|0:g&255;if(g>>>0<e>>>0)Lj(b);else{g=g-e|0;Mj(b,(h?c[d>>2]|0:d)+e|0,g>>>0<f>>>0?g:f);return}}function Sj(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;o=Vb;Vb=Vb+16|0;n=o;if((-18-d|0)>>>0<e>>>0)Kj(b);if((a[b+11>>0]|0)<0)m=c[b>>2]|0;else m=b;if(d>>>0<2147483623){k=e+d|0;l=d<<1;k=k>>>0<l>>>0?l:k;k=k>>>0<11?11:k+16&-16}else k=-17;l=Ej(k)|0;if(g|0)Nj(l,m,g)|0;if(i|0)Nj(l+g|0,j,i)|0;e=f-h|0;f=e-g|0;if(f|0)Nj(l+g+i|0,m+g+h|0,f)|0;if((d|0)!=10)Fj(m);c[b>>2]=l;c[b+8>>2]=k|-2147483648;i=e+i|0;c[b+4>>2]=i;a[n>>0]=0;Oj(l+i|0,n);Vb=o;return}function Tj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=Vb;Vb=Vb+16|0;g=j;h=b+11|0;f=a[h>>0]|0;i=f<<24>>24<0;if(i)f=c[b+4>>2]|0;else f=f&255;do if(f>>>0>=d>>>0)if(i){i=(c[b>>2]|0)+d|0;a[g>>0]=0;Oj(i,g);c[b+4>>2]=d;break}else{a[g>>0]=0;Oj(b+d|0,g);a[h>>0]=d;break}else Uj(b,d-f|0,e)|0;while(0);Vb=j;return}function Uj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=Vb;Vb=Vb+16|0;i=k;if(d|0){j=b+11|0;f=a[j>>0]|0;if(f<<24>>24<0){g=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{g=10;h=f&255}if((g-h|0)>>>0<d>>>0){Vj(b,g,h+d-g|0,h,h,0,0);f=a[j>>0]|0}if(f<<24>>24<0)g=c[b>>2]|0;else g=b;Pj(g+h|0,d,e)|0;f=h+d|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;Oj(g+f|0,i)}Vb=k;return b|0}function Vj(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0;if((-17-d|0)>>>0<e>>>0)Kj(b);if((a[b+11>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<2147483623){j=e+d|0;k=d<<1;j=j>>>0<k>>>0?k:j;j=j>>>0<11?11:j+16&-16}else j=-17;k=Ej(j)|0;if(g|0)Nj(k,l,g)|0;e=f-h-g|0;if(e|0)Nj(k+g+i|0,l+g+h|0,e)|0;if((d|0)!=10)Fj(l);c[b>>2]=k;c[b+8>>2]=j|-2147483648;return}function Wj(b,d){b=b|0;d=d|0;var e=0,f=0;e=a[b+11>>0]|0;f=e<<24>>24<0;if(f)e=c[b+4>>2]|0;else e=e&255;if(e>>>0<=d>>>0)Lj(b);if(f)b=c[b>>2]|0;return b+d|0}function Xj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=Vb;Vb=Vb+16|0;i=k;j=b+11|0;f=a[j>>0]|0;h=f<<24>>24<0;if(h){g=(c[b+8>>2]&2147483647)+-1|0;f=c[b+4>>2]|0}else{g=10;f=f&255}if((g-f|0)>>>0>=e>>>0){if(e|0){if(h)g=c[b>>2]|0;else g=b;Nj(g+f|0,d,e)|0;f=f+e|0;if((a[j>>0]|0)<0)c[b+4>>2]=f;else a[j>>0]=f;a[i>>0]=0;Oj(g+f|0,i)}}else Sj(b,g,f+e-g|0,f,f,0,e,d);Vb=k;return b|0}function Yj(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=Vb;Vb=Vb+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=Zj()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=122795;_j(122745,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if($b[c[(c[256]|0)+16>>2]&7](1024,e,f)|0){i=c[f>>2]|0;i=Yb[c[(c[i>>2]|0)+8>>2]&7](i)|0;c[g>>2]=122795;c[g+4>>2]=a;c[g+8>>2]=i;_j(122659,g)}else{c[i>>2]=122795;c[i+4>>2]=a;_j(122704,i)}}_j(122783,h)}function Zj(){var a=0,b=0;a=Vb;Vb=Vb+16|0;if(!(Dj(124004,3)|0)){b=Bj(c[31002]|0)|0;Vb=a;return b|0}else _j(122934,a);return 0}function _j(a,b){a=a|0;b=b|0;var d=0;d=Vb;Vb=Vb+16|0;c[d>>2]=b;b=c[25646]|0;Ri(b,a,d)|0;xj(10,b)|0;Ia()}function $j(a){a=a|0;return}function ak(a){a=a|0;$j(a);Fj(a);return}function bk(a){a=a|0;return}function ck(a){a=a|0;return}function dk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=Vb;Vb=Vb+64|0;f=h;if(!(hk(a,b,0)|0))if((b|0)!=0?(g=lk(b,1048,1032,0)|0,(g|0)!=0):0){b=f+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;fc[c[(c[g>>2]|0)+28>>2]&3](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];b=1}else b=0}else b=0;else b=1;Vb=h;return b|0}function ek(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(hk(a,c[b+8>>2]|0,g)|0)kk(0,b,d,e,f);return}function fk(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(hk(b,c[d+8>>2]|0,g)|0)){if(hk(b,c[d>>2]|0,g)|0){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else jk(0,d,e,f);while(0);return}function gk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(hk(a,c[b+8>>2]|0,0)|0)ik(0,b,d,e);return}function hk(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function ik(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function jk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if((c[b+4>>2]|0)==(d|0)?(f=b+28|0,(c[f>>2]|0)!=1):0)c[f>>2]=e;return}function kk(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;f=c[b>>2]|0;if(!f){c[b>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((f|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}f=d+24|0;b=c[f>>2]|0;if((b|0)==2){c[f>>2]=g;b=g}if((b|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function lk(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=Vb;Vb=Vb+64|0;n=p;m=c[d>>2]|0;o=d+(c[m+-8>>2]|0)|0;m=c[m+-4>>2]|0;c[n>>2]=f;c[n+4>>2]=d;c[n+8>>2]=e;c[n+12>>2]=g;d=n+16|0;e=n+20|0;g=n+24|0;h=n+28|0;i=n+32|0;j=n+40|0;k=d;l=k+36|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));b[d+36>>1]=0;a[d+38>>0]=0;a:do if(hk(m,f,0)|0){c[n+48>>2]=1;hc[c[(c[m>>2]|0)+20>>2]&3](m,n,o,o,1,0);d=(c[g>>2]|0)==1?o:0}else{gc[c[(c[m>>2]|0)+24>>2]&7](m,n,o,1,0);switch(c[n+36>>2]|0){case 0:{d=(c[j>>2]|0)==1&(c[h>>2]|0)==1&(c[i>>2]|0)==1?c[e>>2]|0:0;break a}case 1:break;default:{d=0;break a}}if((c[g>>2]|0)!=1?!((c[j>>2]|0)==0&(c[h>>2]|0)==1&(c[i>>2]|0)==1):0){d=0;break}d=c[d>>2]|0}while(0);Vb=p;return d|0}function mk(a){a=a|0;$j(a);Fj(a);return}function nk(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(hk(a,c[b+8>>2]|0,g)|0)kk(0,b,d,e,f);else{a=c[a+8>>2]|0;hc[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e,f,g)}return}function ok(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;do if(!(hk(b,c[d+8>>2]|0,g)|0)){if(!(hk(b,c[d>>2]|0,g)|0)){i=c[b+8>>2]|0;gc[c[(c[i>>2]|0)+24>>2]&7](i,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;f=d+52|0;a[f>>0]=0;j=d+53|0;a[j>>0]=0;b=c[b+8>>2]|0;hc[c[(c[b>>2]|0)+20>>2]&3](b,d,e,e,1,g);if(a[j>>0]|0)if(!(a[f>>0]|0)){f=1;b=11}else b=15;else{f=0;b=11}do if((b|0)==11){c[h>>2]=e;j=d+40|0;c[j>>2]=(c[j>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(f){b=15;break}else{f=4;break}}if(f)b=15;else f=4}while(0);if((b|0)==15)f=3;c[i>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else jk(0,d,e,f);while(0);return}function pk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(hk(a,c[b+8>>2]|0,0)|0)ik(0,b,d,e);else{a=c[a+8>>2]|0;fc[c[(c[a>>2]|0)+28>>2]&3](a,b,d,e)}return}function qk(a){a=a|0;return}function rk(){var a=0;a=Vb;Vb=Vb+16|0;if(!(Aj(124008,27)|0)){Vb=a;return}else _j(122983,a)}function sk(a){a=a|0;var b=0;b=Vb;Vb=Vb+16|0;zj(a);if(!(Cj(c[31002]|0,0)|0)){Vb=b;return}else _j(123033,b)}function tk(){var a=0,b=0;a=Zj()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)uk(c[b+12>>2]|0);uk(vk()|0)}function uk(a){a=a|0;var b=0;b=Vb;Vb=Vb+16|0;bc[a&3]();_j(123086,b)}function vk(){var a=0;a=c[25708]|0;c[25708]=a+0;return a|0}function wk(a){a=a|0;return}function xk(a){a=a|0;c[a>>2]=102924;Bk(a+4|0);return}function yk(a){a=a|0;xk(a);Fj(a);return}function zk(a){a=a|0;return Ak(a+4|0)|0}function Ak(a){a=a|0;return c[a>>2]|0}function Bk(a){a=a|0;var b=0,d=0;if(Jj(a)|0?(b=Ck(c[a>>2]|0)|0,d=b+8|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a+-1|0)<0):0)Fj(b);return}function Ck(a){a=a|0;return a+-12|0}function Dk(a){a=a|0;xk(a);Fj(a);return}function Ek(a){a=a|0;$j(a);Fj(a);return}function Fk(a,b,c){a=a|0;b=b|0;c=c|0;return hk(a,b,0)|0}function Gk(a){a=a|0;$j(a);Fj(a);return}function Hk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=Vb;Vb=Vb+64|0;h=j;c[d>>2]=c[c[d>>2]>>2];if(!(Ik(a,b,0)|0))if(((b|0)!=0?(e=lk(b,1048,1136,0)|0,(e|0)!=0):0)?(c[e+8>>2]&~c[a+8>>2]|0)==0:0){a=a+12|0;b=e+12|0;if(!(hk(c[a>>2]|0,c[b>>2]|0,0)|0)?!(hk(c[a>>2]|0,1168,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=lk(a,1048,1032,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=lk(f,1048,1032,0)|0,(i|0)!=0):0){a=h+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[h>>2]=i;c[h+8>>2]=g;c[h+12>>2]=-1;c[h+48>>2]=1;fc[c[(c[i>>2]|0)+28>>2]&3](i,h,c[d>>2]|0,1);if((c[h+24>>2]|0)==1){c[d>>2]=c[h+16>>2];a=1}else a=0}else a=0}else a=1}else a=0;else a=1;Vb=j;return a|0}function Ik(a,b,c){a=a|0;b=b|0;c=c|0;if(hk(a,b,0)|0)a=1;else a=hk(b,1176,0)|0;return a|0}function Jk(a){a=a|0;$j(a);Fj(a);return}function Kk(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(hk(b,c[d+8>>2]|0,h)|0)kk(0,d,e,f,g);else{p=d+52|0;i=a[p>>0]|0;j=d+53|0;k=a[j>>0]|0;o=c[b+12>>2]|0;l=b+16+(o<<3)|0;a[p>>0]=0;a[j>>0]=0;Ok(b+16|0,d,e,f,g,h);a:do if((o|0)>1){m=d+24|0;n=b+8|0;o=d+54|0;b=b+24|0;do{if(a[o>>0]|0)break a;if(!(a[p>>0]|0)){if(a[j>>0]|0?(c[n>>2]&1|0)==0:0)break a}else{if((c[m>>2]|0)==1)break a;if(!(c[n>>2]&2))break a}a[p>>0]=0;a[j>>0]=0;Ok(b,d,e,f,g,h);b=b+8|0}while(b>>>0<l>>>0)}while(0);a[p>>0]=i;a[j>>0]=k}return}function Lk(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a:do if(!(hk(b,c[d+8>>2]|0,g)|0)){if(!(hk(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;Pk(b+16|0,d,e,f,g);h=b+24|0;if((q|0)<=1)break;b=c[b+8>>2]|0;if((b&2|0)==0?(j=d+36|0,(c[j>>2]|0)!=1):0){if(!(b&1)){b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[j>>2]|0)==1)break a;Pk(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+24|0;i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[j>>2]|0)==1?(c[b>>2]|0)==1:0)break a;Pk(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}b=d+54|0;while(1){if(a[b>>0]|0)break a;Pk(h,d,e,f,g);h=h+8|0;if(h>>>0>=k>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(q=d+20|0,(c[q>>2]|0)!=(e|0)):0){c[d+32>>2]=f;p=d+44|0;if((c[p>>2]|0)==4)break;k=b+16+(c[b+12>>2]<<3)|0;f=d+52|0;l=d+53|0;n=d+54|0;m=b+8|0;o=d+24|0;h=0;i=b+16|0;j=0;b:while(1){if(i>>>0>=k>>>0){b=18;break}a[f>>0]=0;a[l>>0]=0;Ok(i,d,e,e,1,g);if(a[n>>0]|0){b=18;break}do if(a[l>>0]|0){if(!(a[f>>0]|0))if(!(c[m>>2]&1)){h=1;b=18;break b}else{h=1;b=j;break}if((c[o>>2]|0)==1){b=23;break b}if(!(c[m>>2]&2)){b=23;break b}else{h=1;b=1}}else b=j;while(0);i=i+8|0;j=b}do if((b|0)==18){if((!j?(c[q>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[o>>2]|0)==2:0){a[n>>0]=1;if(h){b=23;break}else{h=4;break}}if(h)b=23;else h=4}while(0);if((b|0)==23)h=3;c[p>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else jk(0,d,e,f);while(0);return}function Mk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(hk(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;Nk(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{Nk(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0<g>>>0)}}else ik(0,d,e,f);while(0);return}function Nk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;fc[c[(c[a>>2]|0)+28>>2]&3](a,b,d+f|0,(g&2|0)==0?2:e);return}function Ok(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;i=c[a+4>>2]|0;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;hc[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e+h|0,(i&2|0)==0?2:f,g);return}function Pk(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[a+4>>2]|0;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;gc[c[(c[a>>2]|0)+24>>2]&7](a,b,d+g|0,(h&2|0)==0?2:e,f);return}function Qk(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Rk(a){a=a|0;return}function Sk(a){a=a|0;return}function Tk(){var a=0;a=c[31003]|0;c[31003]=a+0;return a|0}function Uk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=Vb;Vb=Vb+16|0;e=f;c[e>>2]=c[d>>2];a=$b[c[(c[a>>2]|0)+16>>2]&7](a,b,e)|0;if(a)c[d>>2]=c[e>>2];Vb=f;return a&1|0}function Vk(a){a=a|0;if(!a)a=0;else a=(lk(a,1048,1136,0)|0)!=0&1;return a|0}function Wk(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=w(e,f)|0;d=a>>>16;a=(c>>>16)+(w(e,d)|0)|0;e=b>>>16;b=w(e,f)|0;return (z((a>>>16)+(w(e,d)|0)+(((a&65535)+b|0)>>>16)|0),a+b<<16|c&65535|0)|0}function Xk(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=Wk(e,f)|0;a=A()|0;return (z((w(b,f)|0)+(w(d,e)|0)+a|a&0|0),c|0|0)|0}function Yk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z(b+d+(c>>>0<a>>>0|0)>>>0|0),c|0)|0}function Zk(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 (z(d|0),a-c>>>0|0)|0}function _k(a){a=a|0;return (a?31-(x(a^a-1)|0)|0:32)|0}function $k(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z(n|0),f)|0}else{if(!g){n=0;f=0;return (z(n|0),f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z(n|0),f)|0}}g=(i|0)==0;do if(h){if(!g){g=(x(i|0)|0)-(x(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<<i;b=k>>>(m>>>0)&b;g=0;i=l<<i;break}if(!f){n=0;f=0;return (z(n|0),f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z(n|0),f)|0}g=h-1|0;if(g&h|0){i=(x(h|0)|0)+33-(x(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<<m|l>>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z(o|0),p)|0}else{p=_k(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z(o|0),p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z(o|0),p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z(o|0),p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((_k(i|0)|0)>>>0);return (z(o|0),p)|0}g=(x(i|0)|0)-(x(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (z(o|0),p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z(o|0),p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Yk(m|0,l|0,-1,-1)|0;d=A()|0;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Zk(k|0,d|0,e|0,n|0)|0;p=A()|0;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Zk(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=A()|0;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z(o|0),p)|0}function al(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return $k(a,b,c,d,0)|0}function bl(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z(b>>>c|0);return a>>>c|(b&(1<<c)-1)<<32-c}z(0);return b>>>c-32|0}function cl(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z(b<<c|(a&(1<<c)-1<<32-c)>>>32-c|0);return a<<c}z(a<<c-32|0);return 0}function dl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192){Pa(b|0,d|0,e|0)|0;return b|0}h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function el(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else dl(b,c,d)|0;return b|0}function fl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;i=d|d<<8|d<<16|d<<24;g=f-64|0;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function gl(a){a=a|0;var b=0,d=0,e=0;e=Ma()|0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){Va(b|0)|0;X(12);return -1}if((b|0)>(e|0))if(!(Qa(b|0)|0)){X(12);return -1}c[i>>2]=b;return d|0}function hl(a,b){a=a|0;b=b|0;return Yb[a&7](b|0)|0}function il(a,b,c,d,e,f,g){a=a|0;b=b|0;c=+c;d=d|0;e=e|0;f=f|0;g=g|0;return Zb[a&1](b|0,+c,d|0,e|0,f|0,g|0)|0}function jl(a,b,c){a=a|0;b=b|0;c=c|0;return _b[a&3](b|0,c|0)|0}function kl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return $b[a&7](b|0,c|0,d|0)|0}function ll(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ac[a&1](b|0,c|0,d|0,e|0)|0}function ml(a){a=a|0;bc[a&3]()}function nl(a,b){a=a|0;b=b|0;cc[a&31](b|0)}function ol(a,b,c){a=a|0;b=b|0;c=c|0;dc[a&31](b|0,c|0)}function pl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ec[a&7](b|0,c|0,d|0)}function ql(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;fc[a&3](b|0,c|0,d|0,e|0)}function rl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;gc[a&7](b|0,c|0,d|0,e|0,f|0)}function sl(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;hc[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function tl(a){a=a|0;y(0);return 0}function ul(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;y(1);return 0}function vl(a,b){a=a|0;b=b|0;y(2);return 0}function wl(a,b,c){a=a|0;b=b|0;c=c|0;y(3);return 0}function xl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;y(4);return 0}function yl(){y(5)}function zl(){T()}function Al(a){a=a|0;y(6)}function Bl(a,b){a=a|0;b=b|0;y(7)}function Cl(a,b,c){a=a|0;b=b|0;c=c|0;y(8)}function Dl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;y(9)}function El(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;y(10)}function Fl(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;y(11)}
 
// EMSCRIPTEN_END_FUNCS
var Yb=[tl,Ji,zk,fd,od,qd,rd,tl];var Zb=[ul,Si];var _b=[vl,kd,md,Dh];var $b=[wl,Ki,dk,Fk,Hk,ud,Ld,wl];var ac=[xl,Li];var bc=[yl,zl,Yj,rk];var cc=[Al,vd,wd,yd,Bd,Cd,Dd,Ed,_c,Gd,Hd,$j,ak,bk,ck,mk,xk,yk,Dk,Ek,Gk,Jk,gd,rc,sc,pd,td,sk,Al,Al,Al,Al];var dc=[Bl,Rc,pc,qc,jd,tc,uc,vc,wc,xc,yc,zc,Ac,Bc,Cc,Dc,sd,Ti,Bl,Bl,Bl,Bl,Bl,Bl,Bl,Bl,Bl,Bl,Bl,Bl,Bl,Bl];var ec=[Cl,Qc,Fd,hd,id,ld,nd,Cl];var fc=[Dl,gk,pk,Mk];var gc=[El,fk,ok,Lk,Oe,Ne,El,El];var hc=[Fl,ek,nk,Kk];return{___cxa_can_catch:Uk,___cxa_is_pointer_type:Vk,___errno_location:Ni,___getTypeName:Ii,___muldi3:Xk,___udivdi3:al,_bitshift64Lshr:bl,_bitshift64Shl:cl,_free:zj,_i64Add:Yk,_i64Subtract:Zk,_main:nc,_malloc:yj,_memcpy:dl,_memmove:el,_memset:fl,_sbrk:gl,_strlen:uj,dynCall_ii:hl,dynCall_iidiiii:il,dynCall_iii:jl,dynCall_iiii:kl,dynCall_iiiii:ll,dynCall_v:ml,dynCall_vi:nl,dynCall_vii:ol,dynCall_viii:pl,dynCall_viiii:ql,dynCall_viiiii:rl,dynCall_viiiiii:sl,establishStackSpace:mc,globalCtors:ic,stackAlloc:jc,stackRestore:lc,stackSave:kc}})
 
 
// EMSCRIPTEN_END_ASM
(asmGlobalArg,asmLibraryArg,buffer);var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _main=Module["_main"]=asm["_main"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _strlen=Module["_strlen"]=asm["_strlen"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var globalCtors=Module["globalCtors"]=asm["globalCtors"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iidiiii=Module["dynCall_iidiiii"]=asm["dynCall_iidiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){memoryInitializer=locateFile(memoryInitializer)}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")};var doBrowserLoad=function(){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"]){var useRequest=function(){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()}}}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 calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=function callMain(args){args=args||[];ensureInitRuntime();var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(Module["thisProgram"]);for(var i=1;i<argc;i++){HEAP32[(argv>>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=0;try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module["noExitRuntime"]=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exception thrown: "+toLog);Module["quit"](1,e)}}finally{calledMain=true}};function run(args){args=args||Module["arguments"];if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;exitRuntime();if(Module["onExit"])Module["onExit"](status)}Module["quit"](status,new ExitStatus(status))}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}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}Module["noExitRuntime"]=true;run();