Monica视频监控处理程序
xc
2021-04-19 3b63fa3d397abb1cc8128cc3a22f1f40a6598046
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[ptr++>>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i<size){var curr=slab[i];type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}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 allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}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()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}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=100368,DYNAMIC_BASE=5343248,DYNAMICTOP_PTR=100336;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;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){FS.ignorePermissions=false;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 getUniqueRunDependency(id){return id}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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mgAAAKYAAAC3AAAAjAAAAIgAAACZAAAAmgAAAKoAAACZAAAAigAAAIoAAAB6AAAAeQAAAHoAAAB5AAAApwAAAJcAAAC3AAAAjAAAAJcAAAC3AAAAjAAAAAAAAAAAAAAAjQAAAG8AAACMAAAAjAAAAIwAAACMAAAAAAAAAAAAAACKAAAAmQAAAIgAAACnAAAAmAAAAJgAAABrAAAApwAAAFsAAAB6AAAAawAAAKcAAABrAAAApwAAAFsAAABrAAAAawAAAKcAAAAAAAAAAAAAAIwAAABcAAAAiQAAAIoAAACMAAAAmAAAAIoAAACLAAAAmQAAAEoAAACVAAAAXAAAAIsAAABrAAAAegAAAJgAAACMAAAAswAAAKYAAAC2AAAAjAAAAOMAAAB6AAAAxQAAAJoAAADEAAAAxAAAAKcAAACaAAAAmAAAAKcAAAC2AAAAtgAAAIYAAACVAAAAiAAAAJkAAAB5AAAAiAAAAIkAAACpAAAAwgAAAKYAAACnAAAAmgAAAKcAAACJAAAAtgAAAJoAAADEAAAApwAAAKcAAACaAAAAmAAAAKcAAAC2AAAAtgAAAIYAAACVAAAAiAAAAJkAAAB5AAAAiAAAAHoAAACpAAAA0AAAAKYAAACnAAAAmgAAAJgAAACnAAAAtgAAAG4AAABuAAAAfAAAAH0AAACMAAAAmQAAAH0AAAB/AAAAjAAAAG0AAABvAAAAjwAAAH8AAABvAAAATwAAAGwAAAB7AAAAPwAAAH0AAABuAAAAXgAAAG4AAABfAAAATwAAAH0AAABvAAAAbgAAAE4AAABuAAAAbwAAAG8AAABfAAAAXgAAAGwAAAB7AAAAbAAAAH0AAABuAAAAfAAAAG4AAABfAAAAXgAAAH0AAABvAAAAbwAAAE8AAAB9AAAAfgAAAG8AAABvAAAATwAAAGwAAAB7AAAAXQAAAAAAAAAAAAAAmQAAAIoAAACKAAAAfAAAAIoAAABeAAAA4AAAAKcAAAB6AAAAAAAAAAAAAAAAAAAAXgAAAIoAAAC2AAAAmgAAAJUAAABrAAAApwAAAJoAAACVAAAAXAAAAKcAAACaAAAAuAAAAJoAAACLAAAAmgAAAJoAAACaAAAAiwAAAJoAAACaAAAAAAAAAAAAAAAAAAAAjAAAAMYAAACpAAAAxgAAAAABBAUCAwQFBgYICAcHCGNAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFpaWFVSTklDPTYuJh8WDQT88+rh2tLKw723sq6rqKamWldQRjkrGQn359XHurCppqapsLrH1ef3CRkrOUZQV1paUkMuFvzhyrerpqiyw9rzDSY9TlhaVUk2HwTq0r2upllLMhLuzrWnp7XO7hIyS1lZSzIS7s61p6e1zu4SMktZWEMf88quprLS/CZJWlU9FurDq6a32gQuTlpSNg3hvahXOQnVsKa65xlGWlAr98epqcf3K1BaRhnnuqaw1Qk5V1Uu872mt+omUlg2/MOmsuEfTlo9BMqortoWSVpDDdKrUyTcra3cJFNTJNytrdwkU1Mk3K2t3CRTUyTcra3cJFNSFsqmww1OVR/Spr0ESVgm2qi3/ENaLuGrsvM9WjbqrlAJuqnnOVor1abHGVdG97Cw90ZXGcem1StaOeepuglQTvyutw1VQ+qowx9aNtqm0i5aJsqm4T1YFr2r80lSBLJL7qfOMlkStbUSWTLOp+5LS+6nzjJZErW1ElkyzqfuS0nhpupOQ9qm81I90qj8VTbKqwRYLsOuDVomvbIWWh+3RtWpCVoZsMc5UOem91crurorV/em51A5x7AZWgmp1UZDyrImVeqmBFoNqOFSLrfDPUnSrh9Y86b8Whar2k42vUDAwEBAwMBAQMDAQEDAwEBAwMBAQMDAQEDAwEBAwMBAPbfSUh+o81r8phZV2rI2Q73KTiar6loEpg1Y4a4uScM5sOda96krRrrVVwmmGVDHx1AZpglX1bpGK6n3WuewOTar/FjSw1INpiZDsupa4bdJH6YWTr3aWvOuPS6oBFXKMqcSS7XuWc7OWe61SxKnMjKnEku17lnOzlnutUsSpzIupiY2ph89qBZDqw1JrgROsvxSt/NVvepYw+Faytpa0iumORmpRgmwUPe6V+fHWtXVWsfnV7r3ULAJRqkZOaYrJqhJ/L1a0uFVsg09pjYWrlLqylrD806rHy6mQwS3WNokrVPc3FOtJCStU9zcU60kJK1T3NxTrSQkrVPc3FOtJB+yWsMENqhS2upJpkPz0lWrLg29WrcWJq5Yyvw9pk7hGbpasCsJx1epOffVUKZG5+dGplDV9zmpV8cJK7BauhkWw1WmSdr8LrJarjbz4UOoWL0fDcpSpk7SBCa3Wqs96hLOS6dZtTLu7jK1WadLzhISzkunWbUy7u4ytVmnS84SDdo9slimVbc24QQW0kOuWqZSvS7q/B/KSataqE7DJvMJ5yvHRrBXplqpULo51Rn39xnVObpQqVqmV7BGxyvnCQTzFuEm0jbDQ7dOrlWoWqZaplirUrJJvT3KLtof6g38AAAAAAMAAAADAAAAAgAAAAAAAAADAAAABAAAAAQAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBEQERAREhESEhESFRMUFRQTFRgWFhgYFhYYGRkbHhsZGR0fIyMfHSQpLCkkLzY2L0FGQVhYcxAQEBAQEBAQEBARERERERISEhISEhQUFBQUFBQYGBgYGBgYGBkZGRkZGRkcHBwcHBwhISEhISkpKSk2NjZHR1v/////AgAAAAIAAAABAAAA/////wIAAAABAAAAAQAAAAAAAAABAAEADAALAAoACwAQAAsAKAAhABgACwAUAAsAIAALAFAAIQASAAsADwALAEAAIQCgAGMABAADAAMAAgACAAEAAAAAAAAAAAAAAAAA3hIElQAAAAD///////////////8AAAAAAAAAAAAAAAACAADAAwAAwAQAAMAFAADABgAAwAcAAMAIAADACQAAwAoAAMALAADADAAAwA0AAMAOAADADwAAwBAAAMARAADAEgAAwBMAAMAUAADAFQAAwBYAAMAXAADAGAAAwBkAAMAaAADAGwAAwBwAAMAdAADAHgAAwB8AAMAAAACzAQAAwwIAAMMDAADDBAAAwwUAAMMGAADDBwAAwwgAAMMJAADDCgAAwwsAAMMMAADDDQAA0w4AAMMPAADDAAAMuwEADMMCAAzDAwAMwwQADNMAAAAA/////////////////////////////////////////////////////////////////wABAgMEBQYHCAn/////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP///////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAARAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAARAAoKERERAAoAAAIACQsAAAAJAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA0AAAAEDQAAAAAJDgAAAAAADgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAPAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAABISEgAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAAoAAAAACgAAAAAJCwAAAAAACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAADAxMjM0NTY3ODlBQkNERUYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgACAAIAAgACAAIAAgACAAIAAyACIAIgAiACIAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAFgBMAEwATABMAEwATABMAEwATABMAEwATABMAEwATACNgI2AjYCNgI2AjYCNgI2AjYCNgEwATABMAEwATABMAEwAjVCNUI1QjVCNUI1QjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUIxQjFCMUEwATABMAEwATABMAI1gjWCNYI1gjWCNYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGCMYIxgjGBMAEwATABMACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAgAAAAMAAAAEAAAA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otMAAAAABACa1gAAAQAEAJrWAAACAAQAmtYAAAMABACa1gAABAAEAJrWAAAGAAQAmtYAAAgABACa1gAACgAEAJrWAAANAAQAvtkAAAQABAC+2QAABQAEAL7ZAAAGAAQAvtkAAAcABAC+2QAACAAEAL7ZAAAJAAQAvtkAAAsABAC+2QAADQAEAAAAAAD5////NQAAAI3////9AQAA+Pr//2wGAABk2///SEkAAJwkAABsBgAACAUAAP0BAABzAAAANQAAAAcAAAAAAAAA+f///zUAAACN/////QEAAPj6//9sBgAAZNv//0hJAACcJAAAbAYAAAgFAAD9AQAAcwAAADUAAAAHAAAAAAAAAPj///83AAAAfv////QBAACd+v//0gUAAJbZ//88SQAAziIAAPgGAACtBAAABAIAAGQAAAA0AAAABwAAAAAAAAD4////NwAAAH7////0AQAAnfr//9IFAACW2f//PEkAAM4iAAD4BgAArQQAAAQCAABkAAAANAAAAAcAAAAAAAAA9////zgAAABv////6AEAAEL6//8qBQAAytf//xpJAAAAIQAAdgcAAFIEAAAIAgAAVwAAADMAAAAGAAAAAAAAAPf///84AAAAb////+gBAABC+v//KgUAAMrX//8aSQAAACEAAHYHAABSBAAACAIAAFcAAAAzAAAABgAAAAAAAAD2////OAAAAF/////ZAQAA6fn//3QEAAAA1v//4kgAADMfAADnBwAA+AMAAAoCAABKAAAAMQAAAAUAAAAAAAAA9v///zgAAABf////2QEAAOn5//90BAAAANb//+JIAAAzHwAA5wcAAPgDAAAKAgAASgAAADEAAAAFAAAAAAAAAPb///85AAAATv///8gBAACR+f//sAMAADvU//+SSAAAaB0AAEsIAACeAwAACQIAAD0AAAAwAAAABQAAAAAAAAD2////OQAAAE7////IAQAAkfn//7ADAAA71P//kkgAAGgdAABLCAAAngMAAAkCAAA9AAAAMAAAAAUAAAAAAAAA9f///zkAAAA9////swEAADr5///eAgAAetL//y1IAACgGwAAoggAAEYDAAAHAgAAMQAAAC4AAAAEAAAAAAAAAPX///85AAAAPf///7MBAAA6+f//3gIAAHrS//8tSAAAoBsAAKIIAABGAwAABwIAADEAAAAuAAAABAAAAAAAAAD0////OQAAACz///+bAQAA5vj///0BAAC+0P//skcAAN0ZAADtCAAA7wIAAAICAAAmAAAALAAAAAQAAAAAAAAA9P///zkAAAAs////mwEAAOb4///9AQAAvtD//7JHAADdGQAA7QgAAO8CAAACAgAAJgAAACwAAAAEAAAA//////P///85AAAAGv///4ABAACV+P//DwEAAArP//8hRwAAHhgAACsJAACaAgAA/AEAABwAAAAqAAAABAAAAP/////z////OQAAABr///+AAQAAlfj//w8BAAAKz///IUcAAB4YAAArCQAAmgIAAPwBAAAcAAAAKgAAAAQAAAD/////8f///zgAAAAI////YgEAAEb4//8SAAAAXc3//3pGAABkFgAAXgkAAEcCAAD0AQAAEgAAACgAAAADAAAA//////H///84AAAACP///2IBAABG+P//EgAAAF3N//96RgAAZBYAAF4JAABHAgAA9AEAABIAAAAoAAAAAwAAAP/////w////NwAAAPb+//9AAQAA/Pf//wb///+4y///v0UAALEUAACGCQAA9gEAAOsBAAAJAAAAJwAAAAMAAAD/////8P///zcAAAD2/v//QAEAAPz3//8G////uMv//79FAACxFAAAhgkAAPYBAADrAQAACQAAACcAAAADAAAA/////+////82AAAA5P7//xsBAAC19///7f3//x3K///wRAAABhMAAKIJAACnAQAA4AEAAAEAAAAlAAAAAwAAAP/////v////NgAAAOT+//8bAQAAtff//+39//8dyv//8EQAAAYTAACiCQAApwEAAOABAAABAAAAJQAAAAMAAAD/////7v///zQAAADR/v//8wAAAHP3///H/P//jcj//wxEAABiEQAAtAkAAFsBAADUAQAA+f///yMAAAACAAAA/////+7///80AAAA0f7///MAAABz9///x/z//43I//8MRAAAYhEAALQJAABbAQAA1AEAAPn///8jAAAAAgAAAP/////s////MgAAAL/+///HAAAANvf//5P7//8Jx///FUMAAMcPAAC8CQAAEgEAAMYBAADy////IQAAAAIAAAD/////7P///zIAAAC//v//xwAAADb3//+T+///Ccf//xVDAADHDwAAvAkAABIBAADGAQAA8v///yEAAAACAAAA/////+v///8vAAAArf7//5cAAAD/9v//Ufr//5DF//8LQgAANQ4AALoJAADMAAAAuAEAAOv///8fAAAAAgAAAP/////r////LwAAAK3+//+XAAAA//b//1H6//+Qxf//C0IAADUOAAC6CQAAzAAAALgBAADr////HwAAAAIAAAD/////6f///ywAAACb/v//ZQAAAM72//8D+f//JsT///BAAACtDAAArwkAAIgAAACpAQAA5f///x0AAAACAAAA/////+n///8sAAAAm/7//2UAAADO9v//A/n//ybE///wQAAArQwAAK8JAACIAAAAqQEAAOX///8dAAAAAgAAAP/////o////KQAAAIn+//8uAAAApPb//6n3///Jwv//wz8AADALAACcCQAASAAAAJkBAADg////HAAAAAIAAAD/////6P///ykAAACJ/v//LgAAAKT2//+p9///ycL//8M/AAAwCwAAnAkAAEgAAACZAQAA4P///xwAAAACAAAA/////+b///8lAAAAeP7///X///+A9v//Qvb//3vB//+FPgAAvgkAAIAJAAALAAAAiAEAANv///8aAAAAAQAAAP/////m////JQAAAHj+///1////gPb//0L2//97wf//hT4AAL4JAACACQAACwAAAIgBAADb////GgAAAAEAAABmFwEAfBcBAKMXAQDJFwEA3xcBAAYYAQAsGAEAQhgBAGkYAQCPGAEApRgBAMwYAQDwGAEABhkBAC0ZAQDwGAEAURkBAHgZAQDwGAEAURkBAHgZAQDwGAEAURkBAHgZAQCcGQEAshkBANkZAQAAAAAAAAAAFL4oCh3NpVMkqX9ZJnViRixyjHMtgfyxLgAAADTXIK40lNZiNZauHTb0R942ek+kN2W+NzwkyJ88vigKPfXGdj0LjOU9YWNWPi46yT4+/z0/vKK0PwWLFkTNpVNEapuRRPtl0EQAABBFUWRQRRWOkUW7eNNF8x8WRql/WUYAlJ1GTFniRhHMJ0f86G1H46y0R78U/EfXDiJMdWJGTOcDa0zo8Y9MPyu1TMCu2kxJewBNxo8mTSrrTE1yjHNNpXKaTdOcwU0SCulNgrkQTkiqOE6R22BOkEyJToH8sU6h6tpONhYET4t+LU/vIldPuAKBTz4dq0/gcdVPAAAAVIFjFVQq4ypUsX5AVM81VlQ+CGxUu/WBVAP+l1TXIK5U9l3EVCS12lQkJvFUvLAHVbFUHlXLETVV1OdLVZTWYlXY3XlVbP2QVRw1qFW4hL9VDuzWVe9q7lUrAQZWlq4dVgJzNVZDTk1WLUBlVpZIfVZTZ5VWPZytVivnxVb0R95Wc772VoBKD1f36ydXsqJAV41uWVdkT3JXFEWLV3pPpFd1br1X4qHWV6Hp71fJogRcyloRXMQcHlyn6CpcZb43XO6dRFwzh1FcJnpeXLl2a1zcfHhcg4yFXJ+lklwkyJ9cAvSsXC4pulyaZ8dcOq/UXAAA4lzgWe9czrz8XL4oCl2knRddcxslXSCiMl2gMUBd58lNXelqW12cFGld9cZ2XemBhF1tRZJddhGgXfrlrV3vwrtdSqjJXQGW110LjOVdXYrzXe6QAV6znw9epbYdXrjVK17k/DleHyxIXmFjVl6gomRe1OlyXvM4gV71j49e0e6dXn9VrF72w7peLjrJXh+4117APeZeCcv0XvNfA191/BFfh6AgXyJML18+/z1f07lMX9t7W19MRWpfIBZ5X1Duh1/UzZZfpbSlX7yitF8SmMNfoJTSX1+Y4V9Io/BfVLX/Xz9nB2Re9w5kBYsWZDAiHmTdvCVkB1stZK38NGTJoTxkWkpEZF32S2TNpVNkqVhbZO0OY2SWyGpkooVyZAxGemTTCYJk9NCJZGqbkWQ1aZlkUDqhZLoOqWRu5rBkbMG4ZK+fwGQ1gchk+2XQZP9N2GQ+OeBktifoZGMZ8GREDvhkVQYAZZUBCGUAABBllAEYZU8GIGUtDihlLhkwZU4nOGWKOEBl4kxIZVFkUGXVflhlbpxgZRe9aGXP4HBlkwd5ZWIxgWU5XollFY6RZfTAmWXV9qFltS+qZZJrsmVpqrplOezCZQAxy2W7eNNlaMPbZQUR5GWQYexlB7X0ZWgL/WWxZAVm4MANZvMfFmbogR5mvOYmZm9OL2b9uDdmZiZAZqeWSGa+CVFmqX9ZZmf4YWb1c2pmUvJyZnxze2Zx94NmL36MZrUHlWYAlJ1mDyOmZuC0rmZxSbdmwOC/Zsx6yGaUF9FmFLfZZkxZ4mY6/upm3KXzZjBQ/GY1/QRn6qwNZ0tfFmdZFB9nEcwnZ3GGMGd4QzlnJQNCZ3XFSmdnilNn+lFcZywcZWf86G1nZ7h2Z22Kf2cLX4hnQTaRZwwQmmds7KJnX8urZ+OstGf2kL1nmHfGZ8dgz2eBTNhnxTrhZ5Ir6mfmHvNnvxT8Z46GAmz/AwdssIILbKECEGzRgxRsQAYZbO2JHWzXDiJs/pQmbGAcK2z+pC9s1y40bOm5OGw1Rj1sudNBbHViRmxp8kpsk4NPbPMVVGyJqVhsUz5dbFHUYWyDa2Zs5wNrbH6db2xHOHRsQNR4bGpxfWzDD4JsTK+GbANQi2zo8Y9s+5SUbDo5mWyl3p1sPIWibP4sp2zq1atsAICwbD8rtWyn17lsN4W+bO4zw2zM48ds0ZTMbPtG0WxL+tVswK7abFhk32wUG+Rs89LobPWL7WwYRvJsXQH3bMO9+2xJewBt7zkFbbT5CW2Yug5tmnwTbbo/GG33Ax1tUMkhbcaPJm1XVyttAyAwbcrpNG2rtDltpoA+bblNQ23lG0htKutMbYW7UW34jFZtgV9bbSEzYG3WB2VtoN1pbX+0bm1yjHNteGV4bZI/fW2/GoJt/faGbU7Ui22wspBtIpKVbaVymm04VJ9t2jakbYwaqW1M/61tGuWybfXLt23es7xt05zBbdWGxm3icctt+13QbR9L1W1NOdpthSjfbccY5G0SCultZvztbcLv8m0m5Pdtktn8bQTQAW59xwZu/b8LboK5EG4MtBVunK8abi+sH27HqSRuY6gpbgKoLm6jqDNuSKo4bu6sPW6WsEJuP7VHbum6TG6TwVFuPclWbufRW26R22BuOeZlbt/xam6E/m9uJgx1bsYaem5iKn9u+zqEbpBMiW4hX45urnKTbjWHmG63nJ1uM7OibqnKp24Y46xugfyxbuIWt247MrxujU7BbtZrxm4XistuTqnQbnzJ1W6h6tpuuwzgbsov5W7PU+puyHjvbrae9G6Xxflube3+bjYWBG/yPwlvoGoOb0GWE2/TwhhvWPAdb80eI280Tihvi34tb9KvMm8J4jdvMBU9b0ZJQm9LfkdvPrRMbyDrUW/vIldvrFtcb1eVYW/uz2Zvcgtsb+JHcW8+hXZvhcN7b7gCgW/WQoZv3oOLb9HFkG+uCJZvdEybbySRoG+91qVvPh2rb6hksG/7rLVvNfa6b1ZAwG9fi8VvTtfKbyQk0G/gcdVvg8DabwoQ4G94YOVvyrHqbwEE8G8dV/VvHKv6bwAAAHTjqgJ0OFYFdP8BCHQ3rgp04FoNdPoHEHSGtRJ0gWMVdO4RGHTLwBp0GHAddNUfIHQD0CJ0oIAldK0xKHQq4yp0FpUtdHJHMHQ9+jJ0dq01dB9hOHQ2FTt0vMk9dLF+QHQUNEN05elFdCSgSHTRVkt07A1OdHXFUHRrfVN0zzVWdJ/uWHTdp1t0iGFedKAbYXQl1mN0FpFmdHRMaXQ+CGx0dMRudBaBcXQlPnR0n/t2dIS5eXTWd3x0kzZ/dLv1gXROtYR0THWHdLY1inSK9ox0yLePdHJ5knSFO5V0A/6XdOvAmnQ+hJ10+kegdCAMo3Sv0KV0qJWodAtbq3TXIK50DOewdKqts3SxdLZ0ITy5dPoDvHQ7zL505JTBdPZdxHRxJ8d0U/HJdJ27zHRPhs90aVHSdOsc1XTU6Nd0JLXadNyB3XT7TuB0gRzjdG7q5XTCuOh0fIfrdJ1W7nQkJvF0EvbzdGbG9nQhl/l0QWj8dMc5/3SzCwJ1Bd4EdbywB3XYgwp1W1cNdUIrEHWO/xJ1QNQVdVapGHXRfht1sVQedfUqIXWeASR1q9gmdR2wKXXyhyx1LGAvdco4MnXLETV1MOs3dfnEOnUlnz11tXlAdahUQ3X+L0Z1twtJddTnS3VTxE51NKFRdXl+VHUgXFd1KjpadZYYXXVk9191lNZidSe2ZXUblmh1cXZrdSlXbnVDOHF1vhl0dZr7dnXY3Xl1d8B8dXijf3XZhoJ1m2qFdb5OiHVCM4t1JxiOdWz9kHUR45N1F8mWdX2vmXVDlpx1an2fdfBkonXWTKV1HDWodcIdq3XHBq51K/CwdfDZs3UTxLZ1la65dXeZvHW4hL91V3DCdVZcxXWzSMh1bjXLdYkiznUBENF12P3TdQ7s1nWh2tl1k8ncdeK433WQqOJ1m5jldQSJ6HXLeet172rudXBc8XVPTvR1i0D3dSQz+nUbJv11bhkAdh4NA3YrAQZ2lfUIdlzqC3Z/3w52/tQRdtrKFHYSwRd2prcadpauHXbjpSB2i50jdo+VJnbvjSl2qoYsdsF/L3Y0eTJ2AnM1dittOHawZzt2kGI+dstdQXZgWUR2UVVHdpxRSnZDTk12REtQdp9IU3ZVRlZ2ZURZdtBCXHaVQV92tEBidi1AZXYAQGh2LUBrdrNAbnaUQXF2zkJ0dmJEd3ZPRnp2lkh9djZLgHYvToN2gVGGdixViXYxWYx2jl2PdkViknZTZ5V2u2yYdntym3aUeJ52BX+hds+FpHbxjKd2a5Sqdj2crXZopLB26qyzdsS1tnb2vrl2gMi8dmHSv3aa3MJ2K+fFdhPyyHZS/ct26QjPdtcU0nYcIdV2uC3Ydqo623b0R952lVXhdo1j5Hbbced2f4DqdnuP7XbMnvB2da7zdnO+9nbIzvl2ct/8dnPw/3bKAQN3dxMGd3olCXfSNwx3gEoPd4RdEnfecBV3jYQYd5GYG3frrB53msEhd57WJHf36yd3pgErd6kXLncBLjF3rkQ0d7BbN3cHczp3soo9d7KiQHcGu0N3r9NGd6zsSXf+BU13ox9Qd505U3frU1Z3jW5Zd4OJXHfMpF93asBid1vcZXeg+Gh3OBVsdyQyb3dkT3J392x1d92KeHcWqXt3o8d+d4PmgXe1BYV3OyWIdxRFi3c/ZY53voWRd4+mlHeyx5d3Kemad/EKnncMLaF3ek+kdzpyp3dMlap3sLitd2fcsHdvALR3yiS3d3ZJund1br13xZPAd2e5w3da38Z3nwXKdzYszXceU9B3V3rTd+Kh1ne+ydl37PHcd2oa4Hc6Q+N3Wmzmd8yV6XeOv+x3oenvdwUU83e6PvZ3wGn5dxaV/He8wP93WXYBfH0MA3zJogR8PTkGfNnPB3ydZgl8if0KfJ6UDHzaKw58PsMPfMpaEXx+8hJ8WooUfF0iFnyJuhd83FIZfFfrGnz6gxx8xBwefLa1H3zQTiF8EegifHmBJHwKGyZ8wrQnfKFOKXyn6Cp81oIsfCsdLnyoty98TFIxfBftMnwKiDR8JCM2fGW+N3zNWTl8XfU6fBORPHzxLD589sg/fCJlQXx0AUN87p1EfI86RnxW10d8RXRJfFoRS3yWrkx8+UtOfIPpT3wzh1F8CiVTfAjDVHwtYVZ8eP9XfOqdWXyCPFt8QdtcfCZ6XnwyGWB8ZLhhfL1XY3w892R84pZmfK42aHyg1ml8uXZrfPcWbXxct2586FdwfJn4cXxxmXN8bzp1fJLbdnzcfHh8TB56fOK/e3yeYX18gAN/fIilgHy2R4J8CuqDfIOMhXwiL4d86NGIfNN0inzjF4x8GruNfHZej3z4AZF8n6WSfGxJlHxf7ZV8d5GXfLU1mXwZ2pp8oX6cfFAjnnwkyJ98HW2hfDsSo3x/t6R86FymfHcCqHwrqKl8BE6rfAL0rHwmmq58bkCwfNzmsXxvjbN8JzS1fAXbtnwHgrh8Lim6fHrQu3zsd718gh+/fD3HwHwdb8J8IhfEfEy/xXyaZ8d8DRDJfKa4ynxjYcx8RArOfEuzz3x2XNF8xQXTfDqv1HzSWNZ8kALYfHKs2Xx5Vtt8pADdfPOq3nxnVeB8AADifL2q43yeVeV8owDnfM2r6HwcV+p8jgLsfCWu7XzgWe98vwXxfMOx8nzqXfR8Ngr2fKa293w6Y/l88g/7fM68/HzOaf588xYAfTvEAX2ncQN9Nx8FfevMBn3Cegh9vigKfd7WC30hhQ19iDMPfRPiEH3CkBJ9lD8UfYruFX2knRd94UwZfUL8Gn3Hqxx9b1sefToLIH0quyF9PWsjfXMbJX3NyyZ9SnwofeosKn2u3St9lo4tfaE/L33P8DB9IKIyfZVTNH0tBTZ96LY3fcZoOX3IGjt97cw8fTV/Pn2gMUB9LuRBfd+WQ320SUV9q/xGfcavSH0DY0p9YxZMfefJTX2NfU99VjFRfULlUn1RmVR9g01WfdgBWH1Ptll96WpbfaYfXX2G1F59iIlgfa0+Yn3182N9YKllfe1eZ32cFGl9b8pqfWSAbH17Nm59texvfRGjcX2QWXN9MhB1ffXGdn3cfXh95DR6fQ/se31do319zFp/fV4SgX0SyoJ96YGEfeI5hn398Yd9OqqJfZpii30bG419v9OOfYWMkH1tRZJ9d/6TfaO3lX3xcJd9YSqZffPjmn2onZx9fleefXYRoH2Qy6F9zIWjfSpApX2p+qZ9S7WofQ5wqn3zKqx9+uWtfSOhr31tXLF92RezfWfTtH0Wj7Z950q4fdoGun3vwrt9JX+9fXw7v33198B9kLTCfUxxxH0qLsZ9KevHfUqoyX2MZct97yLNfXTgzn0bntB94lvSfcsZ1H3V19V9AZbXfU5U2X28Ett9TNHcffyP3n3OTuB9wQ3ifdXM430LjOV9YUvnfdkK6X1yyup9K4rsfQZK7n0CCvB9H8rxfV2K8328SvV9PAv3fdzL+H2ejPp9gU38fYQO/n2oz/997pABflRSA37aEwV+gtUGfkqXCH40WQp+PRsMfmjdDX6znw9+H2IRfqwkE35Z5xR+J6oWfhZtGH4lMBp+VPMbfqW2HX4Veh9+pz0hflgBI34qxSR+HYkmfjBNKH5kESp+uNUrfiyaLX7BXi9+diMxfkvoMn5BrTR+V3I2fo03OH7k/Dl+W8I7fvKHPX6pTT9+gBNBfnjZQn6Pn0R+x2VGfh8sSH6X8kl+L7lLfuh/TX7ARk9+uA1RftDUUn4JnFR+YWNWftkqWH5x8ll+KbpbfgGCXX75SV9+ERJhfknaYn6gomR+F2tmfq4zaH5l/Gl+PMVrfjKObX5IV29+fiBxftTpcn5Js3R+3nx2fpJGeH5mEHp+Wtp7fm2kfX6gbn9+8ziBfmUDg372zYR+qJiGfnhjiH5oLop+ePmLfqfEjX71j49+Y1uRfvAmk36c8pR+aL6WflSKmH5eVpp+iCKcftHunX46u59+wYehfmhUo34vIaV+FO6mfhi7qH48iKp+f1WsfuEirn5i8K9+A76xfsKLs36hWbV+nie3frv1uH72w7p+UZK8fstgvn5jL8B+G/7BfvHMw37nm8V++2rHfi46yX6BCct+8tjMfoGozn4weNB+/kfSfuoX1H7159V+H7jXfmiI2X7PWNt+VSndfvr53n6+yuB+oJvifqFs5H7APeZ+/g7oflvg6X7Wset+cIPtfilV734AJ/F+9fjyfgnL9H48nfZ+jW/4fv1B+n6LFPx+N+f9fgK6/37rjAF/818DfxkzBX9dBgd/wNkIf0GtCn/hgAx/n1QOf3soEH91/BF/jdATf8SkFX8ZeRd/jE0Zfx4iG3/O9hx/m8sef4egIH+RdSJ/uUokfwAgJn9k9Sd/58opf4egK39Gdi1/Ikwvfx0iMX81+DJ/bM40f8GkNn8zezh/xFE6f3IoPH8+/z1/KNY/fzCtQX9WhEN/mltFf/wyR397Ckl/GOJKf9O5TH+skU5/o2lQf7dBUn/pGVR/OfJVf6fKV38yo1l/23tbf6FUXX+FLV9/hwZhf6bfYn/juGR/PpJmf7ZraH9MRWp//x5sf9D4bX++0m9/yqxxf/OGc386YXV/njt3fyAWeX+/8Hp/fMt8f1amfn9NgYB/YlyCf5Q3hH/jEoZ/UO6Hf9rJiX+BpYt/RoGNfyhdj38nOZF/QxWTf33xlH/UzZZ/SKqYf9mGmn+IY5x/U0CefzwdoH9C+qF/Zdejf6W0pX8Ckqd/fW+pfxRNq3/IKq1/mgivf4jmsH+UxLJ/vKK0fwKBtn9kX7h/5D26f4AcvH85+71/D9q/fwK5wX8SmMN/P3fFf4lWx3/vNcl/cxXLfxP1zH/Q1M5/qrTQf6CU0n+zdNR/5FTWfzA12H+aFdp/IPbbf8PW3X+Dt99/X5jhf1h5439uWuV/oDvnf+8c6X9a/up/4t/sf4fB7n9Io/B/JoXyfyBn9H83SfZ/aiv4f7oN+n8m8Pt/r9L9f1S1/38LzACEer0BhPeuAoSDoAOEHJIEhMSDBYR6dQaEP2cHhBFZCITxSgmE4DwKhN0uC4ToIAyEARMNhCkFDoRe9w6EoekPhPPbEIRTzhGEwcAShD2zE4THpRSEX5gVhAWLFoS5fReEfHAYhExjGYQqVhqEF0kbhBE8HIQaLx2EMCIehFUVH4SICCCEyPsghBfvIYRz4iKE3tUjhFbJJITdvCWEcbAmhBSkJ4TElyiEg4sphE9/KoQpcyuEEWcshAdbLYQLTy6EHUMvhD03MIRrKzGEph8yhPATM4RHCDSErfw0hCDxNYSh5TaEL9o3hMzOOIR3wzmEL7g6hPWsO4TJoTyEq5Y9hJuLPoSYgD+Eo3VAhLxqQYTjX0KEGFVDhFpKRISrP0WECDVGhHQqR4TuH0iEdRVJhAoLSoSsAEuEXfZLhBvsTITn4U2EwNdOhKjNT4Scw1CEn7lRhK+vUoTNpVOE+ZtUhDKSVYR5iFaEzn5XhDB1WISga1mEHmJahKlYW4RCT1yE6UVdhJ08XoReM1+ELipghAshYYT1F2KE7Q5jhPMFZIQG/WSEJ/RlhFXrZoSR4meE29lohDLRaYSWyGqECcBrhIi3bIQVr22EsKZuhFieb4QOlnCE0Y1xhKKFcoSAfXOEbHV0hGVtdYRrZXaEf113hKFVeITQTXmEDEZ6hFY+e4SuNnyEEi99hIQnfoQEIH+EkRiAhCsRgYTTCYKEiAKDhEv7g4Qb9ISE+OyFhOPlhoTb3oeE4deIhPTQiYQUyoqEQcOLhHy8jITEtY2EGq+OhH2oj4TtoZCEapuRhPWUkoSNjpOEM4iUhOWBlYSle5aEc3WXhE1vmIQ1aZmEKmOahCxdm4Q8V5yEWVGdhINLnoS6RZ+E/j+ghFA6oYSvNKKEGy+jhJUppIQbJKWErx6mhFAZp4T+E6iEug6phIIJqoRYBKuEO/+rhCv6rIQo9a2EMvCuhErrr4Ru5rCEoOGxhN/csoQr2LOEhNO0hOrOtYReyraE3sW3hGzBuIQGvbmErri6hGO0u4QksLyE86u9hM+nvoS4o7+Er5/AhLKbwYTCl8KE35PDhAmQxIRBjMWEhYjGhNaEx4Q1gciEoH3JhBh6yoSedsuEMHPMhM9vzYR7bM6ENWnPhPtl0ITOYtGErl/ShJtc04SVWdSEnFbVhLBT1oTRUNeE/03YhDpL2YSBSNqE1kXbhDdD3ISmQN2EIT7ehKk734Q+OeCE4DbhhI804oRLMuOEEzDkhOkt5YTLK+aEuinnhLYn6IS/JemE1CPqhPch64QmIOyEYh7thKsc7oQBG++EYxnwhNMX8YRPFvKE2BTzhG0T9IQQEvWEvxD2hHsP94REDviEGQ35hPwL+oTrCvuE5wn8hO8I/YQFCP6EJwf/hFUGAIWRBQGF2QQChS4EA4WPAwSF/gIFhXkCBoUAAgeFlQEIhTYBCYXjAAqFngALhWUADIU5AA2FGQAOhQYAD4UAABCFBgARhRkAEoU5ABOFZQAUhZ4AFYXjABaFNQEXhZQBGIX/ARmFdwIahfwCG4WNAxyFKgQdhdQEHoWLBR+FTwYghR8HIYX7ByKF5AgjhdoJJIXcCiWF6gsmhQYNJ4UtDiiFYg8phaMQKoXwESuFShMshbAULYUjFi6FohcvhS4ZMIXGGjGFaxwyhRweM4XaHzSFpCE1hXsjNoVeJTeFTic4hUopOYVSKzqFZy07hYkvPIW2MT2F8TM+hTc2P4WKOECF6jpBhVY9QoXOP0OFU0JEheRERYWBR0aFK0pHheJMSIWkT0mFc1JKhU5VS4U2WEyFKltNhSteToU4YU+FUWRQhXZnUYWoalKF5m1ThTFxVIWHdFWF6ndWhVp7V4XVfliFXoJZhfKFWoWSiVuFP41chfmQXYW+lF6FkJhfhW6cYIVYoGGFT6RihVGoY4VgrGSFfLBlhaO0ZoXXuGeFF71ohWPBaYW8xWqFIMprhZHObIUO022FmNduhS3cb4XP4HCFfeVxhTfqcoX97nOF0PN0ha74dYWZ/XaFkAJ4hZMHeYWjDHqFvhF7heYWfIUaHH2FWSF+haYmf4X+K4CFYjGBhdI2goVPPIOF2EGEhWxHhYUNTYaFulKHhXNYiIU5XomFCmSKhedpi4XRb4yFxnWNhch7joXVgY+F74eQhRWOkYVHlJKFhJqThc6glIUkp5WFhq2WhfSzl4VuupiF9MCZhYbHmoUlzpuFz9SchYXbnYVH4p6FFemfhe/voIXV9qGFx/2ihcUEpIXPC6WF5RKmhQcap4U1IaiFbyiphbUvqoUHN6uFZT6shc5FrYVETa6FxlSvhVNcsIXtY7GFkmuyhUNzs4UAe7SFyYK1hZ6KtoV/kreFbJq4hWWiuYVpqrqFerK7hZa6vIW+wr2F8sq+hTLTv4V+28CF1uPBhTnswoWp9MOFJP3EhasFxoU+DseF3RbIhYcfyYU+KMqFADHLhc45zIWoQs2FjUvOhX9Uz4V8XdCFhWbRhZpv0oW7eNOF54HUhR+L1YVjlNaFs53XhQ+n2IV2sNmF6bnahWjD24XyzNyFidbdhSvg3oXY6d+FkvPghVf94YUoB+OFBRHkhe0a5YXhJOaF4S7nhe046IUEQ+mFJ03qhVZX64WQYeyF1mvthSh27oWFgO+F7orwhWOV8YXjn/KFb6rzhQe19IWrv/WFWsr2hRTV94Xb3/iFrer5hYr1+oVzAPyFaAv9hWkW/oV1If+FjSwAhrA3AYbfQgKGGU4Dhl9ZBIaxZAWGD3AGhnd7B4bshgiGbJIJhvidCoaPqQuGMrUMhuDADYaazA6GYNgPhjHkEIYN8BGG9fsShukHFIboExWG8x8WhgksF4YrOBiGWEQZhpFQGobVXBuGJWkchoF1HYbogR6GWo4fhtiaIIZhpyGG9rMihpbAI4ZCzSSG+dklhrzmJoaK8yeGZAAphkkNKoY6GiuGNicshj00LYZQQS6Gb04vhplbMIbOaDGGD3YyhluDM4aykDSGFZ41hoOrNob9uDeGgsY4hhPUOYav4TqGVu87hgn9PIbHCj6GkRg/hmYmQIZGNEGGMkJChilQQ4YrXkSGOWxFhlJ6RoZ3iEeGp5ZIhuKkSYYos0qGesFLhtjPTIZA3k2GtOxOhjP7T4a+CVGGVBhShvUmU4ahNVSGWURVhhxTVobqYVeGxHBYhql/WYaZjlqGlZ1bhpysXIauu12Gy8pehvTZX4Yo6WCGZ/hhhrEHY4YHF2SGaCZlhtQ1ZoZMRWeGzlRohlxkaYb1c2qGmoNrhkmTbIYEo22GyrJuhpvCb4Z40nCGX+JxhlLycoZQAnSGWhJ1hm4idoaOMneGuUJ4hu9SeYYwY3qGfHN7htSDfIY2lH2GpKR+hh21f4aixYCGMdaBhsvmgoZx94OGIgiFht4YhoalKYeGdzqIhlVLiYY9XIqGMW2Lhi9+jIY5j42GTqCOhm6xj4aZwpCGz9ORhhHlkoZd9pOGtQeVhhcZloaFKpeG/juYhoJNmYYRX5qGq3CbhlCCnIYAlJ2Gu6WehoG3n4ZTyaCGL9uhhhbtooYJ/6OGBhGlhg8jpoYiNaeGQUeohmpZqYafa6qG332rhimQrIZ/oq2G4LSuhkvHr4bC2bCGQ+yxhtD+soZoEbSGCiS1hrg2toZxSbeGNFy4hgNvuYbcgbqGwZS7hrCnvIaqur2GsM2+hsDgv4bb88CGAgfChjMaw4ZvLcSGtkDFhghUxoZlZ8eGzHrIhj+OyYa9ocqGRbXLhtnIzIZ33M2GIPDOhtQD0IaUF9GGXivShjI/04YSU9SG/WbVhvJ61obzjteG/qLYhhS32YY1y9qGYd/bhpjz3IbZB96GJhzfhn0w4IbfROGGTFnihsRt44ZGguSG1Jblhmyr5oYPwOeGvdTohnbp6YY6/uqGCBPshuIn7YbGPO6GtFHvhq5m8Iaze/GGwpDyhtyl84YBu/SGMND1hmvl9oaw+veGABD5hlol+obAOvuGMFD8hqtl/YYxe/6GwpD/hl2mAIcDvAGHtNECh2/nA4c1/QSHBhMGh+IoB4fJPgiHulQJh7ZqCoe8gAuHzpYMh+qsDYcQww6HQtkPh37vEIfFBRKHFxwTh3MyFIfaSBWHS18Wh8h1F4dPjBiH4KIZh325Gock0BuH1uYch5L9HYdZFB+HKysghwdCIYfuWCKH4G8jh9yGJIfjnSWH9LQmhxHMJ4c44yiHafoph6URK4fsKCyHPUAth5lXLocAby+HcYYwh+2dMYdztTKHBM0zh6DkNIdG/DWH9xM3h7IrOId4QzmHSVs6hyRzO4cKizyH+qI9h/W6Pof60j+HCutAhyUDQodKG0OHejNEh7RLRYf4Y0aHSHxHh6KUSIcGrUmHdcVKh+7dS4dy9kyHAQ9Oh5onT4c+QFCH7FhRh6RxUodnilOHNaNUhw28VYfw1FaH3e1Xh9UGWYfXH1qH4zhbh/pRXIcca12HSIReh3+dX4fAtmCHC9Bhh2HpYofBAmSHLBxlh6I1ZociT2eHrGhoh0CCaYfgm2qHibVrhz3PbIf86G2HxQJvh5gccId2NnGHXlByh1Fqc4dOhHSHVZ51h2e4doeD0neHqux4h9sGeocXIXuHXTt8h61VfYcIcH6HbYp/h9ykgIdWv4GH2tmCh2n0g4cCD4WHpSmGh1NEh4cLX4iHznmJh5qUiodyr4uHU8qMhz/ljYc1AI+HNhuQh0E2kYdWUZKHdmyTh6CHlIfUopWHE76Wh1zZl4ev9JiHDBCah3Qrm4fnRpyHY2Kdh+p9nod7mZ+HFrWgh7zQoYds7KKHJwikh+sjpYe6P6aHk1unh3d3qIdkk6mHXK+qh1/Lq4dr56yHggOuh6Mfr4fPO7CHBFixh0R0soeOkLOH46y0h0HJtYeq5baHHQK4h5seuYciO7qHtFe7h1B0vIf2kL2Hp62+h2HKv4cm58CH9QPCh88gw4eyPcSHoFrFh5h3xoealMeHp7HIh73OyYfe68qHCQnMhz4mzYd9Q86Hx2DPhxt+0Id5m9GH4bjSh1PW04fP89SHVhHWh+Yu14eBTNiHJmrZh9WH2oePpduHUsPchyDh3Yf3/t6H2Rzgh8U64Ye8WOKHvHbjh8aU5IfbsuWH+dDmhyLv54dVDemHkivqh9lJ64cqaOyHhobth+uk7odbw++H1OHwh1gA8ofmHvOHfj30hyBc9YfMevaHgpn3h0K4+IcM1/mH4fX6h78U/IeoM/2HmlL+h5dx/4dPSACM19cAjGRnAYz39gGMjoYCjCsWA4zMpQOMczUEjB7FBIzPVAWMhOQFjD90Boz/AweMw5MHjI0jCIxbswiML0MJjAjTCYzlYgqMyPIKjLCCC4ycEgyMjqIMjIQyDYyAwg2MgVIOjIbiDoyRcg+MoQIQjLWSEIzPIhGM7bIRjBFDEow50xKMZ2MTjJnzE4zRgxSMDRQVjE+kFYyVNBaM4cQWjDFVF4yG5ReM4XUYjEAGGYyklhmMDScajHu3GozvRxuMZ9gbjORoHIxm+RyM7YkdjHkaHowKqx6MnzsfjDrMH4zaXCCMf+0gjCh+IYzXDiKMip8ijEMwI4wAwSOMw1EkjIriJIxWcyWMKAQmjP6UJozZJSeMubYnjJ5HKIyI2CiMdmkpjGr6KYxjiyqMYBwrjGOtK4xqPiyMd88sjIhgLYye8S2MuYIujNkTL4z+pC+MKDYwjFfHMIyLWDGMw+kxjAF7MoxDDDOMip0zjNcuNIwowDSMflE1jNniNYw5dDaMngU3jAeXN4x2KDiM6bk4jGFLOYzf3DmMYW46jOj/Oox0kTuMBSM8jJq0PIw1Rj2M1Nc9jHlpPowi+z6M0Iw/jIMeQIw7sECM90FBjLnTQYyAZUKMS/dCjBuJQ4zwGkSMyqxEjKk+RYyN0EWMdWJGjGP0RoxVhkeMTBhIjEiqSIxJPEmMT85JjFlgSoxp8kqMfYRLjJYWTIy0qEyM1zpNjP/MTYwrX06MXfFOjJODT4zOFVCMDqhQjFM6UYyczFGM615SjD7xUoyWg1OM8xVUjFWoVIy7OlWMJ81VjJdfVowM8laMhoRXjAUXWIyJqViMETxZjJ7OWYwwYVqMx/NajGOGW4wDGVyMqatcjFM+XYwC0V2MtmNejG72XowriV+M7htgjLWuYIyAQWGMUdRhjCdnYowB+mKM4IxjjMQfZIyssmSMmkVljIzYZYyDa2aMf/5mjH+RZ4yFJGiMj7dojJ5KaYyy3WmMynBqjOcDa4wKl2uMMSpsjFy9bIyNUG2MwuNtjPx2bow7Cm+Mfp1vjMcwcIwUxHCMZldxjLzqcYwYfnKMeBFzjN2kc4xHOHSMtct0jClfdYyh8nWMHYZ2jJ8Zd4wlrXeMsEB4jEDUeIzVZ3mMbvt5jAyPeoyvInuMV7Z7jANKfIy03XyManF9jCQFfozkmH6MqCx/jHHAf4w+VICMEeiAjOh7gYzDD4KMpKOCjIk3g4xzy4OMYl+EjFXzhIxNh4WMShuGjEyvhoxSQ4eMXdeHjG1riIyC/4iMm5OJjLkniozcu4qMA1CLjC/ki4xgeIyMlgyNjNCgjYwPNY6MU8mOjJtdj4zo8Y+MOoaQjJEakYzsrpGMTEOSjLDXkowabJOMiACUjPuUlIxyKZWM7r2VjG9Sloz15paMf3uXjA4QmIyhpJiMOjmZjNfNmYx4YpqMH/eajMqLm4x6IJyMLrWcjOdJnYyl3p2MZ3OejC8In4z6nJ+MyzGgjKDGoIx6W6GMWfChjDyFoowkGqOMEK+jjAFEpIz32KSM8m2ljPECpoz1l6aM/iynjAvCp4wdV6iMM+yojE6BqYxuFqqMk6uqjLxAq4zq1auMHGusjFMArYyPla2M0CqujBXAroxeVa+MreqvjACAsIxXFbGMtKqxjBVAsox61bKM5GqzjFMAtIzHlbSMPyu1jLzAtYw9VraMw+u2jE6Bt4zdFriMcay4jApCuYyn17mMSW26jO8Cu4yamLuMSi68jP7DvIy3Wb2MdO+9jDeFvoz9Gr+MybC/jJlGwIxt3MCMR3LBjCQIwowHnsKM7jPDjNrJw4zKX8SMv/XEjLiLxYy2IcaMubfGjMBNx4zM48eM3XnIjPIPyYwMpsmMKjzKjE3Syox0aMuMoP7LjNGUzIwGK82MQMHNjH9XzozC7c6MCYTPjFUa0IymsNCM+0bRjFXd0Yy0c9KMFwrTjH+g04zrNtSMXM3UjNFj1YxL+tWMypDWjE0n14zVvdeMYVTYjPLq2IyHgdmMIRjajMCu2oxjRduMCtzbjLdy3IxnCd2MHaDdjNc23oyVzd6MWGTfjCD734zskeCMvCjhjJK/4YxrVuKMSu3ijC2E44wUG+SMALLkjPFI5Yzm3+WM33bmjN4N54zgpOeM5zvojPPS6IwEaumMGAHqjDKY6oxQL+uMcsbrjJld7IzF9OyM9YvtjCkj7oxjuu6MoFHvjOLo74wpgPCMdBfxjMSu8YwYRvKMcd3yjM9084wwDPSMl6P0jAI79Yxx0vWM5Wn2jF0B94zamPeMXDD4jOLH+IxsX/mM+/b5jI+O+ownJvuMw737jGRV/IwK7fyMtIT9jGIc/owVtP6MzUv/jInj/4xJewCNDhMBjdiqAY2mQgKNeNoCjU9yA40rCgSNC6IEje85BY3Y0QWNxWkGjbcBB42umQeNqTEIjajJCI2sYQmNtPkJjcGRCo3SKQuN6MELjQJaDI0h8gyNRIoNjWwiDo2Yug6NyVIPjf7qD403gxCNdRsRjbizEY3/SxKNSuQSjZp8E43uFBSNR60UjaVFFY0G3hWNbXYWjdcOF41GpxeNuj8YjTLYGI2ucBmNLwkajbWhGo0/OhuNzdIbjWBrHI33Ax2NkpwdjTI1Ho3XzR6NgGYfjS3/H43flyCNlTAhjVDJIY0PYiKN0/oijZuTI41oLCSNOMUkjQ5eJY3o9iWNxo8mjakoJ42QwSeNe1oojWvzKI1fjCmNWCUqjVW+Ko1XVyuNXfArjWiJLI13Ii2NirstjaJULo2+7S6N3oYvjQMgMI0tuTCNW1IxjY3rMY3EhDKN/x0zjT63M42CUDSNyuk0jReDNY1oHDaNvrU2jRdPN4126DeN2YE4jUAbOY2rtDmNG046jY/nOo0IgTuNhRo8jQe0PI2NTT2NF+c9jaaAPo05Gj+N0LM/jWxNQI0M50CNsYBBjVoaQo0HtEKNuU1DjW/nQ40qgUSN6RpFjay0RY10TkaNQOhGjRGCR43lG0iNv7VIjZxPSY1+6UmNZINKjU8dS40+t0uNMlFMjSrrTI0mhU2NJh9OjSu5To00U0+NQu1PjVSHUI1rIVGNhbtRjaRVUo3I71KN8IlTjRwkVI1MvlSNgVhVjbryVY34jFaNOidXjYDBV43LW1iNGvZYjW2QWY3FKlqNIcVajYFfW43m+VuNT5Rcjb0uXY0uyV2NpWNejR/+Xo2emF+NITNgjajNYI00aGGNxAJijVmdYo3yN2ONj9JjjTBtZI3WB2WNgKJljS89Zo3h12aNmHJnjVQNaI0UqGiN2EJpjaDdaY1teGqNPhNrjROua43tSGyNy+Nsja1+bY2UGW6Nf7RujW5Pb41i6m+NWoVwjVYgcY1Wu3GNW1ZyjWTxco1yjHONhCd0jZrCdI20XXWN0/h1jfaTdo0dL3eNScp3jXhleI2tAHmN5Zt5jSI3eo1j0nqNqG17jfIIfI1ApHyNkj99jenafY1Edn6NoxF/jQatf41uSICN2uOAjUp/gY2/GoKNOLaCjbVRg4027YONvIiEjUYkhY3Uv4WNZ1uGjf32ho2YkoeNOC6IjdzJiI2DZYmNMAGKjeCcio2VOIuNTtSLjQtwjI3NC42Nk6eNjV1Djo0r346N/nqPjdUWkI2wspCNj06RjXPqkY1bhpKNRyKTjTe+k40sWpSNJfaUjSKSlY0kLpaNKsqWjTRml41CApiNVJ6YjWs6mY2G1pmNpXKajckOm43xqpuNHUecjU3jnI2Bf52Nuhuejfe3no04VJ+NfvCfjceMoI0VKaGNZ8Whjb5hoo0Y/qKNd5qjjdo2pI1C06SNrW+ljR0Mpo2RqKaNCkWnjYbhp40HfqiNjBqpjRW3qY2iU6qNNPCqjcqMq41kKayNAsasjaVirY1M/62N95uujaY4r41Z1a+NEXKwjc0OsY2Nq7GNUUiyjRrlso3mgbONtx60jYy7tI1mWLWNQ/W1jSWSto0LL7eN9cu3jeNouI3WBbmNzaK5jcg/uo3H3LqNynm7jdIWvI3es7yN7lC9jQLuvY0ai76NNyi/jVjFv419YsCNpv/AjdOcwY0FOsKNOtfCjXR0w42yEcSN9a7EjTtMxY2G6cWN1YbGjSgkx41/wceN2l7IjTr8yI2emcmNBjfKjXLUyo3iccuNVw/Mjc+szI1MSs2NzefNjVKFzo3cIs+NacDPjftd0I2R+9CNK5nRjck20o1s1NKNEnLTjb0P1I1srdSNH0vVjdbo1Y2RhtaNUSTXjRXC143cX9iNqP3YjXmb2Y1NOdqNJtfajQJ1243jEtyNyLDcjbFO3Y2e7N2NkIrejYUo341/xt+NfWTgjX8C4Y2FoOGNjz7ijZ7c4o2weuONxxjkjeK25I0BVeWNJPPljUyR5o13L+eNp83njdpr6I0SCumNTqjpjY5G6o3T5OqNG4PrjWgh7I24v+yNDV7tjWb87Y3Dmu6NJDnvjYrX743zdfCNYRTxjdOy8Y1IUfKNwu/yjUCO843DLPSNScv0jdNp9Y1iCPaN9ab2jYtF940m5PeNxYL4jWkh+Y0QwPmNu176jWv9+o0enPuN1jr8jZLZ/I1SeP2NFhf+jd61/o2qVP+Ne/P/jU+SAI4oMQGOBNABjuVuAo7KDQOOs6wDjqBLBI6R6gSOh4kFjoAoBo59xwaOf2YHjoUFCI6PpAiOnEMJjq7iCY7EgQqO3yALjv2/C44fXwyORv4MjnCdDY6fPA6O0dsOjgh7D45DGhCOgrkQjsVYEY4M+BGOV5cSjqY2E4761ROOUXUUjq0UFY4MtBWOcFMWjtjyFo5DkheOszEYjifRGI6fcBmOGxAajpyvGo4gTxuOqO4bjjSOHI7FLR2OWc0djvJsHo6PDB+OL6wfjtRLII596yCOKoshjtsqIo6QyiKOSWojjgYKJI7HqSSOjUkljlbpJY4jiSaO9SgnjsrIJ46kaCiOgQgpjmOoKY5JSCqOMugqjiCIK44SKCyOCMgsjgJoLY4ACC6OAqgujghIL44S6C+OIIgwjjIoMY5JyDGOY2gyjoEIM46jqDOOykg0jvToNI4jiTWOVSk2jozJNo7GaTeOBQo4jkiqOI6OSjmO2eo5jiiLOo57KzuO0cs7jixsPI6LDD2O7qw9jlVNPo7A7T6OL44/jqIuQI4Zz0COlG9BjhMQQo6WsEKOHVFDjqjxQ443kkSOyjJFjmHTRY78c0aOnBRHjj+1R47mVUiOkfZIjkCXSY70N0qOq9hKjmZ5S44lGkyO6bpMjrBbTY57/E2OS51Ojh4+T4713k+O0H9QjrAgUY6TwVGOemJSjmYDU45VpFOOSEVUjkDmVI47h1WOOihWjj3JVo5FaleOUAtYjl+sWI5zTVmOiu5ZjqWPWo7EMFuO59Fbjg9zXI46FF2OabVdjpxWXo7T916ODplfjk46YI6R22CO2HxhjiMeYo5yv2KOxWBjjhwCZI53o2SO1kRljjnmZY6gh2aOCylnjnnKZ47sa2iOYw1pjt6uaY5dUGqO3/FqjmaTa47xNGyOf9ZsjhJ4bY6pGW6OQ7tujuJcb46E/m+OKqBwjtVBcY6D43GONYVyjuwmc46myHOOZGp0jiYMdY7srXWOtk92joTxdo5Wk3eOLDV4jgbXeI7keHmOxhp6jqy8eo6VXnuOgwB8jnWifI5qRH2OZOZ9jmGIfo5iKn+OaMx/jnFugI5+EIGOj7KBjqRUgo699oKO2piDjvs6hI4g3YSOSX+FjnYhho6mw4aO22WHjhQIiI5QqoiOkEyJjtXuiY4dkYqOaTOLjrnVi44OeIyOZhqNjsG8jY4hX46OhQGPju2jj45YRpCOyOiQjjyLkY6zLZKOLtCSjq5yk44xFZSOuLeUjkNalY7S/JWOZZ+WjvtBl46W5JeONYeYjtcpmY5+zJmOKG+ajtYRm46JtJuOP1ecjvn5nI63nJ2OeD+ejj7ino4IhZ+O1SegjqfKoI58baGOVRCijjOzoo4UVqOO+fijjuKbpI7OPqWOv+GljrSEpo6sJ6eOqcqnjqltqI6tEKmOtbOpjsFWqo7R+aqO5Zyrjvw/rI4Y46yON4atjlspro6CzK6OrW+vjtwSsI4PtrCORlmxjoH8sY6/n7KOAkOzjkjms46SibSO4Cy1jjLQtY6Ic7aO4ha3jj+6t46hXbiOBgG5jnCkuY7dR7qOTuu6jsOOu447MryOuNW8jjl5vY69HL6ORcC+jtFjv45hB8CO9arAjo1OwY4p8sGOyJXCjmw5w44T3cOOvoDEjm0kxY4gyMWO1mvGjpEPx45Ps8eOElfIjtj6yI6insmOcELKjkHmyo4XisuO8C3Mjs7RzI6vdc2OlBnOjn29zo5pYc+OWgXQjk6p0I5HTdGOQ/HRjkOV0o5HOdOOTt3TjlqB1I5pJdWOfMnVjpNt1o6uEdeOzbXXjvBZ2I4W/tiOQKLZjm9G2o6h6tqO1o7bjhAz3I5N19yOj3vdjtQf3o4dxN6OamjfjrsM4I4PseCOZ1XhjsT54Y4knuKOh0Ljju/m445bi+SOyi/ljj3U5Y60eOaOLx3njq7B544wZuiOtwrpjkGv6Y7PU+qOYPjqjvac646PQeyOLebsjs6K7Y5zL+6OG9Tujsh47454HfCOLMLwjuRm8Y6gC/KOYLDyjiNV847r+fOOtp70joVD9Y5X6PWOLo32jggy947m1veOyHv4jq4g+Y6XxfmOhWr6jnYP+45rtPuOZFn8jmD+/I5ho/2OZUj+jm3t/o55kv+OiDcAj5zcAI+zgQGPziYCj+3LAo8PcQOPNhYEj2C7BI+OYAWPwAUGj/WqBo8vUAePbPUHj62aCI/yPwmPOuUJj4aKCo/XLwuPKtULj4J6DI/eHw2PPcUNj6BqDo8HEA+PcbUPj+BaEI9SABGPyKURj0JLEo+/8BKPQZYTj8Y7FI9P4RSP24YVj2wsFo8A0haPmHcXjzQdGI/TwhiPd2gZjx4OGo/JsxqPd1kbjyr/G4/gpByPmkodj1jwHY8Zlh6P3jsfj6jhH490hyCPRS0hjxnTIY/xeCKPzR4jj63EI4+QaiSPdxAlj2K2JY9RXCaPRAInjzqoJ480TiiPMfQojzOaKY84QCqPQeYqj06MK49eMiyPc9gsj4t+LY+nJC6Pxsouj+lwL48QFzCPO70wj2pjMY+cCTKP0q8yjwxWM49J/DOPi6I0j9BINY8Y7zWPZZU2j7U7N48J4jePYYg4j7wuOY8c1TmPf3s6j+UhO49QyDuPvm48jzAVPY+muz2PH2I+j5wIP48drz+PolVAjyr8QI+2okGPRklCj9nvQo9xlkOPDD1Ej6rjRI9NikWP8zBGj53XRo9LfkeP/CRIj7HLSI9qckmPJxlKj+e/So+rZkuPcw1Mjz60TI8NW02P4AFOj7eoTo+RT0+Pb/ZPj1GdUI83RFGPIOtRjw2SUo/9OFOP8t9Tj+qGVI/mLVWP5dRVj+h7Vo/vIleP+slXjwhxWI8aGFmPML9Zj0pmWo9nDVuPiLRbj6xbXI/VAl2PAapdjzBRXo9k+F6Pm59fj9ZGYI8U7mCPV5Vhj508Yo/m42KPNItjj4UyZI/Z2WSPMoFlj44oZo/uz2aPUXdnj7keaI8kxmiPkm1pjwUVao97vGqP9GNrj3ILbI/zsmyPeFptjwACbo+MqW6PHFFvj7D4b49HoHCP4kdxj4DvcY8jl3KPyT5zj3Lmc48gjnSP0TV1j4XddY8+hXaP+ix3j7rUd499fHiPRCR5jw/MeY/dc3qPrxt7j4XDe49fa3yPPBN9jx27fY8BY36P6Qp/j9Wyf4/FWoCPuAKBj6+qgY+qUoKPqPqCj6qig4+vSoSPuPKEj8WahY/WQoaP6uqGjwKTh48eO4iPPeOIj2CLiY+GM4qPsNuKj96Di48QLIyPRdSMj358jY+6JI6P+8yOjz51j4+GHZCP0cWQjyBukY9yFpKPyL6SjyJnk4+AD5SP4beUj0VglY+uCJaPGrGWj4pZl4/9AZiPdKqYj+5SmY9t+5mP76Oaj3RMm4/99JuPip2cjxtGnY+v7p2PR5eej+I/n4+B6J+PJJGgj8o5oY904qGPIouij9Mzo4+I3KOPQYWkj/0tpY+91qWPgH+mj0cop48S0aeP4Xmoj7MiqY+Iy6mPYnSqjz4dq48fxquPA2+sj+sXrY/WwK2Pxmmuj7gSr4+vu6+PqGSwj6YNsY+ntrGPrF+yj7UIs4/BsbOP0Fq0j+QDtY/7rLWPFVa2jzP/to9VqLePe1G4j6T6uI/Qo7mPAU26jzX2uo9sn7uPp0i8j+bxvI8om72PbkS+j7jtvo8Fl7+PVkDAj6rpwI8Ck8GPXjzCj73lwo8gj8OPhzjEj/HhxI9fi8WP0DTGj0Xexo+9h8ePOTHIj7nayI88hMmPwy3Kj07Xyo/cgMuPbirMjwPUzI+cfc2POSfOj9nQzo99es+PJCTQj8/N0I9+d9GPMCHSj+XK0o+fdNOPXB7UjxzI1I/gcdWPqBvWj3PF1o9Cb9ePFRnYj+vC2I/EbNmPohbaj4PA2o9natuPTxTcjzu+3I8qaN2PHRLejxO83o8NZt+PChDgjwy64I8QZOGPGQ7ijyS44o80YuOPRwzkj1625I94YOWPlQrmj7e05o/cXuePBAnojzCz6I9gXemPkwfqj8qx6o8EXOuPQgbsj4Sw7I/JWu2PEgXuj16v7o+uWe+PAQTwj1iu8I+zWPGPEQPyj3Kt8o/YV/OPQAL0j62s9I8dV/WPkAH2jwes9o+CVvePAAH4j4Kr+I8HVvmPkAD6jxyr+o+sVfuPQAD8j9eq/I9yVf2PEAD+j7Kq/o9XVf+PAAAAlFZVAJSuqgCUCAABlGNVAZTBqgGUIAAClIFVApTjqgKUSAADlK5VA5QWqwOUgAAElOtVBJRZqwSUyAAFlDhWBZSrqwWUHwEGlJZWBpQOrAaUhwEHlANXB5SArAeU/wEIlIBXCJQCrQiUhwIJlA1YCZSVrQmUHgMKlKpYCpQ3rgqUxgMLlFdZC5TprguUfgQMlBRaDJSrrwyURQUNlOBaDZR9sA2UHAYOlL1bDpRfsQ6UAwcPlKlcD5RRsg+U+gcQlKZdEJRTsxCUAQkRlLJeEZRktBGUGAoSlM5fEpSGtRKUPwsTlPpgE5S3thOUdQwUlDZiFJT4txSUvA0VlIFjFZRJuRWUEg8WlN1kFpSquhaUeBAXlEhmF5QavBeU7hEYlMNnGJSbvRiUdBMZlE5pGZQrvxmUCRUalOlqGpTLwBqUrhYblJRsG5R7whuUYxgclE5uHJQ6xByUKBodlBhwHZQKxh2U/RselPJxHpTpxx6U4R0flNxzH5TYyR+U1R8glNV1IJTWyyCU2SEhlN53IZTlzSGU7SMilPd5IpQD0CKUESYjlCB8I5Qx0iOURCgklFh+JJRu1CSUhyollKCAJZS81iWU2SwmlPiCJpQZ2SaUOy8nlGCFJ5SG2yeUrTEolNeHKJQC3iiULzQplF6KKZSO4CmUwDYqlPSMKpQq4yqUYjkrlJuPK5TW5SuUEjwslFGSLJSR6CyU0z4tlBaVLZRc6y2Uo0EulOyXLpQ27i6UgkQvlNGaL5Qg8S+UckcwlMWdMJQa9DCUcUoxlMmgMZQj9zGUf00ylN2jMpQ9+jKUnlAzlAGnM5Rl/TOUzFM0lDSqNJSdADWUCVc1lHatNZTlAzaUVlo2lMmwNpQ9BzeUs103lCq0N5SkCjiUH2E4lJy3OJQaDjmUm2Q5lB27OZShETqUJmg6lK2+OpQ2FTuUwWs7lE3CO5TcGDyUbG88lP3FPJSRHD2UJnM9lLzJPZRVID6U73Y+lIvNPpQpJD+UyHo/lGnRP5QMKECUsX5AlFfVQJT/K0GUqYJBlFXZQZQCMEKUsYZClGHdQpQUNEOUyIpDlH7hQ5Q1OESU745ElKrlRJRmPEWUJZNFlOXpRZSnQEaUapdGlDDuRpT3REeUwJtHlIryR5RWSUiUJKBIlPT2SJTFTUmUmKRJlG37SZRDUkqUHKlKlPb/SpTRVkuUr61LlI4ETJRvW0yUUbJMlDUJTZQbYE2UA7dNlOwNTpTXZE6UxLtOlLMST5SjaU+UlcBPlIgXUJR+blCUdcVQlG4cUZRoc1GUZMpRlGIhUpRieFKUY89SlGYmU5RrfVOUctRTlHorVJSEglSUj9lUlJwwVZSrh1WUvN5VlM81VpTjjFaU+eNWlBA7V5QpkleUROlXlGFAWJR/l1iUn+5YlMFFWZTlnFmUCvRZlDFLWpRZolqUhPlalLBQW5Tdp1uUDf9blD5WXJRxrVyUpQRdlNxbXZQTs12UTQpelIhhXpTFuF6UBBBflEVnX5SHvl+UyxVglBBtYJRXxGCUoBthlOtyYZQ3ymGUhSFilNV4YpQm0GKUeidjlM5+Y5Ql1mOUfS1klNeEZJQz3GSUkDNllO+KZZRQ4mWUsjlmlBaRZpR86GaU4z9nlE2XZ5S37meUJEZolJKdaJQC9WiUdExplOejaZRc+2mU01JqlEuqapTFAWuUQVlrlL+wa5Q+CGyUv19slEG3bJTFDm2US2ZtlNO9bZRcFW6U52xulHTEbpQCHG+UknNvlCTLb5S4InCUTXpwlOTRcJR8KXGUFoFxlLLYcZRQMHKU74dylJDfcpQzN3OU145zlH3mc5QlPnSUzpV0lHntdJQmRXWU1Jx1lIT0dZQ2THaU6qN2lJ/7dpRWU3eUDqt3lMgCeJSEWniUQrJ4lAEKeZTCYXmUhLl5lEkRepQPaXqU1sB6lKAYe5RrcHuUN8h7lAYgfJTWd3yUqM98lHsnfZRQf32UJ9d9lP8ufpTZhn6Utd5+lJM2f5Ryjn+UU+Z/lDU+gJQZloCU/+2AlOdFgZTQnYGUu/WBlKdNgpSVpYKUhf2ClHdVg5RqrYOUXwWElFZdhJROtYSUSA2FlERlhZRBvYWUQBWGlEBthpRDxYaURx2HlEx1h5RUzYeUXSWIlGd9iJR01YiUgi2JlJGFiZSj3YmUtjWKlMqNipTh5YqU+T2LlBKWi5Qu7ouUS0aMlGmejJSK9oyUrE6NlM+mjZT1/o2UHFeOlESvjpRvB4+Um1+PlMi3j5T4D5CUKWiQlFvAkJSQGJGUxnCRlP3IkZQ3IZKUcnmSlK7RkpTtKZOULIKTlG7ak5SxMpSU9oqUlD3jlJSFO5WUz5OVlBvslZRoRJaUt5yWlAj1lpRaTZeUrqWXlAP+l5RaVpiUs66YlA4HmZRqX5mUyLeZlCcQmpSJaJqU68CalFAZm5S2cZuUHsqblIcinJTyepyUX9OclM4rnZQ+hJ2Ur9ydlCM1npSYjZ6UDuaelIc+n5QBl5+UfO+flPpHoJR5oKCU+figlHxRoZT/qaGUhQKilAxbopSVs6KUIAyjlKxko5Q6vaOUyRWklFpupJTtxqSUgR+llBh4pZSv0KWUSSmmlOSBppSA2qaUHzOnlL+Lp5Rg5KeUAz2olKiVqJRP7qiU90aplKGfqZRM+KmU+lCqlKipqpRZAquUC1urlL+zq5R0DKyUK2WslOS9rJSeFq2UWm+tlBjIrZTXIK6UmHmulFrSrpQeK6+U5IOvlKzcr5R1NbCUQI6wlAznsJTaP7GUqpixlHvxsZROSrKUIqOylPn7spTRVLOUqq2zlIUGtJRiX7SUQLi0lCARtZQCarWU5sK1lMsbtpSxdLaUmc22lIMmt5Rvf7eUXNi3lEsxuJQ7iriULeO4lCE8uZQWlbmUDe65lAZHupQAoLqU/Pi6lPpRu5T5qruU+gO8lPxcvJQAtryUBg+9lA1ovZQWwb2UIRq+lC1zvpQ7zL6USiW/lFt+v5Ru17+UgzDAlJmJwJSw4sCUyjvBlOSUwZQB7sGUH0fClD+gwpRg+cKUg1LDlKirw5TOBMSU9l3ElCC3xJRLEMWUeGnFlKfCxZTXG8aUCHXGlDzOxpRxJ8eUp4DHlN/Zx5QZM8iUVYzIlJLlyJTRPsmUEZjJlFPxyZSXSsqU3KPKlCP9ypRrVsuUta/LlAEJzJROYsyUnbvMlO4UzZRAbs2UlMfNlOkgzpRAes6UmdPOlPMsz5RPhs+Urd/PlAw50JRtktCUz+vQlDNF0ZSZntGUAPjRlGlR0pTUqtKUQATTlK5d05Qdt9OUjhDUlAFq1JR1w9SU6xzVlGJ21ZTbz9WUVinWlNKC1pRQ3NaU0DXXlFGP15TU6NeUWELYlN6b2JRm9diU707ZlHqo2ZQHAtqUlVvalCS12pS2DtuUSWjblN3B25RzG9yUC3XclKXO3JRAKN2U3IHdlHrb3ZQaNd6UvI7elF/o3pQDQt+UqpvflFL135T7TuCUpqjglFMC4ZQBXOGUsbXhlGMP4pQWaeKUy8LilIEc45Q5duOU88/jlK4p5JRrg+SUKd3klOk25ZSrkOWUburllDNE5pT5neaUwffmlItR55RWq+eUIwXolPJe6JTCuOiUkxLplGds6ZQ7xumUEiDqlOp56pTE0+qUny3rlHyH65Rb4euUOzvslByV7JQA7+yU5UjtlMui7ZSz/O2UnVbulIiw7pR1Cu+UZGTvlFS+75RGGPCUOXLwlC7M8JQkJvGUHYDxlBba8ZQSNPKUD47ylA3o8pQNQvOUD5zzlBL285QXUPSUHqr0lCYE9ZQwXvWUO7j1lEgS9pRWbPaUZsb2lHgg95SLeveUoNT3lLcu+JTPiPiU6eL4lAQ9+ZQhl/mUP/H5lF9L+pSBpfqUpP/6lMlZ+5Tvs/uUFw78lEFo/JRswvyUmRz9lMd2/ZT30P2UKSv+lFyF/pSR3/6Uxzn/lP+T/5Q47v+UdEgAlbCiAJXv/ACVLlcBlXCxAZWzCwKV+GUClT7AApWGGgOVz3QDlRrPA5VnKQSVtYMElQXeBJVWOAWVqZIFlf3sBZVURwaVq6EGlQT8BpVfVgeVvLAHlRoLCJV5ZQiV278IlT0aCZWidAmVCM8JlW8pCpXYgwqVQ94Kla84C5UdkwuVje0Llf5HDJVxogyV5fwMlVtXDZXSsQ2VSwwOlcVmDpVBwQ6VvxsPlT52D5W/0A+VQisQlcaFEJVL4BCV0zoRlVuVEZXm7xGVckoSlf+kEpWO/xKVH1oTlbG0E5VFDxSV2mkUlXHEFJUKHxWVpHkVlUDUFZXdLhaVfIkWlRzkFpW+PheVYpkXlQf0F5WuThiVVqkYlQAEGZWrXhmVWLkZlQcUGpW3bhqVackalRwkG5XRfhuVh9kblUA0HJX5jhyVtOkclXFEHZUvnx2V7/kdlbFUHpV0rx6VOAoflf9kH5XGvx+VkBoglVt1IJUn0CCV9SohlcWFIZWW4CGVaTsilT2WIpUT8SKV6ksjlcOmI5WeASSVelwklVi3JJU3EiWVGG0llfvHJZXfIiaVxH0mlavYJpWUMyeVfo4nlWrpJ5VXRCiVRp8olTf6KJUpVSmVHbAplRILKpUJZiqVAcEqlfsbK5X3diuV9NErlfIsLJXyhyyV9OIslfc9LZX8mC2VA/QtlQtPLpUUqi6VHwUvlSxgL5U6uy+VShYwlVtxMJVuzDCVgycxlZmCMZWw3TGVyjgyleSTMpUB7zKVHkozlT6lM5VfADSVgVs0laW2NJXLETWV8mw1lRvINZVFIzaVcX42lZ/ZNpXONDeV/o83lTDrN5VkRjiVmaE4ldD8OJUIWDmVQrM5lX0OOpW6aTqV+cQ6lTkgO5V7ezuVvtY7lQMyPJVJjTyVkeg8ldpDPZUlnz2Vcvo9lcBVPpUPsT6VYQw/lbNnP5UIwz+VXh5AlbV5QJUO1UCVaDBBlcSLQZUi50GVgUJCleKdQpVE+UKVqFRDlQ2wQ5V0C0SV3WZElUfCRJWyHUWVH3lFlY7URZX+L0aVcItGlePmRpVYQkeVzp1HlUb5R5XAVEiVO7BIlbcLSZU1Z0mVtcJJlTYeSpW5eUqVPdVKlcMwS5VLjEuV1OdLlV5DTJXqnkyVePpMlQdWTZWXsU2VKg1Olb1oTpVTxE6V6R9PlYJ7T5Uc10+VtzJQlVSOUJXz6VCVk0VRlTShUZXY/FGVfFhSlSO0UpXKD1OVdGtTlR/HU5XLIlSVeX5UlSnaVJXaNVWVjJFVlUDtVZX2SFaVraRWlWYAV5UgXFeV3LdXlZkTWJVYb1iVGctYldsmWZWeglmVY95ZlSo6WpXylVqVu/FalYdNW5VTqVuVIgVclfFgXJXDvFyVlhhdlWp0XZVA0F2VFyxelfCHXpXL416Vpz9flYWbX5Vk91+VRFNglSevYJUKC2GV8GZhldfCYZW/HmKVqXpilZTWYpWBMmOVcI5jlWDqY5VRRmSVRKJklTn+ZJUvWmWVJ7ZllSASZpUabmaVF8pmlRQmZ5UUgmeVFd5nlRc6aJUblmiVIPJolSdOaZUwqmmVOgZqlUViapVSvmqVYRprlXF2a5WD0muVli5slauKbJXB5myV2UJtlfKebZUN+22VKVdulUezbpVmD2+Vh2tvlarHb5XNI3CV839wlRrccJVDOHGVbZRxlZjwcZXFTHKV9KhylSQFc5VWYXOVib1zlb4ZdJX0dXSVLNJ0lWUudZWginWV3OZ1lRpDdpVZn3aVmvt2ld1Xd5UhtHeVZhB4la1seJX1yHiVPyV5lYuBeZXY3XmVJzp6lXeWepXI8nqVHE97lXCre5XGB3yVHmR8lXfAfJXSHH2VLnl9lYzVfZXrMX6VTI5+la7qfpUSR3+VeKN/ld7/f5VHXICVsbiAlRwVgZWJcYGV982BlWcqgpXZhoKVTOOClcA/g5U2nIOVrviDlSdVhJWhsYSVHg6FlZtqhZUax4WVmyOGlR2AhpWh3IaVJjmHlayVh5U18oeVvk6IlUmriJXWB4mVZGSJlfTAiZWFHYqVGHqKlazWipVCM4uV2Y+LlXLsi5UMSYyVqKWMlUYCjZXkXo2VhbuNlScYjpXKdI6Vb9GOlRUuj5W9io+VZuePlRFEkJW+oJCVbP2QlRtakZXMtpGVfhOSlTJwkpXozJKVnymTlVeGk5UR45OVzT+UlYqclJVI+ZSVCFaVlcqylZWMD5aVUWyWlRfJlpXeJZeVp4KXlXLfl5U+PJiVDJmYldv1mJWrUpmVfa+ZlVEMmpUmaZqV/MWaldQim5Wuf5uVidyblWU5nJVDlpyVI/OclQRQnZXmrJ2VywmelbBmnpWXw56VgCCflWp9n5VV2p+VQjeglTGUoJUh8aCVEk6hlQWroZX6B6KV8GSilefBopXhHqOV23ujldfYo5XVNaSV1JKkldTvpJXWTKWV2qmlld8GppXlY6aV7cCmlfcdp5UCe6eVDtinlRw1qJUskqiVPO+olU9MqZVjqamVeAaqlY9jqpWowKqVwh2rld16q5X616uVGDWslTiSrJVa76yVfUytlaGprZXHBq6V7mOulRfBrpVBHq+VbXuvlZvYr5XJNbCV+pKwlSvwsJVfTbGVlKqxlcoHspUCZbKVO8KylXYfs5WyfLOV8NmzlS83tJVvlLSVsvG0lfVOtZU6rLWVgQm2lclmtpUTxLaVXiG3lat+t5X527eVSDm4lZmWuJXs87iVQFG5lZWuuZXsC7qVRWm6lZ/GupX6I7uVV4G7lbbeu5UWPLyVd5m8ldr2vJU+VL2VpLG9lQsPvpV0bL6V38m+lUonv5W4hL+VJuK/lZc/wJUIncCVfPrAlfBXwZVmtcGV3hLClVdwwpXSzcKVTivDlcuIw5VL5sOVy0PElU2hxJXR/sSVVlzFldy5xZVkF8aV7XTGlXjSxpUFMMeVk43HlSLrx5WzSMiVRabIldkDyZVuYcmVBb/JlZ0cypU3esqV0tfKlW41y5UNk8uVrPDLlU1OzJXwq8yVlAnNlTlnzZXgxM2ViSLOlTOAzpXe3c6VizvPlTmZz5Xp9s+VmlTQlU2y0JUBENGVt23RlW7L0ZUnKdKV4YbSlZ3k0pVaQtOVGKDTldj905WaW9SVXbnUlSEX1ZXndNWVr9LVlXgw1pVCjtaVDuzWldtJ15Wqp9eVegXYlUxj2JUfwdiV9B7Zlcp82ZWh2tmVejjalVWW2pUx9NqVDlLble2v25XODdyVr2vclZPJ3JV4J92VXoXdlUbj3ZUvQd6VGp/elQb93pXzWt+V4rjfldMW4JXFdOCVuNLgla0w4ZWkjuGVnOzhlZVK4pWQqOKVjAbjlYpk45WJwuOViiDklYx+5JWP3OSVlDrllZuY5ZWj9uWVrFTmlbey5pXEEOeV0m7nleHM55XyKuiVBInolRjn6JUtRemVQ6PplVwB6pV1X+qVkL3qla0b65XLeeuV6tfrlQs27JUtlOyVUfLslXZQ7ZWdru2VxQzule9q7pUaye6VRifvlXSF75Wk4++V1UHwlQeg8JU7/vCVcFzxlae68ZXfGPKVGXfylVTV8pWQM/OVz5HzlQ7w85VPTvSVkaz0ldUK9ZUbafWVYcf1laol9pXzg/aVP+L2lYtA95XZnveVKf33lXpb+JXMufiVIBj5lXV2+ZXM1PmVJDP6lX6R+pXZ7/qVNk77lZSs+5XzCvyVVGn8lbfH/JUbJv2VgIT9lefi/ZVPQf6VuZ/+lST+/pWRXP+V/7r/lW4ZAJbfdwCWUdYAlsU0AZY7kwGWsfEBlipQApajrgKWHg0DlptrA5YZygOWmCgElhmHBJac5QSWH0QFlqWiBZYrAQaWtF8Glj2+BpbIHAeWVXsHluPZB5ZyOAiWA5cIlpX1CJYpVAmWvrIJllURCpbtbwqWhs4KliEtC5a+iwuWXOoLlvtIDJacpwyWPgYNluFkDZaHww2WLSIOltWADpZ/3w6WKT4PltacD5aD+w+WM1oQluO4EJaVFxGWSXYRlv7UEZa0MxKWbJISliXxEpbgTxOWnK4TlloNFJYZbBSW2soUlpwpFZZfiBWWJOcVlupFFpaypBaWewMXlkZiF5YSwReW3x8Ylq5+GJZ+3RiWUDwZliSbGZb4+RmWzlgalqa3GpZ/FhuWWXUbljXUG5YTMxyW8ZEcltLwHJazTx2Wlq4dlnsNHpZhbB6WSMseljEqH5YbiR+WB+gflvRGIJbjpSCW0wQhlsRjIZa3wiGWqyEilqGAIpaY3yKWkT4jloudI5aG/COWg1skloK6JJaBGSWWg3glloXXJZaJNiaWj5Umlpb0JpaeUyeWqLInlrMRKJbAcCiWzs8olt4uKZbvjSmWAe0plhVMKpYqqyqWQQorlllpK5ZzyCuWjicslqqGLJbI5SyW6EQtlgikLZYqAy6WTmIulnPBLpaaIC+WwX8vluveL5YWPjCWQp0wlm/8MJaeWzGWz7oxlgEaMpY0eTKWadgylp83M5bXljOWEPYzlkpVNJaGtDSWwxM1lgJzNZZC0jWWhDE2lseQNpYL8DaWUU83lpmuN5bhDTiWK204lnfMOJbEKzmWEos5lmLqOZa0STqWBqk6lloIO5awZzuWB8c7ll8mPJa5hTyWFOU8lnFEPZbPoz2WLwM+lpBiPpbywT6WViE/lruAP5Yi4D+Wij9AlvOeQJZe/kCWy11Blji9QZanHEKWGHxClorbQpb9OkOWcppDlun5Q5ZgWUSW2bhEllQYRZbQd0WWTddFlsw2RpZMlkaWzvVGllFVR5bVtEeWWxRIluNzSJZr00iW9jJJloGSSZYO8kmWnFFKliyxSpa+EEuWUHBLluTPS5Z6L0yWEY9MlqnuTJZDTk2W3q1NlnoNTpYYbU6WuMxOllksT5b7i0+WnutPlkRLUJbqqlCWkgpRljtqUZbmyVGWkilSlkCJUpbv6FKWn0hTllGoU5YECFSWuWdUlm/HVJYmJ1WW34ZVlpnmVZZVRlaWEqZWltAFV5aQZVeWUsVXlhQlWJbZhFiWnuRYlmVEWZYupFmW9wNalsNjWpaPw1qWXSNbli2DW5b+4luW0EJclqOiXJZ5Al2WT2JdlifCXZYAIl6W24FelrfhXpaVQV+WdKFfllQBYJY2YWCWGcFglv0gYZbjgGGWy+BhlrRAYpaeoGKWiQBjlndgY5ZlwGOWVSBklkaAZJY54GSWLUBlliKgZZYZAGaWEWBmlgvAZpYGIGeWA4BnlgDgZ5YAQGiWAKBolgMAaZYGYGmWC8BplhEgapYZgGqWIuBqli1Aa5Y5oGuWRgBsllVgbJZlwGyWdiBtlomAbZae4G2Ws0BulsugbpbjAG+W/WBvlhjBb5Y1IXCWU4FwlnPhcJaUQXGWtqFxltoBcpb/YXKWJsJylk4ic5Z3gnOWouJzls5CdJb8onSWKwN1lltjdZaNw3WWwCN2lvSDdpYq5HaWYkR3lpukd5bVBHiWEGV4lk3FeJaMJXmWy4V5lgzmeZZPRnqWk6Z6ltgGe5YfZ3uWZ8d7lrEnfJb8h3yWSOh8lpZIfZblqH2WNQl+lodpfpbayX6WLyp/loWKf5bd6n+WNkuAlpCrgJbrC4GWSWyBlqfMgZYHLYKWaI2ClsvtgpYvToOWlK6DlvsOhJZjb4SWzc+EljgwhZakkIWWEvGFloFRhpbysYaWZBKHltdyh5ZM04eWwjOIljmUiJay9IiWLFWJlqi1iZYlFoqWpHaKliTXipalN4uWJ5iLlqz4i5YxWYyWuLmMlkAajZbKeo2WVNuNluE7jpZvnI6W/vyOlo5dj5Ygvo+WtB6Qlkh/kJbe35CWdkCRlg+hkZapAZKWRWKSluLCkpaAI5OWIISTlsHkk5ZjRZSWB6aUlq0GlZZTZ5WW/MeVlqUolpZQiZaW/OmWlqpKl5ZZq5eWCQyYlrtsmJZuzZiWIy6ZltmOmZaQ75mWSVCalgOxmpa/EZuWe3KbljrTm5b5M5yWupScln31nJZBVp2WBredlswXnpaUeJ6WXtmelig6n5b0mp+WwvuflpFcoJZhvaCWMh6hlgV/oZba36GWsECiloehopZfAqOWOWOjlhTEo5bxJKSWz4Wklq7mpJaPR6WWcailllUJppY6aqaWIMumlggsp5bxjKeW2+2nlsdOqJa0r6iWoxCplpNxqZaE0qmWdzOqlmuUqpZh9aqWV1arllC3q5ZJGKyWRHmslkHarJY+O62WPZytlj79rZZAXq6WQ7+ulkcgr5ZNga+WVeKvll5DsJZopLCWcwWxloBmsZaOx7GWniiylq+JspbB6rKW1Uuzluqss5YADrSWGG+0ljHQtJZMMbWWaJK1loXztZakVLaWxLW2luYWt5YIeLeWLdm3llI6uJZ5m7iWofy4lstduZb2vrmWIyC6llCBupaA4rqWsEO7luKku5YVBryWSme8loDIvJa3Kb2W8Iq9lirsvZZmTb6Wo66+luEPv5Ygcb+WYdK/lqQzwJbnlMCWLPbAlnNXwZa7uMGWBBrClk57wpaa3MKW6D3Dljafw5aGAMSW2GHElirDxJZ/JMWW1IXFlivnxZaDSMaW3anGljgLx5aUbMeW8s3HllEvyJaxkMiWE/LIlnZTyZbatMmWQBbKlqh3ypYQ2cqWejrLluWby5ZS/cuWwF7MljDAzJagIc2WE4PNlobkzZb7Rc6WcafOlukIz5Zias+W3MvPllgt0JbVjtCWU/DQltNR0ZZUs9GW1xTSllp20pbg19KWZjnTlu6a05Z3/NOWAl7Ulo6/1JYcIdWWqoLVljrk1ZbMRdaWX6fWlvMI15aIateWH8zXlrgt2JZRj9iW7PDYlohS2ZYmtNmWxRXalmZ32pYH2dqWqjrblk+c25b1/duWnF/clkXB3JbuIt2WmoTdlkbm3Zb0R96WpKnellQL35YGbd+Wus7flm8w4JYlkuCW3PPglpVV4ZZPt+GWCxnilsh64paG3OKWRj7jlgeg45bJAeSWjWPkllLF5JYYJ+WW4Ijllqnq5ZZzTOaWP67mlgwQ55bbceeWq9Pnlnw16JZOl+iWIvnolvha6ZbOvOmWph7qln+A6pZa4uqWNkTrlhSm65byB+yW0mnslrTL7JaXLe2We4/tlmDx7ZZHU+6WL7XulhkX75YEee+W8Nrvlt488JbMnvCWvQDxlq5i8ZahxPGWlibylouI8paC6vKWe0zzlnWu85ZwEPSWbHL0lmrU9JZpNvWWaZj1lmv69ZZuXPaWc772lnkg95aAgveWieT3lpNG+JaeqPiWqgr5lrhs+ZbIzvmW2DD6luqS+pb+9PqWElf7lii5+5ZAG/yWWH38lnLf/JaOQf2Wq6P9lskF/pboZ/6WCcr+liss/5ZPjv+Wc/D/lppSAJfBtACX6hYBlxR5AZdA2wGXbD0Cl5ufApfKAQOX+2MDly3GA5dhKASXlooEl8zsBJcETwWXPbEFl3cTBpezdQaX8NcGly46B5dunAeXr/4Hl/FgCJc1wwiXeiUJl8CHCZcI6gmXUUwKl5uuCpfnEAuXNHMLl4PVC5fSNwyXI5oMl3b8DJfKXg2XH8ENl3UjDpfNhQ6XJugOl4BKD5fcrA+XOQ8Ql5hxEJf40xCXWTYRl7uYEZcf+xGXhF0Sl+u/EpdTIhOXvIQTlybnE5eSSRSX/6sUl24OFZfecBWXT9MVl8E1Fpc1mBaXqvoWlyFdF5eZvxeXEiIYl42EGJcJ5xiXhkkZlwSsGZeEDhqXBXEal4jTGpcMNhuXkZgblxj7G5efXRyXKcAcl7MiHZc/hR2XzOcdl1tKHpfrrB6XfA8flw5yH5ei1B+XNzcgl86ZIJdm/CCX/14hl5rBIZc2JCKX04Yil3HpIpcRTCOXsq4jl1URJJf5cySXntYkl0Q5JZfsmyWXlf4ll0BhJpfswyaXmSYnl0eJJ5f36yeXqE4ol1uxKJcPFCmXxHYpl3rZKZcyPCqX654ql6YBK5dhZCuXHscrl90pLJedjCyXXu8slyBSLZfktC2XqRcul296Lpc33S6XAEAvl8qiL5eWBTCXY2gwlzLLMJcBLjGX0pAxl6XzMZd4VjKXTbkylyMcM5f7fjOX1OEzl65ENJeKpzSXZwo1l0VtNZcl0DWXBjM2l+iVNpfL+DaXsFs3l5a+N5d+ITiXZ4Q4l1HnOJc9SjmXKa05lxcQOpcHczqX+NU6l+o4O5fdmzuX0v47l8hhPJe/xDyXuCc9l7KKPZeu7T2XqlA+l6izPpeoFj+XqHk/l6rcP5etP0CXsqJAl7gFQZe/aEGXyMtBl9IuQpfdkUKX6fRCl/dXQ5cGu0OXFx5ElymBRJc85ESXUEdFl2aqRZd9DUaXlXBGl6/TRpfKNkeX55lHlwT9R5cjYEiXRMNIl2UmSZeIiUmXrOxJl9JPSpf5skqXIRZLl0t5S5d13EuXoT9Ml8+iTJf+BU2XLmlNl1/MTZeSL06XxpJOl/v1TpcyWU+XarxPl6MfUJfeglCXGuZQl1dJUZeWrFGX1g9SlxdzUpdZ1lKXnTlTl+KcU5cpAFSXcWNUl7rGVJcEKlWXUI1Vl53wVZfrU1aXO7dWl4waV5fefVeXMeFXl4ZEWJfdp1iXNAtZl41uWZfn0VmXQjVal5+YWpf9+1qXXV9bl73CW5cfJlyXg4lcl+fsXJdNUF2XtbNdlx0XXpeHel6X8t1el19BX5fMpF+XOwhgl6xrYJcez2CXkTJhlwWWYZd7+WGX8lxil2rAYpfjI2OXXodjl9vqY5dYTmSX17Fkl1cVZZfYeGWXW9xll98/Zpdko2aX6wZnl3NqZ5f8zWeXhzFolxOVaJeg+GiXLlxpl76/aZdPI2qX4oZql3XqapcKTmuXobFrlzgVbJfReGyXbNxslwdAbZeko22XQgdul+JqbpeCzm6XJDJvl8iVb5ds+W+XEl1wl7rAcJdiJHGXDIhxl7frcZdkT3KXErNyl8EWc5dxenOXI95zl9ZBdJeKpXSXQAl1l/dsdZev0HWXaDR2lyOYdpff+3aXnV93l1zDd5ccJ3iX3Yp4l5/ueJdjUnmXKbZ5l+8Zepe3fXqXgOF6l0tFe5cWqXuX4wx8l7JwfJeB1HyXUjh9lyScfZf4/32XzWN+l6PHfpd6K3+XU49/ly3zf5cIV4CX5bqAl8MegZeigoGXg+aBl2RKgpdHroKXLBKDlxJ2g5f52YOX4T2El8qhhJe1BYWXommFl4/NhZd+MYaXbpWGl1/5hpdSXYeXRsGHlzsliJcyiYiXKu2IlyNRiZcdtYmXGRmKlxZ9ipcU4YqXFEWLlxWpi5cXDYyXGnGMlx/VjJclOY2XLZ2NlzUBjpc/ZY6XS8mOl1ctj5dlkY+XdPWPl4VZkJeWvZCXqSGRl76FkZfT6ZGX6k2SlwKykpccFpOXN3qTl1Pek5dwQpSXj6aUl68KlZfQbpWX8tKVlxY3lpc7m5aXYv+Wl4ljl5eyx5eX3SuYlwiQmJc19JiXY1iZl5K8mZfDIJqX9YSalynpmpddTZuXk7Gbl8oVnJcDepyXPN6cl3dCnZe0pp2X8QqelzBvnpdw056Xsjefl/Wbn5c5AKCXfmSgl8XIoJcMLaGXVpGhl6D1oZfsWaKXOb6il4cio5fXhqOXKOujl3pPpJfOs6SXIhill3h8pZfQ4KWXKEWml4KpppfdDaeXOnKnl5jWp5f3OqiXV5+ol7kDqZccaKmXgMypl+UwqpdMlaqXtPmqlx5eq5eIwquX9Casl2GLrJfQ76yXP1Stl7C4rZcjHa6XloGulwvmrpeBSq+X+a6vl3ITsJfsd7CXZ9ywl+RAsZdhpbGX4Qmyl2Fuspfj0rKXZjezl+qbs5dvALSX9mS0l37JtJcILrWXkpK1lx73tZesW7aXOsC2l8okt5dbibeX7e23l4FSuJcWt7iXrBu5l0SAuZfc5LmXdkm6lxKuupeuEruXTHe7l+vbu5eMQLyXLaW8l9AJvZd1br2XGtO9l8E3vpdpnL6XEwG/l71lv5dpyr+XFi/Al8WTwJd1+MCXJl3Bl9jBwZeLJsKXQIvCl/bvwpeuVMOXZ7nDlyEexJfcgsSXmOfEl1ZMxZcVscWX1hXGl5d6xpda38aXHkTHl+Sox5eqDciXcnLIlzzXyJcGPMmX0qDJl58FypdtasqXPc/Klw40y5fgmMuXtP3Ll4hizJdex8yXNizNlw6RzZfo9c2Xw1rOl6C/zpd9JM+XXInPlzzuz5ceU9CXAbjQl+Uc0ZfKgdGXsObRl5hL0peBsNKXbBXTl1d605dE39OXMkTUlyKp1JcTDtWXBXPVl/jX1ZfsPNaX4qHWl9kG15fSa9eXy9DXl8Y12JfCmtiXwP/Yl75k2Ze+ydmXvy7al8KT2pfG+NqXy13bl9HC25fZJ9yX4Yzcl+zx3Jf3Vt2XBLzdlxEh3pchht6XMevel0NQ35dWtd+Xahrgl4B/4JeW5OCXrknhl8iu4ZfiE+KX/njilxve4pc6Q+OXWajjl3oN5JeccuSXwNfkl+Q85ZcKouWXMgfml1ps5peE0eaXrzbnl9ub55cJAeiXOGbol2jL6JeZMOmXzJXplwD76Zc1YOqXa8Xql6Mq65fcj+uXFvXrl1Fa7JeOv+yXzCTtlwuK7ZdM7+2XjlTul9G57pcVH++XW4Tvl6Hp75fpTvCXM7Twl30Z8ZfJfvGXFuTxl2VJ8pe1rvKXBRTzl1h585er3vOXAET0l1ap9JetDvWXBXT1l1/Z9Ze6PvaXFqT2l3QJ95fTbveXM9T3l5Q5+Jf3nviXWgT5l8Bp+Zcmz/mXjjT6l/aZ+pdg//qXzGT7lzjK+5emL/yXFpX8l4b6/Jf4X/2Xa8X9l98q/pdUkP6Xy/X+l0Nb/5e8wP+XGxMAnNlFAJyXeACcV6sAnBbeAJzXEAGcmEMBnFl2AZwcqQGc39sBnKIOApxmQQKcK3QCnPCmApy22QKcfQwDnEQ/A5wMcgOc1aQDnJ7XA5xoCgScMj0EnP1vBJzJogScldUEnGIIBZwwOwWc/m0FnM2gBZyc0wWcbAYGnD05BpwObAac4J4GnLPRBpyGBAecWjcHnC5qB5wDnQec2c8HnK8CCJyGNQicXmgInDabCJwPzgic6AAJnMIzCZydZgmceJkJnFTMCZwx/wmcDjIKnOxkCpzLlwqcqsoKnIn9CpxqMAucS2MLnCyWC5wOyQuc8fsLnNUuDJy5YQycnpQMnIPHDJxp+gycTy0NnDdgDZwekw2cB8YNnPD4DZzaKw6cxF4OnK+RDpybxA6ch/cOnHQqD5xhXQ+cT5APnD7DD5wt9g+cHSkQnA5cEJz/jhCc8cEQnOP0EJzWJxGcyloRnL6NEZyzwBGcqfMRnJ8mEpyWWRKcjYwSnIW/Epx+8hKcdyUTnHFYE5xsixOcZ74TnGPxE5xfJBScXFcUnFqKFJxYvRScV/AUnFYjFZxXVhWcV4kVnFm8FZxb7xWcXSIWnGFVFpxkiBacabsWnG7uFpx0IRecelQXnIGHF5yJuhecke0XnJogGJyjUxicrYYYnLi5GJzD7Biczx8ZnNxSGZzphRmc97gZnAXsGZwVHxqcJFIanDSFGpxFuBqcV+sanGkeG5x8URucj4QbnKO3G5y46huczR0cnONQHJz6gxycEbccnCjqHJxBHR2cWlAdnHODHZyOth2cqOkdnMQcHpzgTx6c/YIenBq2Hpw46R6cVxwfnHZPH5yWgh+ctrUfnNfoH5z5GyCcG08gnD6CIJxhtSCcheggnKobIZzQTiGc9oEhnBy1IZxD6CGcaxsinJROIpy9gSKc5rQinBHoIpw8GyOcZ04jnJOBI5zAtCOc7ucjnBwbJJxKTiSceYEknKm0JJza5yScCxslnD1OJZxvgSWcorQlnNbnJZwKGyacP04mnHSBJpyqtCac4ecmnBgbJ5xQTieciIEnnMK0J5z75yecNhsonHFOKJysgSic6LQonCXoKJxjGymcoU4pnN+BKZwftSmcX+gpnJ8bKpzgTiqcIoIqnGS1Kpyn6Cqc6xsrnC9PK5x0giucurUrnADpK5xGHCycjk8snNaCLJwetiycZ+ksnLEcLZz7Ty2cRoMtnJK2LZze6S2cKx0unHhQLpzGgy6cFbcunGTqLpy0HS+cBVEvnFaEL5yoty+c+uovnE0eMJyhUTCc9YQwnEq4MJyf6zCc9R4xnExSMZyjhTGc+7gxnFTsMZytHzKcBlMynGGGMpy8uTKcF+0ynHQgM5zQUzOcLocznIy6M5zq7TOcSiE0nKpUNJwKiDSca7s0nM3uNJwvIjWcklU1nPaINZxavDWcv+81nCQjNpyKVjac8Yk2nFi9NpzA8DacKCQ3nJFXN5z7ijecZb43nNDxN5w8JTicqFg4nBSMOJyCvzic8PI4nF4mOZzNWTmcPY05nK7AOZwf9DmckCc6nAJbOpx1jjqc6cE6nF31OpzSKDucR1w7nL2PO5wzwzucqvY7nCIqPJyaXTycE5E8nI3EPJwH+Dycgis9nP1ePZx5kj2c9sU9nHP5PZzxLD6ccGA+nO+TPpxuxz6c7/o+nG8uP5zxYT+cc5U/nPbIP5x5/D+c/S9AnIJjQJwHl0CcjcpAnBP+QJyaMUGcImVBnKqYQZwzzEGcvP9BnEYzQpzRZkKcXJpCnOjNQpx0AUOcATVDnI9oQ5wdnEOcrM9DnDwDRJzMNkScXWpEnO6dRJyA0UScEwVFnKY4RZw5bEWczp9FnGPTRZz4BkacjzpGnCVuRpy9oUacVdVGnO4IR5yHPEecIXBHnLujR5xW10ec8gpInI4+SJwrckicyaVInGfZSJwFDUmcpUBJnEV0SZzlp0mchttJnCgPSpzKQkqcbXZKnBGqSpy13UqcWhFLnP9ES5yleEucTKxLnPPfS5ybE0ycQ0dMnOx6TJyWrkycQOJMnOsVTZyXSU2cQ31NnO+wTZyd5E2cSxhOnPlLTpyof06cWLNOnAjnTpy5Gk+ca05PnB2CT5zPtU+cg+lPnDcdUJzrUFCcoIRQnFa4UJwN7FCcxB9RnHtTUZwzh1Gc7LpRnKXuUZxfIlKcGlZSnNWJUpyRvVKcTfFSnAolU5zIWFOchoxTnEXAU5wF9FOcxSdUnIVbVJxGj1ScCMNUnMv2VJyOKlWcUV5VnBaSVZzbxVWcoPlVnGYtVpwtYVac9JRWnLzIVpyE/FacTjBXnBdkV5zil1ecrMtXnHj/V5xEM1icEWdYnN6aWJyszlicewJZnEo2WZwZalmc6p1ZnLvRWZyMBVqcXjlanDFtWpwEoVqc2NRanK0IW5yCPFucWHBbnC6kW5wF2Fuc3QtcnLU/XJyOc1ycZ6dcnEHbXJwbD12c90JdnNJ2XZyvql2cjN5dnGkSXpxHRl6cJnpenAauXpzm4V6cxhVfnKdJX5yJfV+cbLFfnE/lX5wyGWCcFk1gnPuAYJzhtGCcx+hgnK0cYZyUUGGcfIRhnGS4YZxN7GGcNyBinCFUYpwMiGKc97tinOPvYpzQI2OcvVdjnKuLY5yZv2OciPNjnHgnZJxoW2ScWY9knErDZJw892ScLytlnCJfZZwWk2WcCsdlnP/6ZZz1Lmac62JmnOKWZpzZymac0f5mnMoyZ5zDZmecvZpnnLfOZ5yyAmicrjZonKpqaJynnmicpNJonKIGaZyhOmmcoG5pnKCiaZyg1mmcoQpqnKM+apylcmqcqKZqnKvaapyvDmucs0JrnLl2a5y+qmucxd5rnMwSbJzTRmyc23psnOSubJzu4myc9xZtnAJLbZwNf22cGbNtnCXnbZwyG26cQE9unE6Dbpxct26cbOtunHwfb5yMU2+cnYdvnK+7b5zB72+c1CNwnOhXcJz8i3CcEcBwnCb0cJw8KHGcUlxxnGmQcZyBxHGcmfhxnLIscpzMYHKc5pRynADJcpwb/XKcNzFznFRlc5xxmXOcjs1znK0BdJzLNXSc62l0nAuedJws0nScTQZ1nG86dZyRbnWctKJ1nNfWdZz8CnacID92nEZzdpxsp3acktt2nLoPd5zhQ3ecCnh3nDOsd5xc4HechhR4nLFIeJzcfHicCLF4nDXleJxiGXmcj015nL6BeZzttXmcHOp5nEweepx9UnqcroZ6nOC6epwS73qcRiN7nHlXe5yti3uc4r97nBj0e5xOKHychFx8nLuQfJzzxHycLPl8nGUtfZyeYX2c2JV9nBPKfZxO/n2cijJ+nMdmfpwEm36cQs9+nIADf5y/N3+c/2t/nD+gf5x/1H+cwQiAnAI9gJxFcYCciKWAnMzZgJwQDoGcVUKBnJp2gZzgqoGcJ9+BnG4Tgpy2R4Kc/nuCnEewgpyR5IKc2xiDnCZNg5xxgYOcvbWDnArqg5xXHoScpFKEnPOGhJxCu4Scke+EnOEjhZwyWIWcg4yFnNXAhZwn9YWceimGnM5dhpwikoacd8aGnMz6hpwiL4eceWOHnNCXh5wozIecgACInNk0iJwzaYicjZ2InOjRiJxDBomcnzqJnPtuiZxYo4mctteJnBQMipxzQIqc03SKnDOpipyT3Yqc9RGLnFZGi5y5eoucHK+LnH/ji5zjF4ycSEyMnK2AjJwTtYyceumMnOEdjZxJUo2csYaNnBq7jZyD742c7SOOnFhYjpzDjI6cL8GOnJv1jpwIKo+cdl6PnOSSj5xTx4+cwvuPnDIwkJyjZJCcFJmQnIbNkJz4AZGcazaRnN5qkZxSn5Gcx9ORnDwIkpyyPJKcKHGSnJ+lkpwX2pKcjw6TnAhDk5yBd5Oc+6uTnHbgk5zxFJScbEmUnOl9lJxmspSc4+aUnGEblZzgT5WcX4SVnN+4lZxf7ZWc4CGWnGJWlpzkipacZ7+WnOrzlpxuKJec8lyXnHeRl5z9xZecg/qXnAovmJySY5icGpiYnKLMmJwsAZmctTWZnEBqmZzLnpmcVtOZnOIHmpxvPJqc/HCanIqlmpwZ2pqcqA6bnDdDm5zId5ucWKybnOrgm5x8FZycDkqcnKF+nJw1s5ycyuecnF4cnZz0UJ2cioWdnCG6nZy47p2cUCOenOhXnpyBjJ6cG8GenLX1npxQKp+c616fnIeTn5wkyJ+cwfyfnF4xoJz9ZaCcm5qgnDvPoJzbA6GcezihnB1toZy+oaGcYdahnAQLopynP6KcS3SinPCoopyV3aKcOxKjnOJGo5yJe6OcMLCjnNjko5yBGaScK06knNWCpJx/t6ScKuyknNYgpZyCVaWcL4qlnN2+pZyL86WcOSimnOhcppyYkaacSMamnPn6ppyrL6ecXWSnnBCZp5zDzaecdwKonCs3qJzga6iclqConEzVqJwDCqmcuj6pnHJzqZwrqKmc5NypnJ0RqpxYRqqcE3uqnM6vqpyK5KqcRxmrnAROq5zCgqucgLernD/sq5z+IKycvlWsnH+KrJxAv6ycAvSsnMUorZyIXa2cS5KtnA/HrZzU+62cmTCunF9lrpwmmq6c7c6unLQDr5x9OK+cRW2vnA+ir5zZ1q+cowuwnG5AsJw6dbCcBqqwnNPesJyhE7Gcb0ixnD19sZwMsrGc3OaxnK0bspx9ULKcT4WynCG6spz07rKcxyOznJtYs5xvjbOcRMKznBr3s5zwK7Scx2C0nJ6VtJx2yrScTv+0nCc0tZwBabWc2521nLbStZyRB7acbTy2nEpxtpwnpracBdu2nOMPt5zCRLecoXm3nIGut5xi47ecQxi4nCRNuJwHgric6ra4nM3ruJyxILmcllW5nHuKuZxhv7mcR/S5nC4pupwWXrqc/pK6nObHupzQ/LqcuTG7nKRmu5yPm7ucetC7nGYFvJxTOrycQG+8nC6kvJwd2bycDA69nPtCvZzsd72c3Ky9nM7hvZzAFr6csku+nKWAvpyZtb6cjeq+nIIfv5x3VL+cbYm/nGS+v5xb87+cUijAnEtdwJxDksCcPcfAnDf8wJwxMcGcLWbBnCibwZwl0MGcIQXCnB86wpwdb8KcG6TCnBvZwpwaDsOcG0PDnBx4w5wdrcOcH+LDnCIXxJwlTMScKYHEnC22xJwy68ScOCDFnD5VxZxEisWcTL/FnFP0xZxcKcacZV7GnG6Txpx4yMacg/3GnI4yx5yaZ8ecp5zHnLTRx5zBBsiczzvInN5wyJztpcic/drInA0QyZweRcmcMHrJnEKvyZxV5MmcaBnKnHxOypyRg8qcprjKnLvtypzRIsuc6FfLnACNy5wXwsucMPfLnEkszJxjYcycfZbMnJjLzJyzAM2czzXNnOtqzZwIoM2cJtXNnEQKzpxjP86cgnTOnKKpzpzD3s6c5BPPnAZJz5wofs+cS7PPnG7oz5ySHdCctlLQnNuH0JwBvdCcJ/LQnE4n0Zx2XNGcnpHRnMbG0Zzv+9GcGTHSnENm0pxum9KcmdDSnMUF05zyOtOcH3DTnE2l05x72tOcqg/UnNlE1JwJetScOq/UnGvk1JycGdWcz07VnAGE1Zw1udWcae7VnJ0j1pzSWNacCI7WnD7D1px1+NacrS3XnOVi15wdmNecVs3XnJAC2JzKN9icBW3YnECi2Jx819icuQzZnPZB2Zw0d9mccqzZnLHh2ZzwFtqcMEzanHGB2pyyttqc9OvanDYh25x5VtucvIvbnADB25xE9tuciivcnM9g3JwWltycXMvcnKQA3ZzsNd2cNGvdnH2g3ZzH1d2cEQvenFxA3pyndd6c86renEDg3pyNFd+c20rfnCmA35x4td+cx+rfnBcg4JxnVeCcuIrgnArA4Jxc9eCcryrhnAJg4ZxWleGcq8rhnAAA4pxVNeKcrGrinAKg4pxa1eKcsgrjnApA45xjdeOcvarjnBfg45xyFeSczUrknCmA5JyFteSc4urknEAg5ZyeVeWc/YrlnFzA5Zy89eWcHCvmnH1g5pzfleacQcvmnKMA55wHNueca2vnnM+g55w01uecmQvonABB6JxmduiczavonDXh6JyeFumcB0zpnHCB6ZzatumcRezpnLAh6pwcV+qciIzqnPXB6pxi9+qc0CzrnD9i65yul+ucHs3rnI4C7Jz/N+yccW3snOOi7JxV2OycyA3tnDxD7ZyweO2cJa7tnJrj7ZwQGe6ch07unP6D7px2ue6c7u7unGck75zgWe+cWo/vnNXE75xQ+u+cyy/wnEdl8JzEmvCcQdDwnL8F8Zw+O/GcvXDxnDym8Zy92/GcPRHynL9G8pxAfPKcw7HynEbn8pzJHPOcTVLznNKH85xXvfOc3fLznGQo9JzqXfSccpP0nPrI9JyD/vScDDT1nJZp9Zwgn/Wcq9T1nDYK9pzCP/acT3X2nNyq9pxq4Pac+BX3nIdL95wWgfecprb3nDfs95zIIficWVf4nOyM+Jx+wvicEvj4nKYt+Zw6Y/mcz5j5nGXO+Zz7A/qckjn6nClv+pzBpPqcWdr6nPIP+5yMRfucJnv7nMGw+5xc5vuc+Bv8nJRR/Jwxh/yczrz8nGzy/JwLKP2cql39nEqT/ZzqyP2ci/79nCw0/pzOaf6ccZ/+nBTV/py4Cv+cXED/nAF2/5ymq/+cTOH/nPMWAJ2aTACdQYIAnem3AJ2S7QCdOyMBneVYAZ2QjgGdO8QBneb5AZ2SLwKdP2UCneyaAp2a0AKdSAYDnfc7A52ncQOdV6cDnQfdA525EgSdakgEnR1+BJ3PswSdg+kEnTcfBZ3rVAWdoIoFnVbABZ0M9gWdwysGnXphBp0ylwad68wGnaQCB51dOAedF24HndKjB52N2QedSQ8InQZFCJ3CegidgLAInT7mCJ39GwmdvFEJnXyHCZ08vQmd/fIJnb4oCp2AXgqdQ5QKnQbKCp3J/wqdjjULnVJrC50YoQud3tYLnaQMDJ1rQgydM3gMnfutDJ3E4wydjRkNnQV/gwkzT1ALzU90DQAAABAK/gYTZp6gFpmf6BrNT3QNM09QCwV/gwkAAAAI5ie6BponqAWDv8EEAAAABPMTXQPNE9QCwd9gAgAAAAL6ia4B5glqAeFvMAEzT1ALAAAACJonqAUAAAAEzRPUAgAAAALmCWoBAAAAAfMEtQAAAIAAeoJaAAAAQAA9QS0AAAAgAJ6gFgAAAAAAL5ZhA3Q92wUAAAAIjMIkCtFpngwAAAAQAAAAAAB9AAAA+gAAAHcBAAD0AQAAcQIAAO4CAABrAwAA6AMAAGUEAADiBAAAXwUAANwFAABZBgAA1gYAAAAAAAB9AACAuwAAwNoAAAD6AACAOAEAAHcBAIC1AQAA9AEAAHECAADuAgAAawMAAOgDAADiBAAA3AUAAAAAAAB9AABAnAAAgLsAAMDaAAAA+gAAgDgBAAB3AQCAtQEAAPQBAABxAgAA7gIAAGsDAADoAwAA4gQAAAAAAAB9AACAuwAAwNoAAAD6AACAOAEAAHcBAIC1AQAA9AEAgDICAABxAgCArwIAAO4CAABrAwAA6AMAAAAAAEAfAACAPgAAwF0AAAB9AABAnAAAgLsAAMDaAAAA+gAAgDgBAAB3AQCAtQEAAPQBAIAyAgAAcQIARKwAAIC7AAAAfQAAsA8AABQAAABDLlVURi04AAAAAAAAAAAAAAAAANi8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAPglAACIJgAAGCcAABgnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPh+AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkBQAAJAYAACQHgAAX3CJAP8JLw8AAAAASCgAACQAAAAlAAAAAAAAAGAoAAAmAAAAJwAAAAYAAAAFAAAAAQAAAAEAAAACAAAAAwAAAAYAAAAEAAAABQAAAAQAAAAHAAAABQAAAAAAAABoKAAAKAAAACkAAAAHAAAACAAAAAIAAAACAAAABgAAAAcAAAAJAAAACAAAAAkAAAAGAAAACgAAAAcAAAAIAAAAAAAAAHAoAAAqAAAAKwAAAPj////4////cCgAACwAAAAtAAAAwL4AANS+AAAIAAAAAAAAAIgoAAAuAAAALwAAAPj////4////iCgAADAAAAAxAAAA8L4AAAS/AAAEAAAAAAAAAKAoAAAyAAAAMwAAAPz////8////oCgAADQAAAA1AAAAIL8AADS/AAAEAAAAAAAAALgoAAA2AAAANwAAAPz////8////uCgAADgAAAA5AAAAUL8AAGS/AAAAAAAA0CgAACgAAAA6AAAACAAAAAgAAAACAAAAAgAAAAoAAAAHAAAACQAAAAgAAAAJAAAABgAAAAsAAAAIAAAAAAAAAOAoAAAmAAAAOwAAAAkAAAAFAAAAAQAAAAEAAAALAAAAAwAAAAYAAAAEAAAABQAAAAQAAAAMAAAACQAAAAAAAADwKAAAKAAAADwAAAAKAAAACAAAAAIAAAACAAAABgAAAAcAAAAJAAAADAAAAA0AAAAKAAAACgAAAAcAAAAAAAAAACkAACYAAAA9AAAACwAAAAUAAAABAAAAAQAAAAIAAAADAAAABgAAAA4AAAAPAAAACwAAAAcAAAAFAAAAAAAAABApAAA+AAAAPwAAAEAAAAABAAAAAwAAAA0AAAAAAAAAMCkAAEEAAABCAAAAQAAAAAIAAAAEAAAADgAAAAAAAABAKQAAQwAAAEQAAABAAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAAAAAAgCkAAEUAAABGAAAAQAAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAABIAAAATAAAAFAAAABUAAAAWAAAAAAAAALgpAABHAAAASAAAAEAAAAADAAAABAAAABcAAAAFAAAAGAAAAAEAAAACAAAABgAAAAAAAAD4KQAASQAAAEoAAABAAAAABwAAAAgAAAAZAAAACQAAABoAAAADAAAABAAAAAoAAAAAAAAAMCoAAEsAAABMAAAAQAAAABAAAAAbAAAAHAAAAB0AAAAeAAAAHwAAAAEAAAD4////MCoAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAAAAAAaCoAAE0AAABOAAAAQAAAABgAAAAgAAAAIQAAACIAAAAjAAAAJAAAAAIAAAD4////aCoAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAlAAAASAAAADoAAAAlAAAATQAAADoAAAAlAAAAUwAAAAAAAAAlAAAAbQAAAC8AAAAlAAAAZAAAAC8AAAAlAAAAeQAAAAAAAAAlAAAASQAAADoAAAAlAAAATQAAADoAAAAlAAAAUwAAACAAAAAlAAAAcAAAAAAAAAAlAAAAYQAAACAAAAAlAAAAYgAAACAAAAAlAAAAZAAAACAAAAAlAAAASAAAADoAAAAlAAAATQAAADoAAAAlAAAAUwAAACAAAAAlAAAAWQAAAAAAAABBAAAATQAAAAAAAABQAAAATQAAAAAAAABKAAAAYQAAAG4AAAB1AAAAYQAAAHIAAAB5AAAAAAAAAEYAAABlAAAAYgAAAHIAAAB1AAAAYQAAAHIAAAB5AAAAAAAAAE0AAABhAAAAcgAAAGMAAABoAAAAAAAAAEEAAABwAAAAcgAAAGkAAABsAAAAAAAAAE0AAABhAAAAeQAAAAAAAABKAAAAdQAAAG4AAABlAAAAAAAAAEoAAAB1AAAAbAAAAHkAAAAAAAAAQQAAAHUAAABnAAAAdQAAAHMAAAB0AAAAAAAAAFMAAABlAAAAcAAAAHQAAABlAAAAbQAAAGIAAABlAAAAcgAAAAAAAABPAAAAYwAAAHQAAABvAAAAYgAAAGUAAAByAAAAAAAAAE4AAABvAAAAdgAAAGUAAABtAAAAYgAAAGUAAAByAAAAAAAAAEQAAABlAAAAYwAAAGUAAABtAAAAYgAAAGUAAAByAAAAAAAAAEoAAABhAAAAbgAAAAAAAABGAAAAZQAAAGIAAAAAAAAATQAAAGEAAAByAAAAAAAAAEEAAABwAAAAcgAAAAAAAABKAAAAdQAAAG4AAAAAAAAASgAAAHUAAABsAAAAAAAAAEEAAAB1AAAAZwAAAAAAAABTAAAAZQAAAHAAAAAAAAAATwAAAGMAAAB0AAAAAAAAAE4AAABvAAAAdgAAAAAAAABEAAAAZQAAAGMAAAAAAAAAUwAAAHUAAABuAAAAZAAAAGEAAAB5AAAAAAAAAE0AAABvAAAAbgAAAGQAAABhAAAAeQAAAAAAAABUAAAAdQAAAGUAAABzAAAAZAAAAGEAAAB5AAAAAAAAAFcAAABlAAAAZAAAAG4AAABlAAAAcwAAAGQAAABhAAAAeQAAAAAAAABUAAAAaAAAAHUAAAByAAAAcwAAAGQAAABhAAAAeQAAAAAAAABGAAAAcgAAAGkAAABkAAAAYQAAAHkAAAAAAAAAUwAAAGEAAAB0AAAAdQAAAHIAAABkAAAAYQAAAHkAAAAAAAAAUwAAAHUAAABuAAAAAAAAAE0AAABvAAAAbgAAAAAAAABUAAAAdQAAAGUAAAAAAAAAVwAAAGUAAABkAAAAAAAAAFQAAABoAAAAdQAAAAAAAABGAAAAcgAAAGkAAAAAAAAAUwAAAGEAAAB0AAAAAAAAAAAAAACYKgAATwAAAFAAAABAAAAAAQAAAAAAAADAKgAAUQAAAFIAAABAAAAAAgAAAAAAAADgKgAAUwAAAFQAAABAAAAAIAAAACEAAAAMAAAADQAAAA4AAAAPAAAAIgAAABAAAAARAAAAAAAAAAgrAABVAAAAVgAAAEAAAAAjAAAAJAAAABIAAAATAAAAFAAAABUAAAAlAAAAFgAAABcAAAAAAAAAKCsAAFcAAABYAAAAQAAAACYAAAAnAAAAGAAAABkAAAAaAAAAGwAAACgAAAAcAAAAHQAAAAAAAABIKwAAWQAAAFoAAABAAAAAKQAAACoAAAAeAAAAHwAAACAAAAAhAAAAKwAAACIAAAAjAAAAAAAAAGgrAABbAAAAXAAAAEAAAAADAAAABAAAAAAAAACQKwAAXQAAAF4AAABAAAAABQAAAAYAAAAAAAAAuCsAAF8AAABgAAAAQAAAAAEAAAAlAAAAAAAAAOArAABhAAAAYgAAAEAAAAACAAAAJgAAAAAAAAAILAAAYwAAAGQAAABAAAAADwAAAAMAAAAkAAAAAAAAADAsAABlAAAAZgAAAEAAAAAQAAAABAAAACUAAAAAAAAAiCwAAGcAAABoAAAAQAAAAAMAAAAEAAAACwAAACwAAAAtAAAADAAAAC4AAAAAAAAAUCwAAGcAAABpAAAAQAAAAAMAAAAEAAAACwAAACwAAAAtAAAADAAAAC4AAAAAAAAAuCwAAGoAAABrAAAAQAAAAAUAAAAGAAAADQAAAC8AAAAwAAAADgAAADEAAAAAAAAA+CwAAGwAAABtAAAAQAAAAAAAAAAILQAAbgAAAG8AAABAAAAADAAAABEAAAANAAAAEgAAAA4AAAADAAAAEwAAAA8AAAAAAAAAUC0AAHAAAABxAAAAQAAAADIAAAAzAAAAJgAAACcAAAAoAAAAAAAAAGAtAAByAAAAcwAAAEAAAAA0AAAANQAAACkAAAAqAAAAKwAAAGYAAABhAAAAbAAAAHMAAABlAAAAAAAAAHQAAAByAAAAdQAAAGUAAAAAAAAAAAAAACApAABnAAAAdAAAAEAAAAAAAAAAMC0AAGcAAAB1AAAAQAAAABQAAAAEAAAABQAAAAYAAAAPAAAAFQAAABAAAAAWAAAAEQAAAAcAAAAXAAAAEAAAAAAAAACYLAAAZwAAAHYAAABAAAAABwAAAAgAAAARAAAANgAAADcAAAASAAAAOAAAAAAAAADYLAAAZwAAAHcAAABAAAAACQAAAAoAAAATAAAAOQAAADoAAAAUAAAAOwAAAAAAAABgLAAAZwAAAHgAAABAAAAAAwAAAAQAAAALAAAALAAAAC0AAAAMAAAALgAAAAAAAABgKgAAEQAAABIAAAATAAAAFAAAABUAAAAWAAAAFwAAAAAAAACQKgAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAAAIAAAAAAAAAmC0AAHkAAAB6AAAAewAAAHwAAAAYAAAABQAAAAEAAAAFAAAAAAAAAMAtAAB5AAAAfQAAAHsAAAB8AAAAGAAAAAYAAAACAAAABgAAAAAAAADQLQAAfgAAAH8AAAA8AAAAAAAAAOAtAAB+AAAAgAAAADwAAAAAAAAAEC4AAHkAAACBAAAAewAAAHwAAAAZAAAAAAAAAAAuAAB5AAAAggAAAHsAAAB8AAAAGgAAAAAAAACQLgAAeQAAAIMAAAB7AAAAfAAAABgAAAAHAAAAAwAAAAcAAAAEAUQBggGiAUkAiQApABkAAwADAAMAAwADAAMAAwADANUA9QC1AHUA5QClAJMAkwBjAMMAUwAzAPkAeQC5ADkA2QBZAJkAGQDpAGkAqQApAMkASQCJAAkAAQAXAQcBFQAVAAMAAwADAAMAhgAXAQcBFwADAAMAAwADACcCBwIVAhUCJQElASUAJQCGABcAFQEVAQUBBQEFAAUAJwIHAhUCFQIlASUBJQAlAIgAFwEHARcAAwADAAMAAwCCATkCNwE3ARkDCQM5ACkCFwIXAicBJwEHAgcCJwAnADMDIwMGAYIBogEZAikBKQAHAQcBFQEVARUBFQEXABcABwAHADcDBwMlAyUDNQI1AjUANQATAzMBIwIDAggBCAIEAxkBBwEHARcAFwADAAMAAwADAAMAAwADAAMARAOCA6IDGQVZAcIDWQDiAykESQIXBBcERwFHAUcARwAJBCkDOQIJAxcDFwM3ATcBNwA3ACcCJwIVAhUCFQIVAiMBIwEFAiUAVQVFBVUEVQMzBUMEIwVTAgMFMwRDAzMDCAEIAhkCKQEVARUBFQEVAQcBBwEXABcABQAFAAUABQAGA4QDwgMZBVkB4gMCBCkESQIZBEcBRwEJBEkAKQM5AhkDOQEJAzkAJQIlAiUCJQIFAgUCBQIFAiUAJQAlACUAVwVXBEUFRQVTA1MDUwNTAzUFRQQjBSMFUwIDBTMEQwNTADMDCAEGAoQCxAICAxkCKQEpABcBFwEHAQcBFwAXAAcABwAiAzkFWQNCA0kEKQVZAhkFVwFXATcENwRHA0cDWQAJBCcERwI3A0cAFQQVBEUBRQElAzUCEwMTAzMBMwEFAzUAIwIDAlMFQwVTBAMFCAEIAgQDGQEHAQcBFwAXAAMAAwADAAMAAwADAAMAAwBGA8QDBgSCBKQE5AQkBRkHeQFiBYQFxAUZBmkBaQACBiIGQgYZBEkBSQApAzkCCQMXAxcDNwE3ATcANwAnAicCFQIlAQUCJQB3B2cHdwZXB3cFZwZFB0UHdQRVBmUFNQd1A3UDRQZFBlcFVwRlA2UDIwdzAmUEBQdzAHMAYwJjAkUFNQUDBgMGVQNFBDMGIwYlBVUCEwUTBVMBUwE1BEUDAwVTACMEQwIzAwMECAEIAggDBgQZAoIEFwEXAQcBBwEXABcABQAFAAUABQCkBOYEZAWiBcQFKQd5AgIGdwF3ARkHeQA5BmkDaQAiBkIGGQVnAmcCKQYJBhcGFwZnAWcBWQE5BFkAYgYpBEkCGQRJAQkESQAnAycDNwI3AhUDFQMVAxUDNQE1ATUBNQEHAzcAJQIlAiMBIwEjASMBAwIjAHUHZQd1BnUFZQZlBkUHRQd1BHUEVwdXBVUGZQUzBzMHcwNDBkUFVQQ1BVUDYwQDB0MEIwVTAgMFQwMzAwgBCAIIAwQERgTCBBkCKQHiBAkAFwEXAQcBBwEXABcABAVCBWIFggVZBjkHogUpB3kCSQZpBBkHeQHCBTkGaQNJBVkESQTiBScGJwZnAmcCZwFnARkGaQA5BVkDKQVZAhcFFwVXAVcBNwQ3BEcDRwNZAAkEJwQnBEcCRwIXBBcENQNFASUDNQJHAAcDNQA1ABMDEwMTAxMDMwEjAgMCIwB1B2UHcwZzBlMHcwVjBkMHcwRjBXMDUwUDB3MAAwYDBQgBCAIIAwQEGQEJARcAFwADAAMAAwADAAMAAwADAAMASARIBUgGSAdICEgJRgrGCkYLxgtGDMYMQg1kDaYNIg5EDoQOxA4ED4kBQg9iD4IPpA/iDxkFWQECECIQQhAZBEcBRwEJBEkAKQM5AhcDFwM3ATcBBwMHAzcANwAnAicCFQIlAQUCJQBoEGgRaBJmE+QTJBRmFOQUIhVEFYQVxBUEFkQWGQ/5AfkAghaiFsIW6QLiFhkO6QECFyIXQhdiF4IXohfJBjkNwhcpDdkCGQ25B+IXAhjJAyIYSQvXAdcBCQ3ZAIkKqQhJDMkEaQu5BjcMNwwnDCcMxwLHAlcLVwu5BYkJFwwXDMcBxwGZCAkMxwDHALkEaQqpBnkJNws3C7cDtwOJCFkKJwsnC6kFaQmnBKcEeQiJB5cElwR5B3kGtQK1ArUCtQIVCxULtQG1AQcLtwCXBkcKNwqnA1cJlwUlCiUKpQKlAhUKFQqlAaUBBwpnCKUApQCHBkcJlQOVAzcJVwiHBWcHJQklCZUClQJXB3cFNQg1CIUDhQNnBkcHdwRXBmcFdwMTCZMBBQmVAEUIhQR1AnUCRwZnBCMIIwgjCCMIgwITCDUHJQcTBxMHcwFzAVUFBQd1ADUGZQNFBVUEJQZlAjUFAwiDABMGYwEDBmMAVQNFBCMFIwVTAgMFMwRDA1MAIwRDAjMDRhj5D+kP2Q/pDskP2Q65D/kLyQ7ZDMIY5wznDNcN1w35CskNtw63DucL5wuXD5cP9wn3CecK5wq3DbcN1wvXC4cPhw/3CPcIxwzHDKkOmQ6HDocOeQ95DvUH9Qf1B/UH1QrVCqcNtwzHC/cGZQ9lD+UIVQ+VDdUJ9QXlB6UMtQtFD0UP9QT1BMcK5wb1A/UDMw8zD4UN1QgjD/MCZQ6VDAMPAw/FCVUOowujC3UN1QdDDkMOxQjVBjMOMw6zCbMJlQulCrMK4wXjBIMMYw3jAyMOAw7jAFMN0wVzDMMHQw2DC7MI0wSTCqMJYwzTA3MLUwzDBZMJcwqjB5MH9w73DPUN9Q3jDeMN4w3jDaMP4wkIAQgCCAMIBAgFBgaGBgQHQgdiBxcBFwEJARkABwAHAIgHiAiICYgKiAuGDAYNiA2GDgYPhg8GEIQQxhBGEcQRBBJEEoQSxBIEE0QThBPEEwIUIhRCFGQUohTCFOQUIhVCFWIVmQGCFaIVwhXiFQIWKQiJAhkIiQEiFkIWYhaCFikHeQJpBBkHWQV5AaIWOQZpA0kFWQQpBmkCGQbCFjkFZwFnAVkDSQQnBScFVwJXAhcFFwVXAVcBCQVZADcENwRHAycERwI3A0UBRQEXBAcEJQMlAzUCNQJHAAcDFQMVAzUBNQAjAiMCEwIjAQMCIwDiFgIX6Q4iF0IXYhf5C4IX2Q2pD/kKuQ7pC8kN2QyZD/kJ6Qq5DdkLiQ/5CMkMmQ7pCXkP+QepDdkKuQxpD6IXxwvHC/cG9waJDukIWQ+ZDfcF9wV3DncO5wfnB6cMpwzHCscKtwu3C9kJiQ1HD0cP9wT3BDcPNw/3A/cD1wjXCOcG5wYnDycP9wL3AmkO+QAXDxcP9wH3AZcMlwzHCccJVw6nC7cK5wV3DdcHRw7nBIcMxwg3DmcN1wbnA5cLtwknDicOpwqnCucC5wIXDhcO5wHnAQkO6QBXDVcN1wXXBXcMxwdHDYcL1QTVBLcIlwqnCWcMxwY3DdUD1QPVAtUCJw0HDRUNFQ11C3ULtQe1B9UB1QFXDNcAxQXFBYUKhQqlCEUMxQRlC7UGtQaXCQcMNQw1DMUDxQN1CnUKpQelB6UGpQbHAAcLwwLDAiUMVQu1BRUMhQmVCMUBRQu1BGUKNQt1CbMDswOVB4UIJQtVCrMCswKlBRULswGzAbUAZQmVBkUKpQR1CIUHNQqjA6MDUwmTBSMKowITCqMBBQqlAGMIYwiDBkMJkwQzCZMDkwN1BwUJUwiDBSMJYwdzBpMCEwmTAEMIgwRTB3MFMwiDA2MGQwdzBAMIgwBTBmMFMwdzA0MGAwdzAAMGYwDzD+MP8w7TD/MNww/zDNMO4w2zD8MO4wyjDgMPCAEIAggDBAQZAQkBFwAXAAMAAwADAAMAAwADAAMAAwBGBMYERAX5D4QFwgXoBfkC4gYZD/kBCAcICAgJCAoICwgMBg2GDQYOhg4GD4YPBhCEEMQQAhEkEWQRohFZAcIR4hECEiISGQRJAUISKQM5AhcDFwM3ATcBCQM5ACcCJwIVAiUBBQIlAOcP9w7XD/cNxw/3DLcP9wulD6UP9wqXD/cJ9wiFD4UPdQ/1B2UP9QZVD/UFQw9DD/ME8wPzAPMA8wDzAPMA8wDzAPMANQ81DzUPNQ9oEmYT5hNmFCMPAw/kFCQVZBWiFcQVBBZCFmQWpBbkFiQX6QNiF4IXohfCF+IXAhgiGAkNQhhiGIIYOQyiGBkMyQDCGOcC5wIpDhkO2QMpDdkC2QE5C+IYFw0XDckEaQvJA6kHJwwnDMkCuQXJAQkMSQu5BGkKqQa3A7cDWQqpBScLJwu3ArcCFwsXC7cBtwEJC7kAaQmZBkkKqQR5CIkHpwOnAzkKWQknCicKmQVpCKcBpwGJBnkHlwSXBEkJWQdnB2cHpQKlAqUCpQIVChUKBwqnADcJlwNXCIcFJQklCZUClQJ3BgcJFQkVCZUBlQGXAEcIhwR3BTcIhwNnBicIhQKFAkcHdwQVCBUIhQGFAYUAhQAHCFcGNQc1B3UDdQNnBUcGJQclB3UCdQJnBFcFBQcFBxMHEwcTBxMHcwFzAXUANQZlA0UFVQQlBmMCEwZjAWMBBQZlAFMDUwM1BUUEIwVTAhMFAwUzBEMDUwAjBEMCMwMDBEMAyQ4CGdcO1w7nCecJ6QrZCeUO5Q7lDuUO5w3nDecL5wu1DrUOxQ3FDdcM1wulDqUOxQzFDKcN1wp3DqcMxQrFCscJdw1VDlUOsw2zDbMNsw2TDpMOtQzFC4UO5QiVDeUHtQuFDdUIZQ7jBpMMpQu1CuUF1QdDDkMO5QSFDMMIMw5jDWMN1QaVC7UJpQrjAeMB0wTTBLUIpQlzC3MLtQfVAAMO4wBTDdMFcwzDB0MNgwuTCmMMwwYzDVMMwwWDCqMIkwlDDLMGcwpTC4MJkwhzCZMHgwjjDNMNCAEIAggD+Q8IBAgFCAYIBwgICAkGCoQKGQEJARkACQDpD/kO2Q/5DckP+Qy5D/kL9wr3CqkPmQ/3CfcJ9wj3CIkPeQ/3B/cHZw9nD/cG9wZXD1cP9wX3BUcPRw/3BPcENw83D/cD9wMnDycP9wL3AvcB9wEZD/kAxgpGC8YLRgzIDMYNRg7GDkQPhA/EDwQQRBCEEMQQBBFEEYYRBBJEEoQSxhJEE4YTAhQkFGQUohTEFAIVIhVCFWIVghWiFcIV4hUCFiIWQhZiFoIWohbCFuIWAhckF2IXhBd5A8IXeQJJBmkEWQV5ATkGaQNJBVkEKQZpAhkGaQHiFzkFWQNJBCkFWQIZBQIYVwFXATkESQMnBCcERwJHAjcDNwMXBBcERwFHAQkESQAnAycDNwI3AhUDFQMVAxUDNQE1ATUBNQEHAzcAJQIlAhMCEwITAhMCIwEjAQUCJQADDwMPAw8DD+cO1w7nDccO5wzXDbcO5wvHDdcMpw7nCrcN1wvHDJcO5wmnDdcKtwzHC4cO5wiXDdcJdw7nB6cMxwrHCrcLtwuHDYcN1wjXCAkO6QAHDQcN5QblBuUG5QZnDpcMxQnFCVUOVQ61CrUK5QXlBacLdw3VB9UH5QTlBIUMhQzFCMUIRw4nDjUONQ5lDdUG5QOVC7UJpQrlAhUO5QFVDdUFdQzFB0UNhQu1CNUElQqlCWUMxQY1DdUDJQ3VAhUNdQu1B9UBVQzFBYUKpQiVCUUMxQRlC2ULtQa1BtcABww1DDUMxQN1CqUHJQzFAlULtQUVDIUJlQjFAUULxwAHCzULNQu3AAcKFQoVCrMEswRlCqUGdQl1CZUHlQenAAcJlQCVALMDgwglC1UKswKzAqUFFQu1AWUJkwajBEUKdQiDB4MHMwqjA1MJkwUjCqMCowFjCIMGcwdDCZMEMwmTA1MIgwUjCWMHcwaTAhMJkwFDCIMEUwdzBTMIgwNjBiMIgwITCEMHcwSDAYMBBQiFAFMGYwUTBxMHBQd1ADMHIwcDBmMAAwVTAAAABYAPgAoAG4AeABQAEYAzgDYAPAA5gCgALYAngCIAY4BmAGwAaYB4AH2Ad4ByAFAAVYBfgFoAS4BOAEQAQYDDgMYAzADJgNgA3YDXgNIA8AD1gP+A+gDrgO4A5ADhgKAApYCvgKoAu4C+ALQAsYCTgJYAnACZgIgAjYCHgIIAg4GGAYwBiYGYAZ2Bl4GSAbABtYG/gboBq4GuAaQBoYHgAeWB74HqAfuB/gH0AfGB04HWAdwB2YHIAc2Bx4HCAUABRYFPgUoBW4FeAVQBUYFzgXYBfAF5gWgBbYFngWIBI4EmASwBKYE4AT2BN4EyARABFYEfgRoBC4EOAQQBAYEDgwYDDAMJgxgDHYMXgxIDMAM1gz+DOgMrgy4DJAMhg2ADZYNvg2oDe4N+A3QDcYNTg1YDXANZg0gDTYNHg0IDwAPFg8+DygPbg94D1APRg/OD9gP8A/mD6APtg+eD4gOjg6YDrAOpg7gDvYO3g7IDkAOVg5+DmgOLg44DhAOBg4AChYKPgooCm4KeApQCkYKzgrYCvAK5gqgCrYKngqIC44LmAuwC6YL4Av2C94LyAtAC1YLfgtoCy4LOAsQCwYJDgkYCTAJJglgCXYJXglICcAJ1gn+CegJrgm4CZAJhgiACJYIvgioCO4I+AjQCMYITghYCHAIZgggCDYIHggICSDVMQ0Jhc2UAJHBsYXkAb25EYXRhACRjbG9zZQBkZWNvZGVWaWRlb0J1ZmZlcgBpc1BsYXlpbmcAZmx2TW9kZQBhdWRpb0J1ZmZlcgB2aWRlb0J1ZmZlcgBicHMAYnVmZmVySW5mbwBINUxpdmVDbGllbnQAY2xvc2UAd2ViR0xDYW52YXMAaXNXZWJHTAB3ZWJnbDolcwAuZmx2AFdlYlNvY2tldABiaW5hcnlUeXBlAGFycmF5YnVmZmVyAG9ubWVzc2FnZQB3cwBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQBOU3QzX18yMjFfX2Jhc2ljX3N0cmluZ19jb21tb25JTGIxRUVFAGJpbmQATjEwZW1zY3JpcHRlbjN2YWxFAGRhdGEAdW5rbm93IHR5cGU6ICVkAHNlbmQAWyJfX2JhbmR3aWR0aCJdAGVycm9yIHR5cGUgOiVkAHBsYXlBdWRpbwBpbml0QXVkaW8Ac2V0IGF1ZGlvIGJ1ZmZlckxlbmd0aDolZABnb3QgaDI2NCB2aWRlbwBnb3QgaDI2NSB2aWRlbwBPbmx5IHN1cHBvcnQgdmlkZW8gaC4yNjQvYXZjIG9yIGguMjY1L2hldmMgY29kZWMuIGFjdHVhbD0lZAB2aWRlbyBpbmZvIHNldCEAcmVzZXRUaW1lU3BhbgBjb2RlYyA9ICVkAHBsYXlWaWRlb0J1ZmZlcgB0aW1lc3BhbgBjbGVhclRpbWVvdXQAZnJvbnQAYmFjawBzaXplADhINUxDQmFzZQBQOEg1TENCYXNlAFBLOEg1TENCYXNlAGlpAHYAdmkAdmlpaQB2aWkAaWlpAG5vdGlmeU9uRGVzdHJ1Y3Rpb24AaW1wbGVtZW50AGV4dGVuZAAxMkg1TGl2ZUNsaWVudABOMTBlbXNjcmlwdGVuN3dyYXBwZXJJOEg1TENCYXNlRUUATjEwZW1zY3JpcHRlbjhpbnRlcm5hbDExV3JhcHBlckJhc2VFAFAxMkg1TGl2ZUNsaWVudABQSzEySDVMaXZlQ2xpZW50AGlpaWkAYXVkaW8gaW5pdCEgJWQAbXAzIGluaXQhAEgyNjUgaW5pdAA4TGliZGUyNjUAMTJWaWRlb0RlY29kZXIAdmlkZW8gZGVjb2RlciByZWxlYXNlIQoAZGUyNjVfZGVjb2Rl77yaJWQAY2FudmFzOiVkLCVkAHNldFZpZGVvU2l6ZQBkcmF3AGF1ZGlvIGRlY29kZXIgcmVsZWFzZQoAYXVkaW8gZGVjb2RlciByZWxlYXNlIQoARmx2RGVjb2RlciByZWxlYXNlIQoAX19kZXN0cnVjdAAuXGNhYmFjLmNjAGRlYmxvY2stJWQAblRocmVhZHNSdW5uaW5nID49IDAALlxpbWFnZS5jYwB0aHJlYWRfZmluaXNoZXMAcmVmUGljUTA9PXJlZlBpY1ExAC5cZGVibG9jay5jYwBkZXJpdmVfYm91bmRhcnlTdHJlbmd0aAAyNnRocmVhZF90YXNrX2RlYmxvY2tfQ1RCUm93ADExdGhyZWFkX3Rhc2sAJXAgZGVzdHJ1Y3RvcgoAbWZyZWUgJXAKADE1ZGVjb2Rlcl9jb250ZXh0ADEyYmFzZV9jb250ZXh0ADExZXJyb3JfcXVldWUAaW1nLT5CaXREZXB0aF9ZID49IDggJiYgaW1nLT5CaXREZXB0aF9ZIDw9IDE2AGRlMjY1X2ltYWdlX2dldF9idWZmZXIAaW1nLT5CaXREZXB0aF9DID49IDggJiYgaW1nLT5CaXREZXB0aF9DIDw9IDE2AHNhby0lZABmaXJzdCAlIDIgPT0gMABjb3B5X2xpbmVzX2Zyb20AZW5kICUgMiA9PSAwADE1dGhyZWFkX3Rhc2tfc2FvAHNsaWNlLXNlZ21lbnQtJWQ7JWQAaW5pdFR5cGUgPj0gMCAmJiBpbml0VHlwZSA8PSAyAC5cc2xpY2UuY2MAaW5pdGlhbGl6ZV9DQUJBQ19tb2RlbHMAJXAgZGVjb3VwbGUgKCVwKQoAcmVmY250AC5cY29udGV4dG1vZGVsLmNjAGRlY291cGxlAGRlY29kZV9wYXJ0X21vZGUAcmVhZF9jb2RpbmdfdW5pdABQcmVkTW9kZSA9PSBjdVByZWRNb2RlAHJlYWRfdHJhbnNmb3JtX3RyZWUAY29udGV4dCA+PSAwICYmIGNvbnRleHQgPD0gMgBkZWNvZGVfc3BsaXRfdHJhbnNmb3JtX2ZsYWcAISh0cmFmb0RlcHRoPT0wICYmIGxvZzJUcmFmb1NpemU9PTIpAGNiZl9jYiAhPSAtMQByZWFkX3RyYW5zZm9ybV91bml0AGNiZl9jciAhPSAtMQBjYmZfbHVtYSAhPSAtMQAuXHRyYW5zZm9ybS5jYwBzY2FsZV9jb2VmZmljaWVudHNfaW50ZXJuYWwAcmRwY21Nb2RlPT0wAGludHJhUHJlZE1vZGU8MzUALlxpbnRyYXByZWQuY2MAaW50cmFfcHJlZGljdGlvbl9hbmd1bGFyAGludHJhUHJlZE1vZGU+PTIAaW50cmFfcHJlZGljdGlvbl9zYW1wbGVfZmlsdGVyaW5nAG5UIDw9IE1BWF9JTlRSQV9QUkVEX0JMT0NLX1NJWkUAaW5pdABuVDw9MzIAZmlsbF9mcm9tX2ltYWdlAHg8c3BzLT5QaWNXaWR0aEluTWluUFVzAHNldF9JbnRyYVByZWRNb2RlQwB5PHNwcy0+UGljSGVpZ2h0SW5NaW5QVXMAaWR4PGludHJhUHJlZE1vZGVDLmRhdGFfc2l6ZQBzaGRyLT5zbGljZV90eXBlID09IFNMSUNFX1RZUEVfQgAuXG1vdGlvbi5jYwBnZW5lcmF0ZV9pbnRlcl9wcmVkaWN0aW9uX3NhbXBsZXMAbWNfY2hyb21hAG51bU1WUENhbmRMWD09MgBmaWxsX2x1bWFfbW90aW9uX3ZlY3Rvcl9wcmVkaWN0b3JzAGN0eC0+aGFzX2ltYWdlKGNvbFBpYykAZGVyaXZlX2NvbGxvY2F0ZWRfbW90aW9uX3ZlY3RvcnMAcmVmUGljTGlzdD49MABkZXJpdmVfc3BhdGlhbF9sdW1hX3ZlY3Rvcl9wcmVkaWN0aW9uAC4vaW1hZ2UuaABkZXJpdmVfY29tYmluZWRfYmlwcmVkaWN0aXZlX21lcmdpbmdfY2FuZGlkYXRlcwAlcCByZWxlYXNlICVwCgAlcCBhc3NpZ24gPSAlcAoAJXAgaW5pdAoAKnJlZmNudD4xAGRlY291cGxlX29yX2FsbG9jX3dpdGhfZW1wdHlfZGF0YQAlcCAoYWxsb2MpCgBtb2RlbFtpXS5zdGF0ZSA8PSA2MgBzZXRfaW5pdFZhbHVlADI1dGhyZWFkX3Rhc2tfc2xpY2Vfc2VnbWVudABjdGItcm93LSVkADE5dGhyZWFkX3Rhc2tfY3RiX3JvdwBhbGxvY19pbWFnZQBzcHMtPlN1YldpZHRoQyA9PSBTdWJXaWR0aEMAc3BzLT5TdWJIZWlnaHRDID09IFN1YkhlaWdodEMALlxiaXRzdHJlYW0uY2MAdmFsdWU+MABnZXRfdXZsYwBsZW5ndGggPj0gMABpbml0X0NBQkFDX2RlY29kZXIAY3R4SWR4TG9va3VwW2xvZzJ3LTJdW2NJZHhdW3NjYW5JZHhdW3ByZXZDc2JmXVt4QysoeUM8PGxvZzJ3KV0gPT0gY3R4SWR4SW5jAGFsbG9jX2FuZF9pbml0X3NpZ25pZmljYW50X2NvZWZmX2N0eElkeF9sb29rdXBUYWJsZQAuXGZhbGxiYWNrLWRjdC5jYwB0cmFuc2Zvcm1fc2tpcF8xNl9mYWxsYmFjawB0cmFuc2Zvcm1fc2tpcF84X2ZhbGxiYWNrAGxvZzJXRD49MQAuXGZhbGxiYWNrLW1vdGlvbi5jYwBwdXRfd2VpZ2h0ZWRfYmlwcmVkXzE2X2ZhbGxiYWNrAHB1dF93ZWlnaHRlZF9wcmVkXzE2X2ZhbGxiYWNrACh3aWR0aCYxKT09MABwdXRfdW53ZWlnaHRlZF9wcmVkXzE2X2ZhbGxiYWNrAHB1dF93ZWlnaHRlZF9wcmVkX2F2Z18xNl9mYWxsYmFjawBwdXRfd2VpZ2h0ZWRfYmlwcmVkXzhfZmFsbGJhY2sAcHV0X3dlaWdodGVkX3ByZWRfOF9mYWxsYmFjawBwdXRfdW53ZWlnaHRlZF9wcmVkXzhfZmFsbGJhY2sAcHV0X3dlaWdodGVkX3ByZWRfYXZnXzhfZmFsbGJhY2sAbmFsAC5cZGVjY3R4LmNjAGRlY29kZQAhcmVvcmRlcl9vdXRwdXRfcXVldWUuZW1wdHkoKQAuXGRwYi5jYwBvdXRwdXRfbmV4dF9waWN0dXJlX2luX3Jlb3JkZXJfYnVmZmVyAFNFSSBkZWNvZGVkIHBpY3R1cmUgTUQ1IG1pc21hdGNoIChQT0M9JWQpCgBTRUkgZGVjb2RlZCBwaWN0dXJlIGhhc2g6ICUwNHgsIGRlY29kZWQgcGljdHVyZTogJTA0eCAoUE9DPSVkKQoAZGVjb2RlX3NsaWNlX3VuaXRfcGFyYWxsZWwAaW1nLT5udW1fdGhyZWFkc19hY3RpdmUoKSA9PSAwAGRlY29kZV9zbGljZV91bml0X3RpbGVzAG4gPCBuVGhyZWFkQ29udGV4dHMALi9kZWNjdHguaABnZXRfdGhyZWFkX2NvbnRleHQAdW5pdFggPj0gMCAmJiB1bml0WCA8IHdpZHRoX2luX3VuaXRzAC4uXGxpYmRlMjY1L2ltYWdlLmgAZ2V0AHVuaXRZID49IDAgJiYgdW5pdFkgPCBoZWlnaHRfaW5fdW5pdHMAdGhyZWFkX2NvbnRleHRzPT1OVUxMAGFsbG9jYXRlX3RocmVhZF9jb250ZXh0cwBkZWNvZGVfc2xpY2VfdW5pdF9XUFAAJXAgYyd0b3IgPSAlcAoALS0tLS0tLS0tLS0tLS0tLS0gUFBTIC0tLS0tLS0tLS0tLS0tLS0tCgBwaWNfcGFyYW1ldGVyX3NldF9pZCAgICAgICA6ICVkCgBzZXFfcGFyYW1ldGVyX3NldF9pZCAgICAgICA6ICVkCgBkZXBlbmRlbnRfc2xpY2Vfc2VnbWVudHNfZW5hYmxlZF9mbGFnIDogJWQKAHNpZ25fZGF0YV9oaWRpbmdfZmxhZyAgICAgIDogJWQKAGNhYmFjX2luaXRfcHJlc2VudF9mbGFnICAgIDogJWQKAG51bV9yZWZfaWR4X2wwX2RlZmF1bHRfYWN0aXZlIDogJWQKAG51bV9yZWZfaWR4X2wxX2RlZmF1bHRfYWN0aXZlIDogJWQKAHBpY19pbml0X3FwICAgICAgICAgICAgICAgIDogJWQKAGNvbnN0cmFpbmVkX2ludHJhX3ByZWRfZmxhZzogJWQKAHRyYW5zZm9ybV9za2lwX2VuYWJsZWRfZmxhZzogJWQKAGN1X3FwX2RlbHRhX2VuYWJsZWRfZmxhZyAgIDogJWQKAGRpZmZfY3VfcXBfZGVsdGFfZGVwdGggICAgIDogJWQKAHBpY19jYl9xcF9vZmZzZXQgICAgICAgICAgICAgOiAlZAoAcGljX2NyX3FwX29mZnNldCAgICAgICAgICAgICA6ICVkCgBwcHNfc2xpY2VfY2hyb21hX3FwX29mZnNldHNfcHJlc2VudF9mbGFnIDogJWQKAHdlaWdodGVkX3ByZWRfZmxhZyAgICAgICAgICAgOiAlZAoAd2VpZ2h0ZWRfYmlwcmVkX2ZsYWcgICAgICAgICA6ICVkCgBvdXRwdXRfZmxhZ19wcmVzZW50X2ZsYWcgICAgIDogJWQKAHRyYW5zcXVhbnRfYnlwYXNzX2VuYWJsZV9mbGFnOiAlZAoAdGlsZXNfZW5hYmxlZF9mbGFnICAgICAgICAgICA6ICVkCgBlbnRyb3B5X2NvZGluZ19zeW5jX2VuYWJsZWRfZmxhZzogJWQKAG51bV90aWxlX2NvbHVtbnMgICAgOiAlZAoAbnVtX3RpbGVfcm93cyAgICAgICA6ICVkCgB1bmlmb3JtX3NwYWNpbmdfZmxhZzogJWQKAHRpbGUgY29sdW1uIGJvdW5kYXJpZXM6IAB0aWxlIHJvdyBib3VuZGFyaWVzOiAAKiVkIABsb29wX2ZpbHRlcl9hY3Jvc3NfdGlsZXNfZW5hYmxlZF9mbGFnIDogJWQKAHBwc19sb29wX2ZpbHRlcl9hY3Jvc3Nfc2xpY2VzX2VuYWJsZWRfZmxhZzogJWQKAGRlYmxvY2tpbmdfZmlsdGVyX2NvbnRyb2xfcHJlc2VudF9mbGFnOiAlZAoAZGVibG9ja2luZ19maWx0ZXJfb3ZlcnJpZGVfZW5hYmxlZF9mbGFnOiAlZAoAcGljX2Rpc2FibGVfZGVibG9ja2luZ19maWx0ZXJfZmxhZzogJWQKAGJldGFfb2Zmc2V0OiAgJWQKAHRjX29mZnNldDogICAgJWQKAHBpY19zY2FsaW5nX2xpc3RfZGF0YV9wcmVzZW50X2ZsYWc6ICVkCgBsaXN0c19tb2RpZmljYXRpb25fcHJlc2VudF9mbGFnOiAlZAoAbG9nMl9wYXJhbGxlbF9tZXJnZV9sZXZlbCAgICAgIDogJWQKAG51bV9leHRyYV9zbGljZV9oZWFkZXJfYml0cyAgICA6ICVkCgBzbGljZV9zZWdtZW50X2hlYWRlcl9leHRlbnNpb25fcHJlc2VudF9mbGFnIDogJWQKAHBwc19leHRlbnNpb25fZmxhZyAgICAgICAgICAgIDogJWQKAHBwc19yYW5nZV9leHRlbnNpb25fZmxhZyAgICAgIDogJWQKAHBwc19tdWx0aWxheWVyX2V4dGVuc2lvbl9mbGFnIDogJWQKAHBwc19leHRlbnNpb25fNmJpdHMgICAgICAgICAgIDogJWQKAExvZzJNaW5DdVFwRGVsdGFTaXplICAgICAgICAgIDogJWQKAExvZzJNaW5DdUNocm9tYVFwT2Zmc2V0U2l6ZSAoUkV4dCkgOiAlZAoATG9nMk1heFRyYW5zZm9ybVNraXBTaXplICAgIChSRXh0KSA6ICVkCgAtLS0tLS0tLS0tIFBQUyByYW5nZS1leHRlbnNpb24gLS0tLS0tLS0tLQoAbG9nMl9tYXhfdHJhbnNmb3JtX3NraXBfYmxvY2tfc2l6ZSAgICAgIDogJWQKAGNyb3NzX2NvbXBvbmVudF9wcmVkaWN0aW9uX2VuYWJsZWRfZmxhZyA6ICVkCgBjaHJvbWFfcXBfb2Zmc2V0X2xpc3RfZW5hYmxlZF9mbGFnICAgICAgOiAlZAoAZGlmZl9jdV9jaHJvbWFfcXBfb2Zmc2V0X2RlcHRoICAgICAgICAgIDogJWQKAGNocm9tYV9xcF9vZmZzZXRfbGlzdF9sZW4gICAgICAgICAgICAgICA6ICVkCgBjYl9xcF9vZmZzZXRfbGlzdFslZF0gICAgICAgICAgICAgICAgICAgIDogJWQKAGNyX3FwX29mZnNldF9saXN0WyVkXSAgICAgICAgICAgICAgICAgICAgOiAlZAoAbG9nMl9zYW9fb2Zmc2V0X3NjYWxlX2x1bWEgICAgICAgICAgICAgIDogJWQKAGxvZzJfc2FvX29mZnNldF9zY2FsZV9jaHJvbWEgICAgICAgICAgICA6ICVkCgBJTkZPOiAAdGlsZVg+PTAgJiYgdGlsZVk+PTAALlxwcHMuY2MAc2V0X2Rlcml2ZWRfdmFsdWVzAHNjYWxpbmdfbGlzdF9wcmVkX21hdHJpeF9pZF9kZWx0YT09MQAuXHNwcy5jYwByZWFkX3NjYWxpbmdfbGlzdABmaWxsX3NjYWxpbmdfZmFjdG9yAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSTE3cGljX3BhcmFtZXRlcl9zZXROU185YWxsb2NhdG9ySVMxX0VFRUUALS0tLS0tLS0tLS0tLS0tLS0gU1BTIC0tLS0tLS0tLS0tLS0tLS0tCgB2aWRlb19wYXJhbWV0ZXJfc2V0X2lkICA6ICVkCgBzcHNfbWF4X3N1Yl9sYXllcnMgICAgICA6ICVkCgBzcHNfdGVtcG9yYWxfaWRfbmVzdGluZ19mbGFnIDogJWQKAHNlcV9wYXJhbWV0ZXJfc2V0X2lkICAgIDogJWQKADQ6NDo0AHVua25vd24AbW9ub2Nocm9tZQA0OjI6MAA0OjI6MgBjaHJvbWFfZm9ybWF0X2lkYyAgICAgICA6ICVkICglcykKAHNlcGFyYXRlX2NvbG91cl9wbGFuZV9mbGFnIDogJWQKAHBpY193aWR0aF9pbl9sdW1hX3NhbXBsZXMgIDogJWQKAHBpY19oZWlnaHRfaW5fbHVtYV9zYW1wbGVzIDogJWQKAGNvbmZvcm1hbmNlX3dpbmRvd19mbGFnICAgIDogJWQKAGNvbmZfd2luX2xlZnRfb2Zmc2V0ICA6ICVkCgBjb25mX3dpbl9yaWdodF9vZmZzZXQgOiAlZAoAY29uZl93aW5fdG9wX29mZnNldCAgIDogJWQKAGNvbmZfd2luX2JvdHRvbV9vZmZzZXQ6ICVkCgBiaXRfZGVwdGhfbHVtYSAgIDogJWQKAGJpdF9kZXB0aF9jaHJvbWEgOiAlZAoAbG9nMl9tYXhfcGljX29yZGVyX2NudF9sc2IgOiAlZAoAc3BzX3N1Yl9sYXllcl9vcmRlcmluZ19pbmZvX3ByZXNlbnRfZmxhZyA6ICVkCgBsb2cyX21pbl9sdW1hX2NvZGluZ19ibG9ja19zaXplIDogJWQKAGxvZzJfZGlmZl9tYXhfbWluX2x1bWFfY29kaW5nX2Jsb2NrX3NpemUgOiAlZAoAbG9nMl9taW5fdHJhbnNmb3JtX2Jsb2NrX3NpemUgICA6ICVkCgBsb2cyX2RpZmZfbWF4X21pbl90cmFuc2Zvcm1fYmxvY2tfc2l6ZSA6ICVkCgBtYXhfdHJhbnNmb3JtX2hpZXJhcmNoeV9kZXB0aF9pbnRlciA6ICVkCgBtYXhfdHJhbnNmb3JtX2hpZXJhcmNoeV9kZXB0aF9pbnRyYSA6ICVkCgBzY2FsaW5nX2xpc3RfZW5hYmxlX2ZsYWcgOiAlZAoATGF5ZXIgJWQKACAgc3BzX21heF9kZWNfcGljX2J1ZmZlcmluZyAgICAgIDogJWQKACAgc3BzX21heF9udW1fcmVvcmRlcl9waWNzICAgICAgIDogJWQKACAgc3BzX21heF9sYXRlbmN5X2luY3JlYXNlX3BsdXMxIDogJWQKAHNwc19zY2FsaW5nX2xpc3RfZGF0YV9wcmVzZW50X2ZsYWcgOiAlZAoAc2NhbGluZyBsaXN0IGxvZ2dpbmcgb3V0cHV0IG5vdCBpbXBsZW1lbnRlZABhbXBfZW5hYmxlZF9mbGFnICAgICAgICAgICAgICAgICAgICA6ICVkCgBzYW1wbGVfYWRhcHRpdmVfb2Zmc2V0X2VuYWJsZWRfZmxhZyA6ICVkCgBwY21fZW5hYmxlZF9mbGFnICAgICAgICAgICAgICAgICAgICA6ICVkCgBwY21fc2FtcGxlX2JpdF9kZXB0aF9sdW1hICAgICA6ICVkCgBwY21fc2FtcGxlX2JpdF9kZXB0aF9jaHJvbWEgICA6ICVkCgBsb2cyX21pbl9wY21fbHVtYV9jb2RpbmdfYmxvY2tfc2l6ZSA6ICVkCgBsb2cyX2RpZmZfbWF4X21pbl9wY21fbHVtYV9jb2RpbmdfYmxvY2tfc2l6ZSA6ICVkCgBwY21fbG9vcF9maWx0ZXJfZGlzYWJsZV9mbGFnICA6ICVkCgBudW1fc2hvcnRfdGVybV9yZWZfcGljX3NldHMgOiAlZAoAbG9uZ190ZXJtX3JlZl9waWNzX3ByZXNlbnRfZmxhZyA6ICVkCgBudW1fbG9uZ190ZXJtX3JlZl9waWNzX3NwcyA6ICVkCgBsdF9yZWZfcGljX3BvY19sc2Jfc3BzWyVkXSA6ICVkICAgKHVzZWRfYnlfY3Vycl9waWNfbHRfc3BzX2ZsYWc9JWQpCgBzcHNfdGVtcG9yYWxfbXZwX2VuYWJsZWRfZmxhZyAgICAgIDogJWQKAHN0cm9uZ19pbnRyYV9zbW9vdGhpbmdfZW5hYmxlX2ZsYWcgOiAlZAoAdnVpX3BhcmFtZXRlcnNfcHJlc2VudF9mbGFnICAgICAgICA6ICVkCgBzcHNfZXh0ZW5zaW9uX3ByZXNlbnRfZmxhZyAgICA6ICVkCgBzcHNfcmFuZ2VfZXh0ZW5zaW9uX2ZsYWcgICAgICA6ICVkCgBzcHNfbXVsdGlsYXllcl9leHRlbnNpb25fZmxhZyA6ICVkCgBzcHNfZXh0ZW5zaW9uXzZiaXRzICAgICAgICAgICA6ICVkCgBDdGJTaXplWSAgICAgOiAlZAoATWluQ2JTaXplWSAgIDogJWQKAE1heENiU2l6ZVkgICA6ICVkCgBNaW5UQlNpemVZICAgOiAlZAoATWF4VEJTaXplWSAgIDogJWQKAFBpY1dpZHRoSW5DdGJzWSAgICAgICAgIDogJWQKAFBpY0hlaWdodEluQ3Ric1kgICAgICAgIDogJWQKAFN1YldpZHRoQyAgICAgICAgICAgICAgIDogJWQKAFN1YkhlaWdodEMgICAgICAgICAgICAgIDogJWQKAC0tLS0tLS0tLS0tLS0tLS0tIFZVSSAtLS0tLS0tLS0tLS0tLS0tLQoAc2FtcGxlIGFzcGVjdCByYXRpbyAgICAgICAgOiAlZDolZAoAb3ZlcnNjYW5faW5mb19wcmVzZW50X2ZsYWcgOiAlZAoAb3ZlcnNjYW5fYXBwcm9wcmlhdGVfZmxhZyAgOiAlZAoAdmlkZW9fc2lnbmFsX3R5cGVfcHJlc2VudF9mbGFnOiAlZAoAdW5zcGVjaWZpZWQATUFDAFNFQ0FNAE5UU0MAUEFMAGNvbXBvbmVudAAgIHZpZGVvX2Zvcm1hdCAgICAgICAgICAgICAgICA6ICVzCgAgIHZpZGVvX2Z1bGxfcmFuZ2VfZmxhZyAgICAgICA6ICVkCgAgIGNvbG91cl9kZXNjcmlwdGlvbl9wcmVzZW50X2ZsYWcgOiAlZAoAICBjb2xvdXJfcHJpbWFyaWVzICAgICAgICAgICAgOiAlZAoAICB0cmFuc2Zlcl9jaGFyYWN0ZXJpc3RpY3MgICAgOiAlZAoAICBtYXRyaXhfY29lZmZzICAgICAgICAgICAgICAgOiAlZAoAY2hyb21hX2xvY19pbmZvX3ByZXNlbnRfZmxhZzogJWQKACAgY2hyb21hX3NhbXBsZV9sb2NfdHlwZV90b3BfZmllbGQgICA6ICVkCgAgIGNocm9tYV9zYW1wbGVfbG9jX3R5cGVfYm90dG9tX2ZpZWxkOiAlZAoAbmV1dHJhbF9jaHJvbWFfaW5kaWNhdGlvbl9mbGFnOiAlZAoAZmllbGRfc2VxX2ZsYWcgICAgICAgICAgICAgICAgOiAlZAoAZnJhbWVfZmllbGRfaW5mb19wcmVzZW50X2ZsYWcgOiAlZAoAZGVmYXVsdF9kaXNwbGF5X3dpbmRvd19mbGFnICAgOiAlZAoAICBkZWZfZGlzcF93aW5fbGVmdF9vZmZzZXQgICAgOiAlZAoAICBkZWZfZGlzcF93aW5fcmlnaHRfb2Zmc2V0ICAgOiAlZAoAICBkZWZfZGlzcF93aW5fdG9wX29mZnNldCAgICAgOiAlZAoAICBkZWZfZGlzcF93aW5fYm90dG9tX29mZnNldCAgOiAlZAoAdnVpX3RpbWluZ19pbmZvX3ByZXNlbnRfZmxhZyAgOiAlZAoAICB2dWlfbnVtX3VuaXRzX2luX3RpY2sgICAgICAgOiAlZAoAICB2dWlfdGltZV9zY2FsZSAgICAgICAgICAgICAgOiAlZAoAdnVpX3BvY19wcm9wb3J0aW9uYWxfdG9fdGltaW5nX2ZsYWcgOiAlZAoAdnVpX251bV90aWNrc19wb2NfZGlmZl9vbmUgICAgICAgICAgOiAlZAoAdnVpX2hyZF9wYXJhbWV0ZXJzX3ByZXNlbnRfZmxhZyA6ICVkCgBiaXRzdHJlYW1fcmVzdHJpY3Rpb25fZmxhZyAgICAgICAgIDogJWQKACAgdGlsZXNfZml4ZWRfc3RydWN0dXJlX2ZsYWcgICAgICAgOiAlZAoAICBtb3Rpb25fdmVjdG9yc19vdmVyX3BpY19ib3VuZGFyaWVzX2ZsYWcgOiAlZAoAICByZXN0cmljdGVkX3JlZl9waWNfbGlzdHNfZmxhZyAgICA6ICVkCgAgIG1pbl9zcGF0aWFsX3NlZ21lbnRhdGlvbl9pZGMgICAgIDogJWQKACAgbWF4X2J5dGVzX3Blcl9waWNfZGVub20gICAgICAgICAgOiAlZAoAICBtYXhfYml0c19wZXJfbWluX2N1X2Rlbm9tICAgICAgICA6ICVkCgAgIGxvZzJfbWF4X212X2xlbmd0aF9ob3Jpem9udGFsICAgIDogJWQKACAgbG9nMl9tYXhfbXZfbGVuZ3RoX3ZlcnRpY2FsICAgICAgOiAlZAoALS0tLS0tLS0tLS0tLS0tLS0gU1BTLXJhbmdlLWV4dGVuc2lvbiAtLS0tLS0tLS0tLS0tLS0tLQoAdHJhbnNmb3JtX3NraXBfcm90YXRpb25fZW5hYmxlZF9mbGFnICAgIDogJWQKAHRyYW5zZm9ybV9za2lwX2NvbnRleHRfZW5hYmxlZF9mbGFnICAgICA6ICVkCgBpbXBsaWNpdF9yZHBjbV9lbmFibGVkX2ZsYWcgICAgICAgICAgICAgOiAlZAoAZXhwbGljaXRfcmRwY21fZW5hYmxlZF9mbGFnICAgICAgICAgICAgIDogJWQKAGV4dGVuZGVkX3ByZWNpc2lvbl9wcm9jZXNzaW5nX2ZsYWcgICAgICA6ICVkCgBpbnRyYV9zbW9vdGhpbmdfZGlzYWJsZWRfZmxhZyAgICAgICAgICAgOiAlZAoAaGlnaF9wcmVjaXNpb25fb2Zmc2V0c19lbmFibGVkX2ZsYWcgICAgIDogJWQKAHBlcnNpc3RlbnRfcmljZV9hZGFwdGF0aW9uX2VuYWJsZWRfZmxhZyA6ICVkCgBjYWJhY19ieXBhc3NfYWxpZ25tZW50X2VuYWJsZWRfZmxhZyAgICAgOiAlZAoAKiVkJWMgAColcwoAICBQcm9maWxlL1RpZXIvTGV2ZWwgW0xheWVyICVkXQoAZ2VuZXJhbABzdWJfbGF5ZXIAICAlc19wcm9maWxlX3NwYWNlICAgICA6ICVkCgAgICVzX3RpZXJfZmxhZyAgICAgICAgIDogJWQKACh1bmtub3duKQBGb3JtYXRSYW5nZUV4dGVuc2lvbnMATWFpblN0aWxsUGljdHVyZQBNYWluMTAATWFpbgAgICVzX3Byb2ZpbGVfaWRjICAgICAgIDogJXMKACAgJXNfcHJvZmlsZV9jb21wYXRpYmlsaXR5X2ZsYWdzOiAAKgoAICAgICVzX3Byb2dyZXNzaXZlX3NvdXJjZV9mbGFnIDogJWQKACAgICAlc19pbnRlcmxhY2VkX3NvdXJjZV9mbGFnIDogJWQKACAgICAlc19ub25fcGFja2VkX2NvbnN0cmFpbnRfZmxhZyA6ICVkCgAgICAgJXNfZnJhbWVfb25seV9jb25zdHJhaW50X2ZsYWcgOiAlZAoAKiwAKiVkACAgJXNfbGV2ZWxfaWRjICAgICAgICAgOiAlZCAoJTQuMmYpCgByZWY8NwBTUFMgZXJyb3I6IHRyYW5zZm9ybSBoaWVyYXJjaHkgZGVwdGggKGludGVyKSA+IENUQiBzaXplIC0gbWluIFRCIHNpemUKAFNQUyBlcnJvcjogdHJhbnNmb3JtIGhpZXJhcmNoeSBkZXB0aCAoaW50cmEpID4gQ1RCIHNpemUgLSBtaW4gVEIgc2l6ZQoAU1BTIGVycm9yOiBDQiBhbGlnbm1lbnQKAFNQUyBlcnJvcjogVEIgPiBDQgoAU1BTIGVycm9yOiBUQl9tYXggPiAzMiBvciBDVEIKAFNQUyBlcnJvcjogYml0ZGVwdGggWSBub3QgaW4gWzg7MTZdCgBTUFMgZXJyb3I6IGJpdGRlcHRoIEMgbm90IGluIFs4OzE2XQoAUklkeD49MAAuXHJlZnBpYy5jYwByZWFkX3Nob3J0X3Rlcm1fcmVmX3BpY19zZXQAUklkeCA+PSAwICYmIFJJZHggPCBzZXRzLnNpemUoKQBqPj0wICYmIGogPCBNQVhfTlVNX1JFRl9QSUNTAE5TdDNfXzIyMF9fc2hhcmVkX3B0cl9lbXBsYWNlSTE3c2VxX3BhcmFtZXRlcl9zZXROU185YWxsb2NhdG9ySVMxX0VFRUUALS0tLS0tLS0tLS0tLS0tLS0gVlBTIC0tLS0tLS0tLS0tLS0tLS0tCgB2aWRlb19wYXJhbWV0ZXJfc2V0X2lkICAgICAgICAgICAgICAgIDogJWQKAHZwc19tYXhfbGF5ZXJzICAgICAgICAgICAgICAgICAgICAgICAgOiAlZAoAdnBzX21heF9zdWJfbGF5ZXJzICAgICAgICAgICAgICAgICAgICA6ICVkCgB2cHNfdGVtcG9yYWxfaWRfbmVzdGluZ19mbGFnICAgICAgICAgIDogJWQKAHZwc19zdWJfbGF5ZXJfb3JkZXJpbmdfaW5mb19wcmVzZW50X2ZsYWcgOiAlZAoAbGF5ZXIgJWQ6IHZwc19tYXhfZGVjX3BpY19idWZmZXJpbmcgPSAlZAoAICAgICAgICAgdnBzX21heF9udW1fcmVvcmRlcl9waWNzICA9ICVkCgAgICAgICAgICB2cHNfbWF4X2xhdGVuY3lfaW5jcmVhc2UgID0gJWQKAGxheWVyIChhbGwpOiB2cHNfbWF4X2RlY19waWNfYnVmZmVyaW5nID0gJWQKACAgICAgICAgICAgICB2cHNfbWF4X251bV9yZW9yZGVyX3BpY3MgID0gJWQKACAgICAgICAgICAgICB2cHNfbWF4X2xhdGVuY3lfaW5jcmVhc2UgID0gJWQKAHZwc19tYXhfbGF5ZXJfaWQgICA9ICVkCgB2cHNfbnVtX2xheWVyX3NldHMgPSAlZAoAdnBzX3RpbWluZ19pbmZvX3ByZXNlbnRfZmxhZyA9ICVkCgBsYXllcl9pZF9pbmNsdWRlZF9mbGFnWyVkXVslZF0gPSAlZAoAdnBzX251bV91bml0c19pbl90aWNrID0gJWQKAHZwc190aW1lX3NjYWxlICAgICAgICA9ICVkCgB2cHNfcG9jX3Byb3BvcnRpb25hbF90b190aW1pbmdfZmxhZyA9ICVkCgB2cHNfbnVtX3RpY2tzX3BvY19kaWZmX29uZSA9ICVkCgB2cHNfbnVtX2hyZF9wYXJhbWV0ZXJzICAgICA9ICVkCgBocmRfbGF5ZXJfc2V0X2lkeFslZF0gPSAlZAoAdnBzX2V4dGVuc2lvbl9mbGFnID0gJWQKAGZpcnN0TGF5ZXJSZWFkIDwgTUFYX1RFTVBPUkFMX1NVQkxBWUVSUwAuXHZwcy5jYwByZWFkAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUATlN0M19fMjIwX19zaGFyZWRfcHRyX2VtcGxhY2VJMTl2aWRlb19wYXJhbWV0ZXJfc2V0TlNfOWFsbG9jYXRvcklTMV9FRUVFAHByb2Nlc3Nfc2xpY2Vfc2VnbWVudF9oZWFkZXIAaGRyLT5udW1fcmVmX2lkeF9sMF9hY3RpdmUgPD0gMTYAY29uc3RydWN0X3JlZmVyZW5jZV9waWN0dXJlX2xpc3RzAGhkci0+bnVtX3JlZl9pZHhfbDFfYWN0aXZlIDw9IDE2AGRwYi5oYXNfZnJlZV9kcGJfcGljdHVyZSh0cnVlKQBnZW5lcmF0ZV91bmF2YWlsYWJsZV9yZWZlcmVuY2VfcGljdHVyZQBpZHg+PTAAMABuZXdfaW1hZ2UAcHBzLT5wcHNfcmVhZABkdW1wX3NsaWNlX3NlZ21lbnRfaGVhZGVyAHNwcy0+c3BzX3JlYWQALS0tLS0tLS0tLS0tLS0tLS0gU0xJQ0UgLS0tLS0tLS0tLS0tLS0tLS0KAGZpcnN0X3NsaWNlX3NlZ21lbnRfaW5fcGljX2ZsYWcgICAgICA6ICVkCgBub19vdXRwdXRfb2ZfcHJpb3JfcGljc19mbGFnICAgICAgICAgOiAlZAoAc2xpY2VfcGljX3BhcmFtZXRlcl9zZXRfaWQgICAgICAgICAgIDogJWQKAGRlcGVuZGVudF9zbGljZV9zZWdtZW50X2ZsYWcgICAgICAgICA6ICVkCgBzbGljZV9zZWdtZW50X2FkZHJlc3MgICAgICAgICAgICAgICAgOiAlZAoAc2xpY2VfdHlwZSAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJWMKAHBpY19vdXRwdXRfZmxhZyAgICAgICAgICAgICAgICAgICAgICA6ICVkCgBjb2xvdXJfcGxhbmVfaWQgICAgICAgICAgICAgICAgICAgICAgOiAlZAoAc2xpY2VfcGljX29yZGVyX2NudF9sc2IgICAgICAgICAgICAgIDogJWQKAHNob3J0X3Rlcm1fcmVmX3BpY19zZXRfc3BzX2ZsYWcgICAgICA6ICVkCgByZWZfcGljX3NldFsgJTJkIF06IABzaG9ydF90ZXJtX3JlZl9waWNfc2V0X2lkeCAgICAgICAgICAgOiAlZAoAbnVtX2xvbmdfdGVybV9zcHMgICAgICAgICAgICAgICAgICAgICAgICA6ICVkCgBudW1fbG9uZ190ZXJtX3BpY3MgICAgICAgICAgICAgICAgICAgICAgIDogJWQKAHNsaWNlX3RlbXBvcmFsX212cF9lbmFibGVkX2ZsYWcgOiAlZAoAc2xpY2Vfc2FvX2x1bWFfZmxhZyAgICAgICAgICAgICA6ICVkCgBzbGljZV9zYW9fY2hyb21hX2ZsYWcgICAgICAgICAgIDogJWQKAG51bV9yZWZfaWR4X2FjdGl2ZV9vdmVycmlkZV9mbGFnIDogJWQKAChmcm9tIFBQUykAbnVtX3JlZl9pZHhfbDBfYWN0aXZlICAgICAgICAgIDogJWQgJXMKAG51bV9yZWZfaWR4X2wxX2FjdGl2ZSAgICAgICAgICA6ICVkICVzCgByZWZfcGljX2xpc3RfbW9kaWZpY2F0aW9uX2ZsYWdfbDAgOiAlZAoAICAlZDogJWQKAHJlZl9waWNfbGlzdF9tb2RpZmljYXRpb25fZmxhZ19sMSA6ICVkCgBtdmRfbDFfemVyb19mbGFnICAgICAgICAgICAgICAgOiAlZAoAY2FiYWNfaW5pdF9mbGFnICAgICAgICAgICAgICAgIDogJWQKAGNvbGxvY2F0ZWRfZnJvbV9sMF9mbGFnICAgICAgICA6ICVkCgBjb2xsb2NhdGVkX3JlZl9pZHggICAgICAgICAgICAgOiAlZAoAbHVtYV9sb2cyX3dlaWdodF9kZW5vbSAgICAgICAgIDogJWQKAENocm9tYUxvZzJXZWlnaHREZW5vbSAgICAgICAgICA6ICVkCgBMdW1hV2VpZ2h0X0wlZFslZF0gICAgICAgICAgICAgOiAlZAoAbHVtYV9vZmZzZXRfbCVkWyVkXSAgICAgICAgICAgIDogJWQKAENocm9tYVdlaWdodF9MJWRbJWRdWyVkXSAgICAgICAgOiAlZAoAQ2hyb21hT2Zmc2V0X0wlZFslZF1bJWRdICAgICAgICA6ICVkCgBmaXZlX21pbnVzX21heF9udW1fbWVyZ2VfY2FuZCAgOiAlZAoAc2xpY2VfcXBfZGVsdGEgICAgICAgICA6ICVkCgBzbGljZV9jYl9xcF9vZmZzZXQgICAgIDogJWQKAHNsaWNlX2NyX3FwX29mZnNldCAgICAgOiAlZAoAZGVibG9ja2luZ19maWx0ZXJfb3ZlcnJpZGVfZmxhZyA6ICVkCgAoZnJvbSBwcHMpAChvdmVycmlkZSkAc2xpY2VfZGVibG9ja2luZ19maWx0ZXJfZGlzYWJsZWRfZmxhZyA6ICVkICVzCgBzbGljZV9iZXRhX29mZnNldCAgOiAlZAoAc2xpY2VfdGNfb2Zmc2V0ICAgIDogJWQKAHNsaWNlX2xvb3BfZmlsdGVyX2Fjcm9zc19zbGljZXNfZW5hYmxlZF9mbGFnIDogJWQKAG51bV9lbnRyeV9wb2ludF9vZmZzZXRzICAgIDogJWQKAG9mZnNldF9sZW4gICAgICAgICAgICAgICAgIDogJWQKAGVudHJ5IHBvaW50IFslaV0gOiAlZAoAcHBzAHJlYWRfcHJlZF93ZWlnaHRfdGFibGUAc3BzAHBlbmRpbmdfaW5wdXRfTkFMID09IE5VTEwALlxuYWwtcGFyc2VyLmNjAHB1c2hfTkFMAC5cZGUyNjUuY2MAY2hhbm5lbD49MCAmJiBjaGFubmVsIDw9IDIAZGUyNjVfZ2V0X2ltYWdlX3BsYW5lAGxheWVyMy5jAAYFBQUJCQkJBgkJCQYFBwMJCQwGBgkMBgsKAAASEgAADxIAAAcHBwAMDAwABg8MAAYGBgMMCQkGBgwJBggIBQAPDAkABhIJAAAAAAEAAgADAwABAQECAQMCAQICAgMDAQMCAwMEAgQDAAAAAAAAAAAAAAABAQEBAgIDAwMCAHJlcXVhbnRpemUgb3ZlcmZsb3cgKCVmICogMl4lZCkKAC1iaXRzX2xlZnQgPD0gTUFEX0JVRkZFUl9HVUFSRCAqIENIQVJfQklUAElJSV9odWZmZGVjb2RlAAQEBAQEBAYGBggKDBASFhwiKC42NsAEBAQEBAQEBAQEBAQGBgYGBgYKCgoMDAwODg4QEBAUFBQaGhpCQkIEBAQEBAQGBgQEBAYGBgYGBgoKCgwMDA4ODhAQEBQUFBoaGkJCQgQEBAQEBAYGCAgKDBAUGBwiKjI2TJ4EBAQEBAQEBAQEBAQGBgYICAgKCgoMDAwODg4SEhIWFhYeHh44ODgEBAQEBAQGBgQEBAYGBggICAoKCgwMDA4ODhISEhYWFh4eHjg4OAQEBAQEBAYGCAoMEBQYHiYuOERUZhoEBAQEBAQEBAQEBAQGBgYICAgMDAwQEBAUFBQaGhoiIiIqKioMDAwEBAQEBAQGBgQEBAYGBggICAwMDBAQEBQUFBoaGiIiIioqKgwMDAYGBgYGBggKDA4QEhYaICYuNj5GTCQEBAQEBAQEBAQGBgYICAgKCgoMDAwODg4SEhIYGBggICAsLCwMDAwGBgYGBgYGBgYICAgKCgoMDAwODg4SEhIYGBggICAsLCwMDAwGBgYGBgYICgwOEBQYHCAmLjQ8RDo2BAQEBAQEBAQEBgYGBgYGCAgICgoKDg4OEhISGhoaICAgKioqEhISBgYGBgYGBgYGBgYGCAgICgoKDg4OEhISGhoaICAgKioqEhISBAQEBAQEBAQEBgYGCAgICgoKDAwMDg4OEhISGBgYHh4eKCgoEhISBgYGBgYGBgYGCAgICgoKDAwMDg4OEhISGBgYHh4eKCgoEhISDAwMDAwMEBQYHCAoMDhATFoCAgICAggICAgICAgICAwMDBAQEBQUFBgYGBwcHCQkJAICAgICAgICAhoaGgwMDAQEBAgICAwMDBAQEBQUFBgYGBwcHCQkJAICAgICAgICAhoaGmRlbm9tICE9IDAAdGltZXIuYwBzY2FsZV9yYXRpb25hbAB2b2lkAGJvb2wAY2hhcgBzaWduZWQgY2hhcgB1bnNpZ25lZCBjaGFyAHNob3J0AHVuc2lnbmVkIHNob3J0AGludAB1bnNpZ25lZCBpbnQAbG9uZwB1bnNpZ25lZCBsb25nAGZsb2F0AGRvdWJsZQBzdGQ6OnN0cmluZwBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWhFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0loTlNfMTFjaGFyX3RyYWl0c0loRUVOU185YWxsb2NhdG9ySWhFRUVFAAABAgQHAwYFAC0rICAgMFgweAAobnVsbCkALTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYATkFOAC4AaW5maW5pdHkAbmFuAExDX0FMTABMQU5HAEMuVVRGLTgAUE9TSVgATVVTTF9MT0NQQVRIAE5TdDNfXzI4aW9zX2Jhc2VFAE5TdDNfXzI5YmFzaWNfaW9zSWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFAE5TdDNfXzI5YmFzaWNfaW9zSXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFAE5TdDNfXzIxNWJhc2ljX3N0cmVhbWJ1ZkljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRQBOU3QzX18yMTViYXNpY19zdHJlYW1idWZJd05TXzExY2hhcl90cmFpdHNJd0VFRUUATlN0M19fMjEzYmFzaWNfaXN0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRQBOU3QzX18yMTNiYXNpY19pc3RyZWFtSXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFAE5TdDNfXzIxM2Jhc2ljX29zdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFRUUATlN0M19fMjEzYmFzaWNfb3N0cmVhbUl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRQBOU3QzX18yMTFfX3N0ZG91dGJ1Zkl3RUUATlN0M19fMjExX19zdGRvdXRidWZJY0VFAHVuc3VwcG9ydGVkIGxvY2FsZSBmb3Igc3RhbmRhcmQgaW5wdXQATlN0M19fMjEwX19zdGRpbmJ1Zkl3RUUATlN0M19fMjEwX19zdGRpbmJ1ZkljRUUATlN0M19fMjdjb2xsYXRlSWNFRQBOU3QzX18yNmxvY2FsZTVmYWNldEUATlN0M19fMjdjb2xsYXRlSXdFRQAlcABDAE5TdDNfXzI3bnVtX2dldEljTlNfMTlpc3RyZWFtYnVmX2l0ZXJhdG9ySWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFRUUATlN0M19fMjlfX251bV9nZXRJY0VFAE5TdDNfXzIxNF9fbnVtX2dldF9iYXNlRQBOU3QzX18yN251bV9nZXRJd05TXzE5aXN0cmVhbWJ1Zl9pdGVyYXRvckl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRUVFAE5TdDNfXzI5X19udW1fZ2V0SXdFRQAlcAAAAABMAGxsACUAAAAAAGwATlN0M19fMjdudW1fcHV0SWNOU18xOW9zdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yOV9fbnVtX3B1dEljRUUATlN0M19fMjE0X19udW1fcHV0X2Jhc2VFAE5TdDNfXzI3bnVtX3B1dEl3TlNfMTlvc3RyZWFtYnVmX2l0ZXJhdG9ySXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFRUUATlN0M19fMjlfX251bV9wdXRJd0VFACVIOiVNOiVTACVtLyVkLyV5ACVJOiVNOiVTICVwACVhICViICVkICVIOiVNOiVTICVZAEFNAFBNAEphbnVhcnkARmVicnVhcnkATWFyY2gAQXByaWwATWF5AEp1bmUASnVseQBBdWd1c3QAU2VwdGVtYmVyAE9jdG9iZXIATm92ZW1iZXIARGVjZW1iZXIASmFuAEZlYgBNYXIAQXByAEp1bgBKdWwAQXVnAFNlcABPY3QATm92AERlYwBTdW5kYXkATW9uZGF5AFR1ZXNkYXkAV2VkbmVzZGF5AFRodXJzZGF5AEZyaWRheQBTYXR1cmRheQBTdW4ATW9uAFR1ZQBXZWQAVGh1AEZyaQBTYXQAJW0vJWQvJXklWS0lbS0lZCVJOiVNOiVTICVwJUg6JU0lSDolTTolUyVIOiVNOiVTTlN0M19fMjh0aW1lX2dldEljTlNfMTlpc3RyZWFtYnVmX2l0ZXJhdG9ySWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFRUUATlN0M19fMjIwX190aW1lX2dldF9jX3N0b3JhZ2VJY0VFAE5TdDNfXzI5dGltZV9iYXNlRQBOU3QzX18yOHRpbWVfZ2V0SXdOU18xOWlzdHJlYW1idWZfaXRlcmF0b3JJd05TXzExY2hhcl90cmFpdHNJd0VFRUVFRQBOU3QzX18yMjBfX3RpbWVfZ2V0X2Nfc3RvcmFnZUl3RUUATlN0M19fMjh0aW1lX3B1dEljTlNfMTlvc3RyZWFtYnVmX2l0ZXJhdG9ySWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFRUUATlN0M19fMjEwX190aW1lX3B1dEUATlN0M19fMjh0aW1lX3B1dEl3TlNfMTlvc3RyZWFtYnVmX2l0ZXJhdG9ySXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFRUUATlN0M19fMjEwbW9uZXlwdW5jdEljTGIwRUVFAE5TdDNfXzIxMG1vbmV5X2Jhc2VFAE5TdDNfXzIxMG1vbmV5cHVuY3RJY0xiMUVFRQBOU3QzX18yMTBtb25leXB1bmN0SXdMYjBFRUUATlN0M19fMjEwbW9uZXlwdW5jdEl3TGIxRUVFADAxMjM0NTY3ODkAJUxmAE5TdDNfXzI5bW9uZXlfZ2V0SWNOU18xOWlzdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yMTFfX21vbmV5X2dldEljRUUAMDEyMzQ1Njc4OQBOU3QzX18yOW1vbmV5X2dldEl3TlNfMTlpc3RyZWFtYnVmX2l0ZXJhdG9ySXdOU18xMWNoYXJfdHJhaXRzSXdFRUVFRUUATlN0M19fMjExX19tb25leV9nZXRJd0VFACUuMExmAE5TdDNfXzI5bW9uZXlfcHV0SWNOU18xOW9zdHJlYW1idWZfaXRlcmF0b3JJY05TXzExY2hhcl90cmFpdHNJY0VFRUVFRQBOU3QzX18yMTFfX21vbmV5X3B1dEljRUUATlN0M19fMjltb25leV9wdXRJd05TXzE5b3N0cmVhbWJ1Zl9pdGVyYXRvckl3TlNfMTFjaGFyX3RyYWl0c0l3RUVFRUVFAE5TdDNfXzIxMV9fbW9uZXlfcHV0SXdFRQBOU3QzX18yOG1lc3NhZ2VzSWNFRQBOU3QzX18yMTNtZXNzYWdlc19iYXNlRQBOU3QzX18yMTdfX3dpZGVuX2Zyb21fdXRmOElMbTMyRUVFAE5TdDNfXzI3Y29kZWN2dElEaWMxMV9fbWJzdGF0ZV90RUUATlN0M19fMjEyY29kZWN2dF9iYXNlRQBOU3QzX18yMTZfX25hcnJvd190b191dGY4SUxtMzJFRUUATlN0M19fMjhtZXNzYWdlc0l3RUUATlN0M19fMjdjb2RlY3Z0SWNjMTFfX21ic3RhdGVfdEVFAE5TdDNfXzI3Y29kZWN2dEl3YzExX19tYnN0YXRlX3RFRQBOU3QzX18yN2NvZGVjdnRJRHNjMTFfX21ic3RhdGVfdEVFAE5TdDNfXzI2bG9jYWxlNV9faW1wRQBOU3QzX18yNWN0eXBlSWNFRQBOU3QzX18yMTBjdHlwZV9iYXNlRQBOU3QzX18yNWN0eXBlSXdFRQBmYWxzZQB0cnVlAE5TdDNfXzI4bnVtcHVuY3RJY0VFAE5TdDNfXzI4bnVtcHVuY3RJd0VFAE5TdDNfXzIxNF9fc2hhcmVkX2NvdW50RQBOU3QzX18yMTlfX3NoYXJlZF93ZWFrX2NvdW50RQB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHB0aHJlYWRfb25jZSBmYWlsdXJlIGluIF9fY3hhX2dldF9nbG9iYWxzX2Zhc3QoKQBjYW5ub3QgY3JlYXRlIHB0aHJlYWQga2V5IGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAGNhbm5vdCB6ZXJvIG91dCB0aHJlYWQgdmFsdWUgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAdGVybWluYXRlX2hhbmRsZXIgdW5leHBlY3RlZGx5IHJldHVybmVkAFN0MTFsb2dpY19lcnJvcgBTdDEybGVuZ3RoX2Vycm9yAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjNfX2Z1bmRhbWVudGFsX3R5cGVfaW5mb0UAdgBEbgBiAGMAaABhAHMAdABpAGoAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQ==";var tempDoublePtr=100352;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(){}function ___lock(){}function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}function ___map_file(pathname,size){___setErrNo(1);return-1}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)},resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<arr.length;start++){if(arr[start]!=="")break}var end=arr.length-1;for(;end>=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push("..")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join("/")}};var TTY={ttys:[],init:function(){},shutdown:function(){},register:function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open:function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(19)}stream.tty=tty;stream.seekable=false},close:function(stream){stream.tty.ops.flush(stream.tty)},flush:function(stream){stream.tty.ops.flush(stream.tty)},read:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(6)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(5)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(11)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(6)}try{for(var i=0;i<length;i++){stream.tty.ops.put_char(stream.tty,buffer[offset+i])}}catch(e){throw new FS.ErrnoError(5)}if(length){stream.node.timestamp=Date.now()}return i}},default_tty_ops:{get_char:function(tty){if(!tty.input.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var isPosixPlatform=process.platform!="win32";var fd=process.stdin.fd;if(isPosixPlatform){var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}}try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null)}catch(e){if(e.toString().indexOf("EOF")!=-1)bytesRead=0;else throw e}if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(1)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node},getFileDataAsRegularArray:function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents},getFileDataAsTypedArray:function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage:function(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length<newSize)node.contents.push(0);node.usedBytes=newSize},node_ops:{getattr:function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup:function(parent,name){throw FS.genericErrors[2]},mknod:function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename:function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(39)}}}delete old_node.parent.contents[old_node.name];old_node.name=new_name;new_dir.contents[new_name]=old_node;old_node.parent=new_dir},unlink:function(parent,name){delete parent.contents[name]},rmdir:function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(39)}delete parent.contents[name]},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink:function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(22)}return node.link}},stream_ops:{read:function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size},write:function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(22)}return position},allocate:function(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)},mmap:function(stream,buffer,offset,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(19)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{if(position>0||position+length<stream.node.usedBytes){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}allocated=true;ptr=_malloc(length);if(!ptr){throw new FS.ErrnoError(12)}buffer.set(contents,ptr)}return{ptr:ptr,allocated:allocated}},msync:function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(19)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0}}};var IDBFS={dbs:{},indexedDB:function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret},DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:function(mount){return MEMFS.mount.apply(null,arguments)},syncfs:function(mount,populate,callback){IDBFS.getLocalSet(mount,function(err,local){if(err)return callback(err);IDBFS.getRemoteSet(mount,function(err,remote){if(err)return callback(err);var src=populate?remote:local;var dst=populate?local:remote;IDBFS.reconcile(src,dst,callback)})})},getDB:function(name,callback){var db=IDBFS.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBFS.indexedDB().open(name,IDBFS.DB_VERSION)}catch(e){return callback(e)}if(!req){return callback("Unable to connect to IndexedDB")}req.onupgradeneeded=function(e){var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}};req.onsuccess=function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)};req.onerror=function(e){callback(this.error);e.preventDefault()}},getLocalSet:function(mount,callback){var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return function(p){return PATH.join2(root,p)}}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push.apply(check,FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})},getRemoteSet:function(mount,callback){var entries={};IDBFS.getDB(mount.mountpoint,function(err,db){if(err)return callback(err);try{var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=function(e){callback(this.error);e.preventDefault()};var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=function(event){var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()}}catch(e){return callback(e)}})},loadLocalEntry:function(path,callback){var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}},storeLocalEntry:function(path,entry,callback){try{if(FS.isDir(entry.mode)){FS.mkdir(path,entry.mode)}else if(FS.isFile(entry.mode)){FS.writeFile(path,entry.contents,{canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry.mode);FS.utime(path,entry.timestamp,entry.timestamp)}catch(e){return callback(e)}callback(null)},removeLocalEntry:function(path,callback){try{var lookup=FS.lookupPath(path);var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)},loadRemoteEntry:function(store,path,callback){var req=store.get(path);req.onsuccess=function(event){callback(null,event.target.result)};req.onerror=function(e){callback(this.error);e.preventDefault()}},storeRemoteEntry:function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=function(){callback(null)};req.onerror=function(e){callback(this.error);e.preventDefault()}},removeRemoteEntry:function(store,path,callback){var req=store.delete(path);req.onsuccess=function(){callback(null)};req.onerror=function(e){callback(this.error);e.preventDefault()}},reconcile:function(src,dst,callback){var total=0;var create=[];Object.keys(src.entries).forEach(function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e.timestamp>e2.timestamp){create.push(key);total++}});var remove=[];Object.keys(dst.entries).forEach(function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}});if(!total){return callback(null)}var errored=false;var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=function(e){done(this.error);e.preventDefault()};create.sort().forEach(function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)})}else{IDBFS.loadLocalEntry(path,function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)})}});remove.sort().reverse().forEach(function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}})}};var NODEFS={isWindows:false,staticInit:function(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={1024:flags["O_APPEND"],64:flags["O_CREAT"],128:flags["O_EXCL"],0:flags["O_RDONLY"],2:flags["O_RDWR"],4096:flags["O_SYNC"],512:flags["O_TRUNC"],1:flags["O_WRONLY"]}},bufferFrom:function(arrayBuffer){return Buffer.alloc?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)},mount:function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)},createNode:function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(22)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node},getMode:function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&292)>>2}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}return stat.mode},realPath:function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)},flagsForNode:function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}else{throw new FS.ErrnoError(22)}},node_ops:{getattr:function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}},setattr:function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},lookup:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)},mknod:function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}return node},rename:function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},unlink:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},rmdir:function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},readdir:function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},symlink:function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},readlink:function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}}},stream_ops:{open:function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},close:function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(-e.errno)}},read:function(stream,buffer,offset,length,position){if(length===0)return 0;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(-e.errno)}},write:function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(-e.errno)}},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(-e.errno)}}}if(position<0){throw new FS.ErrnoError(22)}return position}}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,parts[i],WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)});(mount.opts["blobs"]||[]).forEach(function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])});(mount.opts["packages"]||[]).forEach(function(pack){pack["metadata"].files.forEach(function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))})});return root},createNode:function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node},node_ops:{getattr:function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}},lookup:function(parent,name){throw new FS.ErrnoError(2)},mknod:function(parent,name,mode,dev){throw new FS.ErrnoError(1)},rename:function(oldNode,newDir,newName){throw new FS.ErrnoError(1)},unlink:function(parent,name){throw new FS.ErrnoError(1)},rmdir:function(parent,name){throw new FS.ErrnoError(1)},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newName,oldPath){throw new FS.ErrnoError(1)},readlink:function(node){throw new FS.ErrnoError(1)}},stream_ops:{read:function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size},write:function(stream,buffer,offset,length,position){throw new FS.ErrnoError(5)},llseek:function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(22)}return position}}};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)},lookupPath:function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(40)}var parts=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){throw new FS.ErrnoError(40)}}}}return{path:current_path,node:current}},getPath:function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:function(parentid,name){var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length},hashAddNode:function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:function(node){FS.hashRemoveNode(node)},isRoot:function(node){return node===node.parent},isMountpoint:function(node){return!!node.mounted},isFile:function(mode){return(mode&61440)===32768},isDir:function(mode){return(mode&61440)===16384},isLink:function(mode){return(mode&61440)===40960},isChrdev:function(mode){return(mode&61440)===8192},isBlkdev:function(mode){return(mode&61440)===24576},isFIFO:function(mode){return(mode&61440)===4096},isSocket:function(mode){return(mode&49152)===49152},flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 13}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 13}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 13}return 0},mayLookup:function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return 13;return 0},mayCreate:function(dir,name){try{var node=FS.lookupNode(dir,name);return 17}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return 20}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 16}}else{if(FS.isDir(node.mode)){return 21}}return 0},mayOpen:function(node,flags){if(!node){return 2}if(FS.isLink(node.mode)){return 40}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 21}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(24)},getStream:function(fd){return FS.streams[fd]},createStream:function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:function(fd){FS.streams[fd]=null},chrdev_stream_ops:{open:function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:function(){throw new FS.ErrnoError(29)}},major:function(dev){return dev>>8},minor:function(dev){return dev&255},makedev:function(ma,mi){return ma<<8|mi},registerDevice:function(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:function(dev){return FS.devices[dev]},getMounts:function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(16)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(22)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:function(parent,name){return parent.node_ops.lookup(parent,name)},mknod:function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(22)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(1)}return parent.node_ops.mknod(parent,name,mode,dev)},create:function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:function(path,mode){var dirs=path.split("/");var d="";for(var i=0;i<dirs.length;++i){if(!dirs[i])continue;d+="/"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=17)throw e}}},mkdev:function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink:function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(2)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(2)}var newname=PATH.basename(newpath);var err=FS.mayCreate(parent,newname);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(1)}return parent.node_ops.symlink(parent,newname,oldpath)},rename:function(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;try{lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node}catch(e){throw new FS.ErrnoError(16)}if(!old_dir||!new_dir)throw new FS.ErrnoError(2);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(18)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(22)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(39)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}err=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(err){throw new FS.ErrnoError(err)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(1)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(16)}if(new_dir!==old_dir){err=FS.nodePermissions(old_dir,"w");if(err){throw new FS.ErrnoError(err)}}try{if(FS.trackingDelegate["willMovePath"]){FS.trackingDelegate["willMovePath"](old_path,new_path)}}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}try{if(FS.trackingDelegate["onMovePath"])FS.trackingDelegate["onMovePath"](old_path,new_path)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}},rmdir:function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,true);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(1)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}},readdir:function(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(20)}return node.node_ops.readdir(node)},unlink:function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,false);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(1)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(16)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}},readlink:function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(2)}if(!link.node_ops.readlink){throw new FS.ErrnoError(22)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))},stat:function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(2)}if(!node.node_ops.getattr){throw new FS.ErrnoError(1)}return node.node_ops.getattr(node)},lstat:function(path){return FS.stat(path,true)},chmod:function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(1)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})},lchmod:function(path,mode){FS.chmod(path,mode,true)},fchmod:function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(9)}FS.chmod(stream.node,mode)},chown:function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(1)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown:function(path,uid,gid){FS.chown(path,uid,gid,true)},fchown:function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(9)}FS.chown(stream.node,uid,gid)},truncate:function(path,len){if(len<0){throw new FS.ErrnoError(22)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(1)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(21)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(22)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate:function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(9)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(22)}FS.truncate(stream.node,len)},utime:function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})},open:function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(2)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(17)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(2)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(20)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;console.log("FS.trackingDelegate error on read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream},close:function(stream){if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed:function(stream){return stream.fd===null},llseek:function(stream,offset,whence){if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(29)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(22)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read:function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(22)}if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(9)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(21)}if(!stream.stream_ops.read){throw new FS.ErrnoError(22)}var seeking=typeof position!=="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(29)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write:function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(22)}if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(9)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(21)}if(!stream.stream_ops.write){throw new FS.ErrnoError(22)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!=="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(29)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+stream.path+"') threw an exception: "+e.message)}return bytesWritten},allocate:function(stream,offset,length){if(FS.isClosed(stream)){throw new FS.ErrnoError(9)}if(offset<0||length<=0){throw new FS.ErrnoError(22)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(9)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(19)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(95)}stream.stream_ops.allocate(stream,offset,length)},mmap:function(stream,buffer,offset,length,position,prot,flags){if((stream.flags&2097155)===1){throw new FS.ErrnoError(13)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(19)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)},msync:function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},munmap:function(stream){return 0},ioctl:function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(25)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile:function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile:function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";var stream=FS.open(path,opts.flags,opts.mode);if(typeof data==="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:function(){return FS.currentPath},chdir:function(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(2)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(20)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path},createDefaultDirectories:function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices:function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:function(){return 0},write:function(stream,buffer,offset,length,pos){return length}});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto==="object"&&typeof crypto["getRandomValues"]==="function"){var randomBuffer=new Uint8Array(1);random_device=function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]}}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");random_device=function(){return crypto_module["randomBytes"](1)[0]}}catch(e){}}else{}if(!random_device){random_device=function(){abort("random_device")}}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories:function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(9);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:function(){return stream.path}}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams:function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");var stdout=FS.open("/dev/stdout","w");var stderr=FS.open("/dev/stderr","w")},ensureErrnoError:function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=function(errno){this.errno=errno};this.setErrno(errno);this.message="FS error";if(this.stack)Object.defineProperty(this,"stack",{value:(new Error).stack,writable:true})};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[2].forEach(function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"})},staticInit:function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}},init:function(input,output,error){FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit:function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}},getMode:function(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode},joinPath:function(parts,forceRelative){var path=PATH.join.apply(null,parts);if(forceRelative&&path[0]=="/")path=path.substr(1);return path},absolutePath:function(relative,base){return PATH.resolve(base,relative)},standardizePath:function(path){return PATH.normalize(path)},findObject:function(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(ret.exists){return ret.object}else{___setErrNo(ret.error);return null}},analyzePath:function(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createFolder:function(parent,name,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.mkdir(path,mode)},createPath:function(parent,path,canRead,canWrite){parent=typeof parent==="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile:function(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile:function(parent,name,data,canRead,canWrite,canOwn){var path=name?PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name):parent;var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data==="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,"w");FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node},createDevice:function(parent,name,input,output){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:function(stream){stream.seekable=false},close:function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}},read:function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(5)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(11)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead},write:function(stream,buffer,offset,length,pos){for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(5)}}if(length){stream.node.timestamp=Date.now()}return i}});return FS.mkdev(path,mode,dev)},createLink:function(parent,name,target,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);return FS.symlink(target,path)},forceLoadFile:function(obj){if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;var success=true;if(typeof XMLHttpRequest!=="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(Module["read"]){try{obj.contents=intArrayFromString(Module["read"](obj.url),true);obj.usedBytes=obj.contents.length}catch(e){success=false}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}if(!success)___setErrNo(5);return success},createLazyFile:function(parent,name,url,canRead,canWrite){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}return fn.apply(null,arguments)}});stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(5)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node},createPreloadedFile:function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}var handled=false;Module["preloadPlugins"].forEach(function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,function(){if(onerror)onerror();removeRunDependency(dep)});handled=true}});if(!handled)finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){Browser.asyncLoad(url,function(byteArray){processData(byteArray)},onerror)}else{processData(url)}},indexedDB:function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},DB_NAME:function(){return"EM_FS_"+window.location.pathname},DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:function(paths,onload,onerror){onload=onload||function(){};onerror=onerror||function(){};var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function openRequest_onupgradeneeded(){console.log("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)};openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(function(path){var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=function putRequest_onsuccess(){ok++;if(ok+fail==total)finish()};putRequest.onerror=function putRequest_onerror(){fail++;if(ok+fail==total)finish()}});transaction.onerror=onerror};openRequest.onerror=onerror},loadFilesFromDB:function(paths,onload,onerror){onload=onload||function(){};onerror=onerror||function(){};var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach(function(path){var getRequest=files.get(path);getRequest.onsuccess=function getRequest_onsuccess(){if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()};getRequest.onerror=function getRequest_onerror(){fail++;if(ok+fail==total)finish()}});transaction.onerror=onerror};openRequest.onerror=onerror}};var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path},doStat:function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){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];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret},doWritev:function(stream,iov,iovcnt,offset){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];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},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},getStreamFromFD:function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream},getSocketFromFD:function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket},getSocketAddress:function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info},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();if(!(offset_high==-1&&offset_low<0)&&!(offset_high==0&&offset_low>=0)){return-ERRNO_CODES.EOVERFLOW}var offset=offset_low;FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[result>>2]=tempI64[0],HEAP32[result+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0}case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0}case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL}case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0}case 21524:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0}default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall91(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get();var info=SYSCALLS.mappings[addr];if(!info)return 0;if(len===info.len){var stream=FS.getStream(info.fd);SYSCALLS.doMsync(addr,stream,len,info.flags);FS.munmap(stream);SYSCALLS.mappings[addr]=null;if(info.allocated){_free(info.malloc)}}return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}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)}var ENV={};function _getenv(name){if(name===0)return 0;name=UTF8ToString(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocateUTF8(ENV[name]);return _getenv.ret}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_stackrestore(p){var self=_llvm_stacksave;var ret=self.LLVM_SAVEDSTACKS[p];self.LLVM_SAVEDSTACKS.splice(p,1);stackRestore(ret)}function _llvm_stacksave(){var self=_llvm_stacksave;if(!self.LLVM_SAVEDSTACKS){self.LLVM_SAVEDSTACKS=[]}self.LLVM_SAVEDSTACKS.push(stackSave());return self.LLVM_SAVEDSTACKS.length-1}function _llvm_trap(){abort("trap!")}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function _pthread_cond_destroy(){return 0}function _pthread_cond_init(){return 0}function _pthread_cond_signal(){return 0}function _pthread_cond_wait(){return 0}function _pthread_join(){}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()||7},"%U":function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"},"%V":function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()<date.tm_year+1900){daysDifference=date.tm_yday+32-firstWeekStartThisYear.getDate()}else{daysDifference=date.tm_yday+1-firstWeekStartThisYear.getDate()}return leadingNulls(Math.ceil(daysDifference/7),2)},"%w":function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()},"%W":function(date){var janFirst=new Date(date.tm_year,0,1);var firstMonday=janFirst.getDay()===1?janFirst:__addDays(janFirst,janFirst.getDay()===0?1:7-janFirst.getDay()+1);var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstMonday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstMondayUntilEndJanuary=31-firstMonday.getDate();var days=firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstMonday,janFirst)===0?"01":"00"},"%y":function(date){return(date.tm_year+1900).toString().substring(2)},"%Y":function(date){return date.tm_year+1900},"%z":function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}FS.staticInit();if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}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,"NaN":NaN,Infinity:Infinity};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":___lock,"z":___map_file,"A":___resumeException,"B":___setErrNo,"C":___syscall140,"D":___syscall145,"E":___syscall146,"F":___syscall54,"G":___syscall6,"H":___syscall91,"I":___unlock,"J":__addDays,"K":__arraySum,"L":__embind_create_inheriting_constructor,"M":__embind_register_bool,"N":__embind_register_class,"O":__embind_register_class_class_function,"P":__embind_register_class_function,"Q":__embind_register_class_property,"R":__embind_register_emval,"S":__embind_register_float,"T":__embind_register_integer,"U":__embind_register_memory_view,"V":__embind_register_std_string,"W":__embind_register_std_wstring,"X":__embind_register_void,"Y":__emscripten_traverse_stack,"Z":__emval_addMethodCaller,"_":__emval_allocateDestructors,"$":__emval_as,"aa":__emval_call,"ab":__emval_call_method,"ac":__emval_call_void_method,"ad":__emval_decref,"ae":__emval_get_global,"af":__emval_get_method_caller,"ag":__emval_get_property,"ah":__emval_incref,"ai":__emval_lookupTypes,"aj":__emval_new,"ak":__emval_new_cstring,"al":__emval_new_object,"am":__emval_register,"an":__emval_run_destructors,"ao":__emval_set_property,"ap":__emval_take_value,"aq":__formatString,"ar":__isLeapYear,"as":__reallyNegative,"at":_abort,"au":_clock,"av":_embind_repr,"aw":_emscripten_get_callstack_js,"ax":_emscripten_get_heap_size,"ay":_emscripten_log,"az":_emscripten_log_js,"aA":_emscripten_memcpy_big,"aB":_emscripten_resize_heap,"aC":_getenv,"aD":_init,"aE":_llvm_stackrestore,"aF":_llvm_stacksave,"aG":_llvm_trap,"aH":_pthread_cond_destroy,"aI":_pthread_cond_init,"aJ":_pthread_cond_signal,"aK":_pthread_cond_wait,"aL":_pthread_join,"aM":_strftime,"aN":_strftime_l,"aO":abortOnCannotGrowMemory,"aP":constNoSmartPtrRawPointerToWireType,"aQ":count_emval_handles,"aR":craftEmvalAllocator,"aS":craftInvokerFunction,"aT":createNamedFunction,"aU":downcastPointer,"aV":embind__requireFunction,"aW":embind_init_charCodes,"aX":emval_get_global,"aY":ensureOverloadTable,"aZ":exposePublicSymbol,"a_":extendError,"a$":floatReadValueFromPointer,"ba":flushPendingDeletes,"bb":genericPointerToWireType,"bc":getBasestPointer,"bd":getInheritedInstance,"be":getInheritedInstanceCount,"bf":getLiveInheritedInstances,"bg":getShiftFromSize,"bh":getStringOrSymbol,"bi":getTypeName,"bj":get_first_emval,"bk":heap32VectorToArray,"bl":init_ClassHandle,"bm":init_RegisteredPointer,"bn":init_embind,"bo":init_emval,"bp":integerReadValueFromPointer,"bq":makeClassHandle,"br":makeLegalFunctionName,"bs":new_,"bt":nonConstNoSmartPtrRawPointerToWireType,"bu":readLatin1String,"bv":registerInheritedInstance,"bw":registerType,"bx":replacePublicSymbol,"by":requireHandle,"bz":requireRegisteredType,"bA":runDestructor,"bB":runDestructors,"bC":setDelayFunction,"bD":shallowCopyInternalPointer,"bE":simpleReadValueFromPointer,"bF":throwBindingError,"bG":throwInstanceAlreadyDeleted,"bH":throwInternalError,"bI":throwUnboundTypeError,"bJ":unregisterInheritedInstance,"bK":upcastPointer,"bL":validateThis,"bM":whenDependentTypesAreResolved,"bN":tempDoublePtr,"bO":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.bN|0,i=env.bO|0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=global.NaN,s=global.Infinity,t=global.Math.abs,u=global.Math.imul,v=global.Math.clz32,w=env.a,x=env.b,y=env.c,z=env.d,A=env.e,B=env.f,C=env.g,D=env.h,E=env.i,F=env.j,G=env.k,H=env.l,I=env.m,J=env.n,K=env.o,L=env.p,M=env.q,N=env.r,O=env.s,P=env.t,Q=env.u,R=env.v,S=env.w,T=env.x,U=env.y,V=env.z,W=env.A,X=env.B,Y=env.C,Z=env.D,_=env.E,$=env.F,aa=env.G,ba=env.H,ca=env.I,da=env.J,ea=env.K,fa=env.L,ga=env.M,ha=env.N,ia=env.O,ja=env.P,ka=env.Q,la=env.R,ma=env.S,na=env.T,oa=env.U,pa=env.V,qa=env.W,ra=env.X,sa=env.Y,ta=env.Z,ua=env._,va=env.$,wa=env.aa,xa=env.ab,ya=env.ac,za=env.ad,Aa=env.ae,Ba=env.af,Ca=env.ag,Da=env.ah,Ea=env.ai,Fa=env.aj,Ga=env.ak,Ha=env.al,Ia=env.am,Ja=env.an,Ka=env.ao,La=env.ap,Ma=env.aq,Na=env.ar,Oa=env.as,Pa=env.at,Qa=env.au,Ra=env.av,Sa=env.aw,Ta=env.ax,Ua=env.ay,Va=env.az,Wa=env.aA,Xa=env.aB,Ya=env.aC,Za=env.aD,_a=env.aE,$a=env.aF,ab=env.aG,bb=env.aH,cb=env.aI,db=env.aJ,eb=env.aK,fb=env.aL,gb=env.aM,hb=env.aN,ib=env.aO,jb=env.aP,kb=env.aQ,lb=env.aR,mb=env.aS,nb=env.aT,ob=env.aU,pb=env.aV,qb=env.aW,rb=env.aX,sb=env.aY,tb=env.aZ,ub=env.a_,vb=env.a$,wb=env.ba,xb=env.bb,yb=env.bc,zb=env.bd,Ab=env.be,Bb=env.bf,Cb=env.bg,Db=env.bh,Eb=env.bi,Fb=env.bj,Gb=env.bk,Hb=env.bl,Ib=env.bm,Jb=env.bn,Kb=env.bo,Lb=env.bp,Mb=env.bq,Nb=env.br,Ob=env.bs,Pb=env.bt,Qb=env.bu,Rb=env.bv,Sb=env.bw,Tb=env.bx,Ub=env.by,Vb=env.bz,Wb=env.bA,Xb=env.bB,Yb=env.bC,Zb=env.bD,_b=env.bE,$b=env.bF,ac=env.bG,bc=env.bH,cc=env.bI,dc=env.bJ,ec=env.bK,fc=env.bL,gc=env.bM,hc=100368,ic=5343248,jc=0.0;
// EMSCRIPTEN_START_FUNCS
function xq(b,d){b=b|0;d=d|0;var e=0,f=0;f=dr(d,99972)|0;e=b+36|0;c[e>>2]=f;d=b+44|0;c[d>>2]=kc[c[(c[f>>2]|0)+24>>2]&127](f)|0;e=c[e>>2]|0;a[b+53>>0]=(kc[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8)vu(74070);else return}function yq(a){a=a|0;return Bq(a,0)|0}function zq(a){a=a|0;return Bq(a,1)|0}function Aq(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;l=hc;g=hc=hc+31&-32;hc=hc+32|0;h=g+16|0;i=g+4|0;f=g+8|0;j=Tp(d,bp()|0)|0;k=b+52|0;e=(a[k>>0]|0)!=0;do if(j)if(e)e=d;else{e=c[b+48>>2]|0;a[k>>0]=((Tp(e,bp()|0)|0)^1)&1}else{if(e){j=b+48|0;a[f>>0]=ep(c[j>>2]|0)|0;e=c[b+36>>2]|0;switch(uc[c[(c[e>>2]|0)+12>>2]&15](e,c[b+40>>2]|0,f,f+1|0,g,h,h+8|0,i)|0){case 1:case 2:{g=11;break}case 3:{a[h>>0]=c[j>>2];c[i>>2]=h+1;g=8;break}default:g=8}a:do if((g|0)==8){e=b+32|0;while(1){f=c[i>>2]|0;if(f>>>0<=h>>>0){f=1;e=0;break a}b=f+-1|0;c[i>>2]=b;if((io(a[b>>0]|0,c[e>>2]|0)|0)==-1){g=11;break}}}while(0);if((g|0)==11){f=0;e=bp()|0}if(f)e=j;else break}else e=b+48|0;c[e>>2]=d;a[k>>0]=1;e=d}while(0);hc=l;return e|0}function Bq(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;r=hc;m=hc=hc+31&-32;hc=hc+32|0;p=m+16|0;q=m+8|0;l=m+4|0;g=b+52|0;if(a[g>>0]|0){f=b+48|0;e=c[f>>2]|0;if(d){c[f>>2]=bp()|0;a[g>>0]=0}}else{e=c[b+44>>2]|0;e=(e|0)>1?e:1;o=b+32|0;f=0;while(1){if(f>>>0>=e>>>0){n=9;break}g=go(c[o>>2]|0)|0;if((g|0)==-1){n=8;break}a[p+f>>0]=g;f=f+1|0}if((n|0)==8)e=bp()|0;else if((n|0)==9){do if(!(a[b+53>>0]|0)){i=b+40|0;j=b+36|0;k=q+1|0;a:while(1){s=c[i>>2]|0;g=s;f=c[g>>2]|0;g=c[g+4>>2]|0;t=c[j>>2]|0;h=p+e|0;switch(uc[c[(c[t>>2]|0)+16>>2]&15](t,s,p,h,l,q,k,m)|0){case 3:{n=15;break a}case 2:{n=17;break a}case 1:break;default:break a}t=c[i>>2]|0;c[t>>2]=f;c[t+4>>2]=g;if((e|0)==8){n=17;break}f=go(c[o>>2]|0)|0;if((f|0)==-1){n=17;break}a[h>>0]=f;e=e+1|0}if((n|0)==15)a[q>>0]=a[p>>0]|0;else if((n|0)==17){e=bp()|0;break}n=19}else{a[q>>0]=a[p>>0]|0;n=19}while(0);b:do if((n|0)==19){c:do if(d)c[b+48>>2]=cp(a[q>>0]|0)|0;else{do{if((e|0)<=0)break c;e=e+-1|0;t=cp(a[p+e>>0]|0)|0}while((io(t,c[o>>2]|0)|0)!=-1);e=bp()|0;break b}while(0);e=cp(a[q>>0]|0)|0}while(0)}}hc=r;return e|0}function Cq(a){a=a|0;Kq(a);return}function Dq(a){a=a|0;Cq(a);nz(a);return}function Eq(a){a=a|0;if(a|0)wc[c[(c[a>>2]|0)+4>>2]&255](a);return}function Fq(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;b=c;while(1){if((e|0)==(f|0)){h=7;break}if((b|0)==(d|0)){b=-1;break}c=a[b>>0]|0;g=a[e>>0]|0;if(c<<24>>24<g<<24>>24){b=-1;break}if(g<<24>>24<c<<24>>24){b=1;break}e=e+1|0;b=b+1|0}if((h|0)==7)b=(b|0)!=(d|0)&1;return b|0}function Gq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Iq(a,d,e);return}function Hq(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;b=0;while(1){if((c|0)==(d|0))break;e=(b<<4)+(a[c>>0]|0)|0;f=e&-268435456;b=(f>>>24|f)^e;c=c+1|0}return b|0}function Iq(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;j=hc;i=hc=hc+31&-32;hc=hc+16|0;g=d;f=e-g|0;if(f>>>0>4294967279)tz(b);if(f>>>0<11){a[b+11>>0]=f;h=b}else{k=f+16&-16;h=lz(k)|0;c[b>>2]=h;c[b+8>>2]=k|-2147483648;c[b+4>>2]=f}f=e-g|0;b=h;while(1){if((d|0)==(e|0))break;Jq(b,d);d=d+1|0;b=b+1|0}a[i>>0]=0;Jq(h+f|0,i);hc=j;return}function Jq(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Kq(a){a=a|0;return}function Lq(a){a=a|0;Kq(a);return}function Mq(a){a=a|0;Lq(a);nz(a);return}function Nq(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;a=b;while(1){if((e|0)==(f|0)){h=7;break}if((a|0)==(d|0)){a=-1;break}b=c[a>>2]|0;g=c[e>>2]|0;if((b|0)<(g|0)){a=-1;break}if((g|0)<(b|0)){a=1;break}e=e+4|0;a=a+4|0}if((h|0)==7)a=(a|0)!=(d|0)&1;return a|0}function Oq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Qq(a,d,e);return}function Pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a=0;while(1){if((b|0)==(d|0))break;e=(c[b>>2]|0)+(a<<4)|0;f=e&-268435456;a=(f>>>24|f)^e;b=b+4|0}return a|0}function Qq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=hc;i=hc=hc+31&-32;hc=hc+16|0;h=e-d>>2;if(h>>>0>1073741807)tz(b);do if(h>>>0>=2){g=h+4&-4;if(g>>>0>1073741823)Pa();else{f=lz(g<<2)|0;c[b>>2]=f;c[b+8>>2]=g|-2147483648;c[b+4>>2]=h;break}}else{a[b+8+3>>0]=h;f=b}while(0);while(1){if((d|0)==(e|0))break;Rq(f,d);d=d+4|0;f=f+4|0}c[i>>2]=0;Rq(f,i);hc=j;return}function Rq(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];return}function Sq(a){a=a|0;Kq(a);return}function Tq(a){a=a|0;Kq(a);nz(a);return}function Uq(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;o=hc;m=hc=hc+31&-32;hc=hc+48|0;i=m+40|0;n=m;j=m+36|0;k=m+32|0;l=m+28|0;m=m+24|0;if(!(c[f+4>>2]&1)){c[j>>2]=-1;m=c[(c[b>>2]|0)+16>>2]|0;c[k>>2]=c[d>>2];c[l>>2]=c[e>>2];c[n>>2]=c[k>>2];c[i>>2]=c[l>>2];c[d>>2]=sc[m&63](b,n,i,f,g,j)|0;switch(c[j>>2]|0){case 0:{a[h>>0]=0;break}case 1:{a[h>>0]=1;break}default:{a[h>>0]=1;c[g>>2]=4}}i=c[d>>2]|0}else{Up(i,f);l=dr(i,99668)|0;er(i);Up(i,f);b=dr(i,99684)|0;er(i);xc[c[(c[b>>2]|0)+24>>2]&63](n,b);xc[c[(c[b>>2]|0)+28>>2]&63](n+12|0,b);c[m>>2]=c[e>>2];b=n+24|0;c[i>>2]=c[m>>2];a[h>>0]=(Nr(d,i,n,b,l,g,1)|0)==(n|0)&1;i=c[d>>2]|0;do{b=b+-12|0;Az(b)}while((b|0)!=(n|0))}hc=o;return i|0}function Vq(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=Lr(a,j,i,e,f,g)|0;hc=h;return g|0}function Wq(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=Jr(a,j,i,e,f,g)|0;hc=h;return g|0}function Xq(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=Hr(a,j,i,e,f,g)|0;hc=h;return g|0}function Yq(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=Fr(a,j,i,e,f,g)|0;hc=h;return g|0}function Zq(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=Dr(a,j,i,e,f,g)|0;hc=h;return g|0}function _q(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=xr(a,j,i,e,f,g)|0;hc=h;return g|0}function $q(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=vr(a,j,i,e,f,g)|0;hc=h;return g|0}function ar(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=tr(a,j,i,e,f,g)|0;hc=h;return g|0}function br(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=or(a,j,i,e,f,g)|0;hc=h;return g|0}function cr(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=hc;s=hc=hc+31&-32;hc=hc+240|0;v=s+192|0;t=s+160|0;w=s+220|0;x=s+208|0;u=s+204|0;q=s;r=s+200|0;s=s+196|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[w+(b<<2)>>2]=0;b=b+1|0}Up(x,f);b=dr(x,99668)|0;oc[c[(c[b>>2]|0)+32>>2]&7](b,8960,8986,t)|0;er(x);c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[x+(b<<2)>>2]=0;b=b+1|0}p=x+11|0;o=x+8|0;if((a[p>>0]|0)<0)b=(c[o>>2]&2147483647)+-1|0;else b=10;Gz(x,b,0);b=(a[p>>0]|0)<0?c[x>>2]|0:x;c[u>>2]=b;c[r>>2]=q;c[s>>2]=0;n=x+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(Tp(f,bp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=cp(a[f>>0]|0)|0;if(!(Tp(f,bp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;z=22;break}}else z=22;while(0);if((z|0)==22){z=0;if(k){i=0;break}else i=0}f=a[p>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[u>>2]|0)==(b+f|0)){Gz(x,f<<1,0);if((a[p>>0]|0)<0)b=(c[o>>2]&2147483647)+-1|0;else b=10;Gz(x,b,0);b=(a[p>>0]|0)<0?c[x>>2]|0:x;c[u>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(fr(f&255,16,b,u,s,0,w,q,r,t)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+1;cp(a[f>>0]|0)|0}i=m}Gz(x,(c[u>>2]|0)-b|0,0);t=(a[p>>0]|0)<0?c[x>>2]|0:x;u=gr()|0;c[v>>2]=h;if((hr(t,u,74218,v)|0)!=1)c[g>>2]=4;if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(f)break;else{z=52;break}else{c[e>>2]=0;z=50;break}}else z=50;while(0);if((z|0)==50?f:0)z=52;if((z|0)==52)c[g>>2]=c[g>>2]|2;z=c[d>>2]|0;Az(x);Az(w);hc=y;return z|0}function dr(a,b){a=a|0;b=b|0;a=c[a>>2]|0;return jr(a,ir(b)|0)|0}function er(a){a=a|0;var b=0,d=0;a=c[a>>2]|0;d=a+4|0;b=c[d>>2]|0;c[d>>2]=b+-1;if(!b)wc[c[(c[a>>2]|0)+8>>2]&255](a);return}function fr(b,d,e,f,g,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;o=c[f>>2]|0;p=(o|0)==(e|0);do if(p){m=(a[l+24>>0]|0)==b<<24>>24;if(!m?(a[l+25>>0]|0)!=b<<24>>24:0){n=5;break}c[f>>2]=e+1;a[e>>0]=m?43:45;c[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=a[i+11>>0]|0;if(b<<24>>24==h<<24>>24?((n<<24>>24<0?c[i+4>>2]|0:n&255)|0)!=0:0){m=c[k>>2]|0;if((m-j|0)>=160){m=0;break}f=c[g>>2]|0;c[k>>2]=m+4;c[m>>2]=f;c[g>>2]=0;m=0;break}i=l+26|0;h=0;while(1){m=l+h|0;if((h|0)==26){m=i;break}if((a[m>>0]|0)==b<<24>>24)break;else h=h+1|0}m=m-l|0;if((m|0)>23)m=-1;else{switch(d|0){case 10:case 8:{if((m|0)>=(d|0)){m=-1;break a}break}case 16:{if((m|0)>=22){if(p){m=-1;break a}if((o-e|0)>=3){m=-1;break a}if((a[o+-1>>0]|0)!=48){m=-1;break a}c[g>>2]=0;m=a[8960+m>>0]|0;c[f>>2]=o+1;a[o>>0]=m;m=0;break a}break}default:{}}m=a[8960+m>>0]|0;c[f>>2]=o+1;a[o>>0]=m;c[g>>2]=(c[g>>2]|0)+1;m=0}}while(0);return m|0}function gr(){if((a[97296]|0)==0?RA(97296)|0:0)c[24919]=En(2147483647,74221,0)|0;return c[24919]|0}function hr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=hc;g=hc=hc+31&-32;hc=hc+16|0;c[g>>2]=e;e=Gn(b)|0;b=Tn(a,d,g)|0;if(e|0)Gn(e)|0;hc=f;return b|0}function ir(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=hc;g=hc=hc+31&-32;hc=hc+48|0;b=g+32|0;d=g+24|0;e=g;g=g+16|0;c[g>>2]=137;c[g+4>>2]=0;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];lr(e,b,a);if((c[a>>2]|0)!=-1){c[b>>2]=e;c[d>>2]=b;jz(a,d,138)}hc=f;return (c[a+4>>2]|0)+-1|0}function jr(a,b){a=a|0;b=b|0;return c[(c[a+8>>2]|0)+(b<<2)>>2]|0}function kr(a){a=a|0;var b=0;b=c[24920]|0;c[24920]=b+1;c[a+4>>2]=b+1;return}function lr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[b>>2]|0;b=c[b+4>>2]|0;c[a>>2]=d;c[a+4>>2]=e;c[a+8>>2]=b;return}function mr(a){a=a|0;nr(c[c[a>>2]>>2]|0);return}function nr(a){a=a|0;var b=0,d=0,e=0;b=c[a+4>>2]|0;e=c[a+8>>2]|0;d=(c[a>>2]|0)+(e>>1)|0;if(!(e&1))a=b;else a=c[(c[d>>2]|0)+b>>2]|0;wc[a&255](d);return}function or(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|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;D=hc;r=hc=hc+31&-32;hc=hc+240|0;s=r+160|0;t=r+231|0;u=r+230|0;C=r+216|0;B=r+204|0;v=r+200|0;w=r;x=r+196|0;y=r+192|0;z=r+229|0;r=r+228|0;pr(C,f,s,t,u);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[B+(b<<2)>>2]=0;b=b+1|0}p=B+11|0;q=B+8|0;if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b;c[x>>2]=w;c[y>>2]=0;a[z>>0]=1;a[r>>0]=69;o=B+4|0;k=c[d>>2]|0;j=k;a:while(1){if(k){f=c[k+12>>2]|0;if((f|0)==(c[k+16>>2]|0))f=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else f=cp(a[f>>0]|0)|0;if(Tp(f,bp()|0)|0){c[d>>2]=0;n=0;l=1;k=0}else{n=j;l=0}}else{n=0;l=1;k=0}j=c[e>>2]|0;do if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(!(Tp(f,bp()|0)|0))if(l)break;else break a;else{c[e>>2]=0;E=19;break}}else E=19;while(0);if((E|0)==19){E=0;if(l){j=0;break}else j=0}f=a[p>>0]|0;f=f<<24>>24<0?c[o>>2]|0:f&255;if((c[v>>2]|0)==(b+f|0)){Gz(B,f<<1,0);if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b+f}l=k+12|0;f=c[l>>2]|0;m=k+16|0;if((f|0)==(c[m>>2]|0))f=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else f=cp(a[f>>0]|0)|0;if(qr(f&255,z,r,b,v,a[t>>0]|0,a[u>>0]|0,C,w,x,y,s)|0)break;f=c[l>>2]|0;if((f|0)==(c[m>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[l>>2]=f+1;cp(a[f>>0]|0)|0}j=n}u=a[C+11>>0]|0;if(!((a[z>>0]|0)==0?1:((u<<24>>24<0?c[C+4>>2]|0:u&255)|0)==0)?(A=c[x>>2]|0,(A-w|0)<160):0){z=c[y>>2]|0;c[x>>2]=A+4;c[A>>2]=z}g[i>>3]=+rr(b,c[v>>2]|0,h);sr(C,w,c[x>>2]|0,h);if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0))b=kc[c[(c[n>>2]|0)+36>>2]&127](k)|0;else b=cp(a[b>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(f)break;else{E=50;break}else{c[e>>2]=0;E=48;break}}else E=48;while(0);if((E|0)==48?f:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;E=c[d>>2]|0;Az(B);Az(C);hc=D;return E|0}function pr(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;Up(i,d);d=dr(i,99668)|0;oc[c[(c[d>>2]|0)+32>>2]&7](d,8960,8992,e)|0;e=dr(i,99684)|0;a[f>>0]=kc[c[(c[e>>2]|0)+12>>2]&127](e)|0;a[g>>0]=kc[c[(c[e>>2]|0)+16>>2]&127](e)|0;xc[c[(c[e>>2]|0)+20>>2]&63](b,e);er(i);hc=h;return}function qr(b,d,e,f,g,h,i,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0;a:do if(b<<24>>24==h<<24>>24)if(a[d>>0]|0){a[d>>0]=0;e=c[g>>2]|0;c[g>>2]=e+1;a[e>>0]=46;g=a[j+11>>0]|0;if(((g<<24>>24<0?c[j+4>>2]|0:g&255)|0)!=0?(o=c[l>>2]|0,(o-k|0)<160):0){k=c[m>>2]|0;c[l>>2]=o+4;c[o>>2]=k;o=0}else o=0}else o=-1;else{if(b<<24>>24==i<<24>>24?(i=a[j+11>>0]|0,(i<<24>>24<0?c[j+4>>2]|0:i&255)|0):0){if(!(a[d>>0]|0)){o=-1;break}o=c[l>>2]|0;if((o-k|0)>=160){o=0;break}k=c[m>>2]|0;c[l>>2]=o+4;c[o>>2]=k;c[m>>2]=0;o=0;break}i=n+32|0;h=0;while(1){o=n+h|0;if((h|0)==32){o=i;break}if((a[o>>0]|0)==b<<24>>24)break;else h=h+1|0}h=o-n|0;if((h|0)>31)o=-1;else{i=a[8960+h>>0]|0;switch(h|0){case 24:case 25:{o=c[g>>2]|0;if((o|0)!=(f|0)?(a[o+-1>>0]&95)!=(a[e>>0]&127):0){o=-1;break a}c[g>>2]=o+1;a[o>>0]=i;o=0;break a}case 23:case 22:{a[e>>0]=80;o=c[g>>2]|0;c[g>>2]=o+1;a[o>>0]=i;o=0;break a}default:{o=i&95;if((((o|0)==(a[e>>0]|0)?(a[e>>0]=o|128,a[d>>0]|0):0)?(a[d>>0]=0,e=a[j+11>>0]|0,(e<<24>>24<0?c[j+4>>2]|0:e&255)|0):0)?(p=c[l>>2]|0,(p-k|0)<160):0){k=c[m>>2]|0;c[l>>2]=p+4;c[p>>2]=k}l=c[g>>2]|0;c[g>>2]=l+1;a[l>>0]=i;if((h|0)>21){o=0;break a}c[m>>2]=(c[m>>2]|0)+1;o=0;break a}}}}while(0);return o|0}function rr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0;i=hc;f=hc=hc+31&-32;hc=hc+16|0;if((a|0)==(b|0)){c[d>>2]=4;e=0.0}else{g=c[(gm()|0)>>2]|0;c[(gm()|0)>>2]=0;e=+ro(a,f,gr()|0);a=c[(gm()|0)>>2]|0;if(!a)c[(gm()|0)>>2]=g;if((c[f>>2]|0)==(b|0)){if((a|0)==34)h=6}else{e=0.0;h=6}if((h|0)==6)c[d>>2]=4}hc=i;return +e}function sr(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;j=b+11|0;h=a[j>>0]|0;k=b+4|0;g=c[k>>2]|0;i=h&255;do if((h<<24>>24<0?g:i)|0){if((d|0)!=(e|0)){g=e;h=d;while(1){g=g+-4|0;if(h>>>0>=g>>>0)break;i=c[h>>2]|0;c[h>>2]=c[g>>2];c[g>>2]=i;h=h+4|0}h=a[j>>0]|0;i=h&255;g=c[k>>2]|0}j=h<<24>>24<0;b=j?c[b>>2]|0:b;k=e+-4|0;j=b+(j?g:i)|0;g=b;while(1){h=a[g>>0]|0;i=h<<24>>24>0&h<<24>>24!=127;if(d>>>0>=k>>>0)break;if(i?(c[d>>2]|0)!=(h<<24>>24|0):0){l=11;break}d=d+4|0;g=(j-g|0)>1?g+1|0:g}if((l|0)==11){c[f>>2]=4;break}if(i?((c[k>>2]|0)+-1|0)>>>0>=h<<24>>24>>>0:0)c[f>>2]=4}while(0);return}function tr(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|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;D=hc;r=hc=hc+31&-32;hc=hc+240|0;s=r+160|0;t=r+231|0;u=r+230|0;C=r+216|0;B=r+204|0;v=r+200|0;w=r;x=r+196|0;y=r+192|0;z=r+229|0;r=r+228|0;pr(C,f,s,t,u);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[B+(b<<2)>>2]=0;b=b+1|0}p=B+11|0;q=B+8|0;if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b;c[x>>2]=w;c[y>>2]=0;a[z>>0]=1;a[r>>0]=69;o=B+4|0;k=c[d>>2]|0;j=k;a:while(1){if(k){f=c[k+12>>2]|0;if((f|0)==(c[k+16>>2]|0))f=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else f=cp(a[f>>0]|0)|0;if(Tp(f,bp()|0)|0){c[d>>2]=0;n=0;l=1;k=0}else{n=j;l=0}}else{n=0;l=1;k=0}j=c[e>>2]|0;do if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(!(Tp(f,bp()|0)|0))if(l)break;else break a;else{c[e>>2]=0;E=19;break}}else E=19;while(0);if((E|0)==19){E=0;if(l){j=0;break}else j=0}f=a[p>>0]|0;f=f<<24>>24<0?c[o>>2]|0:f&255;if((c[v>>2]|0)==(b+f|0)){Gz(B,f<<1,0);if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b+f}l=k+12|0;f=c[l>>2]|0;m=k+16|0;if((f|0)==(c[m>>2]|0))f=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else f=cp(a[f>>0]|0)|0;if(qr(f&255,z,r,b,v,a[t>>0]|0,a[u>>0]|0,C,w,x,y,s)|0)break;f=c[l>>2]|0;if((f|0)==(c[m>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[l>>2]=f+1;cp(a[f>>0]|0)|0}j=n}u=a[C+11>>0]|0;if(!((a[z>>0]|0)==0?1:((u<<24>>24<0?c[C+4>>2]|0:u&255)|0)==0)?(A=c[x>>2]|0,(A-w|0)<160):0){z=c[y>>2]|0;c[x>>2]=A+4;c[A>>2]=z}g[i>>3]=+ur(b,c[v>>2]|0,h);sr(C,w,c[x>>2]|0,h);if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0))b=kc[c[(c[n>>2]|0)+36>>2]&127](k)|0;else b=cp(a[b>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(f)break;else{E=50;break}else{c[e>>2]=0;E=48;break}}else E=48;while(0);if((E|0)==48?f:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;E=c[d>>2]|0;Az(B);Az(C);hc=D;return E|0}function ur(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0;i=hc;f=hc=hc+31&-32;hc=hc+16|0;if((a|0)==(b|0)){c[d>>2]=4;e=0.0}else{g=c[(gm()|0)>>2]|0;c[(gm()|0)>>2]=0;e=+qo(a,f,gr()|0);a=c[(gm()|0)>>2]|0;if(!a)c[(gm()|0)>>2]=g;if((c[f>>2]|0)==(b|0)){if((a|0)==34)h=6}else{e=0.0;h=6}if((h|0)==6)c[d>>2]=4}hc=i;return +e}function vr(b,d,e,g,h,i){b=b|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,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;D=hc;r=hc=hc+31&-32;hc=hc+240|0;s=r+160|0;t=r+231|0;u=r+230|0;C=r+216|0;B=r+204|0;v=r+200|0;w=r;x=r+196|0;y=r+192|0;z=r+229|0;r=r+228|0;pr(C,g,s,t,u);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[B+(b<<2)>>2]=0;b=b+1|0}p=B+11|0;q=B+8|0;if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b;c[x>>2]=w;c[y>>2]=0;a[z>>0]=1;a[r>>0]=69;o=B+4|0;k=c[d>>2]|0;j=k;a:while(1){if(k){g=c[k+12>>2]|0;if((g|0)==(c[k+16>>2]|0))g=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else g=cp(a[g>>0]|0)|0;if(Tp(g,bp()|0)|0){c[d>>2]=0;n=0;l=1;k=0}else{n=j;l=0}}else{n=0;l=1;k=0}j=c[e>>2]|0;do if(j){g=c[j+12>>2]|0;if((g|0)==(c[j+16>>2]|0))g=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else g=cp(a[g>>0]|0)|0;if(!(Tp(g,bp()|0)|0))if(l)break;else break a;else{c[e>>2]=0;E=19;break}}else E=19;while(0);if((E|0)==19){E=0;if(l){j=0;break}else j=0}g=a[p>>0]|0;g=g<<24>>24<0?c[o>>2]|0:g&255;if((c[v>>2]|0)==(b+g|0)){Gz(B,g<<1,0);if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b+g}l=k+12|0;g=c[l>>2]|0;m=k+16|0;if((g|0)==(c[m>>2]|0))g=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else g=cp(a[g>>0]|0)|0;if(qr(g&255,z,r,b,v,a[t>>0]|0,a[u>>0]|0,C,w,x,y,s)|0)break;g=c[l>>2]|0;if((g|0)==(c[m>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[l>>2]=g+1;cp(a[g>>0]|0)|0}j=n}u=a[C+11>>0]|0;if(!((a[z>>0]|0)==0?1:((u<<24>>24<0?c[C+4>>2]|0:u&255)|0)==0)?(A=c[x>>2]|0,(A-w|0)<160):0){z=c[y>>2]|0;c[x>>2]=A+4;c[A>>2]=z}f[i>>2]=+wr(b,c[v>>2]|0,h);sr(C,w,c[x>>2]|0,h);if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0))b=kc[c[(c[n>>2]|0)+36>>2]&127](k)|0;else b=cp(a[b>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;g=1}else g=0}else g=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(g)break;else{E=50;break}else{c[e>>2]=0;E=48;break}}else E=48;while(0);if((E|0)==48?g:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;E=c[d>>2]|0;Az(B);Az(C);hc=D;return E|0}function wr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,i=0;i=hc;f=hc=hc+31&-32;hc=hc+16|0;if((a|0)==(b|0)){c[d>>2]=4;e=0.0}else{g=c[(gm()|0)>>2]|0;c[(gm()|0)>>2]=0;e=+po(a,f,gr()|0);a=c[(gm()|0)>>2]|0;if(!a)c[(gm()|0)>>2]=g;if((c[f>>2]|0)==(b|0)){if((a|0)==34)h=6}else{e=0.0;h=6}if((h|0)==6)c[d>>2]=4}hc=i;return +e}function xr(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0;C=hc;q=hc=hc+31&-32;hc=hc+240|0;r=q+224|0;z=q+212|0;A=q+200|0;s=q+196|0;t=q;v=q+192|0;w=q+188|0;x=yr(f)|0;q=zr(b,f,q+160|0)|0;Ar(z,f,r);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[A+(b<<2)>>2]=0;b=b+1|0}o=A+11|0;p=A+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(A,b,0);b=(a[o>>0]|0)<0?c[A>>2]|0:A;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=A+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(Tp(f,bp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=cp(a[f>>0]|0)|0;if(!(Tp(f,bp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(A,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(A,b,0);b=(a[o>>0]|0)<0?c[A>>2]|0:A;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(fr(f&255,x,b,s,w,a[r>>0]|0,z,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+1;cp(a[f>>0]|0)|0}i=m}r=a[z+11>>0]|0;if((r<<24>>24<0?c[z+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}w=Br(b,c[s>>2]|0,g,x)|0;x=y()|0;c[h>>2]=w;c[h+4>>2]=x;sr(z,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(f)break;else{B=50;break}else{c[e>>2]=0;B=48;break}}else B=48;while(0);if((B|0)==48?f:0)B=50;if((B|0)==50)c[g>>2]=c[g>>2]|2;B=c[d>>2]|0;Az(A);Az(z);hc=C;return B|0}function yr(a){a=a|0;switch(c[a+4>>2]&74){case 64:{a=8;break}case 8:{a=16;break}case 0:{a=0;break}default:a=10}return a|0}function zr(a,b,c){a=a|0;b=b|0;c=c|0;return Cr(a,b,c)|0}function Ar(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=hc;g=hc=hc+31&-32;hc=hc+16|0;Up(g,d);d=dr(g,99684)|0;a[e>>0]=kc[c[(c[d>>2]|0)+16>>2]&127](d)|0;xc[c[(c[d>>2]|0)+20>>2]&63](b,d);er(g);hc=f;return}function Br(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;k=hc;h=hc=hc+31&-32;hc=hc+16|0;do if((b|0)==(d|0)){c[e>>2]=4;f=0;b=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;f=0;b=0;break}i=c[(gm()|0)>>2]|0;c[(gm()|0)>>2]=0;b=km(b,h,f,gr()|0)|0;f=y()|0;g=c[(gm()|0)>>2]|0;if(!g)c[(gm()|0)>>2]=i;if((c[h>>2]|0)==(d|0)){if((g|0)==34){b=-1;f=-1;j=8}}else{b=0;f=0;j=8}if((j|0)==8)c[e>>2]=4}while(0);x(f|0);hc=k;return b|0}function Cr(a,b,c){a=a|0;b=b|0;c=c|0;return 8960}function Dr(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,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=hc;q=hc=hc+31&-32;hc=hc+240|0;r=q+224|0;y=q+212|0;z=q+200|0;s=q+196|0;t=q;v=q+192|0;w=q+188|0;x=yr(f)|0;q=zr(b,f,q+160|0)|0;Ar(y,f,r);c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[z+(b<<2)>>2]=0;b=b+1|0}o=z+11|0;p=z+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=z+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(Tp(f,bp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=cp(a[f>>0]|0)|0;if(!(Tp(f,bp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;A=19;break}}else A=19;while(0);if((A|0)==19){A=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(z,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(fr(f&255,x,b,s,w,a[r>>0]|0,y,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+1;cp(a[f>>0]|0)|0}i=m}r=a[y+11>>0]|0;if((r<<24>>24<0?c[y+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}c[h>>2]=Er(b,c[s>>2]|0,g,x)|0;sr(y,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(f)break;else{A=50;break}else{c[e>>2]=0;A=48;break}}else A=48;while(0);if((A|0)==48?f:0)A=50;if((A|0)==50)c[g>>2]=c[g>>2]|2;A=c[d>>2]|0;Az(z);Az(y);hc=B;return A|0}function Er(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;j=hc;h=hc=hc+31&-32;hc=hc+16|0;do if((b|0)==(d|0)){c[e>>2]=4;b=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;b=0;break}i=c[(gm()|0)>>2]|0;c[(gm()|0)>>2]=0;b=km(b,h,f,gr()|0)|0;f=y()|0;g=c[(gm()|0)>>2]|0;if(!g)c[(gm()|0)>>2]=i;do if((c[h>>2]|0)==(d|0))if(f>>>0>0|(f|0)==0&b>>>0>4294967295|(g|0)==34){c[e>>2]=4;b=-1;break}else break;else{c[e>>2]=4;b=0}while(0)}while(0);hc=j;return b|0}function Fr(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,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=hc;q=hc=hc+31&-32;hc=hc+240|0;r=q+224|0;y=q+212|0;z=q+200|0;s=q+196|0;t=q;v=q+192|0;w=q+188|0;x=yr(f)|0;q=zr(b,f,q+160|0)|0;Ar(y,f,r);c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[z+(b<<2)>>2]=0;b=b+1|0}o=z+11|0;p=z+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=z+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(Tp(f,bp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=cp(a[f>>0]|0)|0;if(!(Tp(f,bp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;A=19;break}}else A=19;while(0);if((A|0)==19){A=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(z,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(fr(f&255,x,b,s,w,a[r>>0]|0,y,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+1;cp(a[f>>0]|0)|0}i=m}r=a[y+11>>0]|0;if((r<<24>>24<0?c[y+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}c[h>>2]=Gr(b,c[s>>2]|0,g,x)|0;sr(y,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(f)break;else{A=50;break}else{c[e>>2]=0;A=48;break}}else A=48;while(0);if((A|0)==48?f:0)A=50;if((A|0)==50)c[g>>2]=c[g>>2]|2;A=c[d>>2]|0;Az(z);Az(y);hc=B;return A|0}function Gr(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;j=hc;h=hc=hc+31&-32;hc=hc+16|0;do if((b|0)==(d|0)){c[e>>2]=4;b=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;b=0;break}i=c[(gm()|0)>>2]|0;c[(gm()|0)>>2]=0;b=km(b,h,f,gr()|0)|0;f=y()|0;g=c[(gm()|0)>>2]|0;if(!g)c[(gm()|0)>>2]=i;do if((c[h>>2]|0)==(d|0))if(f>>>0>0|(f|0)==0&b>>>0>4294967295|(g|0)==34){c[e>>2]=4;b=-1;break}else break;else{c[e>>2]=4;b=0}while(0)}while(0);hc=j;return b|0}function Hr(d,e,f,g,h,i){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,B=0,C=0;C=hc;r=hc=hc+31&-32;hc=hc+240|0;s=r+224|0;z=r+212|0;A=r+200|0;t=r+196|0;u=r;w=r+192|0;x=r+188|0;y=yr(g)|0;r=zr(d,g,r+160|0)|0;Ar(z,g,s);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[A+(d<<2)>>2]=0;d=d+1|0}p=A+11|0;q=A+8|0;if((a[p>>0]|0)<0)d=(c[q>>2]&2147483647)+-1|0;else d=10;Gz(A,d,0);d=(a[p>>0]|0)<0?c[A>>2]|0:A;c[t>>2]=d;c[w>>2]=u;c[x>>2]=0;o=A+4|0;k=c[e>>2]|0;j=k;a:while(1){if(k){g=c[k+12>>2]|0;if((g|0)==(c[k+16>>2]|0))g=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else g=cp(a[g>>0]|0)|0;if(Tp(g,bp()|0)|0){c[e>>2]=0;n=0;l=1;k=0}else{n=j;l=0}}else{n=0;l=1;k=0}j=c[f>>2]|0;do if(j){g=c[j+12>>2]|0;if((g|0)==(c[j+16>>2]|0))g=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else g=cp(a[g>>0]|0)|0;if(!(Tp(g,bp()|0)|0))if(l)break;else break a;else{c[f>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(l){j=0;break}else j=0}g=a[p>>0]|0;g=g<<24>>24<0?c[o>>2]|0:g&255;if((c[t>>2]|0)==(d+g|0)){Gz(A,g<<1,0);if((a[p>>0]|0)<0)d=(c[q>>2]&2147483647)+-1|0;else d=10;Gz(A,d,0);d=(a[p>>0]|0)<0?c[A>>2]|0:A;c[t>>2]=d+g}l=k+12|0;g=c[l>>2]|0;m=k+16|0;if((g|0)==(c[m>>2]|0))g=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else g=cp(a[g>>0]|0)|0;if(fr(g&255,y,d,t,x,a[s>>0]|0,z,u,w,r)|0)break;g=c[l>>2]|0;if((g|0)==(c[m>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[l>>2]=g+1;cp(a[g>>0]|0)|0}j=n}s=a[z+11>>0]|0;if((s<<24>>24<0?c[z+4>>2]|0:s&255)|0?(v=c[w>>2]|0,(v-u|0)<160):0){x=c[x>>2]|0;c[w>>2]=v+4;c[v>>2]=x}b[i>>1]=Ir(d,c[t>>2]|0,h,y)|0;sr(z,u,c[w>>2]|0,h);if(k){d=c[k+12>>2]|0;if((d|0)==(c[k+16>>2]|0))d=kc[c[(c[n>>2]|0)+36>>2]&127](k)|0;else d=cp(a[d>>0]|0)|0;if(Tp(d,bp()|0)|0){c[e>>2]=0;g=1}else g=0}else g=1;do if(j){d=c[j+12>>2]|0;if((d|0)==(c[j+16>>2]|0))d=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else d=cp(a[d>>0]|0)|0;if(!(Tp(d,bp()|0)|0))if(g)break;else{B=50;break}else{c[f>>2]=0;B=48;break}}else B=48;while(0);if((B|0)==48?g:0)B=50;if((B|0)==50)c[h>>2]=c[h>>2]|2;B=c[e>>2]|0;Az(A);Az(z);hc=C;return B|0}function Ir(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;j=hc;h=hc=hc+31&-32;hc=hc+16|0;do if((b|0)==(d|0)){c[e>>2]=4;b=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;b=0;break}i=c[(gm()|0)>>2]|0;c[(gm()|0)>>2]=0;b=km(b,h,f,gr()|0)|0;f=y()|0;g=c[(gm()|0)>>2]|0;if(!g)c[(gm()|0)>>2]=i;do if((c[h>>2]|0)==(d|0))if(f>>>0>0|(f|0)==0&b>>>0>65535|(g|0)==34){c[e>>2]=4;b=-1;break}else{b=b&65535;break}else{c[e>>2]=4;b=0}while(0)}while(0);hc=j;return b|0}function Jr(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0;C=hc;q=hc=hc+31&-32;hc=hc+240|0;r=q+224|0;z=q+212|0;A=q+200|0;s=q+196|0;t=q;v=q+192|0;w=q+188|0;x=yr(f)|0;q=zr(b,f,q+160|0)|0;Ar(z,f,r);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[A+(b<<2)>>2]=0;b=b+1|0}o=A+11|0;p=A+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(A,b,0);b=(a[o>>0]|0)<0?c[A>>2]|0:A;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=A+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(Tp(f,bp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=cp(a[f>>0]|0)|0;if(!(Tp(f,bp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(A,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(A,b,0);b=(a[o>>0]|0)<0?c[A>>2]|0:A;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(fr(f&255,x,b,s,w,a[r>>0]|0,z,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+1;cp(a[f>>0]|0)|0}i=m}r=a[z+11>>0]|0;if((r<<24>>24<0?c[z+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}w=Kr(b,c[s>>2]|0,g,x)|0;x=y()|0;c[h>>2]=w;c[h+4>>2]=x;sr(z,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(f)break;else{B=50;break}else{c[e>>2]=0;B=48;break}}else B=48;while(0);if((B|0)==48?f:0)B=50;if((B|0)==50)c[g>>2]=c[g>>2]|2;B=c[d>>2]|0;Az(A);Az(z);hc=C;return B|0}function Kr(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;i=hc;g=hc=hc+31&-32;hc=hc+16|0;if((a|0)==(b|0)){c[d>>2]=4;e=0;a=0}else{h=c[(gm()|0)>>2]|0;c[(gm()|0)>>2]=0;a=tm(a,g,e,gr()|0)|0;e=y()|0;f=c[(gm()|0)>>2]|0;if(!f)c[(gm()|0)>>2]=h;if((c[g>>2]|0)==(b|0)){if((f|0)==34){c[d>>2]=4;e=(e|0)>0|(e|0)==0&a>>>0>0;a=e?-1:0;e=e?2147483647:-2147483648}}else{c[d>>2]=4;a=0;e=0}}x(e|0);hc=i;return a|0}function Lr(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,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=hc;q=hc=hc+31&-32;hc=hc+240|0;r=q+224|0;y=q+212|0;z=q+200|0;s=q+196|0;t=q;v=q+192|0;w=q+188|0;x=yr(f)|0;q=zr(b,f,q+160|0)|0;Ar(y,f,r);c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[z+(b<<2)>>2]=0;b=b+1|0}o=z+11|0;p=z+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=z+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(Tp(f,bp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=cp(a[f>>0]|0)|0;if(!(Tp(f,bp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;A=19;break}}else A=19;while(0);if((A|0)==19){A=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(z,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=cp(a[f>>0]|0)|0;if(fr(f&255,x,b,s,w,a[r>>0]|0,y,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+1;cp(a[f>>0]|0)|0}i=m}r=a[y+11>>0]|0;if((r<<24>>24<0?c[y+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}c[h>>2]=Mr(b,c[s>>2]|0,g,x)|0;sr(y,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(f)break;else{A=50;break}else{c[e>>2]=0;A=48;break}}else A=48;while(0);if((A|0)==48?f:0)A=50;if((A|0)==50)c[g>>2]=c[g>>2]|2;A=c[d>>2]|0;Az(z);Az(y);hc=B;return A|0}function Mr(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;i=hc;g=hc=hc+31&-32;hc=hc+16|0;if((a|0)==(b|0)){c[d>>2]=4;a=0}else{h=c[(gm()|0)>>2]|0;c[(gm()|0)>>2]=0;a=tm(a,g,e,gr()|0)|0;e=y()|0;f=c[(gm()|0)>>2]|0;if(!f)c[(gm()|0)>>2]=h;a:do if((c[g>>2]|0)==(b|0)){do if((f|0)==34){c[d>>2]=4;if((e|0)>0|(e|0)==0&a>>>0>0){a=2147483647;break a}}else{if((e|0)<-1|(e|0)==-1&a>>>0<2147483648){c[d>>2]=4;break}if((e|0)>0|(e|0)==0&a>>>0>2147483647){c[d>>2]=4;a=2147483647;break a}else break a}while(0);a=-2147483648}else{c[d>>2]=4;a=0}while(0)}hc=i;return a|0}function Nr(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=hc;k=hc=hc+31&-32;hc=hc+112|0;l=(f-e|0)/12|0;if(l>>>0>100){k=uo(l)|0;if(!k)kz();else{j=k;u=k}}else{j=k;u=0}n=e;o=j;k=0;while(1){if((n|0)==(f|0))break;m=a[n+11>>0]|0;if(m<<24>>24<0)m=c[n+4>>2]|0;else m=m&255;if(!m){a[o>>0]=2;l=l+-1|0;k=k+1|0}else a[o>>0]=1;n=n+12|0;o=o+1|0}t=0;r=k;while(1){k=c[b>>2]|0;do if(k){m=c[k+12>>2]|0;if((m|0)==(c[k+16>>2]|0))k=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else k=cp(a[m>>0]|0)|0;if(Tp(k,bp()|0)|0){c[b>>2]=0;o=1;break}else{o=(c[b>>2]|0)==0;break}}else o=1;while(0);m=c[d>>2]|0;if(m){k=c[m+12>>2]|0;if((k|0)==(c[m+16>>2]|0))k=kc[c[(c[m>>2]|0)+36>>2]&127](m)|0;else k=cp(a[k>>0]|0)|0;if(Tp(k,bp()|0)|0){c[d>>2]=0;k=1;m=0}else k=0}else{k=1;m=0}n=c[b>>2]|0;if(!((l|0)!=0&(o^k)))break;k=c[n+12>>2]|0;if((k|0)==(c[n+16>>2]|0))k=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else k=cp(a[k>>0]|0)|0;k=k&255;if(!i)k=mc[c[(c[g>>2]|0)+12>>2]&31](g,k)|0;s=t+1|0;p=e;o=0;q=j;while(1){if((p|0)==(f|0))break;do if((a[q>>0]|0)==1){n=p+11|0;if((a[n>>0]|0)<0)m=c[p>>2]|0;else m=p;m=a[m+t>>0]|0;if(!i)m=mc[c[(c[g>>2]|0)+12>>2]&31](g,m)|0;if(k<<24>>24!=m<<24>>24){a[q>>0]=0;m=o;n=r;l=l+-1|0;break}m=a[n>>0]|0;if(m<<24>>24<0)m=c[p+4>>2]|0;else m=m&255;if((m|0)==(s|0)){a[q>>0]=2;m=1;n=r+1|0;l=l+-1|0}else{m=1;n=r}}else{m=o;n=r}while(0);p=p+12|0;o=m;q=q+1|0;r=n}a:do if(o){k=c[b>>2]|0;m=k+12|0;n=c[m>>2]|0;if((n|0)==(c[k+16>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[m>>2]=n+1;cp(a[n>>0]|0)|0}if((r+l|0)>>>0>1){n=e;o=j;k=r;while(1){if((n|0)==(f|0))break a;if((a[o>>0]|0)==2){m=a[n+11>>0]|0;if(m<<24>>24<0)m=c[n+4>>2]|0;else m=m&255;if((m|0)!=(s|0)){a[o>>0]=0;k=k+-1|0}}n=n+12|0;o=o+1|0}}else k=r}else k=r;while(0);t=s;r=k}do if(n){k=c[n+12>>2]|0;if((k|0)==(c[n+16>>2]|0))k=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else k=cp(a[k>>0]|0)|0;if(Tp(k,bp()|0)|0){c[b>>2]=0;l=1;break}else{l=(c[b>>2]|0)==0;break}}else l=1;while(0);do if(m){k=c[m+12>>2]|0;if((k|0)==(c[m+16>>2]|0))k=kc[c[(c[m>>2]|0)+36>>2]&127](m)|0;else k=cp(a[k>>0]|0)|0;if(!(Tp(k,bp()|0)|0))if(l)break;else{v=79;break}else{c[d>>2]=0;v=41;break}}else v=41;while(0);if((v|0)==41?l:0)v=79;if((v|0)==79)c[h>>2]=c[h>>2]|2;while(1){if((e|0)==(f|0)){v=84;break}if((a[j>>0]|0)==2)break;e=e+12|0;j=j+1|0}if((v|0)==84){c[h>>2]=c[h>>2]|4;e=f}vo(u);hc=w;return e|0}function Or(a){a=a|0;Kq(a);return}function Pr(a){a=a|0;Kq(a);nz(a);return}function Qr(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;o=hc;m=hc=hc+31&-32;hc=hc+48|0;i=m+40|0;n=m;j=m+36|0;k=m+32|0;l=m+28|0;m=m+24|0;if(!(c[f+4>>2]&1)){c[j>>2]=-1;m=c[(c[b>>2]|0)+16>>2]|0;c[k>>2]=c[d>>2];c[l>>2]=c[e>>2];c[n>>2]=c[k>>2];c[i>>2]=c[l>>2];c[d>>2]=sc[m&63](b,n,i,f,g,j)|0;switch(c[j>>2]|0){case 0:{a[h>>0]=0;break}case 1:{a[h>>0]=1;break}default:{a[h>>0]=1;c[g>>2]=4}}i=c[d>>2]|0}else{Up(i,f);l=dr(i,99700)|0;er(i);Up(i,f);b=dr(i,99708)|0;er(i);xc[c[(c[b>>2]|0)+24>>2]&63](n,b);xc[c[(c[b>>2]|0)+28>>2]&63](n+12|0,b);c[m>>2]=c[e>>2];b=n+24|0;c[i>>2]=c[m>>2];a[h>>0]=(os(d,i,n,b,l,g,1)|0)==(n|0)&1;i=c[d>>2]|0;do{b=b+-12|0;Pz(b)}while((b|0)!=(n|0))}hc=o;return i|0}function Rr(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=ns(a,j,i,e,f,g)|0;hc=h;return g|0}function Sr(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=ms(a,j,i,e,f,g)|0;hc=h;return g|0}function Tr(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=ls(a,j,i,e,f,g)|0;hc=h;return g|0}function Ur(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=ks(a,j,i,e,f,g)|0;hc=h;return g|0}function Vr(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=js(a,j,i,e,f,g)|0;hc=h;return g|0}function Wr(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=fs(a,j,i,e,f,g)|0;hc=h;return g|0}function Xr(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=es(a,j,i,e,f,g)|0;hc=h;return g|0}function Yr(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=ds(a,j,i,e,f,g)|0;hc=h;return g|0}function Zr(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=as(a,j,i,e,f,g)|0;hc=h;return g|0}function _r(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;y=hc;s=hc=hc+31&-32;hc=hc+304|0;v=s+264|0;t=s+160|0;w=s+292|0;x=s+280|0;u=s+276|0;q=s;r=s+272|0;s=s+268|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[w+(b<<2)>>2]=0;b=b+1|0}Up(x,f);b=dr(x,99700)|0;oc[c[(c[b>>2]|0)+48>>2]&7](b,8960,8986,t)|0;er(x);c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[x+(b<<2)>>2]=0;b=b+1|0}p=x+11|0;o=x+8|0;if((a[p>>0]|0)<0)b=(c[o>>2]&2147483647)+-1|0;else b=10;Gz(x,b,0);b=(a[p>>0]|0)<0?c[x>>2]|0:x;c[u>>2]=b;c[r>>2]=q;c[s>>2]=0;n=x+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if(Vp(f,tp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=up(c[f>>2]|0)|0;if(!(Vp(f,tp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;z=22;break}}else z=22;while(0);if((z|0)==22){z=0;if(k){i=0;break}else i=0}f=a[p>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[u>>2]|0)==(b+f|0)){Gz(x,f<<1,0);if((a[p>>0]|0)<0)b=(c[o>>2]&2147483647)+-1|0;else b=10;Gz(x,b,0);b=(a[p>>0]|0)<0?c[x>>2]|0:x;c[u>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if($r(f,16,b,u,s,0,w,q,r,t)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+4;up(c[f>>2]|0)|0}i=m}Gz(x,(c[u>>2]|0)-b|0,0);t=(a[p>>0]|0)<0?c[x>>2]|0:x;u=gr()|0;c[v>>2]=h;if((hr(t,u,74218,v)|0)!=1)c[g>>2]=4;if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=up(c[b>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(f)break;else{z=52;break}else{c[e>>2]=0;z=50;break}}else z=50;while(0);if((z|0)==50?f:0)z=52;if((z|0)==52)c[g>>2]=c[g>>2]|2;z=c[d>>2]|0;Az(x);Az(w);hc=y;return z|0}function $r(b,d,e,f,g,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;o=c[f>>2]|0;p=(o|0)==(e|0);do if(p){m=(c[l+96>>2]|0)==(b|0);if(!m?(c[l+100>>2]|0)!=(b|0):0){n=5;break}c[f>>2]=e+1;a[e>>0]=m?43:45;c[g>>2]=0;m=0}else n=5;while(0);a:do if((n|0)==5){n=a[i+11>>0]|0;if((b|0)==(h|0)?((n<<24>>24<0?c[i+4>>2]|0:n&255)|0)!=0:0){m=c[k>>2]|0;if((m-j|0)>=160){m=0;break}f=c[g>>2]|0;c[k>>2]=m+4;c[m>>2]=f;c[g>>2]=0;m=0;break}i=l+104|0;h=0;while(1){m=l+(h<<2)|0;if((h|0)==26){m=i;break}if((c[m>>2]|0)==(b|0))break;else h=h+1|0}m=m-l|0;h=m>>2;if((m|0)>92)m=-1;else{switch(d|0){case 10:case 8:{if((h|0)>=(d|0)){m=-1;break a}break}case 16:{if((m|0)>=88){if(p){m=-1;break a}if((o-e|0)>=3){m=-1;break a}if((a[o+-1>>0]|0)!=48){m=-1;break a}c[g>>2]=0;m=a[8960+h>>0]|0;c[f>>2]=o+1;a[o>>0]=m;m=0;break a}break}default:{}}m=a[8960+h>>0]|0;c[f>>2]=o+1;a[o>>0]=m;c[g>>2]=(c[g>>2]|0)+1;m=0}}while(0);return m|0}function as(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|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;D=hc;r=hc=hc+31&-32;hc=hc+336|0;s=r+160|0;t=r+328|0;u=r+324|0;C=r+312|0;B=r+300|0;v=r+296|0;w=r;x=r+292|0;y=r+288|0;z=r+333|0;r=r+332|0;bs(C,f,s,t,u);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[B+(b<<2)>>2]=0;b=b+1|0}p=B+11|0;q=B+8|0;if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b;c[x>>2]=w;c[y>>2]=0;a[z>>0]=1;a[r>>0]=69;o=B+4|0;k=c[d>>2]|0;j=k;a:while(1){if(k){f=c[k+12>>2]|0;if((f|0)==(c[k+16>>2]|0))f=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else f=up(c[f>>2]|0)|0;if(Vp(f,tp()|0)|0){c[d>>2]=0;n=0;l=1;k=0}else{n=j;l=0}}else{n=0;l=1;k=0}j=c[e>>2]|0;do if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if(!(Vp(f,tp()|0)|0))if(l)break;else break a;else{c[e>>2]=0;E=19;break}}else E=19;while(0);if((E|0)==19){E=0;if(l){j=0;break}else j=0}f=a[p>>0]|0;f=f<<24>>24<0?c[o>>2]|0:f&255;if((c[v>>2]|0)==(b+f|0)){Gz(B,f<<1,0);if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b+f}l=k+12|0;f=c[l>>2]|0;m=k+16|0;if((f|0)==(c[m>>2]|0))f=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else f=up(c[f>>2]|0)|0;if(cs(f,z,r,b,v,c[t>>2]|0,c[u>>2]|0,C,w,x,y,s)|0)break;f=c[l>>2]|0;if((f|0)==(c[m>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[l>>2]=f+4;up(c[f>>2]|0)|0}j=n}u=a[C+11>>0]|0;if(!((a[z>>0]|0)==0?1:((u<<24>>24<0?c[C+4>>2]|0:u&255)|0)==0)?(A=c[x>>2]|0,(A-w|0)<160):0){z=c[y>>2]|0;c[x>>2]=A+4;c[A>>2]=z}g[i>>3]=+rr(b,c[v>>2]|0,h);sr(C,w,c[x>>2]|0,h);if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0))b=kc[c[(c[n>>2]|0)+36>>2]&127](k)|0;else b=up(c[b>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(f)break;else{E=50;break}else{c[e>>2]=0;E=48;break}}else E=48;while(0);if((E|0)==48?f:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;E=c[d>>2]|0;Az(B);Az(C);hc=D;return E|0}function bs(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;g=hc;h=hc=hc+31&-32;hc=hc+16|0;Up(h,b);b=dr(h,99700)|0;oc[c[(c[b>>2]|0)+48>>2]&7](b,8960,8992,d)|0;d=dr(h,99708)|0;c[e>>2]=kc[c[(c[d>>2]|0)+12>>2]&127](d)|0;c[f>>2]=kc[c[(c[d>>2]|0)+16>>2]&127](d)|0;xc[c[(c[d>>2]|0)+20>>2]&63](a,d);er(h);hc=g;return}function cs(b,d,e,f,g,h,i,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0;a:do if((b|0)==(h|0))if(a[d>>0]|0){a[d>>0]=0;e=c[g>>2]|0;c[g>>2]=e+1;a[e>>0]=46;g=a[j+11>>0]|0;if(((g<<24>>24<0?c[j+4>>2]|0:g&255)|0)!=0?(o=c[l>>2]|0,(o-k|0)<160):0){k=c[m>>2]|0;c[l>>2]=o+4;c[o>>2]=k;o=0}else o=0}else o=-1;else{if((b|0)==(i|0)?(i=a[j+11>>0]|0,(i<<24>>24<0?c[j+4>>2]|0:i&255)|0):0){if(!(a[d>>0]|0)){o=-1;break}o=c[l>>2]|0;if((o-k|0)>=160){o=0;break}k=c[m>>2]|0;c[l>>2]=o+4;c[o>>2]=k;c[m>>2]=0;o=0;break}i=n+128|0;h=0;while(1){o=n+(h<<2)|0;if((h|0)==32){o=i;break}if((c[o>>2]|0)==(b|0))break;else h=h+1|0}h=o-n|0;if((h|0)<=124){i=a[8960+(h>>2)>>0]|0;n=h+-88|0;switch(n>>>2|n<<30|0){case 2:case 3:{o=c[g>>2]|0;if((o|0)!=(f|0)?(a[o+-1>>0]&95)!=(a[e>>0]&127):0){o=-1;break a}c[g>>2]=o+1;a[o>>0]=i;o=0;break a}case 1:case 0:{a[e>>0]=80;break}default:{o=i&95;if((((o|0)==(a[e>>0]|0)?(a[e>>0]=o|128,a[d>>0]|0):0)?(a[d>>0]=0,e=a[j+11>>0]|0,(e<<24>>24<0?c[j+4>>2]|0:e&255)|0):0)?(p=c[l>>2]|0,(p-k|0)<160):0){k=c[m>>2]|0;c[l>>2]=p+4;c[p>>2]=k}}}l=c[g>>2]|0;c[g>>2]=l+1;a[l>>0]=i;if((h|0)>84)o=0;else{c[m>>2]=(c[m>>2]|0)+1;o=0}}else o=-1}while(0);return o|0}function ds(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|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;D=hc;r=hc=hc+31&-32;hc=hc+336|0;s=r+160|0;t=r+328|0;u=r+324|0;C=r+312|0;B=r+300|0;v=r+296|0;w=r;x=r+292|0;y=r+288|0;z=r+333|0;r=r+332|0;bs(C,f,s,t,u);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[B+(b<<2)>>2]=0;b=b+1|0}p=B+11|0;q=B+8|0;if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b;c[x>>2]=w;c[y>>2]=0;a[z>>0]=1;a[r>>0]=69;o=B+4|0;k=c[d>>2]|0;j=k;a:while(1){if(k){f=c[k+12>>2]|0;if((f|0)==(c[k+16>>2]|0))f=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else f=up(c[f>>2]|0)|0;if(Vp(f,tp()|0)|0){c[d>>2]=0;n=0;l=1;k=0}else{n=j;l=0}}else{n=0;l=1;k=0}j=c[e>>2]|0;do if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if(!(Vp(f,tp()|0)|0))if(l)break;else break a;else{c[e>>2]=0;E=19;break}}else E=19;while(0);if((E|0)==19){E=0;if(l){j=0;break}else j=0}f=a[p>>0]|0;f=f<<24>>24<0?c[o>>2]|0:f&255;if((c[v>>2]|0)==(b+f|0)){Gz(B,f<<1,0);if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b+f}l=k+12|0;f=c[l>>2]|0;m=k+16|0;if((f|0)==(c[m>>2]|0))f=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else f=up(c[f>>2]|0)|0;if(cs(f,z,r,b,v,c[t>>2]|0,c[u>>2]|0,C,w,x,y,s)|0)break;f=c[l>>2]|0;if((f|0)==(c[m>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[l>>2]=f+4;up(c[f>>2]|0)|0}j=n}u=a[C+11>>0]|0;if(!((a[z>>0]|0)==0?1:((u<<24>>24<0?c[C+4>>2]|0:u&255)|0)==0)?(A=c[x>>2]|0,(A-w|0)<160):0){z=c[y>>2]|0;c[x>>2]=A+4;c[A>>2]=z}g[i>>3]=+ur(b,c[v>>2]|0,h);sr(C,w,c[x>>2]|0,h);if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0))b=kc[c[(c[n>>2]|0)+36>>2]&127](k)|0;else b=up(c[b>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(f)break;else{E=50;break}else{c[e>>2]=0;E=48;break}}else E=48;while(0);if((E|0)==48?f:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;E=c[d>>2]|0;Az(B);Az(C);hc=D;return E|0}function es(b,d,e,g,h,i){b=b|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,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;D=hc;r=hc=hc+31&-32;hc=hc+336|0;s=r+160|0;t=r+328|0;u=r+324|0;C=r+312|0;B=r+300|0;v=r+296|0;w=r;x=r+292|0;y=r+288|0;z=r+333|0;r=r+332|0;bs(C,g,s,t,u);c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[B+(b<<2)>>2]=0;b=b+1|0}p=B+11|0;q=B+8|0;if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b;c[x>>2]=w;c[y>>2]=0;a[z>>0]=1;a[r>>0]=69;o=B+4|0;k=c[d>>2]|0;j=k;a:while(1){if(k){g=c[k+12>>2]|0;if((g|0)==(c[k+16>>2]|0))g=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else g=up(c[g>>2]|0)|0;if(Vp(g,tp()|0)|0){c[d>>2]=0;n=0;l=1;k=0}else{n=j;l=0}}else{n=0;l=1;k=0}j=c[e>>2]|0;do if(j){g=c[j+12>>2]|0;if((g|0)==(c[j+16>>2]|0))g=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else g=up(c[g>>2]|0)|0;if(!(Vp(g,tp()|0)|0))if(l)break;else break a;else{c[e>>2]=0;E=19;break}}else E=19;while(0);if((E|0)==19){E=0;if(l){j=0;break}else j=0}g=a[p>>0]|0;g=g<<24>>24<0?c[o>>2]|0:g&255;if((c[v>>2]|0)==(b+g|0)){Gz(B,g<<1,0);if((a[p>>0]|0)<0)b=(c[q>>2]&2147483647)+-1|0;else b=10;Gz(B,b,0);b=(a[p>>0]|0)<0?c[B>>2]|0:B;c[v>>2]=b+g}l=k+12|0;g=c[l>>2]|0;m=k+16|0;if((g|0)==(c[m>>2]|0))g=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else g=up(c[g>>2]|0)|0;if(cs(g,z,r,b,v,c[t>>2]|0,c[u>>2]|0,C,w,x,y,s)|0)break;g=c[l>>2]|0;if((g|0)==(c[m>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[l>>2]=g+4;up(c[g>>2]|0)|0}j=n}u=a[C+11>>0]|0;if(!((a[z>>0]|0)==0?1:((u<<24>>24<0?c[C+4>>2]|0:u&255)|0)==0)?(A=c[x>>2]|0,(A-w|0)<160):0){z=c[y>>2]|0;c[x>>2]=A+4;c[A>>2]=z}f[i>>2]=+wr(b,c[v>>2]|0,h);sr(C,w,c[x>>2]|0,h);if(k){b=c[k+12>>2]|0;if((b|0)==(c[k+16>>2]|0))b=kc[c[(c[n>>2]|0)+36>>2]&127](k)|0;else b=up(c[b>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;g=1}else g=0}else g=1;do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(g)break;else{E=50;break}else{c[e>>2]=0;E=48;break}}else E=48;while(0);if((E|0)==48?g:0)E=50;if((E|0)==50)c[h>>2]=c[h>>2]|2;E=c[d>>2]|0;Az(B);Az(C);hc=D;return E|0}function fs(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0;C=hc;q=hc=hc+31&-32;hc=hc+304|0;r=q+300|0;z=q+288|0;A=q+276|0;s=q+272|0;t=q;v=q+268|0;w=q+264|0;x=yr(f)|0;q=gs(b,f,q+160|0)|0;hs(z,f,r);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[A+(b<<2)>>2]=0;b=b+1|0}o=A+11|0;p=A+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(A,b,0);b=(a[o>>0]|0)<0?c[A>>2]|0:A;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=A+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if(Vp(f,tp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=up(c[f>>2]|0)|0;if(!(Vp(f,tp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(A,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(A,b,0);b=(a[o>>0]|0)<0?c[A>>2]|0:A;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if($r(f,x,b,s,w,c[r>>2]|0,z,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+4;up(c[f>>2]|0)|0}i=m}r=a[z+11>>0]|0;if((r<<24>>24<0?c[z+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}w=Br(b,c[s>>2]|0,g,x)|0;x=y()|0;c[h>>2]=w;c[h+4>>2]=x;sr(z,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=up(c[b>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(f)break;else{B=50;break}else{c[e>>2]=0;B=48;break}}else B=48;while(0);if((B|0)==48?f:0)B=50;if((B|0)==50)c[g>>2]=c[g>>2]|2;B=c[d>>2]|0;Az(A);Az(z);hc=C;return B|0}function gs(a,b,c){a=a|0;b=b|0;c=c|0;return is(a,b,c)|0}function hs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=hc;f=hc=hc+31&-32;hc=hc+16|0;Up(f,b);b=dr(f,99708)|0;c[d>>2]=kc[c[(c[b>>2]|0)+16>>2]&127](b)|0;xc[c[(c[b>>2]|0)+20>>2]&63](a,b);er(f);hc=e;return}function is(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=hc;e=hc=hc+31&-32;hc=hc+16|0;Up(e,b);b=dr(e,99700)|0;oc[c[(c[b>>2]|0)+48>>2]&7](b,8960,8986,d)|0;er(e);hc=a;return d|0}function js(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,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=hc;q=hc=hc+31&-32;hc=hc+304|0;r=q+300|0;y=q+288|0;z=q+276|0;s=q+272|0;t=q;v=q+268|0;w=q+264|0;x=yr(f)|0;q=gs(b,f,q+160|0)|0;hs(y,f,r);c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[z+(b<<2)>>2]=0;b=b+1|0}o=z+11|0;p=z+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=z+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if(Vp(f,tp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=up(c[f>>2]|0)|0;if(!(Vp(f,tp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;A=19;break}}else A=19;while(0);if((A|0)==19){A=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(z,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if($r(f,x,b,s,w,c[r>>2]|0,y,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+4;up(c[f>>2]|0)|0}i=m}r=a[y+11>>0]|0;if((r<<24>>24<0?c[y+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}c[h>>2]=Er(b,c[s>>2]|0,g,x)|0;sr(y,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=up(c[b>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(f)break;else{A=50;break}else{c[e>>2]=0;A=48;break}}else A=48;while(0);if((A|0)==48?f:0)A=50;if((A|0)==50)c[g>>2]=c[g>>2]|2;A=c[d>>2]|0;Az(z);Az(y);hc=B;return A|0}function ks(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,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=hc;q=hc=hc+31&-32;hc=hc+304|0;r=q+300|0;y=q+288|0;z=q+276|0;s=q+272|0;t=q;v=q+268|0;w=q+264|0;x=yr(f)|0;q=gs(b,f,q+160|0)|0;hs(y,f,r);c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[z+(b<<2)>>2]=0;b=b+1|0}o=z+11|0;p=z+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=z+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if(Vp(f,tp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=up(c[f>>2]|0)|0;if(!(Vp(f,tp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;A=19;break}}else A=19;while(0);if((A|0)==19){A=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(z,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if($r(f,x,b,s,w,c[r>>2]|0,y,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+4;up(c[f>>2]|0)|0}i=m}r=a[y+11>>0]|0;if((r<<24>>24<0?c[y+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}c[h>>2]=Gr(b,c[s>>2]|0,g,x)|0;sr(y,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=up(c[b>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(f)break;else{A=50;break}else{c[e>>2]=0;A=48;break}}else A=48;while(0);if((A|0)==48?f:0)A=50;if((A|0)==50)c[g>>2]=c[g>>2]|2;A=c[d>>2]|0;Az(z);Az(y);hc=B;return A|0}function ls(d,e,f,g,h,i){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,B=0,C=0;C=hc;r=hc=hc+31&-32;hc=hc+304|0;s=r+300|0;z=r+288|0;A=r+276|0;t=r+272|0;u=r;w=r+268|0;x=r+264|0;y=yr(g)|0;r=gs(d,g,r+160|0)|0;hs(z,g,s);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[A+(d<<2)>>2]=0;d=d+1|0}p=A+11|0;q=A+8|0;if((a[p>>0]|0)<0)d=(c[q>>2]&2147483647)+-1|0;else d=10;Gz(A,d,0);d=(a[p>>0]|0)<0?c[A>>2]|0:A;c[t>>2]=d;c[w>>2]=u;c[x>>2]=0;o=A+4|0;k=c[e>>2]|0;j=k;a:while(1){if(k){g=c[k+12>>2]|0;if((g|0)==(c[k+16>>2]|0))g=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else g=up(c[g>>2]|0)|0;if(Vp(g,tp()|0)|0){c[e>>2]=0;n=0;l=1;k=0}else{n=j;l=0}}else{n=0;l=1;k=0}j=c[f>>2]|0;do if(j){g=c[j+12>>2]|0;if((g|0)==(c[j+16>>2]|0))g=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else g=up(c[g>>2]|0)|0;if(!(Vp(g,tp()|0)|0))if(l)break;else break a;else{c[f>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(l){j=0;break}else j=0}g=a[p>>0]|0;g=g<<24>>24<0?c[o>>2]|0:g&255;if((c[t>>2]|0)==(d+g|0)){Gz(A,g<<1,0);if((a[p>>0]|0)<0)d=(c[q>>2]&2147483647)+-1|0;else d=10;Gz(A,d,0);d=(a[p>>0]|0)<0?c[A>>2]|0:A;c[t>>2]=d+g}l=k+12|0;g=c[l>>2]|0;m=k+16|0;if((g|0)==(c[m>>2]|0))g=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else g=up(c[g>>2]|0)|0;if($r(g,y,d,t,x,c[s>>2]|0,z,u,w,r)|0)break;g=c[l>>2]|0;if((g|0)==(c[m>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[l>>2]=g+4;up(c[g>>2]|0)|0}j=n}s=a[z+11>>0]|0;if((s<<24>>24<0?c[z+4>>2]|0:s&255)|0?(v=c[w>>2]|0,(v-u|0)<160):0){x=c[x>>2]|0;c[w>>2]=v+4;c[v>>2]=x}b[i>>1]=Ir(d,c[t>>2]|0,h,y)|0;sr(z,u,c[w>>2]|0,h);if(k){d=c[k+12>>2]|0;if((d|0)==(c[k+16>>2]|0))d=kc[c[(c[n>>2]|0)+36>>2]&127](k)|0;else d=up(c[d>>2]|0)|0;if(Vp(d,tp()|0)|0){c[e>>2]=0;g=1}else g=0}else g=1;do if(j){d=c[j+12>>2]|0;if((d|0)==(c[j+16>>2]|0))d=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else d=up(c[d>>2]|0)|0;if(!(Vp(d,tp()|0)|0))if(g)break;else{B=50;break}else{c[f>>2]=0;B=48;break}}else B=48;while(0);if((B|0)==48?g:0)B=50;if((B|0)==50)c[h>>2]=c[h>>2]|2;B=c[e>>2]|0;Az(A);Az(z);hc=C;return B|0}function ms(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0;C=hc;q=hc=hc+31&-32;hc=hc+304|0;r=q+300|0;z=q+288|0;A=q+276|0;s=q+272|0;t=q;v=q+268|0;w=q+264|0;x=yr(f)|0;q=gs(b,f,q+160|0)|0;hs(z,f,r);c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[A+(b<<2)>>2]=0;b=b+1|0}o=A+11|0;p=A+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(A,b,0);b=(a[o>>0]|0)<0?c[A>>2]|0:A;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=A+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if(Vp(f,tp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=up(c[f>>2]|0)|0;if(!(Vp(f,tp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;B=19;break}}else B=19;while(0);if((B|0)==19){B=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(A,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(A,b,0);b=(a[o>>0]|0)<0?c[A>>2]|0:A;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if($r(f,x,b,s,w,c[r>>2]|0,z,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+4;up(c[f>>2]|0)|0}i=m}r=a[z+11>>0]|0;if((r<<24>>24<0?c[z+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}w=Kr(b,c[s>>2]|0,g,x)|0;x=y()|0;c[h>>2]=w;c[h+4>>2]=x;sr(z,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=up(c[b>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(f)break;else{B=50;break}else{c[e>>2]=0;B=48;break}}else B=48;while(0);if((B|0)==48?f:0)B=50;if((B|0)==50)c[g>>2]=c[g>>2]|2;B=c[d>>2]|0;Az(A);Az(z);hc=C;return B|0}function ns(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,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=hc;q=hc=hc+31&-32;hc=hc+304|0;r=q+300|0;y=q+288|0;z=q+276|0;s=q+272|0;t=q;v=q+268|0;w=q+264|0;x=yr(f)|0;q=gs(b,f,q+160|0)|0;hs(y,f,r);c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[z+(b<<2)>>2]=0;b=b+1|0}o=z+11|0;p=z+8|0;if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b;c[v>>2]=t;c[w>>2]=0;n=z+4|0;j=c[d>>2]|0;i=j;a:while(1){if(j){f=c[j+12>>2]|0;if((f|0)==(c[j+16>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if(Vp(f,tp()|0)|0){c[d>>2]=0;m=0;k=1;j=0}else{m=i;k=0}}else{m=0;k=1;j=0}i=c[e>>2]|0;do if(i){f=c[i+12>>2]|0;if((f|0)==(c[i+16>>2]|0))f=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else f=up(c[f>>2]|0)|0;if(!(Vp(f,tp()|0)|0))if(k)break;else break a;else{c[e>>2]=0;A=19;break}}else A=19;while(0);if((A|0)==19){A=0;if(k){i=0;break}else i=0}f=a[o>>0]|0;f=f<<24>>24<0?c[n>>2]|0:f&255;if((c[s>>2]|0)==(b+f|0)){Gz(z,f<<1,0);if((a[o>>0]|0)<0)b=(c[p>>2]&2147483647)+-1|0;else b=10;Gz(z,b,0);b=(a[o>>0]|0)<0?c[z>>2]|0:z;c[s>>2]=b+f}k=j+12|0;f=c[k>>2]|0;l=j+16|0;if((f|0)==(c[l>>2]|0))f=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else f=up(c[f>>2]|0)|0;if($r(f,x,b,s,w,c[r>>2]|0,y,t,v,q)|0)break;f=c[k>>2]|0;if((f|0)==(c[l>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=f+4;up(c[f>>2]|0)|0}i=m}r=a[y+11>>0]|0;if((r<<24>>24<0?c[y+4>>2]|0:r&255)|0?(u=c[v>>2]|0,(u-t|0)<160):0){w=c[w>>2]|0;c[v>>2]=u+4;c[u>>2]=w}c[h>>2]=Mr(b,c[s>>2]|0,g,x)|0;sr(y,t,c[v>>2]|0,g);if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[m>>2]|0)+36>>2]&127](j)|0;else b=up(c[b>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;f=1}else f=0}else f=1;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))b=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(f)break;else{A=50;break}else{c[e>>2]=0;A=48;break}}else A=48;while(0);if((A|0)==48?f:0)A=50;if((A|0)==50)c[g>>2]=c[g>>2]|2;A=c[d>>2]|0;Az(z);Az(y);hc=B;return A|0}function os(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=hc;k=hc=hc+31&-32;hc=hc+112|0;l=(f-e|0)/12|0;if(l>>>0>100){k=uo(l)|0;if(!k)kz();else{j=k;u=k}}else{j=k;u=0}k=0;n=e;o=j;while(1){if((n|0)==(f|0))break;m=a[n+8+3>>0]|0;if(m<<24>>24<0)m=c[n+4>>2]|0;else m=m&255;if(!m){a[o>>0]=2;k=k+1|0;l=l+-1|0}else a[o>>0]=1;n=n+12|0;o=o+1|0}t=0;r=k;while(1){k=c[b>>2]|0;do if(k){m=c[k+12>>2]|0;if((m|0)==(c[k+16>>2]|0))k=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else k=up(c[m>>2]|0)|0;if(Vp(k,tp()|0)|0){c[b>>2]=0;o=1;break}else{o=(c[b>>2]|0)==0;break}}else o=1;while(0);m=c[d>>2]|0;if(m){k=c[m+12>>2]|0;if((k|0)==(c[m+16>>2]|0))k=kc[c[(c[m>>2]|0)+36>>2]&127](m)|0;else k=up(c[k>>2]|0)|0;if(Vp(k,tp()|0)|0){c[d>>2]=0;k=1;m=0}else k=0}else{k=1;m=0}n=c[b>>2]|0;if(!((l|0)!=0&(o^k)))break;k=c[n+12>>2]|0;if((k|0)==(c[n+16>>2]|0))k=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else k=up(c[k>>2]|0)|0;if(!i)k=mc[c[(c[g>>2]|0)+28>>2]&31](g,k)|0;s=t+1|0;p=e;o=0;q=j;while(1){if((p|0)==(f|0))break;do if((a[q>>0]|0)==1){n=p+8+3|0;if((a[n>>0]|0)<0)m=c[p>>2]|0;else m=p;m=c[m+(t<<2)>>2]|0;if(!i)m=mc[c[(c[g>>2]|0)+28>>2]&31](g,m)|0;if((k|0)!=(m|0)){a[q>>0]=0;m=o;n=r;l=l+-1|0;break}m=a[n>>0]|0;if(m<<24>>24<0)m=c[p+4>>2]|0;else m=m&255;if((m|0)==(s|0)){a[q>>0]=2;m=1;n=r+1|0;l=l+-1|0}else{m=1;n=r}}else{m=o;n=r}while(0);p=p+12|0;o=m;q=q+1|0;r=n}a:do if(o){k=c[b>>2]|0;m=k+12|0;n=c[m>>2]|0;if((n|0)==(c[k+16>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[m>>2]=n+4;up(c[n>>2]|0)|0}if((r+l|0)>>>0>1){n=e;o=j;k=r;while(1){if((n|0)==(f|0))break a;if((a[o>>0]|0)==2){m=a[n+8+3>>0]|0;if(m<<24>>24<0)m=c[n+4>>2]|0;else m=m&255;if((m|0)!=(s|0)){a[o>>0]=0;k=k+-1|0}}n=n+12|0;o=o+1|0}}else k=r}else k=r;while(0);t=s;r=k}do if(n){k=c[n+12>>2]|0;if((k|0)==(c[n+16>>2]|0))k=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else k=up(c[k>>2]|0)|0;if(Vp(k,tp()|0)|0){c[b>>2]=0;l=1;break}else{l=(c[b>>2]|0)==0;break}}else l=1;while(0);do if(m){k=c[m+12>>2]|0;if((k|0)==(c[m+16>>2]|0))k=kc[c[(c[m>>2]|0)+36>>2]&127](m)|0;else k=up(c[k>>2]|0)|0;if(!(Vp(k,tp()|0)|0))if(l)break;else{v=79;break}else{c[d>>2]=0;v=41;break}}else v=41;while(0);if((v|0)==41?l:0)v=79;if((v|0)==79)c[h>>2]=c[h>>2]|2;while(1){if((e|0)==(f|0)){v=84;break}if((a[j>>0]|0)==2)break;e=e+12|0;j=j+1|0}if((v|0)==84){c[h>>2]=c[h>>2]|4;e=f}vo(u);hc=w;return e|0}function ps(a){a=a|0;Kq(a);return}function qs(a){a=a|0;Kq(a);nz(a);return}function rs(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;l=hc;h=hc=hc+31&-32;hc=hc+16|0;k=h+4|0;if(!(c[e+4>>2]&1)){j=c[(c[b>>2]|0)+24>>2]|0;c[h>>2]=c[d>>2];c[k>>2]=c[h>>2];b=qc[j&31](b,k,e,f,g&1)|0}else{Up(k,e);b=dr(k,99684)|0;er(k);e=c[b>>2]|0;if(g)xc[c[e+24>>2]&63](k,b);else xc[c[e+28>>2]&63](k,b);i=k+11|0;b=a[i>>0]|0;e=c[k>>2]|0;j=k+4|0;g=b<<24>>24<0?e:k;while(1){h=b<<24>>24<0;if((g|0)==((h?e:k)+(h?c[j>>2]|0:b&255)|0))break;b=a[g>>0]|0;e=c[d>>2]|0;if(e|0){f=e+24|0;h=c[f>>2]|0;if((h|0)==(c[e+28>>2]|0)){h=c[(c[e>>2]|0)+52>>2]|0;b=cp(b)|0;b=mc[h&31](e,b)|0}else{c[f>>2]=h+1;a[h>>0]=b;b=cp(b)|0}if(Tp(b,bp()|0)|0)c[d>>2]=0}g=g+1|0;b=a[i>>0]|0;e=c[k>>2]|0}b=c[d>>2]|0;Az(k)}hc=l;return b|0}function ss(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;b=hc;k=hc=hc+31&-32;hc=hc+32|0;j=k;n=k+16|0;m=k+12|0;l=k+4|0;k=k+8|0;a[n>>0]=a[74439]|0;a[n+1>>0]=a[74440]|0;a[n+2>>0]=a[74441]|0;a[n+3>>0]=a[74442]|0;a[n+4>>0]=a[74443]|0;a[n+5>>0]=a[74444]|0;p=e+4|0;Es(n+1|0,74445,1,c[p>>2]|0);p=(c[p>>2]|0)>>>9&1;q=p+13|0;h=$a()|0;o=hc;hc=hc+((1*q|0)+15&-16)|0;i=gr()|0;c[j>>2]=g;g=o+(zs(o,q,i,n,j)|0)|0;n=As(o,g,e)|0;i=hc;hc=hc+((1*((p<<1|24)+-1|0)|0)+15&-16)|0;Up(j,e);Fs(o,n,g,i,m,l,j);er(j);c[k>>2]=c[d>>2];d=c[m>>2]|0;g=c[l>>2]|0;c[j>>2]=c[k>>2];g=Og(j,i,d,g,e,f)|0;_a(h|0);hc=b;return g|0}function ts(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a=hc;k=hc=hc+31&-32;hc=hc+32|0;j=k+8|0;i=k;m=k+24|0;l=k+16|0;k=k+20|0;o=i;c[o>>2]=37;c[o+4>>2]=0;o=d+4|0;Es(i+1|0,74436,1,c[o>>2]|0);o=(c[o>>2]|0)>>>9&1;q=o+23|0;h=$a()|0;n=hc;hc=hc+((1*q|0)+15&-16)|0;p=gr()|0;r=j;c[r>>2]=f;c[r+4>>2]=g;f=n+(zs(n,q,p,i,j)|0)|0;g=As(n,f,d)|0;i=hc;hc=hc+((1*((o<<1|44)+-1|0)|0)+15&-16)|0;Up(j,d);Fs(n,g,f,i,m,l,j);er(j);c[k>>2]=c[b>>2];f=c[m>>2]|0;g=c[l>>2]|0;c[j>>2]=c[k>>2];g=Og(j,i,f,g,d,e)|0;_a(h|0);hc=a;return g|0}function us(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;b=hc;k=hc=hc+31&-32;hc=hc+32|0;j=k;n=k+16|0;m=k+12|0;l=k+4|0;k=k+8|0;a[n>>0]=a[74439]|0;a[n+1>>0]=a[74440]|0;a[n+2>>0]=a[74441]|0;a[n+3>>0]=a[74442]|0;a[n+4>>0]=a[74443]|0;a[n+5>>0]=a[74444]|0;p=e+4|0;Es(n+1|0,74445,0,c[p>>2]|0);p=(c[p>>2]|0)>>>9&1;q=p|12;h=$a()|0;o=hc;hc=hc+((1*q|0)+15&-16)|0;i=gr()|0;c[j>>2]=g;g=o+(zs(o,q,i,n,j)|0)|0;n=As(o,g,e)|0;i=hc;hc=hc+((1*(p<<1|21)|0)+15&-16)|0;Up(j,e);Fs(o,n,g,i,m,l,j);er(j);c[k>>2]=c[d>>2];d=c[m>>2]|0;g=c[l>>2]|0;c[j>>2]=c[k>>2];g=Og(j,i,d,g,e,f)|0;_a(h|0);hc=b;return g|0}function vs(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a=hc;k=hc=hc+31&-32;hc=hc+32|0;j=k+8|0;i=k;m=k+24|0;l=k+16|0;k=k+20|0;o=i;c[o>>2]=37;c[o+4>>2]=0;o=d+4|0;Es(i+1|0,74436,0,c[o>>2]|0);o=(c[o>>2]|0)>>>9&1|22;q=o+1|0;h=$a()|0;n=hc;hc=hc+((1*q|0)+15&-16)|0;p=gr()|0;r=j;c[r>>2]=f;c[r+4>>2]=g;f=n+(zs(n,q,p,i,j)|0)|0;g=As(n,f,d)|0;i=hc;hc=hc+((1*((o<<1)+-1|0)|0)+15&-16)|0;Up(j,d);Fs(n,g,f,i,m,l,j);er(j);c[k>>2]=c[b>>2];f=c[m>>2]|0;g=c[l>>2]|0;c[j>>2]=c[k>>2];g=Og(j,i,f,g,d,e)|0;_a(h|0);hc=a;return g|0}function ws(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;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;v=hc;t=hc=hc+31&-32;hc=hc+176|0;r=t+168|0;m=t+144|0;l=t+128|0;i=t+120|0;h=t+104|0;k=t+96|0;o=t+64|0;n=t+164|0;p=t;u=t+160|0;s=t+156|0;t=t+152|0;j=k;c[j>>2]=37;c[j+4>>2]=0;j=Bs(k+1|0,100142,c[d+4>>2]|0)|0;c[n>>2]=o;a=gr()|0;if(j){c[h>>2]=c[d+8>>2];g[h+8>>3]=f;a=zs(o,30,a,k,h)|0}else{g[i>>3]=f;a=zs(o,30,a,k,i)|0}if((a|0)>29){a=gr()|0;if(j){c[l>>2]=c[d+8>>2];g[l+8>>3]=f;h=Cs(n,a,k,l)|0}else{g[m>>3]=f;h=Cs(n,a,k,m)|0}a=c[n>>2]|0;if(!a)kz();else{q=h;y=a;z=a}}else{q=a;y=0;z=c[n>>2]|0}h=z+q|0;i=As(z,h,d)|0;if((z|0)!=(o|0)){a=uo(q<<1)|0;if(!a)kz();else{w=a;x=a}}else{w=p;x=0}Up(r,d);Ds(z,i,h,w,u,s,r);er(r);c[t>>2]=c[b>>2];b=c[u>>2]|0;z=c[s>>2]|0;c[r>>2]=c[t>>2];z=Og(r,w,b,z,d,e)|0;vo(x);vo(y);hc=v;return z|0}function xs(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;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;v=hc;t=hc=hc+31&-32;hc=hc+176|0;r=t+168|0;m=t+144|0;l=t+128|0;i=t+120|0;h=t+104|0;k=t+96|0;o=t+64|0;n=t+164|0;p=t;u=t+160|0;s=t+156|0;t=t+152|0;j=k;c[j>>2]=37;c[j+4>>2]=0;j=Bs(k+1|0,74434,c[d+4>>2]|0)|0;c[n>>2]=o;a=gr()|0;if(j){c[h>>2]=c[d+8>>2];g[h+8>>3]=f;a=zs(o,30,a,k,h)|0}else{g[i>>3]=f;a=zs(o,30,a,k,i)|0}if((a|0)>29){a=gr()|0;if(j){c[l>>2]=c[d+8>>2];g[l+8>>3]=f;h=Cs(n,a,k,l)|0}else{g[m>>3]=f;h=Cs(n,a,k,m)|0}a=c[n>>2]|0;if(!a)kz();else{q=h;y=a;z=a}}else{q=a;y=0;z=c[n>>2]|0}h=z+q|0;i=As(z,h,d)|0;if((z|0)!=(o|0)){a=uo(q<<1)|0;if(!a)kz();else{w=a;x=a}}else{w=p;x=0}Up(r,d);Ds(z,i,h,w,u,s,r);er(r);c[t>>2]=c[b>>2];b=c[u>>2]|0;z=c[s>>2]|0;c[r>>2]=c[t>>2];z=Og(r,w,b,z,d,e)|0;vo(x);vo(y);hc=v;return z|0}function ys(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;b=hc;m=hc=hc+31&-32;hc=hc+96|0;l=m+72|0;k=m+80|0;h=m+48|0;j=m;m=m+76|0;a[k>>0]=a[74428]|0;a[k+1>>0]=a[74429]|0;a[k+2>>0]=a[74430]|0;a[k+3>>0]=a[74431]|0;a[k+4>>0]=a[74432]|0;a[k+5>>0]=a[74433]|0;i=gr()|0;c[l>>2]=g;g=zs(h,20,i,k,l)|0;k=h+g|0;i=As(h,k,e)|0;Up(l,e);n=dr(l,99668)|0;er(l);oc[c[(c[n>>2]|0)+32>>2]&7](n,h,k,j)|0;g=j+g|0;c[m>>2]=c[d>>2];c[l>>2]=c[m>>2];g=Og(l,j,(i|0)==(k|0)?g:j+(i-h)|0,g,e,f)|0;hc=b;return g|0}function zs(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;g=hc;h=hc=hc+31&-32;hc=hc+16|0;c[h>>2]=f;f=Gn(d)|0;d=Bm(a,b,e,h)|0;if(f|0)Gn(f)|0;hc=g;return d|0}function As(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;a:do switch((c[e+4>>2]&176)<<24>>24){case 16:{e=a[b>>0]|0;switch(e<<24>>24){case 43:case 45:{b=b+1|0;break a}default:{}}if((d-b|0)>1&e<<24>>24==48){switch(a[b+1>>0]|0){case 88:case 120:break;default:{f=7;break a}}b=b+2|0}else f=7;break}case 32:{b=d;break}default:f=7}while(0);return b|0}function Bs(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;if(d&2048){a[b>>0]=43;b=b+1|0}if(d&1024){a[b>>0]=35;b=b+1|0}g=d&260;e=d&16384;f=(g|0)==260;if(f)h=0;else{a[b>>0]=46;a[b+1>>0]=42;h=1;b=b+2|0}while(1){d=a[c>>0]|0;if(!(d<<24>>24))break;a[b>>0]=d;c=c+1|0;b=b+1|0}a:do switch(g&511){case 4:{d=e>>>9&255^102;break}case 256:{d=e>>>9&255^101;break}default:{d=e>>>9&255;if(f){d=d^97;break a}else{d=d^103;break a}}}while(0);a[b>>0]=d;return h|0}function Cs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=hc;g=hc=hc+31&-32;hc=hc+16|0;c[g>>2]=e;e=Gn(b)|0;b=ho(a,d,g)|0;if(e|0)Gn(e)|0;hc=f;return b|0}function Ds(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=hc;s=hc=hc+31&-32;hc=hc+16|0;t=dr(i,99668)|0;r=dr(i,99684)|0;xc[c[(c[r>>2]|0)+20>>2]&63](s,r);c[h>>2]=f;i=a[b>>0]|0;switch(i<<24>>24){case 43:case 45:{q=mc[c[(c[t>>2]|0)+28>>2]&31](t,i)|0;j=c[h>>2]|0;c[h>>2]=j+1;a[j>>0]=q;j=b+1|0;break}default:j=b}q=e;a:do if((q-j|0)>1?(a[j>>0]|0)==48:0){i=j+1|0;switch(a[i>>0]|0){case 88:case 120:break;default:{u=4;break a}}o=mc[c[(c[t>>2]|0)+28>>2]&31](t,48)|0;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=o;j=j+2|0;p=mc[c[(c[t>>2]|0)+28>>2]&31](t,a[i>>0]|0)|0;i=c[h>>2]|0;c[h>>2]=i+1;a[i>>0]=p;i=j;while(1){if(i>>>0>=e>>>0)break a;p=a[i>>0]|0;if(!(Cn(p,gr()|0)|0))break a;i=i+1|0}}else u=4;while(0);b:do if((u|0)==4){i=j;while(1){if(i>>>0>=e>>>0)break b;p=a[i>>0]|0;if(!(Bn(p,gr()|0)|0))break b;i=i+1|0}}while(0);o=s+11|0;n=a[o>>0]|0;p=s+4|0;c:do if((n<<24>>24<0?c[p>>2]|0:n&255)|0){d:do if((j|0)!=(i|0)){k=i;l=j;while(1){k=k+-1|0;if(l>>>0>=k>>>0)break d;n=a[l>>0]|0;a[l>>0]=a[k>>0]|0;a[k>>0]=n;l=l+1|0}}while(0);n=kc[c[(c[r>>2]|0)+16>>2]&127](r)|0;m=j;l=0;k=0;while(1){if(m>>>0>=i>>>0)break;w=a[((a[o>>0]|0)<0?c[s>>2]|0:s)+k>>0]|0;if(w<<24>>24>0&(l|0)==(w<<24>>24|0)){l=c[h>>2]|0;c[h>>2]=l+1;a[l>>0]=n;l=a[o>>0]|0;k=k+(k>>>0<((l<<24>>24<0?c[p>>2]|0:l&255)+-1|0)>>>0&1)|0;l=0}x=mc[c[(c[t>>2]|0)+28>>2]&31](t,a[m>>0]|0)|0;w=c[h>>2]|0;c[h>>2]=w+1;a[w>>0]=x;m=m+1|0;l=l+1|0}k=f+(j-b)|0;j=c[h>>2]|0;if((k|0)==(j|0))k=t;else while(1){j=j+-1|0;if(k>>>0>=j>>>0){k=t;break c}x=a[k>>0]|0;a[k>>0]=a[j>>0]|0;a[j>>0]=x;k=k+1|0}}else{oc[c[(c[t>>2]|0)+32>>2]&7](t,j,i,c[h>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+(i-j);k=t}while(0);while(1){if(i>>>0>=e>>>0)break;j=a[i>>0]|0;if(j<<24>>24==46){u=32;break}w=mc[c[(c[k>>2]|0)+28>>2]&31](t,j)|0;x=c[h>>2]|0;c[h>>2]=x+1;a[x>>0]=w;i=i+1|0}if((u|0)==32){w=kc[c[(c[r>>2]|0)+12>>2]&127](r)|0;x=c[h>>2]|0;c[h>>2]=x+1;a[x>>0]=w;i=i+1|0}oc[c[(c[t>>2]|0)+32>>2]&7](t,i,e,c[h>>2]|0)|0;x=(c[h>>2]|0)+(q-i)|0;c[h>>2]=x;c[g>>2]=(d|0)==(e|0)?x:f+(d-b)|0;Az(s);hc=v;return}function Es(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0;if(e&2048){a[b>>0]=43;b=b+1|0}if(e&512){a[b>>0]=35;b=b+1|0}f=b;while(1){b=a[c>>0]|0;if(!(b<<24>>24))break;a[f>>0]=b;c=c+1|0;f=f+1|0}switch(e&74){case 64:{b=111;break}case 8:{b=e>>>9&32^120;break}default:b=d?100:117}a[f>>0]=b;return}function Fs(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=hc;q=hc=hc+31&-32;hc=hc+16|0;p=dr(i,99668)|0;l=dr(i,99684)|0;xc[c[(c[l>>2]|0)+20>>2]&63](q,l);n=q+11|0;m=a[n>>0]|0;o=q+4|0;if((m<<24>>24<0?c[o>>2]|0:m&255)|0){c[h>>2]=f;i=a[b>>0]|0;switch(i<<24>>24){case 43:case 45:{m=mc[c[(c[p>>2]|0)+28>>2]&31](p,i)|0;i=c[h>>2]|0;c[h>>2]=i+1;a[i>>0]=m;i=b+1|0;break}default:i=b}a:do if((e-i|0)>1?(a[i>>0]|0)==48:0){j=i+1|0;switch(a[j>>0]|0){case 88:case 120:break;default:break a}m=mc[c[(c[p>>2]|0)+28>>2]&31](p,48)|0;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=m;k=mc[c[(c[p>>2]|0)+28>>2]&31](p,a[j>>0]|0)|0;m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=k;i=i+2|0}while(0);b:do if((i|0)!=(e|0)){j=e;k=i;while(1){j=j+-1|0;if(k>>>0>=j>>>0)break b;m=a[k>>0]|0;a[k>>0]=a[j>>0]|0;a[j>>0]=m;k=k+1|0}}while(0);m=kc[c[(c[l>>2]|0)+16>>2]&127](l)|0;l=i;j=0;k=0;while(1){if(l>>>0>=e>>>0)break;s=a[((a[n>>0]|0)<0?c[q>>2]|0:q)+j>>0]|0;if(s<<24>>24!=0&(k|0)==(s<<24>>24|0)){k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=m;k=a[n>>0]|0;j=j+(j>>>0<((k<<24>>24<0?c[o>>2]|0:k&255)+-1|0)>>>0&1)|0;k=0}t=mc[c[(c[p>>2]|0)+28>>2]&31](p,a[l>>0]|0)|0;s=c[h>>2]|0;c[h>>2]=s+1;a[s>>0]=t;l=l+1|0;k=k+1|0}i=f+(i-b)|0;j=c[h>>2]|0;if((i|0)!=(j|0)){while(1){j=j+-1|0;if(i>>>0>=j>>>0)break;t=a[i>>0]|0;a[i>>0]=a[j>>0]|0;a[j>>0]=t;i=i+1|0}i=c[h>>2]|0}}else{oc[c[(c[p>>2]|0)+32>>2]&7](p,b,e,f)|0;i=f+(e-b)|0;c[h>>2]=i}c[g>>2]=(d|0)==(e|0)?i:f+(d-b)|0;Az(q);hc=r;return}function Gs(a){a=a|0;Kq(a);return}function Hs(a){a=a|0;Kq(a);nz(a);return}function Is(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;l=hc;h=hc=hc+31&-32;hc=hc+16|0;k=h+4|0;if(!(c[e+4>>2]&1)){j=c[(c[b>>2]|0)+24>>2]|0;c[h>>2]=c[d>>2];c[k>>2]=c[h>>2];b=qc[j&31](b,k,e,f,g&1)|0}else{Up(k,e);b=dr(k,99708)|0;er(k);e=c[b>>2]|0;if(g)xc[c[e+24>>2]&63](k,b);else xc[c[e+28>>2]&63](k,b);i=k+8+3|0;b=a[i>>0]|0;e=c[k>>2]|0;j=k+4|0;g=b<<24>>24<0?e:k;while(1){h=b<<24>>24<0;if((g|0)==((h?e:k)+((h?c[j>>2]|0:b&255)<<2)|0))break;b=c[g>>2]|0;e=c[d>>2]|0;if(e|0){f=e+24|0;h=c[f>>2]|0;if((h|0)==(c[e+28>>2]|0)){h=c[(c[e>>2]|0)+52>>2]|0;b=up(b)|0;b=mc[h&31](e,b)|0}else{c[f>>2]=h+4;c[h>>2]=b;b=up(b)|0}if(Vp(b,tp()|0)|0)c[d>>2]=0}g=g+4|0;b=a[i>>0]|0;e=c[k>>2]|0}b=c[d>>2]|0;Pz(k)}hc=l;return b|0}function Js(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;b=hc;k=hc=hc+31&-32;hc=hc+32|0;j=k;n=k+16|0;m=k+12|0;l=k+4|0;k=k+8|0;a[n>>0]=a[74439]|0;a[n+1>>0]=a[74440]|0;a[n+2>>0]=a[74441]|0;a[n+3>>0]=a[74442]|0;a[n+4>>0]=a[74443]|0;a[n+5>>0]=a[74444]|0;p=e+4|0;Es(n+1|0,74445,1,c[p>>2]|0);p=(c[p>>2]|0)>>>9&1;q=p+13|0;h=$a()|0;o=hc;hc=hc+((1*q|0)+15&-16)|0;i=gr()|0;c[j>>2]=g;g=o+(zs(o,q,i,n,j)|0)|0;n=As(o,g,e)|0;i=hc;hc=hc+((1*((p<<1|24)+-1<<2)|0)+15&-16)|0;Up(j,e);Ss(o,n,g,i,m,l,j);er(j);c[k>>2]=c[d>>2];d=c[m>>2]|0;g=c[l>>2]|0;c[j>>2]=c[k>>2];g=Qs(j,i,d,g,e,f)|0;_a(h|0);hc=b;return g|0}function Ks(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a=hc;k=hc=hc+31&-32;hc=hc+32|0;j=k+8|0;i=k;m=k+24|0;l=k+16|0;k=k+20|0;o=i;c[o>>2]=37;c[o+4>>2]=0;o=d+4|0;Es(i+1|0,74436,1,c[o>>2]|0);o=(c[o>>2]|0)>>>9&1;q=o+23|0;h=$a()|0;n=hc;hc=hc+((1*q|0)+15&-16)|0;p=gr()|0;r=j;c[r>>2]=f;c[r+4>>2]=g;f=n+(zs(n,q,p,i,j)|0)|0;g=As(n,f,d)|0;i=hc;hc=hc+((1*((o<<1|44)+-1<<2)|0)+15&-16)|0;Up(j,d);Ss(n,g,f,i,m,l,j);er(j);c[k>>2]=c[b>>2];f=c[m>>2]|0;g=c[l>>2]|0;c[j>>2]=c[k>>2];g=Qs(j,i,f,g,d,e)|0;_a(h|0);hc=a;return g|0}function Ls(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;b=hc;k=hc=hc+31&-32;hc=hc+32|0;j=k;n=k+16|0;m=k+12|0;l=k+4|0;k=k+8|0;a[n>>0]=a[74439]|0;a[n+1>>0]=a[74440]|0;a[n+2>>0]=a[74441]|0;a[n+3>>0]=a[74442]|0;a[n+4>>0]=a[74443]|0;a[n+5>>0]=a[74444]|0;p=e+4|0;Es(n+1|0,74445,0,c[p>>2]|0);p=(c[p>>2]|0)>>>9&1;q=p|12;h=$a()|0;o=hc;hc=hc+((1*q|0)+15&-16)|0;i=gr()|0;c[j>>2]=g;g=o+(zs(o,q,i,n,j)|0)|0;n=As(o,g,e)|0;i=hc;hc=hc+((1*((p<<1|21)<<2)|0)+15&-16)|0;Up(j,e);Ss(o,n,g,i,m,l,j);er(j);c[k>>2]=c[d>>2];d=c[m>>2]|0;g=c[l>>2]|0;c[j>>2]=c[k>>2];g=Qs(j,i,d,g,e,f)|0;_a(h|0);hc=b;return g|0}function Ms(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,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a=hc;k=hc=hc+31&-32;hc=hc+32|0;j=k+8|0;i=k;m=k+24|0;l=k+16|0;k=k+20|0;o=i;c[o>>2]=37;c[o+4>>2]=0;o=d+4|0;Es(i+1|0,74436,0,c[o>>2]|0);o=(c[o>>2]|0)>>>9&1|22;q=o+1|0;h=$a()|0;n=hc;hc=hc+((1*q|0)+15&-16)|0;p=gr()|0;r=j;c[r>>2]=f;c[r+4>>2]=g;f=n+(zs(n,q,p,i,j)|0)|0;g=As(n,f,d)|0;i=hc;hc=hc+((1*((o<<1)+-1<<2)|0)+15&-16)|0;Up(j,d);Ss(n,g,f,i,m,l,j);er(j);c[k>>2]=c[b>>2];f=c[m>>2]|0;g=c[l>>2]|0;c[j>>2]=c[k>>2];g=Qs(j,i,f,g,d,e)|0;_a(h|0);hc=a;return g|0}function Ns(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;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;x=hc;t=hc=hc+31&-32;hc=hc+352|0;r=t+344|0;m=t+320|0;l=t+304|0;i=t+296|0;h=t+280|0;k=t+272|0;o=t+240|0;n=t+340|0;p=t;u=t+336|0;s=t+332|0;t=t+328|0;j=k;c[j>>2]=37;c[j+4>>2]=0;j=Bs(k+1|0,100142,c[d+4>>2]|0)|0;c[n>>2]=o;a=gr()|0;if(j){c[h>>2]=c[d+8>>2];g[h+8>>3]=f;a=zs(o,30,a,k,h)|0}else{g[i>>3]=f;a=zs(o,30,a,k,i)|0}if((a|0)>29){a=gr()|0;if(j){c[l>>2]=c[d+8>>2];g[l+8>>3]=f;h=Cs(n,a,k,l)|0}else{g[m>>3]=f;h=Cs(n,a,k,m)|0}a=c[n>>2]|0;if(!a)kz();else{q=h;z=a;w=a}}else{q=a;z=0;w=c[n>>2]|0}h=w+q|0;i=As(w,h,d)|0;do if((w|0)!=(o|0)){a=uo(q<<3)|0;if(!a)kz();else{v=a;y=0;A=a;break}}else{v=p;y=1;A=0}while(0);Up(r,d);Rs(w,i,h,v,u,s,r);er(r);c[t>>2]=c[b>>2];w=c[u>>2]|0;a=c[s>>2]|0;c[r>>2]=c[t>>2];a=Qs(r,v,w,a,d,e)|0;c[b>>2]=a;if(!y)vo(A);vo(z);hc=x;return a|0}function Os(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;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;x=hc;t=hc=hc+31&-32;hc=hc+352|0;r=t+344|0;m=t+320|0;l=t+304|0;i=t+296|0;h=t+280|0;k=t+272|0;o=t+240|0;n=t+340|0;p=t;u=t+336|0;s=t+332|0;t=t+328|0;j=k;c[j>>2]=37;c[j+4>>2]=0;j=Bs(k+1|0,74434,c[d+4>>2]|0)|0;c[n>>2]=o;a=gr()|0;if(j){c[h>>2]=c[d+8>>2];g[h+8>>3]=f;a=zs(o,30,a,k,h)|0}else{g[i>>3]=f;a=zs(o,30,a,k,i)|0}if((a|0)>29){a=gr()|0;if(j){c[l>>2]=c[d+8>>2];g[l+8>>3]=f;h=Cs(n,a,k,l)|0}else{g[m>>3]=f;h=Cs(n,a,k,m)|0}a=c[n>>2]|0;if(!a)kz();else{q=h;z=a;w=a}}else{q=a;z=0;w=c[n>>2]|0}h=w+q|0;i=As(w,h,d)|0;do if((w|0)!=(o|0)){a=uo(q<<3)|0;if(!a)kz();else{v=a;y=0;A=a;break}}else{v=p;y=1;A=0}while(0);Up(r,d);Rs(w,i,h,v,u,s,r);er(r);c[t>>2]=c[b>>2];w=c[u>>2]|0;a=c[s>>2]|0;c[r>>2]=c[t>>2];a=Qs(r,v,w,a,d,e)|0;c[b>>2]=a;if(!y)vo(A);vo(z);hc=x;return a|0}function Ps(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;b=hc;m=hc=hc+31&-32;hc=hc+208|0;l=m+184|0;k=m+192|0;h=m+160|0;j=m;m=m+188|0;a[k>>0]=a[74428]|0;a[k+1>>0]=a[74429]|0;a[k+2>>0]=a[74430]|0;a[k+3>>0]=a[74431]|0;a[k+4>>0]=a[74432]|0;a[k+5>>0]=a[74433]|0;i=gr()|0;c[l>>2]=g;g=zs(h,20,i,k,l)|0;k=h+g|0;i=As(h,k,e)|0;Up(l,e);n=dr(l,99700)|0;er(l);oc[c[(c[n>>2]|0)+48>>2]&7](n,h,k,j)|0;g=j+(g<<2)|0;c[m>>2]=c[d>>2];c[l>>2]=c[m>>2];g=Qs(l,j,(i|0)==(k|0)?g:j+(i-h<<2)|0,g,e,f)|0;hc=b;return g|0}function Qs(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;n=hc;m=hc=hc+31&-32;hc=hc+16|0;i=c[b>>2]|0;a:do if(!i)i=0;else{o=d;j=f-o>>2;l=g+12|0;g=c[l>>2]|0;g=(g|0)>(j|0)?g-j|0:0;j=e;o=j-o|0;k=o>>2;if((o|0)>0?(nc[c[(c[i>>2]|0)+48>>2]&31](i,d,k)|0)!=(k|0):0){c[b>>2]=0;i=0;break}do if((g|0)>0){c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Nz(m,g,h);if((nc[c[(c[i>>2]|0)+48>>2]&31](i,(a[m+8+3>>0]|0)<0?c[m>>2]|0:m,g)|0)==(g|0)){Pz(m);break}else{c[b>>2]=0;Pz(m);i=0;break a}}while(0);o=f-j|0;f=o>>2;if((o|0)>0?(nc[c[(c[i>>2]|0)+48>>2]&31](i,e,f)|0)!=(f|0):0){c[b>>2]=0;i=0;break}c[l>>2]=0}while(0);hc=n;return i|0}function Rs(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=hc;s=hc=hc+31&-32;hc=hc+16|0;t=dr(i,99700)|0;q=dr(i,99708)|0;xc[c[(c[q>>2]|0)+20>>2]&63](s,q);c[h>>2]=f;i=a[b>>0]|0;switch(i<<24>>24){case 43:case 45:{r=mc[c[(c[t>>2]|0)+44>>2]&31](t,i)|0;i=c[h>>2]|0;c[h>>2]=i+4;c[i>>2]=r;i=b+1|0;break}default:i=b}r=e;a:do if((r-i|0)>1?(a[i>>0]|0)==48:0){j=i+1|0;switch(a[j>>0]|0){case 88:case 120:break;default:{u=4;break a}}o=mc[c[(c[t>>2]|0)+44>>2]&31](t,48)|0;p=c[h>>2]|0;c[h>>2]=p+4;c[p>>2]=o;i=i+2|0;p=mc[c[(c[t>>2]|0)+44>>2]&31](t,a[j>>0]|0)|0;j=c[h>>2]|0;c[h>>2]=j+4;c[j>>2]=p;j=i;while(1){if(j>>>0>=e>>>0)break a;p=a[j>>0]|0;if(!(Cn(p,gr()|0)|0))break a;j=j+1|0}}else u=4;while(0);b:do if((u|0)==4){j=i;while(1){if(j>>>0>=e>>>0)break b;p=a[j>>0]|0;if(!(Bn(p,gr()|0)|0))break b;j=j+1|0}}while(0);o=s+11|0;n=a[o>>0]|0;p=s+4|0;c:do if((n<<24>>24<0?c[p>>2]|0:n&255)|0){d:do if((i|0)!=(j|0)){k=j;l=i;while(1){k=k+-1|0;if(l>>>0>=k>>>0)break d;n=a[l>>0]|0;a[l>>0]=a[k>>0]|0;a[k>>0]=n;l=l+1|0}}while(0);n=kc[c[(c[q>>2]|0)+16>>2]&127](q)|0;m=i;k=0;l=0;while(1){if(m>>>0>=j>>>0)break;w=a[((a[o>>0]|0)<0?c[s>>2]|0:s)+k>>0]|0;if(w<<24>>24>0&(l|0)==(w<<24>>24|0)){l=c[h>>2]|0;c[h>>2]=l+4;c[l>>2]=n;l=a[o>>0]|0;k=k+(k>>>0<((l<<24>>24<0?c[p>>2]|0:l&255)+-1|0)>>>0&1)|0;l=0}x=mc[c[(c[t>>2]|0)+44>>2]&31](t,a[m>>0]|0)|0;w=c[h>>2]|0;c[h>>2]=w+4;c[w>>2]=x;m=m+1|0;l=l+1|0}i=f+(i-b<<2)|0;l=c[h>>2]|0;if((i|0)==(l|0))k=t;else{k=l;while(1){k=k+-4|0;if(i>>>0>=k>>>0){k=t;i=l;break c}x=c[i>>2]|0;c[i>>2]=c[k>>2];c[k>>2]=x;i=i+4|0}}}else{oc[c[(c[t>>2]|0)+48>>2]&7](t,i,j,c[h>>2]|0)|0;i=(c[h>>2]|0)+(j-i<<2)|0;c[h>>2]=i;k=t}while(0);while(1){if(j>>>0>=e>>>0)break;i=a[j>>0]|0;if(i<<24>>24==46){u=32;break}w=mc[c[(c[k>>2]|0)+44>>2]&31](t,i)|0;x=c[h>>2]|0;i=x+4|0;c[h>>2]=i;c[x>>2]=w;j=j+1|0}if((u|0)==32){w=kc[c[(c[q>>2]|0)+12>>2]&127](q)|0;x=c[h>>2]|0;i=x+4|0;c[h>>2]=i;c[x>>2]=w;j=j+1|0}oc[c[(c[t>>2]|0)+48>>2]&7](t,j,e,i)|0;x=(c[h>>2]|0)+(r-j<<2)|0;c[h>>2]=x;c[g>>2]=(d|0)==(e|0)?x:f+(d-b<<2)|0;Az(s);hc=v;return}function Ss(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=hc;q=hc=hc+31&-32;hc=hc+16|0;p=dr(i,99700)|0;l=dr(i,99708)|0;xc[c[(c[l>>2]|0)+20>>2]&63](q,l);n=q+11|0;m=a[n>>0]|0;o=q+4|0;if((m<<24>>24<0?c[o>>2]|0:m&255)|0){c[h>>2]=f;i=a[b>>0]|0;switch(i<<24>>24){case 43:case 45:{m=mc[c[(c[p>>2]|0)+44>>2]&31](p,i)|0;i=c[h>>2]|0;c[h>>2]=i+4;c[i>>2]=m;i=b+1|0;break}default:i=b}a:do if((e-i|0)>1?(a[i>>0]|0)==48:0){j=i+1|0;switch(a[j>>0]|0){case 88:case 120:break;default:break a}m=mc[c[(c[p>>2]|0)+44>>2]&31](p,48)|0;k=c[h>>2]|0;c[h>>2]=k+4;c[k>>2]=m;k=mc[c[(c[p>>2]|0)+44>>2]&31](p,a[j>>0]|0)|0;m=c[h>>2]|0;c[h>>2]=m+4;c[m>>2]=k;i=i+2|0}while(0);b:do if((i|0)!=(e|0)){j=e;k=i;while(1){j=j+-1|0;if(k>>>0>=j>>>0)break b;m=a[k>>0]|0;a[k>>0]=a[j>>0]|0;a[j>>0]=m;k=k+1|0}}while(0);m=kc[c[(c[l>>2]|0)+16>>2]&127](l)|0;l=i;j=0;k=0;while(1){if(l>>>0>=e>>>0)break;s=a[((a[n>>0]|0)<0?c[q>>2]|0:q)+j>>0]|0;if(s<<24>>24!=0&(k|0)==(s<<24>>24|0)){k=c[h>>2]|0;c[h>>2]=k+4;c[k>>2]=m;k=a[n>>0]|0;j=j+(j>>>0<((k<<24>>24<0?c[o>>2]|0:k&255)+-1|0)>>>0&1)|0;k=0}t=mc[c[(c[p>>2]|0)+44>>2]&31](p,a[l>>0]|0)|0;s=c[h>>2]|0;c[h>>2]=s+4;c[s>>2]=t;l=l+1|0;k=k+1|0}i=f+(i-b<<2)|0;j=c[h>>2]|0;if((i|0)!=(j|0)){while(1){j=j+-4|0;if(i>>>0>=j>>>0)break;t=c[i>>2]|0;c[i>>2]=c[j>>2];c[j>>2]=t;i=i+4|0}i=c[h>>2]|0}}else{oc[c[(c[p>>2]|0)+48>>2]&7](p,b,e,f)|0;i=f+(e-b<<2)|0;c[h>>2]=i}c[g>>2]=(d|0)==(e|0)?i:f+(d-b<<2)|0;Az(q);hc=r;return}function Ts(a){a=a|0;Kq(a);return}function Us(a){a=a|0;Kq(a);nz(a);return}function Vs(a){a=a|0;return 2}function Ws(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=mt(a,j,i,e,f,g,74964,74972)|0;hc=h;return g|0}function Xs(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;i=hc;l=hc=hc+31&-32;hc=hc+16|0;j=l+12|0;k=l+8|0;m=l+4|0;n=b+8|0;n=kc[c[(c[n>>2]|0)+20>>2]&127](n)|0;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];e=a[n+11>>0]|0;o=e<<24>>24<0;d=o?c[n>>2]|0:n;e=d+(o?c[n+4>>2]|0:e&255)|0;c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];h=mt(b,k,j,f,g,h,d,e)|0;hc=i;return h|0}function Ys(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;Up(i,e);e=dr(i,99668)|0;er(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];kt(a,g+24|0,b,i,f,e);hc=h;return c[b>>2]|0}function Zs(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;Up(i,e);e=dr(i,99668)|0;er(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];lt(a,g+16|0,b,i,f,e);hc=h;return c[b>>2]|0}function _s(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;Up(i,e);e=dr(i,99668)|0;er(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];xt(a,g+20|0,b,i,f,e);hc=h;return c[b>>2]|0}function $s(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,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;R=hc;N=hc=hc+31&-32;hc=hc+144|0;k=N+128|0;j=N+112|0;P=N+124|0;Q=N+120|0;l=N+116|0;m=N+108|0;n=N+104|0;o=N+100|0;p=N+96|0;q=N+92|0;r=N+88|0;s=N+84|0;t=N+80|0;u=N+76|0;v=N+72|0;w=N+68|0;x=N+64|0;y=N+60|0;z=N+56|0;A=N+52|0;B=N+48|0;C=N+44|0;D=N+40|0;E=N+36|0;F=N+32|0;G=N+28|0;H=N+24|0;I=N+20|0;J=N+16|0;K=N+12|0;L=N+8|0;M=N+4|0;c[g>>2]=0;Up(k,f);O=dr(k,99668)|0;er(k);do switch(i<<24>>24|0){case 65:case 97:{c[P>>2]=c[e>>2];c[k>>2]=c[P>>2];kt(b,h+24|0,d,k,g,O);S=26;break}case 104:case 66:case 98:{c[Q>>2]=c[e>>2];c[k>>2]=c[Q>>2];lt(b,h+16|0,d,k,g,O);S=26;break}case 99:{Q=b+8|0;Q=kc[c[(c[Q>>2]|0)+12>>2]&127](Q)|0;c[l>>2]=c[d>>2];c[m>>2]=c[e>>2];S=a[Q+11>>0]|0;e=S<<24>>24<0;i=e?c[Q>>2]|0:Q;S=i+(e?c[Q+4>>2]|0:S&255)|0;c[j>>2]=c[l>>2];c[k>>2]=c[m>>2];c[d>>2]=mt(b,j,k,f,g,h,i,S)|0;S=26;break}case 101:case 100:{c[n>>2]=c[e>>2];c[k>>2]=c[n>>2];nt(b,h+12|0,d,k,g,O);S=26;break}case 68:{c[o>>2]=c[d>>2];c[p>>2]=c[e>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2];c[d>>2]=mt(b,j,k,f,g,h,74924,74932)|0;S=26;break}case 70:{c[q>>2]=c[d>>2];c[r>>2]=c[e>>2];c[j>>2]=c[q>>2];c[k>>2]=c[r>>2];c[d>>2]=mt(b,j,k,f,g,h,74932,74940)|0;S=26;break}case 72:{c[s>>2]=c[e>>2];c[k>>2]=c[s>>2];ot(b,h+8|0,d,k,g,O);S=26;break}case 73:{c[t>>2]=c[e>>2];c[k>>2]=c[t>>2];pt(b,h+8|0,d,k,g,O);S=26;break}case 106:{c[u>>2]=c[e>>2];c[k>>2]=c[u>>2];qt(b,h+28|0,d,k,g,O);S=26;break}case 109:{c[v>>2]=c[e>>2];c[k>>2]=c[v>>2];rt(b,h+16|0,d,k,g,O);S=26;break}case 77:{c[w>>2]=c[e>>2];c[k>>2]=c[w>>2];st(b,h+4|0,d,k,g,O);S=26;break}case 116:case 110:{c[x>>2]=c[e>>2];c[k>>2]=c[x>>2];tt(b,d,k,g,O);S=26;break}case 112:{c[y>>2]=c[e>>2];c[k>>2]=c[y>>2];ut(b,h+8|0,d,k,g,O);S=26;break}case 114:{c[z>>2]=c[d>>2];c[A>>2]=c[e>>2];c[j>>2]=c[z>>2];c[k>>2]=c[A>>2];c[d>>2]=mt(b,j,k,f,g,h,74940,74951)|0;S=26;break}case 82:{c[B>>2]=c[d>>2];c[C>>2]=c[e>>2];c[j>>2]=c[B>>2];c[k>>2]=c[C>>2];c[d>>2]=mt(b,j,k,f,g,h,74951,74956)|0;S=26;break}case 83:{c[D>>2]=c[e>>2];c[k>>2]=c[D>>2];vt(b,h,d,k,g,O);S=26;break}case 84:{c[E>>2]=c[d>>2];c[F>>2]=c[e>>2];c[j>>2]=c[E>>2];c[k>>2]=c[F>>2];c[d>>2]=mt(b,j,k,f,g,h,74956,74964)|0;S=26;break}case 119:{c[G>>2]=c[e>>2];c[k>>2]=c[G>>2];wt(b,h+24|0,d,k,g,O);S=26;break}case 120:{i=c[(c[b>>2]|0)+20>>2]|0;c[H>>2]=c[d>>2];c[I>>2]=c[e>>2];c[j>>2]=c[H>>2];c[k>>2]=c[I>>2];j=sc[i&63](b,j,k,f,g,h)|0;break}case 88:{Q=b+8|0;Q=kc[c[(c[Q>>2]|0)+24>>2]&127](Q)|0;c[J>>2]=c[d>>2];c[K>>2]=c[e>>2];S=a[Q+11>>0]|0;e=S<<24>>24<0;i=e?c[Q>>2]|0:Q;S=i+(e?c[Q+4>>2]|0:S&255)|0;c[j>>2]=c[J>>2];c[k>>2]=c[K>>2];c[d>>2]=mt(b,j,k,f,g,h,i,S)|0;S=26;break}case 121:{c[L>>2]=c[e>>2];c[k>>2]=c[L>>2];xt(b,h+20|0,d,k,g,O);S=26;break}case 89:{c[M>>2]=c[e>>2];c[k>>2]=c[M>>2];yt(b,h+20|0,d,k,g,O);S=26;break}case 37:{c[N>>2]=c[e>>2];c[k>>2]=c[N>>2];zt(b,d,k,g,O);S=26;break}default:{c[g>>2]=c[g>>2]|4;S=26}}while(0);if((S|0)==26)j=c[d>>2]|0;hc=R;return j|0}function at(b){b=b|0;if((a[97368]|0)==0?RA(97368)|0:0){jt();c[24949]=96304}return c[24949]|0}function bt(b){b=b|0;if((a[97352]|0)==0?RA(97352)|0:0){it();c[24948]=96016}return c[24948]|0}function ct(b){b=b|0;if((a[97336]|0)==0?RA(97336)|0:0){ht();c[24947]=95728}return c[24947]|0}function dt(b){b=b|0;if((a[97328]|0)==0?RA(97328)|0:0){c[24944]=0;c[24945]=0;c[24946]=0;wz(99776,74682,Rp(74682)|0)}return 99776}function et(b){b=b|0;if((a[97320]|0)==0?RA(97320)|0:0){c[24941]=0;c[24942]=0;c[24943]=0;wz(99764,74670,Rp(74670)|0)}return 99764}function ft(b){b=b|0;if((a[97312]|0)==0?RA(97312)|0:0){c[24938]=0;c[24939]=0;c[24940]=0;wz(99752,74661,Rp(74661)|0)}return 99752}function gt(b){b=b|0;if((a[97304]|0)==0?RA(97304)|0:0){c[24935]=0;c[24936]=0;c[24937]=0;wz(99740,74652,Rp(74652)|0)}return 99740}function ht(){var b=0,d=0;if((a[97344]|0)==0?RA(97344)|0:0){d=95728;do{c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[d+(b<<2)>>2]=0;b=b+1|0}d=d+12|0}while((d|0)!=96016)}Fz(95728,74703)|0;Fz(95740,74706)|0;return}function it(){var b=0,d=0;if((a[97360]|0)==0?RA(97360)|0:0){d=96016;do{c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[d+(b<<2)>>2]=0;b=b+1|0}d=d+12|0}while((d|0)!=96304)}Fz(96016,74709)|0;Fz(96028,74717)|0;Fz(96040,74726)|0;Fz(96052,74732)|0;Fz(96064,74738)|0;Fz(96076,74742)|0;Fz(96088,74747)|0;Fz(96100,74752)|0;Fz(96112,74759)|0;Fz(96124,74769)|0;Fz(96136,74777)|0;Fz(96148,74786)|0;Fz(96160,74795)|0;Fz(96172,74799)|0;Fz(96184,74803)|0;Fz(96196,74807)|0;Fz(96208,74738)|0;Fz(96220,74811)|0;Fz(96232,74815)|0;Fz(96244,74819)|0;Fz(96256,74823)|0;Fz(96268,74827)|0;Fz(96280,74831)|0;Fz(96292,74835)|0;return}function jt(){var b=0,d=0;if((a[97376]|0)==0?RA(97376)|0:0){d=96304;do{c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[d+(b<<2)>>2]=0;b=b+1|0}d=d+12|0}while((d|0)!=96472)}Fz(96304,74839)|0;Fz(96316,74846)|0;Fz(96328,74853)|0;Fz(96340,74861)|0;Fz(96352,74871)|0;Fz(96364,74880)|0;Fz(96376,74887)|0;Fz(96388,74896)|0;Fz(96400,74900)|0;Fz(96412,74904)|0;Fz(96424,74908)|0;Fz(96436,74912)|0;Fz(96448,74916)|0;Fz(96460,74920)|0;return}function kt(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;a=a+8|0;a=kc[c[c[a>>2]>>2]&127](a)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];a=(Nr(d,i,a,a+168|0,g,f,0)|0)-a|0;if((a|0)<168)c[b>>2]=((a|0)/12|0|0)%7|0;hc=h;return}function lt(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;a=a+8|0;a=kc[c[(c[a>>2]|0)+4>>2]&127](a)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];a=(Nr(d,i,a,a+288|0,g,f,0)|0)-a|0;if((a|0)<288)c[b>>2]=((a|0)/12|0|0)%12|0;hc=h;return}function mt(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,v=0,w=0,x=0,y=0,z=0;z=hc;x=hc=hc+31&-32;hc=hc+16|0;s=x+12|0;r=x+8|0;w=x+4|0;Up(s,g);t=dr(s,99668)|0;er(s);c[h>>2]=0;u=t+8|0;m=0;a:while(1){l=c[e>>2]|0;if(!((j|0)!=(k|0)&(m|0)==0))break;n=l;if(l){m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0))m=kc[c[(c[l>>2]|0)+36>>2]&127](l)|0;else m=cp(a[m>>0]|0)|0;if(Tp(m,bp()|0)|0){c[e>>2]=0;l=0;o=1;q=0}else{o=0;q=n}}else{l=0;o=1;q=n}p=c[f>>2]|0;m=p;do if(p){n=c[p+12>>2]|0;if((n|0)==(c[p+16>>2]|0))n=kc[c[(c[p>>2]|0)+36>>2]&127](p)|0;else n=cp(a[n>>0]|0)|0;if(!(Tp(n,bp()|0)|0))if(o)break;else{y=63;break a}else{c[f>>2]=0;m=0;y=15;break}}else y=15;while(0);if((y|0)==15){y=0;if(o){y=63;break}else p=0}b:do if((nc[c[(c[t>>2]|0)+36>>2]&31](t,a[j>>0]|0,0)|0)<<24>>24==37){p=j+1|0;if((p|0)==(k|0)){y=63;break a}n=nc[c[(c[t>>2]|0)+36>>2]&31](t,a[p>>0]|0,0)|0;switch(n<<24>>24){case 48:case 69:{j=j+2|0;if((j|0)==(k|0)){y=63;break a}o=n;l=nc[c[(c[t>>2]|0)+36>>2]&31](t,a[j>>0]|0,0)|0;j=p;break}default:{o=0;l=n}}p=c[(c[d>>2]|0)+36>>2]|0;c[w>>2]=q;c[x>>2]=m;c[r>>2]=c[w>>2];c[s>>2]=c[x>>2];c[e>>2]=uc[p&15](d,r,s,g,h,i,l,o)|0;j=j+2|0}else{m=a[j>>0]|0;if(m<<24>>24>-1?(v=c[u>>2]|0,b[v+(m<<24>>24<<1)>>1]&8192):0){do{j=j+1|0;if((j|0)==(k|0)){j=k;break}m=a[j>>0]|0;if(m<<24>>24<=-1)break}while((b[v+(m<<24>>24<<1)>>1]&8192)!=0);while(1){if(l){m=c[l+12>>2]|0;if((m|0)==(c[l+16>>2]|0))m=kc[c[(c[l>>2]|0)+36>>2]&127](l)|0;else m=cp(a[m>>0]|0)|0;if(Tp(m,bp()|0)|0){c[e>>2]=0;l=0;n=1}else n=0}else{l=0;n=1}do if(p){m=c[p+12>>2]|0;if((m|0)==(c[p+16>>2]|0))m=kc[c[(c[p>>2]|0)+36>>2]&127](p)|0;else m=cp(a[m>>0]|0)|0;if(!(Tp(m,bp()|0)|0))if(n)break;else break b;else{c[f>>2]=0;y=42;break}}else y=42;while(0);if((y|0)==42){y=0;if(n)break b;else p=0}n=l+12|0;m=c[n>>2]|0;o=l+16|0;if((m|0)==(c[o>>2]|0))m=kc[c[(c[l>>2]|0)+36>>2]&127](l)|0;else m=cp(a[m>>0]|0)|0;if((m&255)<<24>>24<=-1)break b;if(!(b[(c[u>>2]|0)+(m<<24>>24<<1)>>1]&8192))break b;m=c[n>>2]|0;if((m|0)==(c[o>>2]|0))kc[c[(c[l>>2]|0)+40>>2]&127](l)|0;else{c[n>>2]=m+1;cp(a[m>>0]|0)|0}}}n=l+12|0;m=c[n>>2]|0;o=l+16|0;if((m|0)==(c[o>>2]|0))m=kc[c[(c[l>>2]|0)+36>>2]&127](l)|0;else m=cp(a[m>>0]|0)|0;q=mc[c[(c[t>>2]|0)+12>>2]&31](t,m&255)|0;if(q<<24>>24!=(mc[c[(c[t>>2]|0)+12>>2]&31](t,a[j>>0]|0)|0)<<24>>24){c[h>>2]=4;break}m=c[n>>2]|0;if((m|0)==(c[o>>2]|0))kc[c[(c[l>>2]|0)+40>>2]&127](l)|0;else{c[n>>2]=m+1;cp(a[m>>0]|0)|0}j=j+1|0}while(0);m=c[h>>2]|0}if((y|0)==63)c[h>>2]=4;if(l){j=c[l+12>>2]|0;if((j|0)==(c[l+16>>2]|0))j=kc[c[(c[l>>2]|0)+36>>2]&127](l)|0;else j=cp(a[j>>0]|0)|0;if(Tp(j,bp()|0)|0){c[e>>2]=0;l=0;n=1}else n=0}else{l=0;n=1}j=c[f>>2]|0;do if(j){m=c[j+12>>2]|0;if((m|0)==(c[j+16>>2]|0))j=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else j=cp(a[m>>0]|0)|0;if(!(Tp(j,bp()|0)|0))if(n)break;else{y=78;break}else{c[f>>2]=0;y=76;break}}else y=76;while(0);if((y|0)==76?n:0)y=78;if((y|0)==78)c[h>>2]=c[h>>2]|2;hc=z;return l|0}function nt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<31&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function ot(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<24&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function pt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<12&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function qt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,3)|0;d=c[f>>2]|0;if((a|0)<366&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function rt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<13&(d&4|0)==0)c[b>>2]=a+-1;else c[f>>2]=d|4;hc=h;return}function st(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<60&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function tt(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=h+8|0;a:while(1){d=c[e>>2]|0;do if(d){h=c[d+12>>2]|0;if((h|0)==(c[d+16>>2]|0))d=kc[c[(c[d>>2]|0)+36>>2]&127](d)|0;else d=cp(a[h>>0]|0)|0;if(Tp(d,bp()|0)|0){c[e>>2]=0;h=1;break}else{h=(c[e>>2]|0)==0;break}}else h=1;while(0);i=c[f>>2]|0;do if(i){d=c[i+12>>2]|0;if((d|0)==(c[i+16>>2]|0))d=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else d=cp(a[d>>0]|0)|0;if(!(Tp(d,bp()|0)|0))if(h)break;else break a;else{c[f>>2]=0;k=15;break}}else k=15;while(0);if((k|0)==15){k=0;if(h){i=0;break}else i=0}d=c[e>>2]|0;h=c[d+12>>2]|0;if((h|0)==(c[d+16>>2]|0))d=kc[c[(c[d>>2]|0)+36>>2]&127](d)|0;else d=cp(a[h>>0]|0)|0;if((d&255)<<24>>24<=-1)break;if(!(b[(c[j>>2]|0)+(d<<24>>24<<1)>>1]&8192))break;d=c[e>>2]|0;h=d+12|0;i=c[h>>2]|0;if((i|0)==(c[d+16>>2]|0))kc[c[(c[d>>2]|0)+40>>2]&127](d)|0;else{c[h>>2]=i+1;cp(a[i>>0]|0)|0}}d=c[e>>2]|0;do if(d){h=c[d+12>>2]|0;if((h|0)==(c[d+16>>2]|0))d=kc[c[(c[d>>2]|0)+36>>2]&127](d)|0;else d=cp(a[h>>0]|0)|0;if(Tp(d,bp()|0)|0){c[e>>2]=0;h=1;break}else{h=(c[e>>2]|0)==0;break}}else h=1;while(0);do if(i){d=c[i+12>>2]|0;if((d|0)==(c[i+16>>2]|0))d=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else d=cp(a[d>>0]|0)|0;if(!(Tp(d,bp()|0)|0))if(h)break;else{k=41;break}else{c[f>>2]=0;k=39;break}}else k=39;while(0);if((k|0)==39?h:0)k=41;if((k|0)==41)c[g>>2]=c[g>>2]|2;return}function ut(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;m=hc;l=hc=hc+31&-32;hc=hc+16|0;k=l+4|0;j=b+8|0;j=kc[c[(c[j>>2]|0)+8>>2]&127](j)|0;b=a[j+11>>0]|0;if(b<<24>>24<0)i=c[j+4>>2]|0;else i=b&255;b=a[j+12+11>>0]|0;if(b<<24>>24<0)b=c[j+16>>2]|0;else b=b&255;do if((i|0)!=(0-b|0)){c[l>>2]=c[f>>2];c[k>>2]=c[l>>2];b=(Nr(e,k,j,j+24|0,h,g,0)|0)-j|0;i=c[d>>2]|0;if((i|0)==12&(b|0)==0){c[d>>2]=0;break}if((i|0)<12&(b|0)==12)c[d>>2]=i+12}else c[g>>2]=c[g>>2]|4;while(0);hc=m;return}function vt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<61&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function wt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,1)|0;d=c[f>>2]|0;if((a|0)<7&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function xt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,4)|0;if(!(c[f>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a|0)<100?a+1900|0:a;c[b>>2]=a+-1900}hc=h;return}function yt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=At(d,a,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=a+-1900;hc=h;return}function zt(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;b=c[d>>2]|0;do if(b){h=c[b+12>>2]|0;if((h|0)==(c[b+16>>2]|0))b=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;else b=cp(a[h>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;i=1;break}else{i=(c[d>>2]|0)==0;break}}else i=1;while(0);h=c[e>>2]|0;do if(h){b=c[h+12>>2]|0;if((b|0)==(c[h+16>>2]|0))b=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(i){j=h;k=17;break}else{k=16;break}else{c[e>>2]=0;k=14;break}}else k=14;while(0);if((k|0)==14)if(i)k=16;else{j=0;k=17}a:do if((k|0)==16)c[f>>2]=c[f>>2]|6;else if((k|0)==17){b=c[d>>2]|0;h=c[b+12>>2]|0;if((h|0)==(c[b+16>>2]|0))b=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;else b=cp(a[h>>0]|0)|0;if((nc[c[(c[g>>2]|0)+36>>2]&31](g,b&255,0)|0)<<24>>24!=37){c[f>>2]=c[f>>2]|4;break}b=c[d>>2]|0;h=b+12|0;i=c[h>>2]|0;if((i|0)==(c[b+16>>2]|0))kc[c[(c[b>>2]|0)+40>>2]&127](b)|0;else{c[h>>2]=i+1;cp(a[i>>0]|0)|0}b=c[d>>2]|0;do if(b){h=c[b+12>>2]|0;if((h|0)==(c[b+16>>2]|0))b=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;else b=cp(a[h>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;h=1;break}else{h=(c[d>>2]|0)==0;break}}else h=1;while(0);do if(j){b=c[j+12>>2]|0;if((b|0)==(c[j+16>>2]|0))b=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(h)break a;else break;else{c[e>>2]=0;k=38;break}}else k=38;while(0);if((k|0)==38?!h:0)break;c[f>>2]=c[f>>2]|2}while(0);return}function At(d,e,f,g,h){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,q=0;i=c[d>>2]|0;do if(i){j=c[i+12>>2]|0;if((j|0)==(c[i+16>>2]|0))i=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else i=cp(a[j>>0]|0)|0;if(Tp(i,bp()|0)|0){c[d>>2]=0;k=1;break}else{k=(c[d>>2]|0)==0;break}}else k=1;while(0);j=c[e>>2]|0;do if(j){i=c[j+12>>2]|0;if((i|0)==(c[j+16>>2]|0))i=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else i=cp(a[i>>0]|0)|0;if(!(Tp(i,bp()|0)|0))if(k){q=17;break}else{q=16;break}else{c[e>>2]=0;q=14;break}}else q=14;while(0);if((q|0)==14)if(k)q=16;else{j=0;q=17}a:do if((q|0)==16){c[f>>2]=c[f>>2]|6;i=0}else if((q|0)==17){i=c[d>>2]|0;k=c[i+12>>2]|0;if((k|0)==(c[i+16>>2]|0))i=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else i=cp(a[k>>0]|0)|0;k=i&255;if(k<<24>>24>-1?(p=g+8|0,b[(c[p>>2]|0)+(i<<24>>24<<1)>>1]&2048):0){i=(nc[c[(c[g>>2]|0)+36>>2]&31](g,k,0)|0)<<24>>24;k=c[d>>2]|0;l=k+12|0;m=c[l>>2]|0;if((m|0)==(c[k+16>>2]|0))kc[c[(c[k>>2]|0)+40>>2]&127](k)|0;else{c[l>>2]=m+1;cp(a[m>>0]|0)|0}n=j;m=j;while(1){i=i+-48|0;o=h+-1|0;j=c[d>>2]|0;do if(j){k=c[j+12>>2]|0;if((k|0)==(c[j+16>>2]|0))j=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else j=cp(a[k>>0]|0)|0;if(Tp(j,bp()|0)|0){c[d>>2]=0;l=1;break}else{l=(c[d>>2]|0)==0;break}}else l=1;while(0);if(m){j=c[m+12>>2]|0;if((j|0)==(c[m+16>>2]|0))j=kc[c[(c[m>>2]|0)+36>>2]&127](m)|0;else j=cp(a[j>>0]|0)|0;if(Tp(j,bp()|0)|0){c[e>>2]=0;j=1;n=0;m=0}else j=0}else{j=1;m=0}k=c[d>>2]|0;if(!((h|0)>1&(l^j)))break;j=c[k+12>>2]|0;if((j|0)==(c[k+16>>2]|0))j=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else j=cp(a[j>>0]|0)|0;k=j&255;if(k<<24>>24<=-1)break a;if(!(b[(c[p>>2]|0)+(j<<24>>24<<1)>>1]&2048))break a;i=(i*10|0)+((nc[c[(c[g>>2]|0)+36>>2]&31](g,k,0)|0)<<24>>24)|0;j=c[d>>2]|0;k=j+12|0;l=c[k>>2]|0;if((l|0)==(c[j+16>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[k>>2]=l+1;cp(a[l>>0]|0)|0}h=o}do if(k){j=c[k+12>>2]|0;if((j|0)==(c[k+16>>2]|0))j=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else j=cp(a[j>>0]|0)|0;if(Tp(j,bp()|0)|0){c[d>>2]=0;k=1;break}else{k=(c[d>>2]|0)==0;break}}else k=1;while(0);do if(n){j=c[n+12>>2]|0;if((j|0)==(c[n+16>>2]|0))j=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else j=cp(a[j>>0]|0)|0;if(!(Tp(j,bp()|0)|0))if(k)break a;else break;else{c[e>>2]=0;q=63;break}}else q=63;while(0);if((q|0)==63?!k:0)break;c[f>>2]=c[f>>2]|2;break}c[f>>2]=c[f>>2]|4;i=0}while(0);return i|0}function Bt(a){a=a|0;Kq(a);return}function Ct(a){a=a|0;Kq(a);nz(a);return}function Dt(a){a=a|0;return 2}function Et(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,k=0,l=0;h=hc;k=hc=hc+31&-32;hc=hc+16|0;i=k+12|0;j=k+8|0;l=k+4|0;c[l>>2]=c[b>>2];c[k>>2]=c[d>>2];c[j>>2]=c[l>>2];c[i>>2]=c[k>>2];g=Xt(a,j,i,e,f,g,9184,9216)|0;hc=h;return g|0}function Ft(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;i=hc;l=hc=hc+31&-32;hc=hc+16|0;j=l+12|0;k=l+8|0;m=l+4|0;n=b+8|0;n=kc[c[(c[n>>2]|0)+20>>2]&127](n)|0;c[m>>2]=c[d>>2];c[l>>2]=c[e>>2];e=a[n+8+3>>0]|0;o=e<<24>>24<0;d=o?c[n>>2]|0:n;e=d+((o?c[n+4>>2]|0:e&255)<<2)|0;c[k>>2]=c[m>>2];c[j>>2]=c[l>>2];h=Xt(b,k,j,f,g,h,d,e)|0;hc=i;return h|0}function Gt(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;Up(i,e);e=dr(i,99700)|0;er(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];Vt(a,g+24|0,b,i,f,e);hc=h;return c[b>>2]|0}function Ht(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;Up(i,e);e=dr(i,99700)|0;er(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];Wt(a,g+16|0,b,i,f,e);hc=h;return c[b>>2]|0}function It(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;Up(i,e);e=dr(i,99700)|0;er(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];gu(a,g+20|0,b,i,f,e);hc=h;return c[b>>2]|0}function Jt(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,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;R=hc;N=hc=hc+31&-32;hc=hc+144|0;k=N+128|0;j=N+112|0;P=N+124|0;Q=N+120|0;l=N+116|0;m=N+108|0;n=N+104|0;o=N+100|0;p=N+96|0;q=N+92|0;r=N+88|0;s=N+84|0;t=N+80|0;u=N+76|0;v=N+72|0;w=N+68|0;x=N+64|0;y=N+60|0;z=N+56|0;A=N+52|0;B=N+48|0;C=N+44|0;D=N+40|0;E=N+36|0;F=N+32|0;G=N+28|0;H=N+24|0;I=N+20|0;J=N+16|0;K=N+12|0;L=N+8|0;M=N+4|0;c[g>>2]=0;Up(k,f);O=dr(k,99700)|0;er(k);do switch(i<<24>>24|0){case 65:case 97:{c[P>>2]=c[e>>2];c[k>>2]=c[P>>2];Vt(b,h+24|0,d,k,g,O);S=26;break}case 104:case 66:case 98:{c[Q>>2]=c[e>>2];c[k>>2]=c[Q>>2];Wt(b,h+16|0,d,k,g,O);S=26;break}case 99:{Q=b+8|0;Q=kc[c[(c[Q>>2]|0)+12>>2]&127](Q)|0;c[l>>2]=c[d>>2];c[m>>2]=c[e>>2];S=a[Q+8+3>>0]|0;e=S<<24>>24<0;i=e?c[Q>>2]|0:Q;S=i+((e?c[Q+4>>2]|0:S&255)<<2)|0;c[j>>2]=c[l>>2];c[k>>2]=c[m>>2];c[d>>2]=Xt(b,j,k,f,g,h,i,S)|0;S=26;break}case 101:case 100:{c[n>>2]=c[e>>2];c[k>>2]=c[n>>2];Yt(b,h+12|0,d,k,g,O);S=26;break}case 68:{c[o>>2]=c[d>>2];c[p>>2]=c[e>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2];c[d>>2]=Xt(b,j,k,f,g,h,9008,9040)|0;S=26;break}case 70:{c[q>>2]=c[d>>2];c[r>>2]=c[e>>2];c[j>>2]=c[q>>2];c[k>>2]=c[r>>2];c[d>>2]=Xt(b,j,k,f,g,h,9040,9072)|0;S=26;break}case 72:{c[s>>2]=c[e>>2];c[k>>2]=c[s>>2];Zt(b,h+8|0,d,k,g,O);S=26;break}case 73:{c[t>>2]=c[e>>2];c[k>>2]=c[t>>2];_t(b,h+8|0,d,k,g,O);S=26;break}case 106:{c[u>>2]=c[e>>2];c[k>>2]=c[u>>2];$t(b,h+28|0,d,k,g,O);S=26;break}case 109:{c[v>>2]=c[e>>2];c[k>>2]=c[v>>2];au(b,h+16|0,d,k,g,O);S=26;break}case 77:{c[w>>2]=c[e>>2];c[k>>2]=c[w>>2];bu(b,h+4|0,d,k,g,O);S=26;break}case 116:case 110:{c[x>>2]=c[e>>2];c[k>>2]=c[x>>2];cu(b,d,k,g,O);S=26;break}case 112:{c[y>>2]=c[e>>2];c[k>>2]=c[y>>2];du(b,h+8|0,d,k,g,O);S=26;break}case 114:{c[z>>2]=c[d>>2];c[A>>2]=c[e>>2];c[j>>2]=c[z>>2];c[k>>2]=c[A>>2];c[d>>2]=Xt(b,j,k,f,g,h,9072,9116)|0;S=26;break}case 82:{c[B>>2]=c[d>>2];c[C>>2]=c[e>>2];c[j>>2]=c[B>>2];c[k>>2]=c[C>>2];c[d>>2]=Xt(b,j,k,f,g,h,9120,9140)|0;S=26;break}case 83:{c[D>>2]=c[e>>2];c[k>>2]=c[D>>2];eu(b,h,d,k,g,O);S=26;break}case 84:{c[E>>2]=c[d>>2];c[F>>2]=c[e>>2];c[j>>2]=c[E>>2];c[k>>2]=c[F>>2];c[d>>2]=Xt(b,j,k,f,g,h,9152,9184)|0;S=26;break}case 119:{c[G>>2]=c[e>>2];c[k>>2]=c[G>>2];fu(b,h+24|0,d,k,g,O);S=26;break}case 120:{i=c[(c[b>>2]|0)+20>>2]|0;c[H>>2]=c[d>>2];c[I>>2]=c[e>>2];c[j>>2]=c[H>>2];c[k>>2]=c[I>>2];j=sc[i&63](b,j,k,f,g,h)|0;break}case 88:{Q=b+8|0;Q=kc[c[(c[Q>>2]|0)+24>>2]&127](Q)|0;c[J>>2]=c[d>>2];c[K>>2]=c[e>>2];S=a[Q+8+3>>0]|0;e=S<<24>>24<0;i=e?c[Q>>2]|0:Q;S=i+((e?c[Q+4>>2]|0:S&255)<<2)|0;c[j>>2]=c[J>>2];c[k>>2]=c[K>>2];c[d>>2]=Xt(b,j,k,f,g,h,i,S)|0;S=26;break}case 121:{c[L>>2]=c[e>>2];c[k>>2]=c[L>>2];gu(b,h+20|0,d,k,g,O);S=26;break}case 89:{c[M>>2]=c[e>>2];c[k>>2]=c[M>>2];hu(b,h+20|0,d,k,g,O);S=26;break}case 37:{c[N>>2]=c[e>>2];c[k>>2]=c[N>>2];iu(b,d,k,g,O);S=26;break}default:{c[g>>2]=c[g>>2]|4;S=26}}while(0);if((S|0)==26)j=c[d>>2]|0;hc=R;return j|0}function Kt(b){b=b|0;if((a[97448]|0)==0?RA(97448)|0:0){Ut();c[24966]=97056}return c[24966]|0}function Lt(b){b=b|0;if((a[97432]|0)==0?RA(97432)|0:0){Tt();c[24965]=96768}return c[24965]|0}function Mt(b){b=b|0;if((a[97416]|0)==0?RA(97416)|0:0){St();c[24964]=96480}return c[24964]|0}function Nt(b){b=b|0;if((a[97408]|0)==0?RA(97408)|0:0){c[24961]=0;c[24962]=0;c[24963]=0;Mz(99844,49852,Rt(49852)|0)}return 99844}function Ot(b){b=b|0;if((a[97400]|0)==0?RA(97400)|0:0){c[24958]=0;c[24959]=0;c[24960]=0;Mz(99832,49804,Rt(49804)|0)}return 99832}function Pt(b){b=b|0;if((a[97392]|0)==0?RA(97392)|0:0){c[24955]=0;c[24956]=0;c[24957]=0;Mz(99820,49768,Rt(49768)|0)}return 99820}function Qt(b){b=b|0;if((a[97384]|0)==0?RA(97384)|0:0){c[24952]=0;c[24953]=0;c[24954]=0;Mz(99808,49732,Rt(49732)|0)}return 99808}function Rt(a){a=a|0;return _m(a)|0}function St(){var b=0,d=0;if((a[97424]|0)==0?RA(97424)|0:0){d=96480;do{c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[d+(b<<2)>>2]=0;b=b+1|0}d=d+12|0}while((d|0)!=96768)}Uz(96480,49936)|0;Uz(96492,49948)|0;return}function Tt(){var b=0,d=0;if((a[97440]|0)==0?RA(97440)|0:0){d=96768;do{c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[d+(b<<2)>>2]=0;b=b+1|0}d=d+12|0}while((d|0)!=97056)}Uz(96768,49960)|0;Uz(96780,49992)|0;Uz(96792,50028)|0;Uz(96804,50052)|0;Uz(96816,50076)|0;Uz(96828,50092)|0;Uz(96840,50112)|0;Uz(96852,50132)|0;Uz(96864,50160)|0;Uz(96876,50200)|0;Uz(96888,50232)|0;Uz(96900,50268)|0;Uz(96912,50304)|0;Uz(96924,50320)|0;Uz(96936,50336)|0;Uz(96948,50352)|0;Uz(96960,50076)|0;Uz(96972,50368)|0;Uz(96984,50384)|0;Uz(96996,50400)|0;Uz(97008,50416)|0;Uz(97020,50432)|0;Uz(97032,50448)|0;Uz(97044,50464)|0;return}function Ut(){var b=0,d=0;if((a[97456]|0)==0?RA(97456)|0:0){d=97056;do{c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[d+(b<<2)>>2]=0;b=b+1|0}d=d+12|0}while((d|0)!=97224)}Uz(97056,50480)|0;Uz(97068,50508)|0;Uz(97080,50536)|0;Uz(97092,50568)|0;Uz(97104,50608)|0;Uz(97116,50644)|0;Uz(97128,50672)|0;Uz(97140,50708)|0;Uz(97152,50724)|0;Uz(97164,50740)|0;Uz(97176,50756)|0;Uz(97188,50772)|0;Uz(97200,50788)|0;Uz(97212,50804)|0;return}function Vt(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;a=a+8|0;a=kc[c[c[a>>2]>>2]&127](a)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];a=(os(d,i,a,a+168|0,g,f,0)|0)-a|0;if((a|0)<168)c[b>>2]=((a|0)/12|0|0)%7|0;hc=h;return}function Wt(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=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;a=a+8|0;a=kc[c[(c[a>>2]|0)+4>>2]&127](a)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];a=(os(d,i,a,a+288|0,g,f,0)|0)-a|0;if((a|0)<288)c[b>>2]=((a|0)/12|0|0)%12|0;hc=h;return}function Xt(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;v=hc;t=hc=hc+31&-32;hc=hc+16|0;q=t+12|0;p=t+8|0;s=t+4|0;Up(q,e);r=dr(q,99700)|0;er(q);c[f>>2]=0;k=0;a:while(1){j=c[b>>2]|0;if(!((h|0)!=(i|0)&(k|0)==0))break;l=j;if(j){k=c[j+12>>2]|0;if((k|0)==(c[j+16>>2]|0))k=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else k=up(c[k>>2]|0)|0;if(Vp(k,tp()|0)|0){c[b>>2]=0;j=0;m=1;o=0}else{m=0;o=l}}else{j=0;m=1;o=l}n=c[d>>2]|0;k=n;do if(n){l=c[n+12>>2]|0;if((l|0)==(c[n+16>>2]|0))l=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else l=up(c[l>>2]|0)|0;if(!(Vp(l,tp()|0)|0))if(m)break;else{u=60;break a}else{c[d>>2]=0;k=0;u=15;break}}else u=15;while(0);if((u|0)==15){u=0;if(m){u=60;break}else n=0}b:do if((nc[c[(c[r>>2]|0)+52>>2]&31](r,c[h>>2]|0,0)|0)<<24>>24==37){n=h+4|0;if((n|0)==(i|0)){u=60;break a}l=nc[c[(c[r>>2]|0)+52>>2]&31](r,c[n>>2]|0,0)|0;switch(l<<24>>24){case 48:case 69:{h=h+8|0;if((h|0)==(i|0)){u=60;break a}m=l;j=nc[c[(c[r>>2]|0)+52>>2]&31](r,c[h>>2]|0,0)|0;h=n;break}default:{m=0;j=l}}n=c[(c[a>>2]|0)+36>>2]|0;c[s>>2]=o;c[t>>2]=k;c[p>>2]=c[s>>2];c[q>>2]=c[t>>2];c[b>>2]=uc[n&15](a,p,q,e,f,g,j,m)|0;h=h+8|0}else{if(!(nc[c[(c[r>>2]|0)+12>>2]&31](r,8192,c[h>>2]|0)|0)){l=j+12|0;k=c[l>>2]|0;m=j+16|0;if((k|0)==(c[m>>2]|0))k=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else k=up(c[k>>2]|0)|0;o=mc[c[(c[r>>2]|0)+28>>2]&31](r,k)|0;if((o|0)!=(mc[c[(c[r>>2]|0)+28>>2]&31](r,c[h>>2]|0)|0)){c[f>>2]=4;break}k=c[l>>2]|0;if((k|0)==(c[m>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[l>>2]=k+4;up(c[k>>2]|0)|0}h=h+4|0;break}do{h=h+4|0;if((h|0)==(i|0)){h=i;break}}while(nc[c[(c[r>>2]|0)+12>>2]&31](r,8192,c[h>>2]|0)|0);while(1){if(j){k=c[j+12>>2]|0;if((k|0)==(c[j+16>>2]|0))k=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else k=up(c[k>>2]|0)|0;if(Vp(k,tp()|0)|0){c[b>>2]=0;j=0;l=1}else l=0}else{j=0;l=1}do if(n){k=c[n+12>>2]|0;if((k|0)==(c[n+16>>2]|0))k=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else k=up(c[k>>2]|0)|0;if(!(Vp(k,tp()|0)|0))if(l)break;else break b;else{c[d>>2]=0;u=40;break}}else u=40;while(0);if((u|0)==40){u=0;if(l)break b;else n=0}l=j+12|0;k=c[l>>2]|0;m=j+16|0;if((k|0)==(c[m>>2]|0))k=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else k=up(c[k>>2]|0)|0;if(!(nc[c[(c[r>>2]|0)+12>>2]&31](r,8192,k)|0))break b;k=c[l>>2]|0;if((k|0)==(c[m>>2]|0))kc[c[(c[j>>2]|0)+40>>2]&127](j)|0;else{c[l>>2]=k+4;up(c[k>>2]|0)|0}}}while(0);k=c[f>>2]|0}if((u|0)==60)c[f>>2]=4;if(j){h=c[j+12>>2]|0;if((h|0)==(c[j+16>>2]|0))h=kc[c[(c[j>>2]|0)+36>>2]&127](j)|0;else h=up(c[h>>2]|0)|0;if(Vp(h,tp()|0)|0){c[b>>2]=0;j=0;l=1}else l=0}else{j=0;l=1}h=c[d>>2]|0;do if(h){k=c[h+12>>2]|0;if((k|0)==(c[h+16>>2]|0))h=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=up(c[k>>2]|0)|0;if(!(Vp(h,tp()|0)|0))if(l)break;else{u=75;break}else{c[d>>2]=0;u=73;break}}else u=73;while(0);if((u|0)==73?l:0)u=75;if((u|0)==75)c[f>>2]=c[f>>2]|2;hc=v;return j|0}function Yt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<31&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function Zt(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<24&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function _t(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,2)|0;d=c[f>>2]|0;if((a+-1|0)>>>0<12&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function $t(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,3)|0;d=c[f>>2]|0;if((a|0)<366&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function au(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<13&(d&4|0)==0)c[b>>2]=a+-1;else c[f>>2]=d|4;hc=h;return}function bu(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<60&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function cu(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;a:while(1){a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=kc[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=up(c[g>>2]|0)|0;if(Vp(a,tp()|0)|0){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1;while(0);g=c[d>>2]|0;do if(g){a=c[g+12>>2]|0;if((a|0)==(c[g+16>>2]|0))a=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else a=up(c[a>>2]|0)|0;if(!(Vp(a,tp()|0)|0))if(h){h=g;break}else{h=g;break a}else{c[d>>2]=0;i=15;break}}else i=15;while(0);if((i|0)==15){i=0;if(h){h=0;break}else h=0}a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=kc[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=up(c[g>>2]|0)|0;if(!(nc[c[(c[f>>2]|0)+12>>2]&31](f,8192,a)|0))break;a=c[b>>2]|0;g=a+12|0;h=c[g>>2]|0;if((h|0)==(c[a+16>>2]|0))kc[c[(c[a>>2]|0)+40>>2]&127](a)|0;else{c[g>>2]=h+4;up(c[h>>2]|0)|0}}a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=kc[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=up(c[g>>2]|0)|0;if(Vp(a,tp()|0)|0){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){a=c[h+12>>2]|0;if((a|0)==(c[h+16>>2]|0))a=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else a=up(c[a>>2]|0)|0;if(!(Vp(a,tp()|0)|0))if(g)break;else{i=40;break}else{c[d>>2]=0;i=38;break}}else i=38;while(0);if((i|0)==38?g:0)i=40;if((i|0)==40)c[e>>2]=c[e>>2]|2;return}function du(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;m=hc;l=hc=hc+31&-32;hc=hc+16|0;k=l+4|0;j=b+8|0;j=kc[c[(c[j>>2]|0)+8>>2]&127](j)|0;b=a[j+8+3>>0]|0;if(b<<24>>24<0)i=c[j+4>>2]|0;else i=b&255;b=a[j+20+3>>0]|0;if(b<<24>>24<0)b=c[j+16>>2]|0;else b=b&255;do if((i|0)!=(0-b|0)){c[l>>2]=c[f>>2];c[k>>2]=c[l>>2];b=(os(e,k,j,j+24|0,h,g,0)|0)-j|0;i=c[d>>2]|0;if((i|0)==12&(b|0)==0){c[d>>2]=0;break}if((i|0)<12&(b|0)==12)c[d>>2]=i+12}else c[g>>2]=c[g>>2]|4;while(0);hc=m;return}function eu(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,2)|0;d=c[f>>2]|0;if((a|0)<61&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function fu(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,1)|0;d=c[f>>2]|0;if((a|0)<7&(d&4|0)==0)c[b>>2]=a;else c[f>>2]=d|4;hc=h;return}function gu(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,4)|0;if(!(c[f>>2]&4)){if((a|0)<69)a=a+2e3|0;else a=(a|0)<100?a+1900|0:a;c[b>>2]=a+-1900}hc=h;return}
function hu(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;h=hc;i=hc=hc+31&-32;hc=hc+16|0;a=i+4|0;c[i>>2]=c[e>>2];c[a>>2]=c[i>>2];a=ju(d,a,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=a+-1900;hc=h;return}function iu(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;a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=kc[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=up(c[g>>2]|0)|0;if(Vp(a,tp()|0)|0){c[b>>2]=0;h=1;break}else{h=(c[b>>2]|0)==0;break}}else h=1;while(0);g=c[d>>2]|0;do if(g){a=c[g+12>>2]|0;if((a|0)==(c[g+16>>2]|0))a=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else a=up(c[a>>2]|0)|0;if(!(Vp(a,tp()|0)|0))if(h){i=g;j=17;break}else{j=16;break}else{c[d>>2]=0;j=14;break}}else j=14;while(0);if((j|0)==14)if(h)j=16;else{i=0;j=17}a:do if((j|0)==16)c[e>>2]=c[e>>2]|6;else if((j|0)==17){a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=kc[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=up(c[g>>2]|0)|0;if((nc[c[(c[f>>2]|0)+52>>2]&31](f,a,0)|0)<<24>>24!=37){c[e>>2]=c[e>>2]|4;break}a=c[b>>2]|0;g=a+12|0;h=c[g>>2]|0;if((h|0)==(c[a+16>>2]|0))kc[c[(c[a>>2]|0)+40>>2]&127](a)|0;else{c[g>>2]=h+4;up(c[h>>2]|0)|0}a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))a=kc[c[(c[a>>2]|0)+36>>2]&127](a)|0;else a=up(c[g>>2]|0)|0;if(Vp(a,tp()|0)|0){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(i){a=c[i+12>>2]|0;if((a|0)==(c[i+16>>2]|0))a=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else a=up(c[a>>2]|0)|0;if(!(Vp(a,tp()|0)|0))if(g)break a;else break;else{c[d>>2]=0;j=38;break}}else j=38;while(0);if((j|0)==38?!g:0)break;c[e>>2]=c[e>>2]|2}while(0);return}function ju(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;g=c[a>>2]|0;do if(g){h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0))g=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else g=up(c[h>>2]|0)|0;if(Vp(g,tp()|0)|0){c[a>>2]=0;i=1;break}else{i=(c[a>>2]|0)==0;break}}else i=1;while(0);h=c[b>>2]|0;do if(h){g=c[h+12>>2]|0;if((g|0)==(c[h+16>>2]|0))g=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else g=up(c[g>>2]|0)|0;if(!(Vp(g,tp()|0)|0))if(i){n=17;break}else{n=16;break}else{c[b>>2]=0;n=14;break}}else n=14;while(0);if((n|0)==14)if(i)n=16;else{h=0;n=17}a:do if((n|0)==16){c[d>>2]=c[d>>2]|6;g=0}else if((n|0)==17){g=c[a>>2]|0;i=c[g+12>>2]|0;if((i|0)==(c[g+16>>2]|0))g=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else g=up(c[i>>2]|0)|0;if(!(nc[c[(c[e>>2]|0)+12>>2]&31](e,2048,g)|0)){c[d>>2]=c[d>>2]|4;g=0;break}g=(nc[c[(c[e>>2]|0)+52>>2]&31](e,g,0)|0)<<24>>24;i=c[a>>2]|0;j=i+12|0;k=c[j>>2]|0;if((k|0)==(c[i+16>>2]|0))kc[c[(c[i>>2]|0)+40>>2]&127](i)|0;else{c[j>>2]=k+4;up(c[k>>2]|0)|0}l=h;k=h;while(1){g=g+-48|0;m=f+-1|0;h=c[a>>2]|0;do if(h){i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0))h=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else h=up(c[i>>2]|0)|0;if(Vp(h,tp()|0)|0){c[a>>2]=0;j=1;break}else{j=(c[a>>2]|0)==0;break}}else j=1;while(0);if(k){h=c[k+12>>2]|0;if((h|0)==(c[k+16>>2]|0))h=kc[c[(c[k>>2]|0)+36>>2]&127](k)|0;else h=up(c[h>>2]|0)|0;if(Vp(h,tp()|0)|0){c[b>>2]=0;h=1;l=0;k=0}else h=0}else{h=1;k=0}i=c[a>>2]|0;if(!((f|0)>1&(j^h)))break;h=c[i+12>>2]|0;if((h|0)==(c[i+16>>2]|0))h=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else h=up(c[h>>2]|0)|0;if(!(nc[c[(c[e>>2]|0)+12>>2]&31](e,2048,h)|0))break a;g=(g*10|0)+((nc[c[(c[e>>2]|0)+52>>2]&31](e,h,0)|0)<<24>>24)|0;h=c[a>>2]|0;i=h+12|0;j=c[i>>2]|0;if((j|0)==(c[h+16>>2]|0))kc[c[(c[h>>2]|0)+40>>2]&127](h)|0;else{c[i>>2]=j+4;up(c[j>>2]|0)|0}f=m}do if(i){h=c[i+12>>2]|0;if((h|0)==(c[i+16>>2]|0))h=kc[c[(c[i>>2]|0)+36>>2]&127](i)|0;else h=up(c[h>>2]|0)|0;if(Vp(h,tp()|0)|0){c[a>>2]=0;i=1;break}else{i=(c[a>>2]|0)==0;break}}else i=1;while(0);do if(l){h=c[l+12>>2]|0;if((h|0)==(c[l+16>>2]|0))h=kc[c[(c[l>>2]|0)+36>>2]&127](l)|0;else h=up(c[h>>2]|0)|0;if(!(Vp(h,tp()|0)|0))if(i)break a;else break;else{c[b>>2]=0;n=61;break}}else n=61;while(0);if((n|0)==61?!i:0)break;c[d>>2]=c[d>>2]|2}while(0);return g|0}function ku(a){a=a|0;pu(a+8|0);Kq(a);return}function lu(a){a=a|0;pu(a+8|0);Kq(a);nz(a);return}function mu(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=hc;f=hc=hc+31&-32;hc=hc+112|0;e=f;f=f+100|0;c[f>>2]=e+100;nu(b+8|0,e,f,g,h,i);i=c[f>>2]|0;h=e;e=c[d>>2]|0;while(1){if((h|0)==(i|0))break;f=a[h>>0]|0;if(!e)e=0;else{b=e+24|0;g=c[b>>2]|0;if((g|0)==(c[e+28>>2]|0)){d=c[(c[e>>2]|0)+52>>2]|0;f=cp(f)|0;f=mc[d&31](e,f)|0}else{c[b>>2]=g+1;a[g>>0]=f;f=cp(f)|0}d=Tp(f,bp()|0)|0;e=d?0:e}h=h+1|0}hc=j;return e|0}function nu(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;l=hc;i=hc=hc+31&-32;hc=hc+16|0;a[i>>0]=37;j=i+1|0;a[j>>0]=g;k=i+2|0;a[k>>0]=h;a[i+3>>0]=0;if(h<<24>>24){a[j>>0]=h;a[k>>0]=g}k=ou(d,c[e>>2]|0)|0;c[e>>2]=d+(hb(d|0,k|0,i|0,f|0,c[b>>2]|0)|0);hc=l;return}function ou(a,b){a=a|0;b=b|0;return b-a|0}function pu(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)!=(gr()|0))xn(c[a>>2]|0);return}function qu(a){a=a|0;pu(a+8|0);Kq(a);return}function ru(a){a=a|0;pu(a+8|0);Kq(a);nz(a);return}function su(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;i=hc;e=hc=hc+31&-32;hc=hc+416|0;d=e;e=e+400|0;c[e>>2]=d+400;tu(a+8|0,d,e,f,g,h);h=c[e>>2]|0;g=d;d=c[b>>2]|0;while(1){if((g|0)==(h|0))break;e=c[g>>2]|0;if(!d)d=0;else{a=d+24|0;f=c[a>>2]|0;if((f|0)==(c[d+28>>2]|0)){b=c[(c[d>>2]|0)+52>>2]|0;e=up(e)|0;e=mc[b&31](d,e)|0}else{c[a>>2]=f+4;c[f>>2]=e;e=up(e)|0}b=Vp(e,tp()|0)|0;d=b?0:d}g=g+4|0}hc=i;return d|0}function tu(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,k=0,l=0;h=hc;j=hc=hc+31&-32;hc=hc+128|0;k=j;l=j+116|0;i=j+104|0;j=j+112|0;c[l>>2]=k+100;nu(a,k,l,e,f,g);e=i;c[e>>2]=0;c[e+4>>2]=0;c[j>>2]=k;e=uu(b,c[d>>2]|0)|0;a=Gn(c[a>>2]|0)|0;e=bo(b,j,e,i)|0;if(a|0)Gn(a)|0;if((e|0)==-1)vu(0);else{c[d>>2]=b+(e<<2);hc=h;return}}function uu(a,b){a=a|0;b=b|0;return b-a>>2|0}function vu(a){a=a|0;Pa()}function wu(a){a=a|0;Kq(a);return}function xu(a){a=a|0;Kq(a);nz(a);return}function yu(a){a=a|0;return 127}function zu(a){a=a|0;return 127}function Au(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Bu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Cu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Du(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;xz(a,1,45);return}function Eu(a){a=a|0;return 0}function Fu(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Gu(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Hu(a){a=a|0;Kq(a);return}function Iu(a){a=a|0;Kq(a);nz(a);return}function Ju(a){a=a|0;return 127}function Ku(a){a=a|0;return 127}function Lu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Mu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Nu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Ou(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;xz(a,1,45);return}function Pu(a){a=a|0;return 0}function Qu(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Ru(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Su(a){a=a|0;Kq(a);return}function Tu(a){a=a|0;Kq(a);nz(a);return}function Uu(a){a=a|0;return 2147483647}function Vu(a){a=a|0;return 2147483647}function Wu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Xu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Yu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Zu(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Nz(a,1,45);return}function _u(a){a=a|0;return 0}function $u(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function av(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function bv(a){a=a|0;Kq(a);return}function cv(a){a=a|0;Kq(a);nz(a);return}function dv(a){a=a|0;return 2147483647}function ev(a){a=a|0;return 2147483647}function fv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function gv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function hv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function iv(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Nz(a,1,45);return}function jv(a){a=a|0;return 0}function kv(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function lv(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function mv(a){a=a|0;Kq(a);return}function nv(a){a=a|0;Kq(a);nz(a);return}function ov(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=hc;o=hc=hc+31&-32;hc=hc+256|0;n=o+240|0;q=o+216|0;m=o+112|0;u=o+232|0;p=o+228|0;s=o+224|0;j=o+250|0;w=o+220|0;c[u>>2]=m;c[u+4>>2]=139;Up(s,g);b=dr(s,99668)|0;a[j>>0]=0;c[w>>2]=c[e>>2];l=c[g+4>>2]|0;c[n>>2]=c[w>>2];if(rv(d,n,f,s,l,h,j,b,u,p,m+100|0)|0){oc[c[(c[b>>2]|0)+32>>2]&7](b,75489,75499,n)|0;l=c[p>>2]|0;f=c[u>>2]|0;b=l-f|0;if((b|0)>98){b=uo(b+2|0)|0;if(!b)kz();else{k=b;r=b}}else{k=o;r=0}if(!(a[j>>0]|0))b=k;else{a[k>>0]=45;b=k+1|0}k=n+10|0;m=n;j=f;g=b;b=l;while(1){if(j>>>0>=b>>>0)break;f=a[j>>0]|0;b=n;while(1){if((b|0)==(k|0)){b=k;break}if((a[b>>0]|0)==f<<24>>24)break;b=b+1|0}a[g>>0]=a[75489+(b-m)>>0]|0;j=j+1|0;g=g+1|0;b=c[p>>2]|0}a[g>>0]=0;c[q>>2]=i;if((Sn(o,75500,q)|0)!=1)vu(0);if(r|0)vo(r)}b=c[d>>2]|0;do if(b){f=c[b+12>>2]|0;if((f|0)==(c[b+16>>2]|0))b=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;else b=cp(a[f>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;g=1;break}else{g=(c[d>>2]|0)==0;break}}else g=1;while(0);b=c[e>>2]|0;do if(b){f=c[b+12>>2]|0;if((f|0)==(c[b+16>>2]|0))b=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;else b=cp(a[f>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(g)break;else{t=34;break}else{c[e>>2]=0;t=32;break}}else t=32;while(0);if((t|0)==32?g:0)t=34;if((t|0)==34)c[h>>2]=c[h>>2]|2;f=c[d>>2]|0;er(s);b=c[u>>2]|0;c[u>>2]=0;if(b|0)wc[c[u+4>>2]&255](b);hc=v;return f|0}function pv(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=hc;n=hc=hc+31&-32;hc=hc+128|0;j=n+120|0;b=n;r=n+112|0;m=n+108|0;p=n+100|0;k=n+124|0;n=n+104|0;c[r>>2]=b;c[r+4>>2]=139;Up(p,g);l=dr(p,99668)|0;a[k>>0]=0;o=c[e>>2]|0;c[n>>2]=o;g=c[g+4>>2]|0;c[j>>2]=c[n>>2];n=o;if(rv(d,j,f,p,g,h,k,l,r,m,b+100|0)|0){b=i+11|0;if((a[b>>0]|0)<0){f=c[i>>2]|0;a[j>>0]=0;Jq(f,j);c[i+4>>2]=0}else{a[j>>0]=0;Jq(i,j);a[b>>0]=0}if(a[k>>0]|0)Lz(i,mc[c[(c[l>>2]|0)+28>>2]&31](l,45)|0);k=mc[c[(c[l>>2]|0)+28>>2]&31](l,48)|0;g=c[m>>2]|0;j=g+-1|0;b=c[r>>2]|0;while(1){if(b>>>0>=j>>>0)break;if((a[b>>0]|0)!=k<<24>>24)break;b=b+1|0}sv(i,b,g)|0}b=c[d>>2]|0;do if(b){g=c[b+12>>2]|0;if((g|0)==(c[b+16>>2]|0))b=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;else b=cp(a[g>>0]|0)|0;if(Tp(b,bp()|0)|0){c[d>>2]=0;g=1;break}else{g=(c[d>>2]|0)==0;break}}else g=1;while(0);do if(o){b=c[n+12>>2]|0;if((b|0)==(c[n+16>>2]|0))b=kc[c[(c[o>>2]|0)+36>>2]&127](n)|0;else b=cp(a[b>>0]|0)|0;if(!(Tp(b,bp()|0)|0))if(g)break;else{q=27;break}else{c[e>>2]=0;q=25;break}}else q=25;while(0);if((q|0)==25?g:0)q=27;if((q|0)==27)c[h>>2]=c[h>>2]|2;g=c[d>>2]|0;er(p);b=c[r>>2]|0;c[r>>2]=0;if(b|0)wc[c[r+4>>2]&255](b);hc=s;return g|0}function qv(a){a=a|0;return}function rv(e,f,g,h,i,j,k,l,m,n,o){e=e|0;f=f|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,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;Y=hc;R=hc=hc+31&-32;hc=hc+512|0;I=R+488|0;O=R;X=R+480|0;Q=R+472|0;J=R+468|0;K=R+496|0;L=R+493|0;M=R+492|0;S=R+456|0;T=R+444|0;U=R+432|0;V=R+420|0;W=R+408|0;N=R+404|0;R=R+400|0;c[I>>2]=o;c[X>>2]=O;c[X+4>>2]=139;c[Q>>2]=O;c[J>>2]=O+400;c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;o=0;while(1){if((o|0)==3)break;c[S+(o<<2)>>2]=0;o=o+1|0}c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;o=0;while(1){if((o|0)==3)break;c[T+(o<<2)>>2]=0;o=o+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;o=0;while(1){if((o|0)==3)break;c[U+(o<<2)>>2]=0;o=o+1|0}c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=0;o=0;while(1){if((o|0)==3)break;c[V+(o<<2)>>2]=0;o=o+1|0}c[W>>2]=0;c[W+4>>2]=0;c[W+8>>2]=0;o=0;while(1){if((o|0)==3)break;c[W+(o<<2)>>2]=0;o=o+1|0}vv(g,h,K,L,M,S,T,U,V,N);c[n>>2]=c[m>>2];B=l+8|0;C=U+11|0;D=U+4|0;E=V+11|0;F=V+4|0;G=S+11|0;H=S+4|0;v=(i&512|0)!=0;w=T+11|0;x=K+3|0;y=T+4|0;z=W+11|0;A=W+4|0;O=0;u=0;a:while(1){if(u>>>0>=4){P=243;break}o=c[e>>2]|0;do if(o){g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if(Tp(o,bp()|0)|0){c[e>>2]=0;h=1;break}else{h=(c[e>>2]|0)==0;break}}else h=1;while(0);g=c[f>>2]|0;do if(g){o=c[g+12>>2]|0;if((o|0)==(c[g+16>>2]|0))o=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else o=cp(a[o>>0]|0)|0;if(!(Tp(o,bp()|0)|0))if(h){t=g;break}else{P=243;break a}else{c[f>>2]=0;P=31;break}}else P=31;while(0);if((P|0)==31){P=0;if(h){P=243;break}else t=0}b:do switch(a[K+u>>0]|0){case 1:{if((u|0)==3)o=O;else{o=c[e>>2]|0;g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if((o&255)<<24>>24<=-1){P=45;break a}if(!(b[(c[B>>2]|0)+(o<<24>>24<<1)>>1]&8192)){P=45;break a}o=c[e>>2]|0;g=o+12|0;h=c[g>>2]|0;if((h|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+40>>2]&127](o)|0;else{c[g>>2]=h+1;o=cp(a[h>>0]|0)|0}Lz(W,o&255);P=47}break}case 0:{if((u|0)==3)o=O;else P=47;break}case 3:{o=a[C>>0]|0;o=o<<24>>24<0?c[D>>2]|0:o&255;l=a[E>>0]|0;l=l<<24>>24<0?c[F>>2]|0:l&255;if((o|0)==(0-l|0))o=O;else{i=(o|0)==0;o=c[e>>2]|0;g=c[o+12>>2]|0;h=(g|0)==(c[o+16>>2]|0);if(i|(l|0)==0){if(h)o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;o=o&255;if(i){if((a[((a[E>>0]|0)<0?c[V>>2]|0:V)>>0]|0)!=o<<24>>24){o=O;break b}o=c[e>>2]|0;g=o+12|0;h=c[g>>2]|0;if((h|0)==(c[o+16>>2]|0))kc[c[(c[o>>2]|0)+40>>2]&127](o)|0;else{c[g>>2]=h+1;cp(a[h>>0]|0)|0}a[k>>0]=1;o=a[E>>0]|0;o=(o<<24>>24<0?c[F>>2]|0:o&255)>>>0>1?V:O;break b}if((a[((a[C>>0]|0)<0?c[U>>2]|0:U)>>0]|0)!=o<<24>>24){a[k>>0]=1;o=O;break b}o=c[e>>2]|0;g=o+12|0;h=c[g>>2]|0;if((h|0)==(c[o+16>>2]|0))kc[c[(c[o>>2]|0)+40>>2]&127](o)|0;else{c[g>>2]=h+1;cp(a[h>>0]|0)|0}o=a[C>>0]|0;o=(o<<24>>24<0?c[D>>2]|0:o&255)>>>0>1?U:O;break b}if(h)o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;g=c[e>>2]|0;h=g+12|0;l=c[h>>2]|0;i=(l|0)==(c[g+16>>2]|0);if((a[((a[C>>0]|0)<0?c[U>>2]|0:U)>>0]|0)==(o&255)<<24>>24){if(i)kc[c[(c[g>>2]|0)+40>>2]&127](g)|0;else{c[h>>2]=l+1;cp(a[l>>0]|0)|0}o=a[C>>0]|0;o=(o<<24>>24<0?c[D>>2]|0:o&255)>>>0>1?U:O;break b}if(i)o=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else o=cp(a[l>>0]|0)|0;if((a[((a[E>>0]|0)<0?c[V>>2]|0:V)>>0]|0)!=(o&255)<<24>>24){P=105;break a}o=c[e>>2]|0;g=o+12|0;h=c[g>>2]|0;if((h|0)==(c[o+16>>2]|0))kc[c[(c[o>>2]|0)+40>>2]&127](o)|0;else{c[g>>2]=h+1;cp(a[h>>0]|0)|0}a[k>>0]=1;o=a[E>>0]|0;o=(o<<24>>24<0?c[F>>2]|0:o&255)>>>0>1?V:O}break}case 2:{if(u>>>0<2|(O|0)!=0){o=a[w>>0]|0;h=o<<24>>24<0;g=c[T>>2]|0;l=h?g:T;i=l;if(!u)h=i;else{s=i;P=110}}else{if(!(v|(u|0)==2&(a[x>>0]|0)!=0)){o=0;break b}o=a[w>>0]|0;h=o<<24>>24<0;g=c[T>>2]|0;s=h?g:T;l=s;P=110}c:do if((P|0)==110){P=0;if((d[K+(u+-1)>>0]|0)<2){i=l+(h?c[y>>2]|0:o&255)|0;h=s;while(1){p=h;if((i|0)==(p|0))break;q=a[p>>0]|0;if(q<<24>>24<=-1)break;if(!(b[(c[B>>2]|0)+(q<<24>>24<<1)>>1]&8192))break;h=p+1|0}q=h-s|0;p=a[z>>0]|0;r=p<<24>>24<0;i=c[A>>2]|0;p=p&255;if(q>>>0<=(r?i:p)>>>0){Z=(c[W>>2]|0)+i|0;i=W+p|0;p=r?Z:i;i=r?Z+(0-q)|0:i+(0-q)|0;while(1){if((i|0)==(p|0))break c;if((a[i>>0]|0)!=(a[l>>0]|0)){h=s;break c}l=l+1|0;i=i+1|0}}else h=s}else h=s}while(0);i=h;h=t;d:while(1){Z=o<<24>>24<0;if((i|0)==((Z?g:T)+(Z?c[y>>2]|0:o&255)|0))break;o=c[e>>2]|0;do if(o){g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if(Tp(o,bp()|0)|0){c[e>>2]=0;g=1;break}else{g=(c[e>>2]|0)==0;break}}else g=1;while(0);do if(h){o=c[h+12>>2]|0;if((o|0)==(c[h+16>>2]|0))o=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else o=cp(a[o>>0]|0)|0;if(!(Tp(o,bp()|0)|0))if(g){l=h;break}else break d;else{c[f>>2]=0;P=136;break}}else P=136;while(0);if((P|0)==136){P=0;if(g)break;else l=0}o=c[e>>2]|0;g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if((a[i>>0]|0)!=(o&255)<<24>>24)break;o=c[e>>2]|0;g=o+12|0;h=c[g>>2]|0;if((h|0)==(c[o+16>>2]|0))kc[c[(c[o>>2]|0)+40>>2]&127](o)|0;else{c[g>>2]=h+1;cp(a[h>>0]|0)|0}i=i+1|0;o=a[w>>0]|0;g=c[T>>2]|0;h=l}if(v?(Z=a[w>>0]|0,t=Z<<24>>24<0,(i|0)!=((t?c[T>>2]|0:T)+(t?c[y>>2]|0:Z&255)|0)):0){P=148;break a}else o=O;break}case 4:{i=0;l=t;o=t;e:while(1){g=c[e>>2]|0;do if(g){h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0))g=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else g=cp(a[h>>0]|0)|0;if(Tp(g,bp()|0)|0){c[e>>2]=0;h=1;break}else{h=(c[e>>2]|0)==0;break}}else h=1;while(0);do if(l){g=c[l+12>>2]|0;if((g|0)==(c[l+16>>2]|0))g=kc[c[(c[l>>2]|0)+36>>2]&127](l)|0;else g=cp(a[g>>0]|0)|0;if(!(Tp(g,bp()|0)|0))if(h){p=l;break}else{l=o;break e}else{c[f>>2]=0;o=0;P=162;break}}else P=162;while(0);if((P|0)==162){P=0;if(h){l=o;break}else p=0}g=c[e>>2]|0;h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0))g=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else g=cp(a[h>>0]|0)|0;h=g&255;if(h<<24>>24>-1?(b[(c[B>>2]|0)+(g<<24>>24<<1)>>1]&2048)!=0:0){g=c[n>>2]|0;if((g|0)==(c[I>>2]|0)){wv(m,n,I);g=c[n>>2]|0}c[n>>2]=g+1;a[g>>0]=h;g=i+1|0}else{Z=a[G>>0]|0;if(!((a[M>>0]|0)==h<<24>>24&(i|0?((Z<<24>>24<0?c[H>>2]|0:Z&255)|0)!=0:0))){l=o;break}g=c[Q>>2]|0;if((g|0)==(c[J>>2]|0)){xv(X,Q,J);g=c[Q>>2]|0}c[Q>>2]=g+4;c[g>>2]=i;g=0}h=c[e>>2]|0;l=h+12|0;i=c[l>>2]|0;if((i|0)==(c[h+16>>2]|0))kc[c[(c[h>>2]|0)+40>>2]&127](h)|0;else{c[l>>2]=i+1;cp(a[i>>0]|0)|0}i=g;l=p}o=c[Q>>2]|0;if(i|0?(c[X>>2]|0)!=(o|0):0){if((o|0)==(c[J>>2]|0)){xv(X,Q,J);o=c[Q>>2]|0}c[Q>>2]=o+4;c[o>>2]=i}f:do if((c[N>>2]|0)>0){o=c[e>>2]|0;do if(o){g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if(Tp(o,bp()|0)|0){c[e>>2]=0;g=1;break}else{g=(c[e>>2]|0)==0;break}}else g=1;while(0);do if(l){o=c[l+12>>2]|0;if((o|0)==(c[l+16>>2]|0))o=kc[c[(c[l>>2]|0)+36>>2]&127](l)|0;else o=cp(a[o>>0]|0)|0;if(!(Tp(o,bp()|0)|0))if(g)break;else{P=204;break a}else{c[f>>2]=0;P=198;break}}else P=198;while(0);if((P|0)==198){P=0;if(g){P=204;break a}else l=0}o=c[e>>2]|0;g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if((a[L>>0]|0)!=(o&255)<<24>>24){P=204;break a}o=c[e>>2]|0;g=o+12|0;h=c[g>>2]|0;if((h|0)==(c[o+16>>2]|0))kc[c[(c[o>>2]|0)+40>>2]&127](o)|0;else{c[g>>2]=h+1;cp(a[h>>0]|0)|0}h=l;while(1){if((c[N>>2]|0)<=0)break f;o=c[e>>2]|0;do if(o){g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if(Tp(o,bp()|0)|0){c[e>>2]=0;g=1;break}else{g=(c[e>>2]|0)==0;break}}else g=1;while(0);do if(h){o=c[h+12>>2]|0;if((o|0)==(c[h+16>>2]|0))o=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else o=cp(a[o>>0]|0)|0;if(!(Tp(o,bp()|0)|0))if(g){l=h;break}else{P=230;break a}else{c[f>>2]=0;P=223;break}}else P=223;while(0);if((P|0)==223){P=0;if(g){P=230;break a}else l=0}o=c[e>>2]|0;g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if((o&255)<<24>>24<=-1){P=230;break a}if(!(b[(c[B>>2]|0)+(o<<24>>24<<1)>>1]&2048)){P=230;break a}if((c[n>>2]|0)==(c[I>>2]|0))wv(m,n,I);o=c[e>>2]|0;g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;g=c[n>>2]|0;c[n>>2]=g+1;a[g>>0]=o;c[N>>2]=(c[N>>2]|0)+-1;o=c[e>>2]|0;g=o+12|0;h=c[g>>2]|0;if((h|0)==(c[o+16>>2]|0))kc[c[(c[o>>2]|0)+40>>2]&127](o)|0;else{c[g>>2]=h+1;cp(a[h>>0]|0)|0}h=l}}while(0);if((c[n>>2]|0)==(c[m>>2]|0)){P=241;break a}else o=O;break}default:o=O}while(0);g:do if((P|0)==47){P=0;h=t;while(1){o=c[e>>2]|0;do if(o){g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if(Tp(o,bp()|0)|0){c[e>>2]=0;g=1;break}else{g=(c[e>>2]|0)==0;break}}else g=1;while(0);do if(h){o=c[h+12>>2]|0;if((o|0)==(c[h+16>>2]|0))o=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else o=cp(a[o>>0]|0)|0;if(!(Tp(o,bp()|0)|0))if(g){l=h;break}else{o=O;break g}else{c[f>>2]=0;P=61;break}}else P=61;while(0);if((P|0)==61){P=0;if(g){o=O;break g}else l=0}o=c[e>>2]|0;g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if((o&255)<<24>>24<=-1){o=O;break g}if(!(b[(c[B>>2]|0)+(o<<24>>24<<1)>>1]&8192)){o=O;break g}o=c[e>>2]|0;g=o+12|0;h=c[g>>2]|0;if((h|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+40>>2]&127](o)|0;else{c[g>>2]=h+1;o=cp(a[h>>0]|0)|0}Lz(W,o&255);h=l}}while(0);O=o;u=u+1|0}h:do if((P|0)==45){c[j>>2]=c[j>>2]|4;g=0}else if((P|0)==105){c[j>>2]=c[j>>2]|4;g=0}else if((P|0)==148){c[j>>2]=c[j>>2]|4;g=0}else if((P|0)==204){c[j>>2]=c[j>>2]|4;g=0}else if((P|0)==230){c[j>>2]=c[j>>2]|4;g=0}else if((P|0)==241){c[j>>2]=c[j>>2]|4;g=0}else if((P|0)==243){i:do if(O|0){i=O+11|0;p=O+4|0;l=1;j:while(1){o=a[i>>0]|0;if(o<<24>>24<0)o=c[p>>2]|0;else o=o&255;if(l>>>0>=o>>>0)break i;o=c[e>>2]|0;do if(o){g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if(Tp(o,bp()|0)|0){c[e>>2]=0;h=1;break}else{h=(c[e>>2]|0)==0;break}}else h=1;while(0);o=c[f>>2]|0;do if(o){g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if(!(Tp(o,bp()|0)|0))if(h)break;else break j;else{c[f>>2]=0;P=262;break}}else P=262;while(0);if((P|0)==262?(P=0,h):0)break;o=c[e>>2]|0;g=c[o+12>>2]|0;if((g|0)==(c[o+16>>2]|0))o=kc[c[(c[o>>2]|0)+36>>2]&127](o)|0;else o=cp(a[g>>0]|0)|0;if((a[i>>0]|0)<0)g=c[O>>2]|0;else g=O;if((a[g+l>>0]|0)!=(o&255)<<24>>24)break;o=c[e>>2]|0;g=o+12|0;h=c[g>>2]|0;if((h|0)==(c[o+16>>2]|0))kc[c[(c[o>>2]|0)+40>>2]&127](o)|0;else{c[g>>2]=h+1;cp(a[h>>0]|0)|0}l=l+1|0}c[j>>2]=c[j>>2]|4;g=0;break h}while(0);g=c[X>>2]|0;o=c[Q>>2]|0;if((g|0)!=(o|0)){c[R>>2]=0;sr(S,g,o,R);if(!(c[R>>2]|0)){g=1;break}else{c[j>>2]=c[j>>2]|4;g=0;break}}else g=1}while(0);Az(W);Az(V);Az(U);Az(T);Az(S);o=c[X>>2]|0;c[X>>2]=0;if(o|0)wc[c[X+4>>2]&255](o);hc=Y;return g|0}function sv(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;o=hc;m=hc=hc+31&-32;hc=hc+16|0;j=d;n=b+11|0;h=a[n>>0]|0;f=h<<24>>24<0;if(f){i=(c[b+8>>2]&2147483647)+-1|0;l=c[b+4>>2]|0}else{i=10;l=h&255}k=e-j|0;do if(k|0){if(f){g=c[b>>2]|0;f=c[b+4>>2]|0}else{g=b;f=h&255}if(tv(d,g,g+f|0)|0){c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;uv(m,d,e);n=a[m+11>>0]|0;l=n<<24>>24<0;Kz(b,l?c[m>>2]|0:m,l?c[m+4>>2]|0:n&255)|0;Az(m);break}if((i-l|0)>>>0<k>>>0)Iz(b,i,l+k-i|0,l,l,0,0);if((a[n>>0]|0)<0)h=c[b>>2]|0;else h=b;g=e+(l-j)|0;f=h+l|0;while(1){if((d|0)==(e|0))break;Jq(f,d);f=f+1|0;d=d+1|0}a[m>>0]=0;Jq(h+g|0,m);d=l+k|0;if((a[n>>0]|0)<0){c[b+4>>2]=d;break}else{a[n>>0]=d;break}}while(0);hc=o;return b|0}function tv(a,b,c){a=a|0;b=b|0;c=c|0;return b>>>0<=a>>>0&a>>>0<c>>>0|0}function uv(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;j=hc;i=hc=hc+31&-32;hc=hc+16|0;g=d;f=e-g|0;if(f>>>0>4294967279)tz(b);if(f>>>0<11){a[b+11>>0]=f;h=b}else{k=f+16&-16;h=lz(k)|0;c[b>>2]=h;c[b+8>>2]=k|-2147483648;c[b+4>>2]=f}f=e-g|0;b=h;while(1){if((d|0)==(e|0))break;Jq(b,d);d=d+1|0;b=b+1|0}a[i>>0]=0;Jq(h+f|0,i);hc=j;return}function vv(b,d,e,f,g,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;o=hc;n=hc=hc+31&-32;hc=hc+16|0;m=n+12|0;if(b){d=dr(d,99900)|0;xc[c[(c[d>>2]|0)+44>>2]&63](m,d);b=c[m>>2]|0;a[e>>0]=b;a[e+1>>0]=b>>8;a[e+2>>0]=b>>16;a[e+3>>0]=b>>24;xc[c[(c[d>>2]|0)+32>>2]&63](n,d);b=k+11|0;if((a[b>>0]|0)<0){b=c[k>>2]|0;a[m>>0]=0;Jq(b,m);c[k+4>>2]=0;b=k}else{a[m>>0]=0;Jq(k,m);a[b>>0]=0;b=k}Ez(k,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);xc[c[(c[d>>2]|0)+28>>2]&63](n,d);b=j+11|0;if((a[b>>0]|0)<0){b=c[j>>2]|0;a[m>>0]=0;Jq(b,m);c[j+4>>2]=0;b=j}else{a[m>>0]=0;Jq(j,m);a[b>>0]=0;b=j}Ez(j,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);a[f>>0]=kc[c[(c[d>>2]|0)+12>>2]&127](d)|0;a[g>>0]=kc[c[(c[d>>2]|0)+16>>2]&127](d)|0;xc[c[(c[d>>2]|0)+20>>2]&63](n,d);b=h+11|0;if((a[b>>0]|0)<0){b=c[h>>2]|0;a[m>>0]=0;Jq(b,m);c[h+4>>2]=0;b=h}else{a[m>>0]=0;Jq(h,m);a[b>>0]=0;b=h}Ez(h,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);xc[c[(c[d>>2]|0)+24>>2]&63](n,d);b=i+11|0;if((a[b>>0]|0)<0){b=c[i>>2]|0;a[m>>0]=0;Jq(b,m);c[i+4>>2]=0;b=i}else{a[m>>0]=0;Jq(i,m);a[b>>0]=0;b=i}Ez(i,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);b=kc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{d=dr(d,99892)|0;xc[c[(c[d>>2]|0)+44>>2]&63](m,d);b=c[m>>2]|0;a[e>>0]=b;a[e+1>>0]=b>>8;a[e+2>>0]=b>>16;a[e+3>>0]=b>>24;xc[c[(c[d>>2]|0)+32>>2]&63](n,d);b=k+11|0;if((a[b>>0]|0)<0){b=c[k>>2]|0;a[m>>0]=0;Jq(b,m);c[k+4>>2]=0;b=k}else{a[m>>0]=0;Jq(k,m);a[b>>0]=0;b=k}Ez(k,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);xc[c[(c[d>>2]|0)+28>>2]&63](n,d);b=j+11|0;if((a[b>>0]|0)<0){b=c[j>>2]|0;a[m>>0]=0;Jq(b,m);c[j+4>>2]=0;b=j}else{a[m>>0]=0;Jq(j,m);a[b>>0]=0;b=j}Ez(j,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);a[f>>0]=kc[c[(c[d>>2]|0)+12>>2]&127](d)|0;a[g>>0]=kc[c[(c[d>>2]|0)+16>>2]&127](d)|0;xc[c[(c[d>>2]|0)+20>>2]&63](n,d);b=h+11|0;if((a[b>>0]|0)<0){b=c[h>>2]|0;a[m>>0]=0;Jq(b,m);c[h+4>>2]=0;b=h}else{a[m>>0]=0;Jq(h,m);a[b>>0]=0;b=h}Ez(h,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);xc[c[(c[d>>2]|0)+24>>2]&63](n,d);b=i+11|0;if((a[b>>0]|0)<0){b=c[i>>2]|0;a[m>>0]=0;Jq(b,m);c[i+4>>2]=0;b=i}else{a[m>>0]=0;Jq(i,m);a[b>>0]=0;b=i}Ez(i,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);b=kc[c[(c[d>>2]|0)+36>>2]&127](d)|0}c[l>>2]=b;hc=o;return}function wv(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;i=a+4|0;f=(c[i>>2]|0)!=139;e=c[a>>2]|0;h=e;j=(c[d>>2]|0)-h|0;g=j<<1;g=j>>>0<2147483647?((g|0)==0?1:g):-1;h=(c[b>>2]|0)-h|0;e=xo(f?e:0,g)|0;if(!e)kz();if(!f){f=c[a>>2]|0;c[a>>2]=e;if(f){wc[c[i>>2]&255](f);e=c[a>>2]|0}}else c[a>>2]=e;c[i>>2]=140;c[b>>2]=e+h;c[d>>2]=(c[a>>2]|0)+g;return}function xv(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;i=a+4|0;f=(c[i>>2]|0)!=139;e=c[a>>2]|0;h=e;j=(c[d>>2]|0)-h|0;g=j<<1;g=j>>>0<2147483647?((g|0)==0?4:g):-1;h=(c[b>>2]|0)-h>>2;e=xo(f?e:0,g)|0;if(!e)kz();if(!f){f=c[a>>2]|0;c[a>>2]=e;if(f){wc[c[i>>2]&255](f);e=c[a>>2]|0}}else c[a>>2]=e;c[i>>2]=140;c[b>>2]=e+(h<<2);c[d>>2]=(c[a>>2]|0)+(g>>>2<<2);return}function yv(a){a=a|0;Kq(a);return}function zv(a){a=a|0;Kq(a);nz(a);return}function Av(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=hc;o=hc=hc+31&-32;hc=hc+592|0;n=o+512|0;q=o+552|0;m=o+112|0;u=o+568|0;p=o+564|0;s=o+560|0;j=o+576|0;w=o+556|0;c[u>>2]=m;c[u+4>>2]=139;Up(s,g);b=dr(s,99700)|0;a[j>>0]=0;c[w>>2]=c[e>>2];l=c[g+4>>2]|0;c[n>>2]=c[w>>2];if(Cv(d,n,f,s,l,h,j,b,u,p,m+400|0)|0){oc[c[(c[b>>2]|0)+48>>2]&7](b,75599,75609,n)|0;l=c[p>>2]|0;f=c[u>>2]|0;b=l-f|0;if((b|0)>392){b=uo((b>>>2)+2|0)|0;if(!b)kz();else{k=b;r=b}}else{k=o;r=0}if(!(a[j>>0]|0))b=k;else{a[k>>0]=45;b=k+1|0}k=n+40|0;m=n;j=f;g=b;b=l;while(1){if(j>>>0>=b>>>0)break;f=c[j>>2]|0;b=n;while(1){if((b|0)==(k|0)){b=k;break}if((c[b>>2]|0)==(f|0))break;b=b+4|0}a[g>>0]=a[75599+(b-m>>2)>>0]|0;j=j+4|0;g=g+1|0;b=c[p>>2]|0}a[g>>0]=0;c[q>>2]=i;if((Sn(o,75500,q)|0)!=1)vu(0);if(r|0)vo(r)}b=c[d>>2]|0;do if(b){f=c[b+12>>2]|0;if((f|0)==(c[b+16>>2]|0))b=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;else b=up(c[f>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;g=1;break}else{g=(c[d>>2]|0)==0;break}}else g=1;while(0);b=c[e>>2]|0;do if(b){f=c[b+12>>2]|0;if((f|0)==(c[b+16>>2]|0))b=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;else b=up(c[f>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(g)break;else{t=34;break}else{c[e>>2]=0;t=32;break}}else t=32;while(0);if((t|0)==32?g:0)t=34;if((t|0)==34)c[h>>2]=c[h>>2]|2;f=c[d>>2]|0;er(s);b=c[u>>2]|0;c[u>>2]=0;if(b|0)wc[c[u+4>>2]&255](b);hc=v;return f|0}function Bv(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=hc;n=hc=hc+31&-32;hc=hc+432|0;j=n+424|0;b=n;r=n+416|0;m=n+408|0;p=n+400|0;k=n+428|0;n=n+404|0;c[r>>2]=b;c[r+4>>2]=139;Up(p,g);l=dr(p,99700)|0;a[k>>0]=0;o=c[e>>2]|0;c[n>>2]=o;g=c[g+4>>2]|0;c[j>>2]=c[n>>2];n=o;if(Cv(d,j,f,p,g,h,k,l,r,m,b+400|0)|0){b=i+8+3|0;if((a[b>>0]|0)<0){f=c[i>>2]|0;c[j>>2]=0;Rq(f,j);c[i+4>>2]=0}else{c[j>>2]=0;Rq(i,j);a[b>>0]=0}if(a[k>>0]|0)Xz(i,mc[c[(c[l>>2]|0)+44>>2]&31](l,45)|0);k=mc[c[(c[l>>2]|0)+44>>2]&31](l,48)|0;g=c[m>>2]|0;j=g+-4|0;b=c[r>>2]|0;while(1){if(b>>>0>=j>>>0)break;if((c[b>>2]|0)!=(k|0))break;b=b+4|0}Dv(i,b,g)|0}b=c[d>>2]|0;do if(b){g=c[b+12>>2]|0;if((g|0)==(c[b+16>>2]|0))b=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;else b=up(c[g>>2]|0)|0;if(Vp(b,tp()|0)|0){c[d>>2]=0;g=1;break}else{g=(c[d>>2]|0)==0;break}}else g=1;while(0);do if(o){b=c[n+12>>2]|0;if((b|0)==(c[n+16>>2]|0))b=kc[c[(c[o>>2]|0)+36>>2]&127](n)|0;else b=up(c[b>>2]|0)|0;if(!(Vp(b,tp()|0)|0))if(g)break;else{q=27;break}else{c[e>>2]=0;q=25;break}}else q=25;while(0);if((q|0)==25?g:0)q=27;if((q|0)==27)c[h>>2]=c[h>>2]|2;g=c[d>>2]|0;er(p);b=c[r>>2]|0;c[r>>2]=0;if(b|0)wc[c[r+4>>2]&255](b);hc=s;return g|0}function Cv(b,e,f,g,h,i,j,k,l,m,n){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;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;X=hc;Q=hc=hc+31&-32;hc=hc+512|0;H=Q+496|0;N=Q;W=Q+488|0;P=Q+480|0;I=Q+476|0;J=Q+500|0;K=Q+472|0;L=Q+468|0;R=Q+456|0;S=Q+444|0;T=Q+432|0;U=Q+420|0;V=Q+408|0;M=Q+404|0;Q=Q+400|0;c[H>>2]=n;c[W>>2]=N;c[W+4>>2]=139;c[P>>2]=N;c[I>>2]=N+400;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[R+(n<<2)>>2]=0;n=n+1|0}c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[S+(n<<2)>>2]=0;n=n+1|0}c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[T+(n<<2)>>2]=0;n=n+1|0}c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[U+(n<<2)>>2]=0;n=n+1|0}c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[V+(n<<2)>>2]=0;n=n+1|0}Gv(f,g,J,K,L,R,S,T,U,M);c[m>>2]=c[l>>2];B=T+8+3|0;C=T+4|0;D=U+8+3|0;E=U+4|0;F=R+11|0;G=R+4|0;v=(h&512|0)!=0;w=S+8+3|0;x=J+3|0;y=S+4|0;z=V+8+3|0;A=V+4|0;N=0;u=0;a:while(1){if(u>>>0>=4){O=239;break}n=c[b>>2]|0;do if(n){f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(Vp(n,tp()|0)|0){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);f=c[e>>2]|0;do if(f){n=c[f+12>>2]|0;if((n|0)==(c[f+16>>2]|0))n=kc[c[(c[f>>2]|0)+36>>2]&127](f)|0;else n=up(c[n>>2]|0)|0;if(!(Vp(n,tp()|0)|0))if(g){t=f;break}else{O=239;break a}else{c[e>>2]=0;O=31;break}}else O=31;while(0);if((O|0)==31){O=0;if(g){O=239;break}else t=0}b:do switch(a[J+u>>0]|0){case 1:{if((u|0)==3)n=N;else{n=c[b>>2]|0;f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(!(nc[c[(c[k>>2]|0)+12>>2]&31](k,8192,n)|0)){O=44;break a}n=c[b>>2]|0;f=n+12|0;g=c[f>>2]|0;if((g|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+40>>2]&127](n)|0;else{c[f>>2]=g+4;n=up(c[g>>2]|0)|0}Xz(V,n);O=46}break}case 0:{if((u|0)==3)n=N;else O=46;break}case 3:{n=a[B>>0]|0;n=n<<24>>24<0?c[C>>2]|0:n&255;h=a[D>>0]|0;h=h<<24>>24<0?c[E>>2]|0:h&255;if((n|0)==(0-h|0))n=N;else{o=(n|0)==0;n=c[b>>2]|0;f=c[n+12>>2]|0;g=(f|0)==(c[n+16>>2]|0);if(o|(h|0)==0){if(g)n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(o){if((n|0)!=(c[((a[D>>0]|0)<0?c[U>>2]|0:U)>>2]|0)){n=N;break b}n=c[b>>2]|0;f=n+12|0;g=c[f>>2]|0;if((g|0)==(c[n+16>>2]|0))kc[c[(c[n>>2]|0)+40>>2]&127](n)|0;else{c[f>>2]=g+4;up(c[g>>2]|0)|0}a[j>>0]=1;n=a[D>>0]|0;n=(n<<24>>24<0?c[E>>2]|0:n&255)>>>0>1?U:N;break b}if((n|0)!=(c[((a[B>>0]|0)<0?c[T>>2]|0:T)>>2]|0)){a[j>>0]=1;n=N;break b}n=c[b>>2]|0;f=n+12|0;g=c[f>>2]|0;if((g|0)==(c[n+16>>2]|0))kc[c[(c[n>>2]|0)+40>>2]&127](n)|0;else{c[f>>2]=g+4;up(c[g>>2]|0)|0}n=a[B>>0]|0;n=(n<<24>>24<0?c[C>>2]|0:n&255)>>>0>1?T:N;break b}if(g)n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;f=c[b>>2]|0;g=f+12|0;h=c[g>>2]|0;o=(h|0)==(c[f+16>>2]|0);if((n|0)==(c[((a[B>>0]|0)<0?c[T>>2]|0:T)>>2]|0)){if(o)kc[c[(c[f>>2]|0)+40>>2]&127](f)|0;else{c[g>>2]=h+4;up(c[h>>2]|0)|0}n=a[B>>0]|0;n=(n<<24>>24<0?c[C>>2]|0:n&255)>>>0>1?T:N;break b}if(o)n=kc[c[(c[f>>2]|0)+36>>2]&127](f)|0;else n=up(c[h>>2]|0)|0;if((n|0)!=(c[((a[D>>0]|0)<0?c[U>>2]|0:U)>>2]|0)){O=103;break a}n=c[b>>2]|0;f=n+12|0;g=c[f>>2]|0;if((g|0)==(c[n+16>>2]|0))kc[c[(c[n>>2]|0)+40>>2]&127](n)|0;else{c[f>>2]=g+4;up(c[g>>2]|0)|0}a[j>>0]=1;n=a[D>>0]|0;n=(n<<24>>24<0?c[E>>2]|0:n&255)>>>0>1?U:N}break}case 2:{if(u>>>0<2|(N|0)!=0){f=a[w>>0]|0;g=c[S>>2]|0;n=f<<24>>24<0?g:S;if(u)O=108}else{if(!(v|(u|0)==2&(a[x>>0]|0)!=0)){n=0;break b}f=a[w>>0]|0;g=c[S>>2]|0;n=f<<24>>24<0?g:S;O=108}c:do if((O|0)==108){O=0;if((d[J+(u+-1)>>0]|0)<2){h=f;while(1){s=h<<24>>24<0;f=n;if(((s?g:S)+((s?c[y>>2]|0:h&255)<<2)|0)==(f|0)){f=h;break}if(!(nc[c[(c[k>>2]|0)+12>>2]&31](k,8192,c[f>>2]|0)|0)){O=112;break}n=f+4|0;h=a[w>>0]|0;g=c[S>>2]|0}if((O|0)==112){O=0;f=a[w>>0]|0;g=c[S>>2]|0}o=f<<24>>24<0?g:S;s=o;q=n-s>>2;p=a[z>>0]|0;r=p<<24>>24<0;h=c[A>>2]|0;p=p&255;if(q>>>0>(r?h:p)>>>0)n=s;else{Y=(c[V>>2]|0)+(h<<2)|0;h=V+(p<<2)|0;p=r?Y:h;h=(r?Y:h)+(0-q<<2)|0;while(1){if((h|0)==(p|0))break c;if((c[h>>2]|0)!=(c[o>>2]|0)){n=s;break c}o=o+4|0;h=h+4|0}}}}while(0);o=n;h=t;d:while(1){Y=f<<24>>24<0;if((o|0)==((Y?g:S)+((Y?c[y>>2]|0:f&255)<<2)|0))break;n=c[b>>2]|0;do if(n){f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(Vp(n,tp()|0)|0){c[b>>2]=0;f=1;break}else{f=(c[b>>2]|0)==0;break}}else f=1;while(0);do if(h){n=c[h+12>>2]|0;if((n|0)==(c[h+16>>2]|0))n=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else n=up(c[n>>2]|0)|0;if(!(Vp(n,tp()|0)|0))if(f)break;else break d;else{c[e>>2]=0;O=134;break}}else O=134;while(0);if((O|0)==134){O=0;if(f)break;else h=0}n=c[b>>2]|0;f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if((n|0)!=(c[o>>2]|0))break;n=c[b>>2]|0;f=n+12|0;g=c[f>>2]|0;if((g|0)==(c[n+16>>2]|0))kc[c[(c[n>>2]|0)+40>>2]&127](n)|0;else{c[f>>2]=g+4;up(c[g>>2]|0)|0}o=o+4|0;f=a[w>>0]|0;g=c[S>>2]|0}if(v?(Y=a[w>>0]|0,t=Y<<24>>24<0,(o|0)!=((t?c[S>>2]|0:S)+((t?c[y>>2]|0:Y&255)<<2)|0)):0){O=146;break a}else n=N;break}case 4:{o=0;h=t;n=t;e:while(1){f=c[b>>2]|0;do if(f){g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0))f=kc[c[(c[f>>2]|0)+36>>2]&127](f)|0;else f=up(c[g>>2]|0)|0;if(Vp(f,tp()|0)|0){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);do if(h){f=c[h+12>>2]|0;if((f|0)==(c[h+16>>2]|0))f=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else f=up(c[f>>2]|0)|0;if(!(Vp(f,tp()|0)|0))if(g){p=h;break}else{h=n;break e}else{c[e>>2]=0;n=0;O=160;break}}else O=160;while(0);if((O|0)==160){O=0;if(g){h=n;break}else p=0}f=c[b>>2]|0;g=c[f+12>>2]|0;if((g|0)==(c[f+16>>2]|0))g=kc[c[(c[f>>2]|0)+36>>2]&127](f)|0;else g=up(c[g>>2]|0)|0;if(nc[c[(c[k>>2]|0)+12>>2]&31](k,2048,g)|0){f=c[m>>2]|0;if((f|0)==(c[H>>2]|0)){Hv(l,m,H);f=c[m>>2]|0}c[m>>2]=f+4;c[f>>2]=g;f=o+1|0}else{Y=a[F>>0]|0;if(!((g|0)==(c[L>>2]|0)&(o|0?((Y<<24>>24<0?c[G>>2]|0:Y&255)|0)!=0:0))){h=n;break}f=c[P>>2]|0;if((f|0)==(c[I>>2]|0)){xv(W,P,I);f=c[P>>2]|0}c[P>>2]=f+4;c[f>>2]=o;f=0}g=c[b>>2]|0;h=g+12|0;o=c[h>>2]|0;if((o|0)==(c[g+16>>2]|0))kc[c[(c[g>>2]|0)+40>>2]&127](g)|0;else{c[h>>2]=o+4;up(c[o>>2]|0)|0}o=f;h=p}n=c[P>>2]|0;if(o|0?(c[W>>2]|0)!=(n|0):0){if((n|0)==(c[I>>2]|0)){xv(W,P,I);n=c[P>>2]|0}c[P>>2]=n+4;c[n>>2]=o}f:do if((c[M>>2]|0)>0){n=c[b>>2]|0;do if(n){f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(Vp(n,tp()|0)|0){c[b>>2]=0;f=1;break}else{f=(c[b>>2]|0)==0;break}}else f=1;while(0);do if(h){n=c[h+12>>2]|0;if((n|0)==(c[h+16>>2]|0))n=kc[c[(c[h>>2]|0)+36>>2]&127](h)|0;else n=up(c[n>>2]|0)|0;if(!(Vp(n,tp()|0)|0))if(f)break;else{O=201;break a}else{c[e>>2]=0;O=195;break}}else O=195;while(0);if((O|0)==195){O=0;if(f){O=201;break a}else h=0}n=c[b>>2]|0;f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if((n|0)!=(c[K>>2]|0)){O=201;break a}n=c[b>>2]|0;f=n+12|0;g=c[f>>2]|0;if((g|0)==(c[n+16>>2]|0))kc[c[(c[n>>2]|0)+40>>2]&127](n)|0;else{c[f>>2]=g+4;up(c[g>>2]|0)|0}g=h;while(1){if((c[M>>2]|0)<=0)break f;n=c[b>>2]|0;do if(n){f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(Vp(n,tp()|0)|0){c[b>>2]=0;f=1;break}else{f=(c[b>>2]|0)==0;break}}else f=1;while(0);do if(g){n=c[g+12>>2]|0;if((n|0)==(c[g+16>>2]|0))n=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else n=up(c[n>>2]|0)|0;if(!(Vp(n,tp()|0)|0))if(f){h=g;break}else{O=226;break a}else{c[e>>2]=0;O=220;break}}else O=220;while(0);if((O|0)==220){O=0;if(f){O=226;break a}else h=0}n=c[b>>2]|0;f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(!(nc[c[(c[k>>2]|0)+12>>2]&31](k,2048,n)|0)){O=226;break a}if((c[m>>2]|0)==(c[H>>2]|0))Hv(l,m,H);n=c[b>>2]|0;f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;f=c[m>>2]|0;c[m>>2]=f+4;c[f>>2]=n;c[M>>2]=(c[M>>2]|0)+-1;n=c[b>>2]|0;f=n+12|0;g=c[f>>2]|0;if((g|0)==(c[n+16>>2]|0))kc[c[(c[n>>2]|0)+40>>2]&127](n)|0;else{c[f>>2]=g+4;up(c[g>>2]|0)|0}g=h}}while(0);if((c[m>>2]|0)==(c[l>>2]|0)){O=237;break a}else n=N;break}default:n=N}while(0);g:do if((O|0)==46){O=0;g=t;while(1){n=c[b>>2]|0;do if(n){f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(Vp(n,tp()|0)|0){c[b>>2]=0;f=1;break}else{f=(c[b>>2]|0)==0;break}}else f=1;while(0);do if(g){n=c[g+12>>2]|0;if((n|0)==(c[g+16>>2]|0))n=kc[c[(c[g>>2]|0)+36>>2]&127](g)|0;else n=up(c[n>>2]|0)|0;if(!(Vp(n,tp()|0)|0))if(f){h=g;break}else{n=N;break g}else{c[e>>2]=0;O=60;break}}else O=60;while(0);if((O|0)==60){O=0;if(f){n=N;break g}else h=0}n=c[b>>2]|0;f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(!(nc[c[(c[k>>2]|0)+12>>2]&31](k,8192,n)|0)){n=N;break g}n=c[b>>2]|0;f=n+12|0;g=c[f>>2]|0;if((g|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+40>>2]&127](n)|0;else{c[f>>2]=g+4;n=up(c[g>>2]|0)|0}Xz(V,n);g=h}}while(0);N=n;u=u+1|0}h:do if((O|0)==44){c[i>>2]=c[i>>2]|4;f=0}else if((O|0)==103){c[i>>2]=c[i>>2]|4;f=0}else if((O|0)==146){c[i>>2]=c[i>>2]|4;f=0}else if((O|0)==201){c[i>>2]=c[i>>2]|4;f=0}else if((O|0)==226){c[i>>2]=c[i>>2]|4;f=0}else if((O|0)==237){c[i>>2]=c[i>>2]|4;f=0}else if((O|0)==239){i:do if(N|0){o=N+8+3|0;p=N+4|0;h=1;j:while(1){n=a[o>>0]|0;if(n<<24>>24<0)n=c[p>>2]|0;else n=n&255;if(h>>>0>=n>>>0)break i;n=c[b>>2]|0;do if(n){f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(Vp(n,tp()|0)|0){c[b>>2]=0;g=1;break}else{g=(c[b>>2]|0)==0;break}}else g=1;while(0);n=c[e>>2]|0;do if(n){f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if(!(Vp(n,tp()|0)|0))if(g)break;else break j;else{c[e>>2]=0;O=258;break}}else O=258;while(0);if((O|0)==258?(O=0,g):0)break;n=c[b>>2]|0;f=c[n+12>>2]|0;if((f|0)==(c[n+16>>2]|0))n=kc[c[(c[n>>2]|0)+36>>2]&127](n)|0;else n=up(c[f>>2]|0)|0;if((a[o>>0]|0)<0)f=c[N>>2]|0;else f=N;if((n|0)!=(c[f+(h<<2)>>2]|0))break;n=c[b>>2]|0;f=n+12|0;g=c[f>>2]|0;if((g|0)==(c[n+16>>2]|0))kc[c[(c[n>>2]|0)+40>>2]&127](n)|0;else{c[f>>2]=g+4;up(c[g>>2]|0)|0}h=h+1|0}c[i>>2]=c[i>>2]|4;f=0;break h}while(0);f=c[W>>2]|0;n=c[P>>2]|0;if((f|0)!=(n|0)){c[Q>>2]=0;sr(R,f,n,Q);if(!(c[Q>>2]|0)){f=1;break}else{c[i>>2]=c[i>>2]|4;f=0;break}}else f=1}while(0);Pz(V);Pz(U);Pz(T);Pz(S);Az(R);n=c[W>>2]|0;c[W>>2]=0;if(n|0)wc[c[W+4>>2]&255](n);hc=X;return f|0}function Dv(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;n=hc;l=hc=hc+31&-32;hc=hc+16|0;f=b+8|0;m=f+3|0;i=a[m>>0]|0;g=i<<24>>24<0;if(g){h=(c[f>>2]&2147483647)+-1|0;k=c[b+4>>2]|0}else{h=1;k=i&255}f=e-d|0;j=f>>2;do if(f|0){if(g){g=c[b>>2]|0;f=c[b+4>>2]|0}else{g=b;f=i&255}if(Ev(d,g,g+(f<<2)|0)|0){c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;Fv(l,d,e);m=a[l+8+3>>0]|0;e=m<<24>>24<0;Wz(b,e?c[l>>2]|0:l,e?c[l+4>>2]|0:m&255)|0;Pz(l);break}if((h-k|0)>>>0<j>>>0)Vz(b,h,k+j-h|0,k,k,0,0);if((a[m>>0]|0)<0)f=c[b>>2]|0;else f=b;f=f+(k<<2)|0;while(1){if((d|0)==(e|0))break;Rq(f,d);f=f+4|0;d=d+4|0}c[l>>2]=0;Rq(f,l);d=k+j|0;if((a[m>>0]|0)<0){c[b+4>>2]=d;break}else{a[m>>0]=d;break}}while(0);hc=n;return b|0}function Ev(a,b,c){a=a|0;b=b|0;c=c|0;return b>>>0<=a>>>0&a>>>0<c>>>0|0}function Fv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=hc;i=hc=hc+31&-32;hc=hc+16|0;h=e-d>>2;if(h>>>0>1073741807)tz(b);do if(h>>>0>=2){g=h+4&-4;if(g>>>0>1073741823)Pa();else{f=lz(g<<2)|0;c[b>>2]=f;c[b+8>>2]=g|-2147483648;c[b+4>>2]=h;break}}else{a[b+8+3>>0]=h;f=b}while(0);while(1){if((d|0)==(e|0))break;Rq(f,d);d=d+4|0;f=f+4|0}c[i>>2]=0;Rq(f,i);hc=j;return}function Gv(b,d,e,f,g,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;o=hc;n=hc=hc+31&-32;hc=hc+16|0;m=n+12|0;if(b){d=dr(d,99916)|0;xc[c[(c[d>>2]|0)+44>>2]&63](m,d);b=c[m>>2]|0;a[e>>0]=b;a[e+1>>0]=b>>8;a[e+2>>0]=b>>16;a[e+3>>0]=b>>24;xc[c[(c[d>>2]|0)+32>>2]&63](n,d);b=k+8+3|0;if((a[b>>0]|0)<0){e=c[k>>2]|0;c[m>>2]=0;Rq(e,m);c[k+4>>2]=0}else{c[m>>2]=0;Rq(k,m);a[b>>0]=0}Tz(k,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n);xc[c[(c[d>>2]|0)+28>>2]&63](n,d);b=j+8+3|0;if((a[b>>0]|0)<0){k=c[j>>2]|0;c[m>>2]=0;Rq(k,m);c[j+4>>2]=0}else{c[m>>2]=0;Rq(j,m);a[b>>0]=0}Tz(j,0);c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n);c[f>>2]=kc[c[(c[d>>2]|0)+12>>2]&127](d)|0;c[g>>2]=kc[c[(c[d>>2]|0)+16>>2]&127](d)|0;xc[c[(c[d>>2]|0)+20>>2]&63](n,d);b=h+11|0;if((a[b>>0]|0)<0){b=c[h>>2]|0;a[m>>0]=0;Jq(b,m);c[h+4>>2]=0;b=h}else{a[m>>0]=0;Jq(h,m);a[b>>0]=0;b=h}Ez(h,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);xc[c[(c[d>>2]|0)+24>>2]&63](n,d);b=i+8+3|0;if((a[b>>0]|0)<0){h=c[i>>2]|0;c[m>>2]=0;Rq(h,m);c[i+4>>2]=0}else{c[m>>2]=0;Rq(i,m);a[b>>0]=0}Tz(i,0);c[i>>2]=c[n>>2];c[i+4>>2]=c[n+4>>2];c[i+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n);b=kc[c[(c[d>>2]|0)+36>>2]&127](d)|0}else{d=dr(d,99908)|0;xc[c[(c[d>>2]|0)+44>>2]&63](m,d);b=c[m>>2]|0;a[e>>0]=b;a[e+1>>0]=b>>8;a[e+2>>0]=b>>16;a[e+3>>0]=b>>24;xc[c[(c[d>>2]|0)+32>>2]&63](n,d);b=k+8+3|0;if((a[b>>0]|0)<0){e=c[k>>2]|0;c[m>>2]=0;Rq(e,m);c[k+4>>2]=0}else{c[m>>2]=0;Rq(k,m);a[b>>0]=0}Tz(k,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n);xc[c[(c[d>>2]|0)+28>>2]&63](n,d);b=j+8+3|0;if((a[b>>0]|0)<0){k=c[j>>2]|0;c[m>>2]=0;Rq(k,m);c[j+4>>2]=0}else{c[m>>2]=0;Rq(j,m);a[b>>0]=0}Tz(j,0);c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n);c[f>>2]=kc[c[(c[d>>2]|0)+12>>2]&127](d)|0;c[g>>2]=kc[c[(c[d>>2]|0)+16>>2]&127](d)|0;xc[c[(c[d>>2]|0)+20>>2]&63](n,d);b=h+11|0;if((a[b>>0]|0)<0){b=c[h>>2]|0;a[m>>0]=0;Jq(b,m);c[h+4>>2]=0;b=h}else{a[m>>0]=0;Jq(h,m);a[b>>0]=0;b=h}Ez(h,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);xc[c[(c[d>>2]|0)+24>>2]&63](n,d);b=i+8+3|0;if((a[b>>0]|0)<0){h=c[i>>2]|0;c[m>>2]=0;Rq(h,m);c[i+4>>2]=0}else{c[m>>2]=0;Rq(i,m);a[b>>0]=0}Tz(i,0);c[i>>2]=c[n>>2];c[i+4>>2]=c[n+4>>2];c[i+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n);b=kc[c[(c[d>>2]|0)+36>>2]&127](d)|0}c[l>>2]=b;hc=o;return}function Hv(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;i=a+4|0;f=(c[i>>2]|0)!=139;e=c[a>>2]|0;h=e;j=(c[d>>2]|0)-h|0;g=j<<1;g=j>>>0<2147483647?((g|0)==0?4:g):-1;h=(c[b>>2]|0)-h>>2;e=xo(f?e:0,g)|0;if(!e)kz();if(!f){f=c[a>>2]|0;c[a>>2]=e;if(f){wc[c[i>>2]&255](f);e=c[a>>2]|0}}else c[a>>2]=e;c[i>>2]=140;c[b>>2]=e+(h<<2);c[d>>2]=(c[a>>2]|0)+(g>>>2<<2);return}function Iv(a){a=a|0;Kq(a);return}function Jv(a){a=a|0;Kq(a);nz(a);return}function Kv(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;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,F=0,G=0,H=0;E=hc;w=hc=hc+31&-32;hc=hc+416|0;q=w+336|0;k=w+328|0;b=w+224|0;l=w+400|0;j=w+112|0;D=w+396|0;r=w+408|0;s=w+405|0;t=w+404|0;A=w+384|0;B=w+372|0;C=w+360|0;o=w+356|0;p=w;u=w+352|0;v=w+344|0;w=w+348|0;c[l>>2]=b;g[q>>3]=i;b=Fn(b,100,75705,q)|0;if(b>>>0>99){b=gr()|0;g[k>>3]=i;b=Cs(l,b,75705,k)|0;j=c[l>>2]|0;if(!j)kz();k=uo(b)|0;if(!k)kz();else{x=k;z=b;G=k;H=j}}else{x=j;z=b;G=0;H=0}Up(D,f);n=dr(D,99668)|0;m=c[l>>2]|0;oc[c[(c[n>>2]|0)+32>>2]&7](n,m,m+z|0,x)|0;if(!z)m=0;else m=(a[c[l>>2]>>0]|0)==45;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[A+(b<<2)>>2]=0;b=b+1|0}c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[B+(b<<2)>>2]=0;b=b+1|0}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[C+(b<<2)>>2]=0;b=b+1|0}Mv(e,m,D,r,s,t,A,B,C,o);l=c[o>>2]|0;if((z|0)>(l|0)){k=a[C+11>>0]|0;b=a[B+11>>0]|0;b=b<<24>>24<0?c[B+4>>2]|0:b&255;j=l+1+(z-l<<1)|0;k=k<<24>>24<0?c[C+4>>2]|0:k&255}else{k=a[C+11>>0]|0;b=a[B+11>>0]|0;b=b<<24>>24<0?c[B+4>>2]|0:b&255;j=l+2|0;k=k<<24>>24<0?c[C+4>>2]|0:k&255}b=j+k+b|0;if(b>>>0>100){b=uo(b)|0;if(!b)kz();else{y=b;F=b}}else{y=p;F=0}Nv(y,u,v,c[f+4>>2]|0,x,x+z|0,n,m,r,a[s>>0]|0,a[t>>0]|0,A,B,C,l);c[w>>2]=c[d>>2];d=c[u>>2]|0;b=c[v>>2]|0;c[q>>2]=c[w>>2];b=Og(q,y,d,b,f,h)|0;if(F|0)vo(F);Az(C);Az(B);Az(A);er(D);if(G|0)vo(G);if(H|0)vo(H);hc=E;return b|0}function Lv(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=hc;s=hc=hc+31&-32;hc=hc+176|0;p=s+156|0;B=s+152|0;u=s+164|0;v=s+161|0;w=s+160|0;y=s+140|0;z=s+128|0;A=s+116|0;l=s+112|0;n=s;q=s+108|0;r=s+104|0;s=s+100|0;Up(B,f);t=dr(B,99668)|0;i=h+11|0;o=a[i>>0]|0;b=o<<24>>24<0;j=h+4|0;if(!((b?c[j>>2]|0:o&255)|0))o=0;else{o=a[(b?c[h>>2]|0:h)>>0]|0;o=o<<24>>24==(mc[c[(c[t>>2]|0)+28>>2]&31](t,45)|0)<<24>>24};c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[y+(b<<2)>>2]=0;b=b+1|0}c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[z+(b<<2)>>2]=0;b=b+1|0}c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[A+(b<<2)>>2]=0;b=b+1|0}Mv(e,o,B,u,v,w,y,z,A,l);k=a[i>>0]|0;m=k<<24>>24<0;k=m?c[j>>2]|0:k&255;j=c[l>>2]|0;if((k|0)>(j|0)){e=a[A+11>>0]|0;b=a[z+11>>0]|0;b=b<<24>>24<0?c[z+4>>2]|0:b&255;i=j+1+(k-j<<1)|0;e=e<<24>>24<0?c[A+4>>2]|0:e&255}else{e=a[A+11>>0]|0;b=a[z+11>>0]|0;b=b<<24>>24<0?c[z+4>>2]|0:b&255;i=j+2|0;e=e<<24>>24<0?c[A+4>>2]|0:e&255}b=i+e+b|0;if(b>>>0>100){b=uo(b)|0;if(!b)kz();else{x=b;D=b}}else{x=n;D=0}h=m?c[h>>2]|0:h;Nv(x,q,r,c[f+4>>2]|0,h,h+k|0,t,o,u,a[v>>0]|0,a[w>>0]|0,y,z,A,j);c[s>>2]=c[d>>2];h=c[q>>2]|0;b=c[r>>2]|0;c[p>>2]=c[s>>2];b=Og(p,x,h,b,f,g)|0;if(D|0)vo(D);Az(A);Az(z);Az(y);er(B);hc=C;return b|0}function Mv(b,d,e,f,g,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;p=hc;o=hc=hc+31&-32;hc=hc+16|0;n=o+12|0;if(b){m=dr(e,99900)|0;if(d){xc[c[(c[m>>2]|0)+44>>2]&63](n,m);b=c[n>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;xc[c[(c[m>>2]|0)+32>>2]&63](o,m);b=k+11|0;if((a[b>>0]|0)<0){b=c[k>>2]|0;a[n>>0]=0;Jq(b,n);c[k+4>>2]=0;b=k}else{a[n>>0]=0;Jq(k,n);a[b>>0]=0;b=k}Ez(k,0);c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];b=0;while(1){if((b|0)==3)break;c[o+(b<<2)>>2]=0;b=b+1|0}Az(o);e=m}else{xc[c[(c[m>>2]|0)+40>>2]&63](n,m);b=c[n>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;xc[c[(c[m>>2]|0)+28>>2]&63](o,m);b=k+11|0;if((a[b>>0]|0)<0){b=c[k>>2]|0;a[n>>0]=0;Jq(b,n);c[k+4>>2]=0;b=k}else{a[n>>0]=0;Jq(k,n);a[b>>0]=0;b=k}Ez(k,0);c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];b=0;while(1){if((b|0)==3)break;c[o+(b<<2)>>2]=0;b=b+1|0}Az(o);e=m}a[g>>0]=kc[c[(c[m>>2]|0)+12>>2]&127](m)|0;a[h>>0]=kc[c[(c[m>>2]|0)+16>>2]&127](m)|0;xc[c[(c[e>>2]|0)+20>>2]&63](o,m);b=i+11|0;if((a[b>>0]|0)<0){b=c[i>>2]|0;a[n>>0]=0;Jq(b,n);c[i+4>>2]=0;b=i}else{a[n>>0]=0;Jq(i,n);a[b>>0]=0;b=i}Ez(i,0);c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];b=0;while(1){if((b|0)==3)break;c[o+(b<<2)>>2]=0;b=b+1|0}Az(o);xc[c[(c[e>>2]|0)+24>>2]&63](o,m);b=j+11|0;if((a[b>>0]|0)<0){b=c[j>>2]|0;a[n>>0]=0;Jq(b,n);c[j+4>>2]=0;b=j}else{a[n>>0]=0;Jq(j,n);a[b>>0]=0;b=j}Ez(j,0);c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];b=0;while(1){if((b|0)==3)break;c[o+(b<<2)>>2]=0;b=b+1|0}Az(o);b=kc[c[(c[m>>2]|0)+36>>2]&127](m)|0}else{m=dr(e,99892)|0;if(d){xc[c[(c[m>>2]|0)+44>>2]&63](n,m);b=c[n>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;xc[c[(c[m>>2]|0)+32>>2]&63](o,m);b=k+11|0;if((a[b>>0]|0)<0){b=c[k>>2]|0;a[n>>0]=0;Jq(b,n);c[k+4>>2]=0;b=k}else{a[n>>0]=0;Jq(k,n);a[b>>0]=0;b=k}Ez(k,0);c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];b=0;while(1){if((b|0)==3)break;c[o+(b<<2)>>2]=0;b=b+1|0}Az(o);e=m}else{xc[c[(c[m>>2]|0)+40>>2]&63](n,m);b=c[n>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;xc[c[(c[m>>2]|0)+28>>2]&63](o,m);b=k+11|0;if((a[b>>0]|0)<0){b=c[k>>2]|0;a[n>>0]=0;Jq(b,n);c[k+4>>2]=0;b=k}else{a[n>>0]=0;Jq(k,n);a[b>>0]=0;b=k}Ez(k,0);c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];b=0;while(1){if((b|0)==3)break;c[o+(b<<2)>>2]=0;b=b+1|0}Az(o);e=m}a[g>>0]=kc[c[(c[m>>2]|0)+12>>2]&127](m)|0;a[h>>0]=kc[c[(c[m>>2]|0)+16>>2]&127](m)|0;xc[c[(c[e>>2]|0)+20>>2]&63](o,m);b=i+11|0;if((a[b>>0]|0)<0){b=c[i>>2]|0;a[n>>0]=0;Jq(b,n);c[i+4>>2]=0;b=i}else{a[n>>0]=0;Jq(i,n);a[b>>0]=0;b=i}Ez(i,0);c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];b=0;while(1){if((b|0)==3)break;c[o+(b<<2)>>2]=0;b=b+1|0}Az(o);xc[c[(c[e>>2]|0)+24>>2]&63](o,m);b=j+11|0;if((a[b>>0]|0)<0){b=c[j>>2]|0;a[n>>0]=0;Jq(b,n);c[j+4>>2]=0;b=j}else{a[n>>0]=0;Jq(j,n);a[b>>0]=0;b=j}Ez(j,0);c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];b=0;while(1){if((b|0)==3)break;c[o+(b<<2)>>2]=0;b=b+1|0}Az(o);b=kc[c[(c[m>>2]|0)+36>>2]&127](m)|0}c[l>>2]=b;hc=p;return}function Nv(d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var 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;c[f>>2]=d;y=q+11|0;G=q+4|0;z=p+11|0;A=p+4|0;B=(g&512|0)==0;C=j+8|0;D=(r|0)>0;E=o+11|0;F=o+4|0;x=0;while(1){if((x|0)==4)break;a:do switch(a[l+x>>0]|0){case 0:{c[e>>2]=c[f>>2];break}case 1:{c[e>>2]=c[f>>2];v=mc[c[(c[j>>2]|0)+28>>2]&31](j,32)|0;w=c[f>>2]|0;c[f>>2]=w+1;a[w>>0]=v;break}case 3:{w=a[y>>0]|0;s=w<<24>>24<0;if((s?c[G>>2]|0:w&255)|0){v=a[(s?c[q>>2]|0:q)>>0]|0;w=c[f>>2]|0;c[f>>2]=w+1;a[w>>0]=v}break}case 2:{t=a[z>>0]|0;s=t<<24>>24<0;t=s?c[A>>2]|0:t&255;if(!(B|(t|0)==0)){w=s?c[p>>2]|0:p;u=w+t|0;s=c[f>>2]|0;t=w;while(1){if((t|0)==(u|0))break;a[s>>0]=a[t>>0]|0;s=s+1|0;t=t+1|0}c[f>>2]=s}break}case 4:{t=c[f>>2]|0;h=k?h+1|0:h;u=h;while(1){if(u>>>0>=i>>>0)break;s=a[u>>0]|0;if(s<<24>>24<=-1)break;if(!(b[(c[C>>2]|0)+(s<<24>>24<<1)>>1]&2048))break;u=u+1|0}if(D){v=r;while(1){s=(v|0)>0;if(!(u>>>0>h>>>0&s))break;w=u+-1|0;H=a[w>>0]|0;s=c[f>>2]|0;c[f>>2]=s+1;a[s>>0]=H;v=v+-1|0;u=w}if(s)w=mc[c[(c[j>>2]|0)+28>>2]&31](j,48)|0;else w=0;s=v;while(1){v=c[f>>2]|0;c[f>>2]=v+1;if((s|0)<=0)break;a[v>>0]=w;s=s+-1|0}a[v>>0]=m}b:do if((u|0)==(h|0)){w=mc[c[(c[j>>2]|0)+28>>2]&31](j,48)|0;H=c[f>>2]|0;c[f>>2]=H+1;a[H>>0]=w}else{H=a[E>>0]|0;s=H<<24>>24<0;if(!((s?c[F>>2]|0:H&255)|0))s=-1;else s=a[(s?c[o>>2]|0:o)>>0]|0;v=0;w=0;while(1){if((u|0)==(h|0))break b;if((w|0)==(s|0)){H=c[f>>2]|0;c[f>>2]=H+1;a[H>>0]=n;v=v+1|0;H=a[E>>0]|0;s=H<<24>>24<0;if(v>>>0<(s?c[F>>2]|0:H&255)>>>0){s=a[(s?c[o>>2]|0:o)+v>>0]|0;s=s<<24>>24==127?-1:s<<24>>24;w=0}else{s=w;w=0}}H=u+-1|0;J=a[H>>0]|0;I=c[f>>2]|0;c[f>>2]=I+1;a[I>>0]=J;w=w+1|0;u=H}}while(0);s=c[f>>2]|0;if((t|0)!=(s|0))while(1){s=s+-1|0;if(t>>>0>=s>>>0)break a;J=a[t>>0]|0;a[t>>0]=a[s>>0]|0;a[s>>0]=J;t=t+1|0}break}default:{}}while(0);x=x+1|0}h=a[y>>0]|0;s=h<<24>>24<0;h=s?c[G>>2]|0:h&255;if(h>>>0>1){J=s?c[q>>2]|0:q;t=J+h|0;s=c[f>>2]|0;h=J;while(1){h=h+1|0;if((h|0)==(t|0))break;a[s>>0]=a[h>>0]|0;s=s+1|0}c[f>>2]=s}switch((g&176)<<24>>24){case 32:{c[e>>2]=c[f>>2];break}case 16:break;default:c[e>>2]=d}return}function Ov(a){a=a|0;Kq(a);return}function Pv(a){a=a|0;Kq(a);nz(a);return}function Qv(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=+i;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,F=0,G=0,H=0;E=hc;w=hc=hc+31&-32;hc=hc+992|0;q=w+912|0;k=w+904|0;b=w+800|0;l=w+984|0;j=w+400|0;D=w+980|0;r=w+988|0;s=w+976|0;t=w+972|0;A=w+960|0;B=w+948|0;C=w+936|0;o=w+932|0;p=w;u=w+928|0;v=w+920|0;w=w+924|0;c[l>>2]=b;g[q>>3]=i;b=Fn(b,100,75705,q)|0;if(b>>>0>99){b=gr()|0;g[k>>3]=i;b=Cs(l,b,75705,k)|0;j=c[l>>2]|0;if(!j)kz();k=uo(b<<2)|0;if(!k)kz();else{x=k;z=b;G=k;H=j}}else{x=j;z=b;G=0;H=0}Up(D,f);n=dr(D,99700)|0;m=c[l>>2]|0;oc[c[(c[n>>2]|0)+48>>2]&7](n,m,m+z|0,x)|0;if(!z)m=0;else m=(a[c[l>>2]>>0]|0)==45;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[A+(b<<2)>>2]=0;b=b+1|0}c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[B+(b<<2)>>2]=0;b=b+1|0}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[C+(b<<2)>>2]=0;b=b+1|0}Sv(e,m,D,r,s,t,A,B,C,o);l=c[o>>2]|0;if((z|0)>(l|0)){k=a[C+8+3>>0]|0;b=a[B+8+3>>0]|0;b=b<<24>>24<0?c[B+4>>2]|0:b&255;j=l+1+(z-l<<1)|0;k=k<<24>>24<0?c[C+4>>2]|0:k&255}else{k=a[C+8+3>>0]|0;b=a[B+8+3>>0]|0;b=b<<24>>24<0?c[B+4>>2]|0:b&255;j=l+2|0;k=k<<24>>24<0?c[C+4>>2]|0:k&255}b=j+k+b|0;if(b>>>0>100){b=uo(b<<2)|0;if(!b)kz();else{y=b;F=b}}else{y=p;F=0}Tv(y,u,v,c[f+4>>2]|0,x,x+(z<<2)|0,n,m,r,c[s>>2]|0,c[t>>2]|0,A,B,C,l);c[w>>2]=c[d>>2];d=c[u>>2]|0;b=c[v>>2]|0;c[q>>2]=c[w>>2];b=Qs(q,y,d,b,f,h)|0;if(F|0)vo(F);Pz(C);Pz(B);Az(A);er(D);if(G|0)vo(G);if(H|0)vo(H);hc=E;return b|0}function Rv(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=hc;s=hc=hc+31&-32;hc=hc+480|0;p=s+464|0;B=s+460|0;u=s+468|0;v=s+456|0;w=s+452|0;y=s+440|0;z=s+428|0;A=s+416|0;l=s+412|0;n=s;q=s+408|0;r=s+404|0;s=s+400|0;Up(B,f);t=dr(B,99700)|0;i=h+8+3|0;o=a[i>>0]|0;b=o<<24>>24<0;j=h+4|0;if(!((b?c[j>>2]|0:o&255)|0))o=0;else{o=c[(b?c[h>>2]|0:h)>>2]|0;o=(o|0)==(mc[c[(c[t>>2]|0)+44>>2]&31](t,45)|0)};c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[y+(b<<2)>>2]=0;b=b+1|0}c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[z+(b<<2)>>2]=0;b=b+1|0}c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[A+(b<<2)>>2]=0;b=b+1|0}Sv(e,o,B,u,v,w,y,z,A,l);k=a[i>>0]|0;m=k<<24>>24<0;k=m?c[j>>2]|0:k&255;j=c[l>>2]|0;if((k|0)>(j|0)){e=a[A+8+3>>0]|0;b=a[z+8+3>>0]|0;b=b<<24>>24<0?c[z+4>>2]|0:b&255;i=j+1+(k-j<<1)|0;e=e<<24>>24<0?c[A+4>>2]|0:e&255}else{e=a[A+8+3>>0]|0;b=a[z+8+3>>0]|0;b=b<<24>>24<0?c[z+4>>2]|0:b&255;i=j+2|0;e=e<<24>>24<0?c[A+4>>2]|0:e&255}b=i+e+b|0;if(b>>>0>100){b=uo(b<<2)|0;if(!b)kz();else{x=b;D=b}}else{x=n;D=0}h=m?c[h>>2]|0:h;Tv(x,q,r,c[f+4>>2]|0,h,h+(k<<2)|0,t,o,u,c[v>>2]|0,c[w>>2]|0,y,z,A,j);c[s>>2]=c[d>>2];h=c[q>>2]|0;b=c[r>>2]|0;c[p>>2]=c[s>>2];b=Qs(p,x,h,b,f,g)|0;if(D|0)vo(D);Pz(A);Pz(z);Az(y);er(B);hc=C;return b|0}function Sv(b,d,e,f,g,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0;o=hc;n=hc=hc+31&-32;hc=hc+16|0;m=n+12|0;if(b){e=dr(e,99916)|0;if(d){xc[c[(c[e>>2]|0)+44>>2]&63](m,e);b=c[m>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;xc[c[(c[e>>2]|0)+32>>2]&63](n,e);b=k+8+3|0;if((a[b>>0]|0)<0){f=c[k>>2]|0;c[m>>2]=0;Rq(f,m);c[k+4>>2]=0}else{c[m>>2]=0;Rq(k,m);a[b>>0]=0}Tz(k,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n)}else{xc[c[(c[e>>2]|0)+40>>2]&63](m,e);b=c[m>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;xc[c[(c[e>>2]|0)+28>>2]&63](n,e);b=k+8+3|0;if((a[b>>0]|0)<0){f=c[k>>2]|0;c[m>>2]=0;Rq(f,m);c[k+4>>2]=0}else{c[m>>2]=0;Rq(k,m);a[b>>0]=0}Tz(k,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n)}c[g>>2]=kc[c[(c[e>>2]|0)+12>>2]&127](e)|0;c[h>>2]=kc[c[(c[e>>2]|0)+16>>2]&127](e)|0;xc[c[(c[e>>2]|0)+20>>2]&63](n,e);b=i+11|0;if((a[b>>0]|0)<0){b=c[i>>2]|0;a[m>>0]=0;Jq(b,m);c[i+4>>2]=0;b=i}else{a[m>>0]=0;Jq(i,m);a[b>>0]=0;b=i}Ez(i,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);xc[c[(c[e>>2]|0)+24>>2]&63](n,e);b=j+8+3|0;if((a[b>>0]|0)<0){i=c[j>>2]|0;c[m>>2]=0;Rq(i,m);c[j+4>>2]=0}else{c[m>>2]=0;Rq(j,m);a[b>>0]=0}Tz(j,0);c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n);b=kc[c[(c[e>>2]|0)+36>>2]&127](e)|0}else{e=dr(e,99908)|0;if(d){xc[c[(c[e>>2]|0)+44>>2]&63](m,e);b=c[m>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;xc[c[(c[e>>2]|0)+32>>2]&63](n,e);b=k+8+3|0;if((a[b>>0]|0)<0){f=c[k>>2]|0;c[m>>2]=0;Rq(f,m);c[k+4>>2]=0}else{c[m>>2]=0;Rq(k,m);a[b>>0]=0}Tz(k,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n)}else{xc[c[(c[e>>2]|0)+40>>2]&63](m,e);b=c[m>>2]|0;a[f>>0]=b;a[f+1>>0]=b>>8;a[f+2>>0]=b>>16;a[f+3>>0]=b>>24;xc[c[(c[e>>2]|0)+28>>2]&63](n,e);b=k+8+3|0;if((a[b>>0]|0)<0){f=c[k>>2]|0;c[m>>2]=0;Rq(f,m);c[k+4>>2]=0}else{c[m>>2]=0;Rq(k,m);a[b>>0]=0}Tz(k,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n)}c[g>>2]=kc[c[(c[e>>2]|0)+12>>2]&127](e)|0;c[h>>2]=kc[c[(c[e>>2]|0)+16>>2]&127](e)|0;xc[c[(c[e>>2]|0)+20>>2]&63](n,e);b=i+11|0;if((a[b>>0]|0)<0){b=c[i>>2]|0;a[m>>0]=0;Jq(b,m);c[i+4>>2]=0;b=i}else{a[m>>0]=0;Jq(i,m);a[b>>0]=0;b=i}Ez(i,0);c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Az(n);xc[c[(c[e>>2]|0)+24>>2]&63](n,e);b=j+8+3|0;if((a[b>>0]|0)<0){i=c[j>>2]|0;c[m>>2]=0;Rq(i,m);c[j+4>>2]=0}else{c[m>>2]=0;Rq(j,m);a[b>>0]=0}Tz(j,0);c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];b=0;while(1){if((b|0)==3)break;c[n+(b<<2)>>2]=0;b=b+1|0}Pz(n);b=kc[c[(c[e>>2]|0)+36>>2]&127](e)|0}c[l>>2]=b;hc=o;return}function Tv(b,d,e,f,g,h,i,j,k,l,m,n,o,p,q){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;c[e>>2]=b;z=p+8+3|0;G=p+4|0;A=o+8+3|0;B=o+4|0;C=(f&512|0)==0;D=(q|0)>0;E=n+11|0;F=n+4|0;y=0;while(1){if((y|0)==4)break;a:do switch(a[k+y>>0]|0){case 0:{c[d>>2]=c[e>>2];break}case 1:{c[d>>2]=c[e>>2];w=mc[c[(c[i>>2]|0)+44>>2]&31](i,32)|0;x=c[e>>2]|0;c[e>>2]=x+4;c[x>>2]=w;break}case 3:{x=a[z>>0]|0;r=x<<24>>24<0;if((r?c[G>>2]|0:x&255)|0){w=c[(r?c[p>>2]|0:p)>>2]|0;x=c[e>>2]|0;c[e>>2]=x+4;c[x>>2]=w}break}case 2:{v=a[A>>0]|0;r=v<<24>>24<0;v=r?c[B>>2]|0:v&255;if(!(C|(v|0)==0)){u=r?c[o>>2]|0:o;s=u+(v<<2)|0;t=c[e>>2]|0;r=t;while(1){if((u|0)==(s|0))break;c[r>>2]=c[u>>2];r=r+4|0;u=u+4|0}c[e>>2]=t+(v<<2)}break}case 4:{s=c[e>>2]|0;g=j?g+4|0:g;r=g;while(1){if(r>>>0>=h>>>0)break;if(!(nc[c[(c[i>>2]|0)+12>>2]&31](i,2048,c[r>>2]|0)|0))break;r=r+4|0}if(D){u=q;while(1){t=(u|0)>0;if(!(r>>>0>g>>>0&t))break;x=r+-4|0;v=c[x>>2]|0;w=c[e>>2]|0;c[e>>2]=w+4;c[w>>2]=v;u=u+-1|0;r=x}if(t)w=mc[c[(c[i>>2]|0)+44>>2]&31](i,48)|0;else w=0;v=c[e>>2]|0;while(1){t=v+4|0;if((u|0)<=0)break;c[v>>2]=w;u=u+-1|0;v=t}c[e>>2]=t;c[v>>2]=l;t=r}else t=r;if((t|0)==(g|0)){w=mc[c[(c[i>>2]|0)+44>>2]&31](i,48)|0;x=c[e>>2]|0;r=x+4|0;c[e>>2]=r;c[x>>2]=w}else{x=a[E>>0]|0;r=x<<24>>24<0;if(!((r?c[F>>2]|0:x&255)|0))r=-1;else r=a[(r?c[n>>2]|0:n)>>0]|0;u=0;v=0;x=t;while(1){if((x|0)==(g|0))break;t=c[e>>2]|0;if((v|0)==(r|0)){w=t+4|0;c[e>>2]=w;c[t>>2]=m;t=u+1|0;u=a[E>>0]|0;r=u<<24>>24<0;if(t>>>0<(r?c[F>>2]|0:u&255)>>>0){r=a[(r?c[n>>2]|0:n)+t>>0]|0;r=r<<24>>24==127?-1:r<<24>>24;u=t;v=0;t=w}else{r=v;u=t;v=0;t=w}}w=x+-4|0;H=c[w>>2]|0;c[e>>2]=t+4;c[t>>2]=H;v=v+1|0;x=w}r=c[e>>2]|0}if((s|0)!=(r|0))while(1){r=r+-4|0;if(s>>>0>=r>>>0)break a;H=c[s>>2]|0;c[s>>2]=c[r>>2];c[r>>2]=H;s=s+4|0}break}default:{}}while(0);y=y+1|0}r=a[z>>0]|0;g=r<<24>>24<0;r=g?c[G>>2]|0:r&255;if(r>>>0>1){s=c[p>>2]|0;u=g?s+4|0:G;r=(g?s:p)+(r<<2)|0;s=c[e>>2]|0;t=r-u|0;g=s;while(1){if((u|0)==(r|0))break;c[g>>2]=c[u>>2];g=g+4|0;u=u+4|0}c[e>>2]=s+(t>>>2<<2)}switch((f&176)<<24>>24){case 32:{c[d>>2]=c[e>>2];break}case 16:break;default:c[d>>2]=b}return}function Uv(a){a=a|0;Kq(a);return}function Vv(a){a=a|0;Kq(a);nz(a);return}function Wv(b,d,e){b=b|0;d=d|0;e=e|0;e=sn((a[d+11>>0]|0)<0?c[d>>2]|0:d,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function Xv(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;j=hc;i=hc=hc+31&-32;hc=hc+16|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[i+(d<<2)>>2]=0;d=d+1|0}k=a[h+11>>0]|0;l=k<<24>>24<0;d=l?c[h>>2]|0:h;h=d+(l?c[h+4>>2]|0:k&255)|0;while(1){if(d>>>0>=h>>>0)break;Lz(i,a[d>>0]|0);d=d+1|0}d=(a[i+11>>0]|0)<0?c[i>>2]|0:i;e=rn((e|0)==-1?-1:e<<1,f,g,d)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;h=0;while(1){if((h|0)==3)break;c[b+(h<<2)>>2]=0;h=h+1|0}h=d+(tn(e)|0)|0;while(1){if(d>>>0>=h>>>0)break;Lz(b,a[d>>0]|0);d=d+1|0}Az(i);hc=j;return}function Yv(a,b){a=a|0;b=b|0;return}function Zv(a){a=a|0;Kq(a);return}function _v(a){a=a|0;Kq(a);nz(a);return}function $v(b,d,e){b=b|0;d=d|0;e=e|0;e=sn((a[d+11>>0]|0)<0?c[d>>2]|0:d,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function aw(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,q=0,r=0,s=0,t=0;t=hc;o=hc=hc+31&-32;hc=hc+176|0;p=o+168|0;q=o;r=o+164|0;s=o+160|0;n=o+128|0;l=o+152|0;o=o+144|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[n+(d<<2)>>2]=0;d=d+1|0}c[l+4>>2]=0;c[l>>2]=51276;j=a[h+8+3>>0]|0;k=j<<24>>24<0;d=k?c[h>>2]|0:h;j=d+((k?c[h+4>>2]|0:j&255)<<2)|0;k=q+32|0;h=d;d=0;while(1){if(!((d|0)!=2&h>>>0<j>>>0))break;c[s>>2]=h;i=uc[c[(c[l>>2]|0)+12>>2]&15](l,p,h,j,s,q,k,r)|0;if((i|0)==2?1:(c[s>>2]|0)==(h|0)){m=8;break}d=q;while(1){if(d>>>0>=(c[r>>2]|0)>>>0)break;Lz(n,a[d>>0]|0);d=d+1|0}h=c[s>>2]|0;d=i}if((m|0)==8)vu(0);Kq(l);i=(a[n+11>>0]|0)<0?c[n>>2]|0:n;h=rn((e|0)==-1?-1:e<<1,f,g,i)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}c[o+4>>2]=0;c[o>>2]=51324;j=i+(tn(h)|0)|0;k=j;l=q+128|0;h=i;d=0;while(1){if(!((d|0)!=2&h>>>0<j>>>0)){m=23;break}c[s>>2]=h;i=uc[c[(c[o>>2]|0)+16>>2]&15](o,p,h,(k-h|0)>32?h+32|0:j,s,q,l,r)|0;if((i|0)==2?1:(c[s>>2]|0)==(h|0)){m=19;break}d=q;while(1){if(d>>>0>=(c[r>>2]|0)>>>0)break;Xz(b,c[d>>2]|0);d=d+4|0}h=c[s>>2]|0;d=i}if((m|0)==19)vu(0);else if((m|0)==23){Kq(o);Az(n);hc=t;return}}function bw(a,b){a=a|0;b=b|0;return}function cw(a){a=a|0;Kq(a);nz(a);return}function dw(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;b=hc;a=hc=hc+31&-32;hc=hc+16|0;j=a+4|0;c[j>>2]=d;c[a>>2]=g;h=mw(d,e,j,g,h,a,1114111,0)|0;c[f>>2]=c[j>>2];c[i>>2]=c[a>>2];hc=b;return h|0}function ew(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;b=hc;a=hc=hc+31&-32;hc=hc+16|0;j=a+4|0;c[j>>2]=d;c[a>>2]=g;h=lw(d,e,j,g,h,a,1114111,0)|0;c[f>>2]=c[j>>2];c[i>>2]=c[a>>2];hc=b;return h|0}function fw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function gw(a){a=a|0;return 0}function hw(a){a=a|0;return 0}function iw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kw(c,d,e,1114111,0)|0}function jw(a){a=a|0;return 4}function kw(b,c,e,f,g){b=b|0;c=c|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;o=c;if((((g&4|0)!=0?(o-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)g=(a[b+2>>0]|0)==-65?b+3|0:b;else g=b;n=0;a:while(1){if(!(n>>>0<e>>>0&g>>>0<c>>>0))break;k=a[g>>0]|0;m=k&255;do if(k<<24>>24<=-1){if((k&255)<194)break a;if((k&255)<224){if((o-g|0)<2)break a;h=d[g+1>>0]|0;if((h&192|0)!=128)break a;if((h&63|m<<6&1984)>>>0>f>>>0)break a;g=g+2|0;break}if((k&255)<240){if((o-g|0)<3)break a;i=a[g+1>>0]|0;h=a[g+2>>0]|0;switch(k<<24>>24){case -32:{if((i&-32)<<24>>24!=-96)break a;break}case -19:{if((i&-32)<<24>>24!=-128)break a;break}default:if((i&-64)<<24>>24!=-128)break a}h=h&255;if((h&192|0)!=128)break a;if(((i&63)<<6|m<<12&61440|h&63)>>>0>f>>>0)break a;else{g=g+3|0;break}}if((k&255)>=245)break a;if((o-g|0)<4)break a;l=a[g+1>>0]|0;h=a[g+2>>0]|0;j=a[g+3>>0]|0;switch(k<<24>>24){case -16:{if((l+112&255)>=48)break a;break}case -12:{if((l&-16)<<24>>24!=-128)break a;break}default:if((l&-64)<<24>>24!=-128)break a}i=h&255;if((i&192|0)!=128)break a;h=j&255;if((h&192|0)!=128)break a;if(((l&63)<<12|m<<18&1835008|i<<6&4032|h&63)>>>0>f>>>0)break a;else g=g+4|0}else{if(m>>>0>f>>>0)break a;g=g+1|0}while(0);n=n+1|0}return g-b|0}function lw(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;c[f>>2]=b;c[i>>2]=g;if(k&4){b=c[f>>2]|0;g=e;if((((g-b|0)>2?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)?(a[b+2>>0]|0)==-65:0)c[f>>2]=b+3}else g=e;a:while(1){p=c[f>>2]|0;if(p>>>0>=e>>>0){b=0;break}q=c[i>>2]|0;if(q>>>0>=h>>>0){b=1;break}n=a[p>>0]|0;b=n&255;do if(n<<24>>24>-1)if(b>>>0>j>>>0){b=2;break a}else k=1;else{if((n&255)<194){b=2;break a}if((n&255)<224){if((g-p|0)<2){b=1;break a}k=d[p+1>>0]|0;if((k&192|0)!=128){b=2;break a}b=k&63|b<<6&1984;if(b>>>0>j>>>0){b=2;break a}else{k=2;break}}if((n&255)<240){if((g-p|0)<3){b=1;break a}l=a[p+1>>0]|0;k=a[p+2>>0]|0;switch(n<<24>>24){case -32:{if((l&-32)<<24>>24!=-96){b=2;break a}break}case -19:{if((l&-32)<<24>>24!=-128){b=2;break a}break}default:if((l&-64)<<24>>24!=-128){b=2;break a}}k=k&255;if((k&192|0)!=128){b=2;break a}b=(l&63)<<6|b<<12&61440|k&63;if(b>>>0>j>>>0){b=2;break a}else{k=3;break}}if((n&255)>=245){b=2;break a}if((g-p|0)<4){b=1;break a}o=a[p+1>>0]|0;k=a[p+2>>0]|0;m=a[p+3>>0]|0;switch(n<<24>>24){case -16:{if((o+112&255)>=48){b=2;break a}break}case -12:{if((o&-16)<<24>>24!=-128){b=2;break a}break}default:if((o&-64)<<24>>24!=-128){b=2;break a}}l=k&255;if((l&192|0)!=128){b=2;break a}k=m&255;if((k&192|0)!=128){b=2;break a}b=(o&63)<<12|b<<18&1835008|l<<6&4032|k&63;if(b>>>0>j>>>0){b=2;break a}else k=4}while(0);c[q>>2]=b;c[f>>2]=p+k;c[i>>2]=(c[i>>2]|0)+4}return b|0}function mw(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;c[e>>2]=b;c[h>>2]=f;l=g;if(j&2)if((l-f|0)<3)b=1;else{c[h>>2]=f+1;a[f>>0]=-17;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-69;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-65;k=4}else k=4;a:do if((k|0)==4){b=c[e>>2]|0;while(1){if(b>>>0>=d>>>0){b=0;break a}f=c[b>>2]|0;if(f>>>0>i>>>0|(f&-2048|0)==55296){b=2;break a}do if(f>>>0>=128){if(f>>>0<2048){b=c[h>>2]|0;if((l-b|0)<2){b=1;break a}c[h>>2]=b+1;a[b>>0]=f>>>6|192;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f&63|128;break}b=c[h>>2]|0;g=l-b|0;if(f>>>0<65536){if((g|0)<3){b=1;break a}c[h>>2]=b+1;a[b>>0]=f>>>12|224;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f&63|128;break}else{if((g|0)<4){b=1;break a}c[h>>2]=b+1;a[b>>0]=f>>>18|240;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f>>>12&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f&63|128;break}}else{b=c[h>>2]|0;if((l-b|0)<1){b=1;break a}c[h>>2]=b+1;a[b>>0]=f}while(0);b=(c[e>>2]|0)+4|0;c[e>>2]=b}}while(0);return b|0}function nw(a){a=a|0;Kq(a);nz(a);return}function ow(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;c[f>>2]=d;c[i>>2]=g;return 3}function pw(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;c[f>>2]=d;c[i>>2]=g;return 3}function qw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function rw(a){a=a|0;return 1}function sw(a){a=a|0;return 1}function tw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;d=d-c|0;return (d>>>0<e>>>0?d:e)|0}function uw(a){a=a|0;return 1}function vw(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,p=0,q=0,r=0;q=hc;n=hc=hc+31&-32;hc=hc+16|0;p=n;n=n+8|0;k=e;while(1){if((k|0)==(f|0)){k=f;break}if(!(c[k>>2]|0))break;k=k+4|0}c[j>>2]=h;c[g>>2]=e;m=i;o=b+8|0;a:while(1){if((h|0)==(i|0)|(e|0)==(f|0)){k=36;break}r=d;l=c[r+4>>2]|0;b=p;c[b>>2]=c[r>>2];c[b+4>>2]=l;b=Gn(c[o>>2]|0)|0;l=eo(h,g,k-e>>2,m-h|0,d)|0;if(b|0)Gn(b)|0;switch(l|0){case -1:{k=10;break a}case 0:{e=1;k=33;break a}default:{}}h=(c[j>>2]|0)+l|0;c[j>>2]=h;if((h|0)==(i|0)){k=34;break}if((k|0)==(f|0)){k=f;e=c[g>>2]|0}else{h=Gn(c[o>>2]|0)|0;e=Sm(n,0,d)|0;if(h|0)Gn(h)|0;if((e|0)==-1){e=2;k=32;break}if(e>>>0>(m-(c[j>>2]|0)|0)>>>0){e=1;k=32;break}h=n;while(1){if(!e)break;l=a[h>>0]|0;r=c[j>>2]|0;c[j>>2]=r+1;a[r>>0]=l;h=h+1|0;e=e+-1|0}e=(c[g>>2]|0)+4|0;c[g>>2]=e;k=e;while(1){if((k|0)==(f|0)){k=f;break}if(!(c[k>>2]|0))break;k=k+4|0}h=c[j>>2]|0}}if((k|0)==10){c[j>>2]=h;while(1){if((e|0)==(c[g>>2]|0))break;r=c[e>>2]|0;k=Gn(c[o>>2]|0)|0;h=Sm(h,r,p)|0;if(k|0)Gn(k)|0;if((h|0)==-1)break;h=(c[j>>2]|0)+h|0;c[j>>2]=h;e=e+4|0}c[g>>2]=e;e=2;k=33}else if((k|0)==32)k=33;else if((k|0)==34){e=c[g>>2]|0;k=36}if((k|0)!=33)if((k|0)==36)e=(e|0)!=(f|0)&1;hc=q;return e|0}function ww(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,p=0,q=0;p=hc;o=hc=hc+31&-32;hc=hc+16|0;k=e;while(1){if((k|0)==(f|0)){k=f;break}if(!(a[k>>0]|0))break;k=k+1|0}c[j>>2]=h;c[g>>2]=e;m=i;n=b+8|0;while(1){if((h|0)==(i|0)|(e|0)==(f|0)){b=33;break}q=d;l=c[q+4>>2]|0;b=o;c[b>>2]=c[q>>2];c[b+4>>2]=l;b=Gn(c[n>>2]|0)|0;l=ao(h,g,k-e|0,m-h>>2,d)|0;if(b|0)Gn(b)|0;if((l|0)==-1){b=10;break}h=(c[j>>2]|0)+(l<<2)|0;c[j>>2]=h;if((h|0)==(i|0)){b=30;break}e=c[g>>2]|0;if((k|0)==(f|0))k=f;else{k=Gn(c[n>>2]|0)|0;e=zn(h,e,1,d)|0;if(k|0)Gn(k)|0;if(e|0){e=2;b=29;break}c[j>>2]=(c[j>>2]|0)+4;e=(c[g>>2]|0)+1|0;c[g>>2]=e;k=e;while(1){if((k|0)==(f|0)){k=f;break}if(!(a[k>>0]|0))break;k=k+1|0}h=c[j>>2]|0}}do if((b|0)==10){a:while(1){c[j>>2]=h;if((e|0)==(c[g>>2]|0)){b=19;break}b=Gn(c[n>>2]|0)|0;h=zn(h,e,k-e|0,o)|0;if(b|0)Gn(b)|0;switch(h|0){case -1:{b=15;break a}case -2:{b=16;break a}case 0:{h=1;break}default:{}}e=e+h|0;h=(c[j>>2]|0)+4|0}if((b|0)==15){c[g>>2]=e;e=2;b=29;break}else if((b|0)==16){c[g>>2]=e;e=1;b=29;break}else if((b|0)==19){c[g>>2]=e;e=(e|0)!=(f|0)&1;b=29;break}}else if((b|0)==30){e=c[g>>2]|0;b=33}while(0);if((b|0)!=29)if((b|0)==33)e=(e|0)!=(f|0)&1;hc=p;return e|0}function xw(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;i=hc;h=hc=hc+31&-32;hc=hc+16|0;c[g>>2]=e;e=Gn(c[b+8>>2]|0)|0;b=Sm(h,0,d)|0;if(e|0)Gn(e)|0;a:do if((b+1|0)>>>0>=2){b=b+-1|0;if(b>>>0>(f-(c[g>>2]|0)|0)>>>0)b=1;else while(1){if(!b){b=0;break a}d=a[h>>0]|0;f=c[g>>2]|0;c[g>>2]=f+1;a[f>>0]=d;h=h+1|0;b=b+-1|0}}else b=2;while(0);hc=i;return b|0}function yw(a){a=a|0;var b=0,d=0;a=a+8|0;b=Gn(c[a>>2]|0)|0;d=Ln(0,0,4)|0;if(b|0)Gn(b)|0;if(!d){a=c[a>>2]|0;if(!a)a=1;else{b=Gn(a)|0;a=bn()|0;if(b|0)Gn(b)|0;return (a|0)==1|0}}else a=-1;return a|0}function zw(a){a=a|0;return 0}function Aw(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=e;j=a+8|0;h=0;i=0;a:while(1){if((d|0)==(e|0)|h>>>0>=f>>>0)break;g=Gn(c[j>>2]|0)|0;a=$n(d,k-d|0,b)|0;if(g|0)Gn(g)|0;switch(a|0){case -2:case -1:break a;case 0:{a=1;break}default:{}}h=h+1|0;i=a+i|0;d=d+a|0}return i|0}function Bw(a){a=a|0;var b=0;a=c[a+8>>2]|0;if(a){b=Gn(a)|0;a=bn()|0;if(b)Gn(b)|0}else a=1;return a|0}function Cw(a){a=a|0;var b=0,d=0;c[a>>2]=51372;b=a+8|0;d=c[b>>2]|0;if((d|0)!=(gr()|0))xn(c[b>>2]|0);Kq(a);return}function Dw(a){a=a|0;Cw(a);nz(a);return}function Ew(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;b=hc;a=hc=hc+31&-32;hc=hc+16|0;j=a+4|0;c[j>>2]=d;c[a>>2]=g;h=Nw(d,e,j,g,h,a,1114111,0)|0;c[f>>2]=c[j>>2];c[i>>2]=c[a>>2];hc=b;return h|0}function Fw(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;b=hc;a=hc=hc+31&-32;hc=hc+16|0;j=a+4|0;c[j>>2]=d;c[a>>2]=g;h=Mw(d,e,j,g,h,a,1114111,0)|0;c[f>>2]=c[j>>2];c[i>>2]=c[a>>2];hc=b;return h|0}function Gw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Hw(a){a=a|0;return 0}function Iw(a){a=a|0;return 0}function Jw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Lw(c,d,e,1114111,0)|0}function Kw(a){a=a|0;return 4}function Lw(b,c,e,f,g){b=b|0;c=c|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;o=c;if((((g&4|0)!=0?(o-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)g=(a[b+2>>0]|0)==-65?b+3|0:b;else g=b;h=0;a:while(1){if(!(h>>>0<e>>>0&g>>>0<c>>>0))break;l=a[g>>0]|0;n=l&255;if(n>>>0>f>>>0)break;do if(l<<24>>24<=-1){if((l&255)<194)break a;if((l&255)<224){if((o-g|0)<2)break a;i=d[g+1>>0]|0;if((i&192|0)!=128)break a;if((i&63|n<<6&1984)>>>0>f>>>0)break a;else{g=g+2|0;break}}if((l&255)<240){if((o-g|0)<3)break a;j=a[g+1>>0]|0;i=a[g+2>>0]|0;switch(l<<24>>24){case -32:{if((j&-32)<<24>>24!=-96)break a;break}case -19:{if((j&-32)<<24>>24!=-128)break a;break}default:if((j&-64)<<24>>24!=-128)break a}i=i&255;if((i&192|0)!=128)break a;if(((j&63)<<6|n<<12&61440|i&63)>>>0>f>>>0)break a;else{g=g+3|0;break}}if((l&255)>=245)break a;if((e-h|0)>>>0<2|(o-g|0)<4)break a;m=a[g+1>>0]|0;i=a[g+2>>0]|0;k=a[g+3>>0]|0;switch(l<<24>>24){case -16:{if((m+112&255)>=48)break a;break}case -12:{if((m&-16)<<24>>24!=-128)break a;break}default:if((m&-64)<<24>>24!=-128)break a}j=i&255;if((j&192|0)!=128)break a;i=k&255;if((i&192|0)!=128)break a;if(((m&63)<<12|n<<18&1835008|j<<6&4032|i&63)>>>0>f>>>0)break a;else{h=h+1|0;g=g+4|0}}else g=g+1|0;while(0);h=h+1|0}return g-b|0}function Mw(e,f,g,h,i,j,k,l){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;c[g>>2]=e;c[j>>2]=h;if(l&4){e=c[g>>2]|0;h=f;if((((h-e|0)>2?(a[e>>0]|0)==-17:0)?(a[e+1>>0]|0)==-69:0)?(a[e+2>>0]|0)==-65:0)c[g>>2]=e+3}else h=f;s=i;a:while(1){n=c[g>>2]|0;if(n>>>0>=f>>>0){e=0;break}r=c[j>>2]|0;if(r>>>0>=i>>>0){e=1;break}m=a[n>>0]|0;q=m&255;if(q>>>0>k>>>0){e=2;break}do if(m<<24>>24>-1){b[r>>1]=m&255;e=n+1|0}else{if((m&255)<194){e=2;break a}if((m&255)<224){if((h-n|0)<2){e=1;break a}e=d[n+1>>0]|0;if((e&192|0)!=128){e=2;break a}e=e&63|q<<6&1984;if(e>>>0>k>>>0){e=2;break a}b[r>>1]=e;e=n+2|0;break}if((m&255)<240){if((h-n|0)<3){e=1;break a}l=a[n+1>>0]|0;e=a[n+2>>0]|0;switch(m<<24>>24){case -32:{if((l&-32)<<24>>24!=-96){e=2;break a}break}case -19:{if((l&-32)<<24>>24!=-128){e=2;break a}break}default:if((l&-64)<<24>>24!=-128){e=2;break a}}e=e&255;if((e&192|0)!=128){e=2;break a}e=(l&63)<<6|q<<12|e&63;if((e&65535)>>>0>k>>>0){e=2;break a}b[r>>1]=e;e=n+3|0;break}if((m&255)>=245){e=2;break a}if((h-n|0)<4){e=1;break a}o=a[n+1>>0]|0;e=a[n+2>>0]|0;l=a[n+3>>0]|0;switch(m<<24>>24){case -16:{if((o+112&255)>=48){e=2;break a}break}case -12:{if((o&-16)<<24>>24!=-128){e=2;break a}break}default:if((o&-64)<<24>>24!=-128){e=2;break a}}p=e&255;if((p&192|0)!=128){e=2;break a}e=l&255;if((e&192|0)!=128){e=2;break a}if((s-r|0)<4){e=1;break a}n=q&7;l=o&255;m=p<<6;e=e&63;if((l<<12&258048|n<<18|m&4032|e)>>>0>k>>>0){e=2;break a}b[r>>1]=l<<2&60|p>>>4&3|((l>>>4&3|n<<2)<<6)+16320|55296;r=r+2|0;c[j>>2]=r;b[r>>1]=e|m&960|56320;e=(c[g>>2]|0)+4|0}while(0);c[g>>2]=e;c[j>>2]=(c[j>>2]|0)+2}return e|0}function Nw(d,f,g,h,i,j,k,l){d=d|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;c[g>>2]=d;c[j>>2]=h;if(l&2)if((i-h|0)<3)d=1;else{c[j>>2]=h+1;a[h>>0]=-17;m=c[j>>2]|0;c[j>>2]=m+1;a[m>>0]=-69;m=c[j>>2]|0;c[j>>2]=m+1;a[m>>0]=-65;m=4}else m=4;a:do if((m|0)==4){n=f;d=c[g>>2]|0;while(1){if(d>>>0>=f>>>0){d=0;break a}h=b[d>>1]|0;m=h&65535;if(m>>>0>k>>>0){d=2;break a}do if((h&65535)<128){d=c[j>>2]|0;if((i-d|0)<1){d=1;break a}c[j>>2]=d+1;a[d>>0]=h}else{if((h&65535)<2048){d=c[j>>2]|0;if((i-d|0)<2){d=1;break a}c[j>>2]=d+1;a[d>>0]=m>>>6|192;l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=m&63|128;break}if((h&65535)<55296){d=c[j>>2]|0;if((i-d|0)<3){d=1;break a}c[j>>2]=d+1;a[d>>0]=m>>>12|224;l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=m>>>6&63|128;l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=m&63|128;break}if((h&65535)>=56320){if((h&65535)<57344){d=2;break a}d=c[j>>2]|0;if((i-d|0)<3){d=1;break a}c[j>>2]=d+1;a[d>>0]=m>>>12|224;l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=m>>>6&63|128;l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=m&63|128;break}if((n-d|0)<4){d=1;break a}d=d+2|0;h=e[d>>1]|0;if((h&64512|0)!=56320){d=2;break a}if((i-(c[j>>2]|0)|0)<4){d=1;break a}l=m&960;if(((l<<10)+65536|m<<10&64512|h&1023)>>>0>k>>>0){d=2;break a}c[g>>2]=d;d=(l>>>6)+1|0;l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=d>>>2|240;l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=m>>>2&15|d<<4&48|128;l=c[j>>2]|0;c[j>>2]=l+1;a[l>>0]=m<<4&48|h>>>6&15|128;m=c[j>>2]|0;c[j>>2]=m+1;a[m>>0]=h&63|128}while(0);d=(c[g>>2]|0)+2|0;c[g>>2]=d}}while(0);return d|0}function Ow(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;c[a>>2]=51420;e=a+8|0;f=a+12|0;d=0;while(1){b=c[e>>2]|0;if(d>>>0>=(c[f>>2]|0)-b>>2>>>0)break;b=c[b+(d<<2)>>2]|0;if(b|0?(h=b+4|0,g=c[h>>2]|0,c[h>>2]=g+-1,(g|0)==0):0)wc[c[(c[b>>2]|0)+8>>2]&255](b);d=d+1|0}Az(a+144|0);Qw(e);Kq(a);return}function Pw(a){a=a|0;Ow(a);nz(a);return}function Qw(b){b=b|0;var d=0;d=c[b>>2]|0;do if(d|0){c[b+4>>2]=d;if((d|0)==(b+16|0)){a[b+128>>0]=0;break}else{nz(d);break}}while(0);return}function Rw(b){b=b|0;var d=0;c[b>>2]=51440;d=c[b+8>>2]|0;if(d|0?a[b+12>>0]|0:0)oz(d);Kq(b);return}function Sw(a){a=a|0;Rw(a);nz(a);return}function Tw(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=c[(ax()|0)+((b&255)<<2)>>2]&255;return b|0}function Uw(b,d,e){b=b|0;d=d|0;e=e|0;while(1){if((d|0)==(e|0))break;b=a[d>>0]|0;if(b<<24>>24>-1){b=ax()|0;b=c[b+(a[d>>0]<<2)>>2]&255}a[d>>0]=b;d=d+1|0}return e|0}function Vw(a,b){a=a|0;b=b|0;if(b<<24>>24>-1)b=c[($w()|0)+(b<<24>>24<<2)>>2]&255;return b|0}function Ww(b,d,e){b=b|0;d=d|0;e=e|0;while(1){if((d|0)==(e|0))break;b=a[d>>0]|0;if(b<<24>>24>-1){b=$w()|0;b=c[b+(a[d>>0]<<2)>>2]&255}a[d>>0]=b;d=d+1|0}return e|0}function Xw(a,b){a=a|0;b=b|0;return b|0}function Yw(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;while(1){if((c|0)==(d|0))break;a[e>>0]=a[c>>0]|0;e=e+1|0;c=c+1|0}return d|0}function Zw(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function _w(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;while(1){if((c|0)==(d|0))break;b=a[c>>0]|0;a[f>>0]=b<<24>>24>-1?b:e;f=f+1|0;c=c+1|0}return d|0}function $w(){return c[(dn()|0)>>2]|0}function ax(){return c[(en()|0)>>2]|0}function bx(){return c[(an()|0)>>2]|0}function cx(a){a=a|0;c[a>>2]=51492;Az(a+12|0);Kq(a);return}function dx(a){a=a|0;cx(a);nz(a);return}function ex(b){b=b|0;return a[b+8>>0]|0}function fx(b){b=b|0;return a[b+9>>0]|0}function gx(a,b){a=a|0;b=b|0;vz(a,b+12|0);return}function hx(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;wz(a,76282,Rp(76282)|0);return}function ix(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;wz(a,76276,Rp(76276)|0);return}function jx(a){a=a|0;c[a>>2]=51532;Az(a+16|0);Kq(a);return}function kx(a){a=a|0;jx(a);nz(a);return}function lx(a){a=a|0;return c[a+8>>2]|0}function mx(a){a=a|0;return c[a+12>>2]|0}function nx(a,b){a=a|0;b=b|0;vz(a,b+16|0);return}function ox(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Mz(a,51588,Rt(51588)|0);return}function px(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Mz(a,51564,Rt(51564)|0);return}function qx(a){a=a|0;Kq(a);nz(a);return}function rx(a){a=a|0;Kq(a);nz(a);return}function sx(a,c,d){a=a|0;c=c|0;d=d|0;if(d>>>0<128)a=(b[(bx()|0)+(d<<1)>>1]&c)<<16>>16!=0;else a=0;return a|0}function tx(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;while(1){if((d|0)==(f|0))break;if((c[d>>2]|0)>>>0<128){a=bx()|0;a=e[a+(c[d>>2]<<1)>>1]|0}else a=0;b[g>>1]=a;g=g+2|0;d=d+4|0}return f|0}function ux(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;while(1){if((e|0)==(f|0)){e=f;break}if((c[e>>2]|0)>>>0<128?(a=bx()|0,(b[a+(c[e>>2]<<1)>>1]&d)<<16>>16):0)break;e=e+4|0}return e|0}function vx(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;while(1){if((e|0)==(f|0)){e=f;break}if((c[e>>2]|0)>>>0>=128)break;a=bx()|0;if(!((b[a+(c[e>>2]<<1)>>1]&d)<<16>>16))break;e=e+4|0}return e|0}function wx(a,b){a=a|0;b=b|0;if(b>>>0<128)b=c[(ax()|0)+(b<<2)>>2]|0;return b|0}function xx(a,b,d){a=a|0;b=b|0;d=d|0;while(1){if((b|0)==(d|0))break;a=c[b>>2]|0;if(a>>>0<128){a=ax()|0;a=c[a+(c[b>>2]<<2)>>2]|0}c[b>>2]=a;b=b+4|0}return d|0}function yx(a,b){a=a|0;b=b|0;if(b>>>0<128)b=c[($w()|0)+(b<<2)>>2]|0;return b|0}function zx(a,b,d){a=a|0;b=b|0;d=d|0;while(1){if((b|0)==(d|0))break;a=c[b>>2]|0;if(a>>>0<128){a=$w()|0;a=c[a+(c[b>>2]<<2)>>2]|0}c[b>>2]=a;b=b+4|0}return d|0}function Ax(a,b){a=a|0;b=b|0;return b<<24>>24|0}function Bx(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;while(1){if((d|0)==(e|0))break;c[f>>2]=a[d>>0];f=f+4|0;d=d+1|0}return e|0}function Cx(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function Dx(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;h=(e-d|0)>>>2;b=g;g=d;while(1){if((g|0)==(e|0))break;i=c[g>>2]|0;a[b>>0]=i>>>0<128?i&255:f;b=b+1|0;g=g+4|0}return d+(h<<2)|0}function Ex(a){a=a|0;Kq(a);nz(a);return}function Fx(a){a=a|0;Kq(a);nz(a);return}function Gx(a){a=a|0;Kq(a);nz(a);return}function Hx(a){a=a|0;c[a>>2]=51848;return}function Ix(a){a=a|0;c[a>>2]=51884;return}function Jx(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;c[b+4>>2]=f+-1;c[b>>2]=51440;f=b+8|0;c[f>>2]=d;a[b+12>>0]=e&1;if(!d)c[f>>2]=bx()|0;return}function Kx(a,b){a=a|0;b=b|0;var d=0;c[a+4>>2]=b+-1;c[a>>2]=51420;b=a+8|0;Lx(b,28);d=a+144|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;wz(d,74221,Rp(74221)|0);c[a+12>>2]=c[b>>2];Mx();Nx(a,97464);Ox();Px(a,97472);Qx();Rx(a,97480);Sx();Tx(a,97496);Ux();Vx(a,97504);Wx();Xx(a,97512);Yx();Zx(a,97528);_x();$x(a,97536);ay();by(a,97544);cy();dy(a,97568);ey();fy(a,97600);gy();hy(a,97608);iy();jy(a,97616);ky();ly(a,97624);my();ny(a,97632);oy();py(a,97640);qy();ry(a,97648);sy();ty(a,97656);uy();vy(a,97664);wy();xy(a,97672);yy();zy(a,97680);Ay();By(a,97688);Cy();Dy(a,97696);Ey();Fy(a,97712);Gy();Hy(a,97728);Iy();Jy(a,97744);Ky();Ly(a,97760);My();Ny(a,97768);return}function Lx(b,d){b=b|0;d=d|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;a[b+128>>0]=0;if(d|0){_y(b,d);Ry(b,d)}return}function Mx(){c[24367]=0;c[24366]=49276;return}function Nx(a,b){a=a|0;b=b|0;Oy(a,b,ir(99652)|0);return}function Ox(){c[24369]=0;c[24368]=49308;return}function Px(a,b){a=a|0;b=b|0;Oy(a,b,ir(99660)|0);return}function Qx(){Jx(97480,0,0,1);return}function Rx(a,b){a=a|0;b=b|0;Oy(a,b,ir(99668)|0);return}function Sx(){c[24375]=0;c[24374]=51636;return}function Tx(a,b){a=a|0;b=b|0;Oy(a,b,ir(99700)|0);return}function Ux(){c[24377]=0;c[24376]=51704;return}function Vx(a,b){a=a|0;b=b|0;Oy(a,b,ir(99972)|0);return}function Wx(){Zy(97512,1);return}function Xx(a,b){a=a|0;b=b|0;Oy(a,b,ir(99980)|0);return}function Yx(){c[24383]=0;c[24382]=51752;return}function Zx(a,b){a=a|0;b=b|0;Oy(a,b,ir(99988)|0);return}function _x(){c[24385]=0;c[24384]=51800;return}function $x(a,b){a=a|0;b=b|0;Oy(a,b,ir(99996)|0);return}function ay(){Yy(97544,1);return}function by(a,b){a=a|0;b=b|0;Oy(a,b,ir(99684)|0);return}function cy(){Xy(97568,1);return}function dy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99708)|0);return}function ey(){c[24401]=0;c[24400]=49340;return}function fy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99692)|0);return}function gy(){c[24403]=0;c[24402]=49404;return}function hy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99716)|0);return}function iy(){c[24405]=0;c[24404]=49468;return}function jy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99724)|0);return}function ky(){c[24407]=0;c[24406]=49520;return}function ly(a,b){a=a|0;b=b|0;Oy(a,b,ir(99732)|0);return}function my(){c[24409]=0;c[24408]=50876;return}function ny(a,b){a=a|0;b=b|0;Oy(a,b,ir(99892)|0);return}function oy(){c[24411]=0;c[24410]=50932;return}function py(a,b){a=a|0;b=b|0;Oy(a,b,ir(99900)|0);return}function qy(){c[24413]=0;c[24412]=50988;return}function ry(a,b){a=a|0;b=b|0;Oy(a,b,ir(99908)|0);return}function sy(){c[24415]=0;c[24414]=51044;return}function ty(a,b){a=a|0;b=b|0;Oy(a,b,ir(99916)|0);return}function uy(){c[24417]=0;c[24416]=51100;return}function vy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99924)|0);return}function wy(){c[24419]=0;c[24418]=51128;return}function xy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99932)|0);return}function yy(){c[24421]=0;c[24420]=51156;return}function zy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99940)|0);return}function Ay(){c[24423]=0;c[24422]=51184;return}function By(a,b){a=a|0;b=b|0;Oy(a,b,ir(99948)|0);return}function Cy(){c[24425]=0;c[24424]=51616;Hx(97704);c[24424]=49572;c[24426]=49620;return}function Dy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99800)|0);return}function Ey(){c[24429]=0;c[24428]=51616;Ix(97720);c[24428]=49656;c[24430]=49704;return}function Fy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99868)|0);return}function Gy(){c[24433]=0;c[24432]=51616;c[24434]=gr()|0;c[24432]=50828;return}function Hy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99876)|0);return}function Iy(){c[24437]=0;c[24436]=51616;c[24438]=gr()|0;c[24436]=50852;return}function Jy(a,b){a=a|0;b=b|0;Oy(a,b,ir(99884)|0);return}function Ky(){c[24441]=0;c[24440]=51212;return}function Ly(a,b){a=a|0;b=b|0;Oy(a,b,ir(99956)|0);return}function My(){c[24443]=0;c[24442]=51244;return}function Ny(a,b){a=a|0;b=b|0;Oy(a,b,ir(99964)|0);return}function Oy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=a+8|0;e=c[f>>2]|0;if((c[a+12>>2]|0)-e>>2>>>0>d>>>0)a=f;else{Py(f,d+1|0);a=f;e=c[f>>2]|0}e=c[e+(d<<2)>>2]|0;if(e|0?(g=e+4|0,f=c[g>>2]|0,c[g>>2]=f+-1,(f|0)==0):0)wc[c[(c[e>>2]|0)+8>>2]&255](e);c[(c[a>>2]|0)+(d<<2)>>2]=b;return}function Py(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a+4|0;f=c[a>>2]|0;e=(c[d>>2]|0)-f>>2;if(e>>>0>=b>>>0){if(e>>>0>b>>>0)c[d>>2]=f+(b<<2)}else Qy(a,b-e|0);return}function Qy(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;i=hc;f=hc=hc+31&-32;hc=hc+32|0;g=a+8|0;h=a+4|0;d=c[h>>2]|0;do if((c[g>>2]|0)-d>>2>>>0<b>>>0){d=(d-(c[a>>2]|0)>>2)+b|0;e=Sy(a)|0;if(e>>>0<d>>>0)Yz(a);else{j=c[a>>2]|0;k=(c[g>>2]|0)-j|0;g=k>>1;Ty(f,k>>2>>>0<e>>>1>>>0?(g>>>0<d>>>0?d:g):e,(c[h>>2]|0)-j>>2,a+16|0);Uy(f,b);Vy(a,f);Wy(f);break}}else Ry(a,b);while(0);hc=i;return}function Ry(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;a=b;b=c[d>>2]|0;do{c[b>>2]=0;b=(c[d>>2]|0)+4|0;c[d>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Sy(a){a=a|0;return 1073741823}function Ty(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=b+12|0;c[h>>2]=0;c[b+16>>2]=f;do if(d){g=f+112|0;if(d>>>0<29&(a[g>>0]|0)==0){a[g>>0]=1;break}else{f=lz(d<<2)|0;break}}else f=0;while(0);c[b>>2]=f;e=f+(e<<2)|0;c[b+8>>2]=e;c[b+4>>2]=e;c[h>>2]=f+(d<<2);return}function Uy(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=b;b=c[d>>2]|0;do{c[b>>2]=0;b=(c[d>>2]|0)+4|0;c[d>>2]=b;a=a+-1|0}while((a|0)!=0);return}function Vy(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=c[a>>2]|0;h=a+4|0;g=b+4|0;f=(c[h>>2]|0)-e|0;d=(c[g>>2]|0)+(0-(f>>2)<<2)|0;c[g>>2]=d;if((f|0)>0){fB(d|0,e|0,f|0)|0;e=g;d=c[g>>2]|0}else e=g;g=c[a>>2]|0;c[a>>2]=d;c[e>>2]=g;g=b+8|0;f=c[h>>2]|0;c[h>>2]=c[g>>2];c[g>>2]=f;g=a+8|0;h=b+12|0;a=c[g>>2]|0;c[g>>2]=c[h>>2];c[h>>2]=a;c[b>>2]=c[e>>2];return}function Wy(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[b+4>>2]|0;e=b+8|0;f=c[e>>2]|0;while(1){if((f|0)==(d|0))break;g=f+-4|0;c[e>>2]=g;f=g}e=c[b>>2]|0;do if(e|0){d=c[b+16>>2]|0;if((e|0)==(d|0)){a[d+112>>0]=0;break}else{nz(e);break}}while(0);return}function Xy(a,b){a=a|0;b=b|0;c[a+4>>2]=b+-1;c[a>>2]=51532;c[a+8>>2]=46;c[a+12>>2]=44;b=a+16|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;c[b+(a<<2)>>2]=0;a=a+1|0}return}function Yy(b,d){b=b|0;d=d|0;c[b+4>>2]=d+-1;c[b>>2]=51492;a[b+8>>0]=46;a[b+9>>0]=44;d=b+12|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[d+(b<<2)>>2]=0;b=b+1|0}return}function Zy(a,b){a=a|0;b=b|0;c[a+4>>2]=b+-1;c[a>>2]=51372;c[a+8>>2]=gr()|0;return}function _y(b,d){b=b|0;d=d|0;var e=0;if((Sy(b)|0)>>>0<d>>>0)Yz(b);e=b+128|0;if(d>>>0<29&(a[e>>0]|0)==0){a[e>>0]=1;e=b+16|0}else e=lz(d<<2)|0;c[b+4>>2]=e;c[b>>2]=e;c[b+8>>2]=e+(d<<2);return}function $y(){if((a[97776]|0)==0?RA(97776)|0:0){az()|0;c[25002]=100004}return c[25002]|0}function az(){bz();c[25001]=97784;return 100004}function bz(){Kx(97784,1);return}function cz(){dz(100012,$y()|0);return 100012}function dz(a,b){a=a|0;b=b|0;b=c[b>>2]|0;c[a>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;return}function ez(){if((a[97944]|0)==0?RA(97944)|0:0){cz()|0;c[25004]=100012}return c[25004]|0}function fz(a){a=a|0;var b=0;b=c[(ez()|0)>>2]|0;c[a>>2]=b;a=b+4|0;c[a>>2]=(c[a>>2]|0)+1;return}function gz(a){a=a|0;return}function hz(a,b){a=a|0;b=b|0;return 0}function iz(a){a=a|0;var b=0,d=0;b=a+8|0;if(!((c[b>>2]|0)!=0?(d=c[b>>2]|0,c[b>>2]=d+-1,(d|0)!=0):0))wc[c[(c[a>>2]|0)+16>>2]&255](a);return}function jz(a,b,d){a=a|0;b=b|0;d=d|0;Do(100020)|0;while(1){if((c[a>>2]|0)!=1)break;eb(100048,100020)|0}if(!(c[a>>2]|0)){c[a>>2]=1;Eo(100020)|0;wc[d&255](b);Do(100020)|0;c[a>>2]=-1;Eo(100020)|0;iB(100048)|0}else Eo(100020)|0;return}function kz(){Pa()}function lz(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=uo(b)|0;if(a|0)break;a=UA()|0;if(!a){a=0;break}vc[a&3]()}return a|0}function mz(a){a=a|0;return lz(a)|0}function nz(a){a=a|0;vo(a);return}function oz(a){a=a|0;nz(a);return}function pz(a,b){a=a|0;b=b|0;var d=0,e=0;e=tn(b)|0;d=lz(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=qz(d)|0;fB(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function qz(a){a=a|0;return a+12|0}function rz(a,b){a=a|0;b=b|0;c[a>>2]=52004;pz(a+4|0,b);return}function sz(a){a=a|0;return 1}function tz(a){a=a|0;Pa()}function uz(a){a=a|0;Pa()}function vz(b,d){b=b|0;d=d|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if((a[d+11>>0]|0)<0)wz(b,c[d>>2]|0,c[d+4>>2]|0);else{c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2]}return}function wz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=hc;f=hc=hc+31&-32;hc=hc+16|0;if(e>>>0>4294967279)tz(b);if(e>>>0<11)a[b+11>>0]=e;else{i=e+16&-16;h=lz(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;b=h}dp(b,d,e)|0;a[f>>0]=0;Jq(b+e|0,f);hc=g;return}function xz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;g=hc;f=hc=hc+31&-32;hc=hc+16|0;if(d>>>0>4294967279)tz(b);if(d>>>0<11)a[b+11>>0]=d;else{i=d+16&-16;h=lz(i)|0;c[b>>2]=h;c[b+8>>2]=i|-2147483648;c[b+4>>2]=d;b=h}yz(b,d,e)|0;a[f>>0]=0;Jq(b+d|0,f);hc=g;return}function yz(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)hB(a|0,(cp(c)|0)&255|0,b|0)|0;return a|0}function zz(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)uz(b);else{g=g-e|0;wz(b,(h?c[d>>2]|0:d)+e|0,g>>>0<f>>>0?g:f);return}}function Az(b){b=b|0;if((a[b+11>>0]|0)<0)nz(c[b>>2]|0);return}function Bz(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=hc;i=hc=hc+31&-32;hc=hc+16|0;j=b+11|0;f=a[j>>0]|0;g=f<<24>>24<0;if(g)h=(c[b+8>>2]&2147483647)+-1|0;else h=10;do if(h>>>0>=e>>>0){if(g)f=c[b>>2]|0;else f=b;Cz(f,d,e)|0;a[i>>0]=0;Jq(f+e|0,i);if((a[j>>0]|0)<0){c[b+4>>2]=e;break}else{a[j>>0]=e;break}}else{if(g)f=c[b+4>>2]|0;else f=f&255;Dz(b,h,e-h|0,f,0,f,e,d)}while(0);hc=k;return b|0}function Cz(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)gB(a|0,b|0,c|0)|0;return a|0}function Dz(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=hc;n=hc=hc+31&-32;hc=hc+16|0;if((-18-d|0)>>>0<e>>>0)tz(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=lz(k)|0;if(g|0)dp(l,m,g)|0;if(i|0)dp(l+g|0,j,i)|0;e=f-h|0;f=e-g|0;if(f|0)dp(l+g+i|0,m+g+h|0,f)|0;if((d|0)!=10)nz(m);c[b>>2]=l;c[b+8>>2]=k|-2147483648;i=e+i|0;c[b+4>>2]=i;a[n>>0]=0;Jq(l+i|0,n);hc=o;return}function Ez(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(d>>>0>4294967279)tz(b);i=b+11|0;g=a[i>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{k=g&255;e=10}j=k>>>0>d>>>0?k:d;d=j>>>0<11;j=d?10:(j+16&-16)+-1|0;do if((j|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=13}else{dp(b,d,(g&255)+1|0)|0;nz(d);h=16}}else{e=j+1|0;f=lz(e)|0;if(h){g=1;e=c[b>>2]|0;h=13;break}else{dp(f,b,(g&255)+1|0)|0;d=b+4|0;h=15;break}}while(0);if((h|0)==13){d=b+4|0;dp(f,e,(c[d>>2]|0)+1|0)|0;nz(e);if(g){e=j+1|0;h=15}else h=16}if((h|0)==15){c[b+8>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==16){a[i>>0]=k;break}}while(0);return}function Fz(a,b){a=a|0;b=b|0;return Bz(a,b,Rp(b)|0)|0}function Gz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=hc;g=hc=hc+31&-32;hc=hc+16|0;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;Jq(i,g);c[b+4>>2]=d;break}else{a[g>>0]=0;Jq(b+d|0,g);a[h>>0]=d;break}else Hz(b,d-f|0,e)|0;while(0);hc=j;return}function Hz(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=hc;i=hc=hc+31&-32;hc=hc+16|0;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){Iz(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;yz(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;Jq(g+f|0,i)}hc=k;return b|0}function Iz(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)tz(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=lz(j)|0;if(g|0)dp(k,l,g)|0;e=f-h-g|0;if(e|0)dp(k+g+i|0,l+g+h|0,e)|0;if((d|0)!=10)nz(l);c[b>>2]=k;c[b+8>>2]=j|-2147483648;return}function Jz(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)uz(b);if(f)b=c[b>>2]|0;return b+d|0}function Kz(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=hc;i=hc=hc+31&-32;hc=hc+16|0;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;dp(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;Jq(g+f|0,i)}}else Dz(b,g,f+e-g|0,f,f,0,e,d);hc=k;return b|0}function Lz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=hc;i=hc=hc+31&-32;hc=hc+16|0;h=i+1|0;a[h>>0]=d;g=b+11|0;d=a[g>>0]|0;e=d<<24>>24<0;if(e){f=c[b+4>>2]|0;d=(c[b+8>>2]&2147483647)+-1|0}else{f=d&255;d=10}if((f|0)==(d|0)){Iz(b,d,1,d,d,0,0);if((a[g>>0]|0)<0)e=8;else e=7}else if(e)e=8;else e=7;if((e|0)==7){a[g>>0]=f+1;d=b}else if((e|0)==8){d=c[b>>2]|0;c[b+4>>2]=f+1}b=d+f|0;Jq(b,h);a[i>>0]=0;Jq(b+1|0,i);hc=j;return}function Mz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=hc;h=hc=hc+31&-32;hc=hc+16|0;if(e>>>0>1073741807)tz(b);do if(e>>>0>=2){g=e+4&-4;if(g>>>0>1073741823)Pa();else{f=lz(g<<2)|0;c[b>>2]=f;c[b+8>>2]=g|-2147483648;c[b+4>>2]=e;break}}else{a[b+8+3>>0]=e;f=b}while(0);vp(f,d,e)|0;c[h>>2]=0;Rq(f+(e<<2)|0,h);hc=i;return}function Nz(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=hc;h=hc=hc+31&-32;hc=hc+16|0;if(d>>>0>1073741807)tz(b);do if(d>>>0>=2){g=d+4&-4;if(g>>>0>1073741823)Pa();else{f=lz(g<<2)|0;c[b>>2]=f;c[b+8>>2]=g|-2147483648;c[b+4>>2]=d;break}}else{a[b+8+3>>0]=d;f=b}while(0);Oz(f,d,e)|0;c[h>>2]=0;Rq(f+(d<<2)|0,h);hc=i;return}function Oz(a,b,c){a=a|0;b=b|0;c=c|0;if(b)so(a,c,b)|0;return a|0}function Pz(b){b=b|0;if((a[b+8+3>>0]|0)<0)nz(c[b>>2]|0);return}function Qz(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=hc;j=hc=hc+31&-32;hc=hc+16|0;f=b+8|0;k=f+3|0;h=a[k>>0]|0;i=h<<24>>24<0;if(i)g=(c[f>>2]&2147483647)+-1|0;else g=1;do if(g>>>0>=e>>>0){if(i)f=c[b>>2]|0;else f=b;Rz(f,d,e)|0;c[j>>2]=0;Rq(f+(e<<2)|0,j);if((a[k>>0]|0)<0){c[b+4>>2]=e;break}else{a[k>>0]=e;break}}else{if(i)f=c[b+4>>2]|0;else f=h&255;Sz(b,g,e-g|0,f,0,f,e,d)}while(0);hc=l;return b|0}function Rz(a,b,c){a=a|0;b=b|0;c=c|0;if(c)to(a,b,c)|0;return a|0}function Sz(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,p=0;p=hc;o=hc=hc+31&-32;hc=hc+16|0;if((1073741806-d|0)>>>0<e>>>0)tz(b);l=b+8|0;if((a[l+3>>0]|0)<0)n=c[b>>2]|0;else n=b;if(d>>>0<536870887){e=e+d|0;k=d<<1;e=e>>>0<k>>>0?k:e;e=e>>>0<2?2:e+4&-4;if(e>>>0>1073741823)Pa();else m=e}else m=1073741807;k=lz(m<<2)|0;if(g|0)vp(k,n,g)|0;if(i|0)vp(k+(g<<2)|0,j,i)|0;e=f-h|0;f=e-g|0;if(f|0)vp(k+(g<<2)+(i<<2)|0,n+(g<<2)+(h<<2)|0,f)|0;if((d|0)!=1)nz(n);c[b>>2]=k;c[l>>2]=m|-2147483648;i=e+i|0;c[b+4>>2]=i;c[o>>2]=0;Rq(k+(i<<2)|0,o);hc=p;return}function Tz(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;if(d>>>0>1073741807)tz(b);l=b+8|0;i=l+3|0;g=a[i>>0]|0;h=g<<24>>24<0;if(h){k=c[b+4>>2]|0;e=(c[l>>2]&2147483647)+-1|0}else{k=g&255;e=1}j=k>>>0>d>>>0?k:d;d=j>>>0<2;j=d?1:(j+4&-4)+-1|0;do if((j|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(h){g=0;e=d;f=b;h=15}else{vp(b,d,(g&255)+1|0)|0;nz(d);h=18}}else{e=j+1|0;if(e>>>0>1073741823)Pa();f=lz(e<<2)|0;if(h){g=1;e=c[b>>2]|0;h=15;break}else{vp(f,b,(g&255)+1|0)|0;d=b+4|0;h=17;break}}while(0);if((h|0)==15){d=b+4|0;vp(f,e,(c[d>>2]|0)+1|0)|0;nz(e);if(g){e=j+1|0;h=17}else h=18}if((h|0)==17){c[l>>2]=e|-2147483648;c[d>>2]=k;c[b>>2]=f;break}else if((h|0)==18){a[i>>0]=k;break}}while(0);return}function Uz(a,b){a=a|0;b=b|0;return Qz(a,b,Rt(b)|0)|0}function Vz(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,m=0;if((1073741807-d|0)>>>0<e>>>0)tz(b);m=b+8|0;if((a[m+3>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<536870887){e=e+d|0;j=d<<1;e=e>>>0<j>>>0?j:e;e=e>>>0<2?2:e+4&-4;if(e>>>0>1073741823)Pa();else k=e}else k=1073741807;j=lz(k<<2)|0;if(g|0)vp(j,l,g)|0;e=f-h-g|0;if(e|0)vp(j+(g<<2)+(i<<2)|0,l+(g<<2)+(h<<2)|0,e)|0;if((d|0)!=1)nz(l);c[b>>2]=j;c[m>>2]=k|-2147483648;return}function Wz(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=hc;j=hc=hc+31&-32;hc=hc+16|0;f=b+8|0;k=f+3|0;g=a[k>>0]|0;i=g<<24>>24<0;if(i){f=(c[f>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{f=1;h=g&255}if((f-h|0)>>>0>=e>>>0){if(e|0){if(i)g=c[b>>2]|0;else g=b;vp(g+(h<<2)|0,d,e)|0;f=h+e|0;if((a[k>>0]|0)<0)c[b+4>>2]=f;else a[k>>0]=f;c[j>>2]=0;Rq(g+(f<<2)|0,j)}}else Sz(b,f,h+e-f|0,h,h,0,e,d);hc=l;return b|0}function Xz(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=hc;j=hc=hc+31&-32;hc=hc+16|0;i=j+4|0;c[i>>2]=d;e=b+8|0;h=e+3|0;d=a[h>>0]|0;f=d<<24>>24<0;if(f){g=c[b+4>>2]|0;d=(c[e>>2]&2147483647)+-1|0}else{g=d&255;d=1}if((g|0)==(d|0)){Vz(b,d,1,d,d,0,0);if((a[h>>0]|0)<0)e=8;else e=7}else if(f)e=8;else e=7;if((e|0)==7){a[h>>0]=g+1;d=b}else if((e|0)==8){d=c[b>>2]|0;c[b+4>>2]=g+1}b=d+(g<<2)|0;Rq(b,i);c[j>>2]=0;Rq(b+4|0,j);hc=k;return}function Yz(a){a=a|0;Pa()}function Zz(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;f=hc=hc+31&-32;hc=hc+48|0;h=f+32|0;d=f+24|0;i=f+16|0;g=f;f=f+36|0;a=_z()|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]=76520;$z(76470,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(nc[c[(c[2916]|0)+16>>2]&31](11664,e,f)|0){i=c[f>>2]|0;i=kc[c[(c[i>>2]|0)+8>>2]&127](i)|0;c[g>>2]=76520;c[g+4>>2]=a;c[g+8>>2]=i;$z(76384,g)}else{c[i>>2]=76520;c[i+4>>2]=a;$z(76429,i)}}$z(76508,h)}function _z(){var a=0,b=0;a=hc;b=hc=hc+31&-32;hc=hc+16|0;if(!(Jo(100096,3)|0)){b=Ho(c[25025]|0)|0;hc=a;return b|0}else $z(76659,b);return 0}function $z(a,b){a=a|0;b=b|0;var d=0;d=hc=hc+31&-32;hc=hc+16|0;c[d>>2]=b;b=c[12099]|0;Cm(b,a,d)|0;jo(10,b)|0;Pa()}function aA(a){a=a|0;return}function bA(a){a=a|0;aA(a);nz(a);return}function cA(a){a=a|0;return}function dA(a){a=a|0;return}function eA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=hc;f=hc=hc+31&-32;hc=hc+64|0;if(!(iA(a,b,0)|0))if((b|0)!=0?(g=mA(b,11688,11672,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;zc[c[(c[g>>2]|0)+28>>2]&31](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;hc=h;return b|0}function fA(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(iA(a,c[b+8>>2]|0,g)|0)lA(0,b,d,e,f);return}function gA(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(!(iA(b,c[d+8>>2]|0,g)|0)){if(iA(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 kA(0,d,e,f);while(0);return}function hA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(iA(a,c[b+8>>2]|0,0)|0)jA(0,b,d,e);return}function iA(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function jA(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 kA(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 lA(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 mA(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=hc;n=hc=hc+31&-32;hc=hc+64|0;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(iA(m,f,0)|0){c[n+48>>2]=1;Bc[c[(c[m>>2]|0)+20>>2]&15](m,n,o,o,1,0);d=(c[g>>2]|0)==1?o:0}else{Ac[c[(c[m>>2]|0)+24>>2]&15](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);hc=p;return d|0}function nA(a){a=a|0;aA(a);nz(a);return}function oA(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(iA(a,c[b+8>>2]|0,g)|0)lA(0,b,d,e,f);else{a=c[a+8>>2]|0;Bc[c[(c[a>>2]|0)+20>>2]&15](a,b,d,e,f,g)}return}function pA(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(!(iA(b,c[d+8>>2]|0,g)|0)){if(!(iA(b,c[d>>2]|0,g)|0)){i=c[b+8>>2]|0;Ac[c[(c[i>>2]|0)+24>>2]&15](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;Bc[c[(c[b>>2]|0)+20>>2]&15](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 kA(0,d,e,f);while(0);return}function qA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(iA(a,c[b+8>>2]|0,0)|0)jA(0,b,d,e);else{a=c[a+8>>2]|0;zc[c[(c[a>>2]|0)+28>>2]&31](a,b,d,e)}return}function rA(a){a=a|0;return}function sA(){var a=0,b=0;a=hc;b=hc=hc+31&-32;hc=hc+16|0;if(!(Go(100100,141)|0)){hc=a;return}else $z(76708,b)}function tA(a){a=a|0;var b=0,d=0;b=hc;d=hc=hc+31&-32;hc=hc+16|0;vo(a);if(!(Io(c[25025]|0,0)|0)){hc=b;return}else $z(76758,d)}function uA(){var a=0,b=0;a=_z()|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)vA(c[b+12>>2]|0);vA(wA()|0)}function vA(a){a=a|0;var b=0;b=hc=hc+31&-32;hc=hc+16|0;vc[a&3]();$z(76811,b)}function wA(){var a=0;a=c[12978]|0;c[12978]=a+0;return a|0}function xA(a){a=a|0;return}function yA(a){a=a|0;c[a>>2]=52004;CA(a+4|0);return}function zA(a){a=a|0;yA(a);nz(a);return}function AA(a){a=a|0;return BA(a+4|0)|0}function BA(a){a=a|0;return c[a>>2]|0}function CA(a){a=a|0;var b=0,d=0;if(sz(a)|0?(b=DA(c[a>>2]|0)|0,d=b+8|0,a=c[d>>2]|0,c[d>>2]=a+-1,(a+-1|0)<0):0)nz(b);return}function DA(a){a=a|0;return a+-12|0}function EA(a){a=a|0;yA(a);nz(a);return}function FA(a){a=a|0;aA(a);nz(a);return}function GA(a,b,c){a=a|0;b=b|0;c=c|0;return iA(a,b,0)|0}function HA(a){a=a|0;aA(a);nz(a);return}function IA(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=hc;h=hc=hc+31&-32;hc=hc+64|0;c[d>>2]=c[c[d>>2]>>2];if(!(JA(a,b,0)|0))if(((b|0)!=0?(e=mA(b,11688,11776,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(!(iA(c[a>>2]|0,c[b>>2]|0,0)|0)?!(iA(c[a>>2]|0,11808,0)|0):0){a=c[a>>2]|0;if((((a|0)!=0?(g=mA(a,11688,11672,0)|0,(g|0)!=0):0)?(f=c[b>>2]|0,(f|0)!=0):0)?(i=mA(f,11688,11672,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;zc[c[(c[i>>2]|0)+28>>2]&31](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;hc=j;return a|0}function JA(a,b,c){a=a|0;b=b|0;c=c|0;if(iA(a,b,0)|0)a=1;else a=iA(b,11816,0)|0;return a|0}function KA(a){a=a|0;aA(a);nz(a);return}function LA(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(iA(b,c[d+8>>2]|0,h)|0)lA(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;PA(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;PA(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 MA(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(!(iA(b,c[d+8>>2]|0,g)|0)){if(!(iA(b,c[d>>2]|0,g)|0)){q=c[b+12>>2]|0;k=b+16+(q<<3)|0;QA(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;QA(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;QA(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;QA(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;PA(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 kA(0,d,e,f);while(0);return}function NA(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(iA(b,c[d+8>>2]|0,0)|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;OA(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{OA(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0<g>>>0)}}else jA(0,d,e,f);while(0);return}function OA(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;zc[c[(c[a>>2]|0)+28>>2]&31](a,b,d+f|0,(g&2|0)==0?2:e);return}function PA(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;Bc[c[(c[a>>2]|0)+20>>2]&15](a,b,d,e+h|0,(i&2|0)==0?2:f,g);return}function QA(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;Ac[c[(c[a>>2]|0)+24>>2]&15](a,b,d+g|0,(h&2|0)==0?2:e,f);return}function RA(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function SA(a){a=a|0;return}function TA(a){a=a|0;return}function UA(){var a=0;a=c[25026]|0;c[25026]=a+0;return a|0}function VA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=hc;e=hc=hc+31&-32;hc=hc+16|0;c[e>>2]=c[d>>2];a=nc[c[(c[a>>2]|0)+16>>2]&31](a,b,e)|0;if(a)c[d>>2]=c[e>>2];hc=f;return a&1|0}function WA(a){a=a|0;if(!a)a=0;else a=(mA(a,11688,11776,0)|0)!=0&1;return a|0}function XA(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=u(e,f)|0;d=a>>>16;a=(c>>>16)+(u(e,d)|0)|0;e=b>>>16;b=u(e,f)|0;return (x((a>>>16)+(u(e,d)|0)+(((a&65535)+b|0)>>>16)|0),a+b<<16|c&65535|0)|0}function YA(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=XA(e,f)|0;a=y()|0;return (x((u(b,f)|0)+(u(d,e)|0)+a|a&0|0),c|0|0)|0}function ZA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (x(b+d+(c>>>0<a>>>0|0)>>>0|0),c|0)|0}function _A(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 (x(d|0),a-c>>>0|0)|0}function $A(a){a=a|0;return (a?31-(v(a^a-1)|0)|0:32)|0}function aB(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 (x(n|0),f)|0}else{if(!g){n=0;f=0;return (x(n|0),f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (x(n|0),f)|0}}g=(i|0)==0;do if(h){if(!g){g=(v(i|0)|0)-(v(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 (x(n|0),f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (x(n|0),f)|0}g=h-1|0;if(g&h|0){i=(v(h|0)|0)+33-(v(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 (x(o|0),p)|0}else{p=$A(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (x(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 (x(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 (x(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>>>(($A(i|0)|0)>>>0);return (x(o|0),p)|0}g=(v(i|0)|0)-(v(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 (x(o|0),p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (x(o|0),p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=ZA(m|0,l|0,-1,-1)|0;d=y()|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;_A(k|0,d|0,e|0,n|0)|0;p=y()|0;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=_A(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=y()|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 (x(o|0),p)|0}function bB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return aB(a,b,c,d,0)|0}function cB(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){x(b>>c|0);return a>>>c|(b&(1<<c)-1)<<32-c}x(((b|0)<0?-1:0)|0);return b>>c-32|0}function dB(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){x(b>>>c|0);return a>>>c|(b&(1<<c)-1)<<32-c}x(0);return b>>>c-32|0}function eB(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){x(b<<c|(a&(1<<c)-1<<32-c)>>>32-c|0);return a<<c}x(a<<c-32|0);return 0}function fB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192){Wa(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 gB(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 fB(b,c,d)|0;return b|0}function hB(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 iB(a){a=a|0;return 0}function jB(a){a=a|0;var b=0,d=0,e=0;e=Ta()|0;d=c[i>>2]|0;b=d+a|0;if((a|0)>0&(b|0)<(d|0)|(b|0)<0){ib(b|0)|0;X(12);return -1}if((b|0)>(e|0))if(!(Xa(b|0)|0)){X(12);return -1}c[i>>2]=b;return d|0}function kB(a,b){a=a|0;b=b|0;return kc[a&127](b|0)|0}function lB(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 lc[a&1](b|0,+c,d|0,e|0,f|0,g|0)|0}function mB(a,b,c){a=a|0;b=b|0;c=c|0;return mc[a&31](b|0,c|0)|0}function nB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nc[a&31](b|0,c|0,d|0)|0}function oB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return oc[a&7](b|0,c|0,d|0,e|0)|0}function pB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return pc[a&7](b|0,c|0,d|0,e|0,+f)|0}function qB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return qc[a&31](b|0,c|0,d|0,e|0,f|0)|0}function rB(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;return rc[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function sB(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return sc[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function tB(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return tc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function uB(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;return uc[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function vB(a){a=a|0;vc[a&3]()}function wB(a,b){a=a|0;b=b|0;wc[a&255](b|0)}function xB(a,b,c){a=a|0;b=b|0;c=c|0;xc[a&63](b|0,c|0)}function yB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yc[a&31](b|0,c|0,d|0)}function zB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;zc[a&31](b|0,c|0,d|0,e|0)}function AB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ac[a&15](b|0,c|0,d|0,e|0,f|0)}function BB(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;Bc[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function CB(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Cc[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function DB(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;Dc[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function EB(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;Ec[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function FB(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Fc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function GB(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;Gc[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0)}function HB(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;Hc[a&1](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)}function IB(a){a=a|0;w(0);return 0}function JB(a,b,c,d,e,f){a=a|0;b=+b;c=c|0;d=d|0;e=e|0;f=f|0;w(1);return 0}function KB(a,b){a=a|0;b=b|0;w(2);return 0}function LB(a,b,c){a=a|0;b=b|0;c=c|0;w(3);return 0}function MB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;w(4);return 0}function NB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;w(5);return 0}function OB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;w(6);return 0}function PB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;w(7);return 0}function QB(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;w(8);return 0}function RB(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;w(9);return 0}function SB(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;w(10);return 0}function TB(){w(11)}function UB(){R()}function VB(a){a=a|0;w(12)}function WB(a,b){a=a|0;b=b|0;w(13)}function XB(a,b,c){a=a|0;b=b|0;c=c|0;w(14)}function YB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;w(15)}function ZB(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;w(16)}function _B(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;w(17)}function $B(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;w(18)}function aC(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;w(19)}function bC(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;w(20)}function cC(a,b,c,d,e,f,g,h,i,j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;w(21)}function dC(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;w(22)}function eC(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;w(23)}
function Ic(){Yp();le();$l();Zp()}function Jc(a){a=a|0;var b=0;b=hc;hc=hc+a|0;hc=hc+15&-16;return b|0}function Kc(){return hc|0}function Lc(a){a=a|0;hc=a}function Mc(a,b){a=a|0;b=b|0;hc=a;ic=b}function Nc(){Za();return 0}function Oc(a){a=a|0;var b=0;ha(9256,9264,9280,0,57675,61,57678,0,57678,0,57026,57680,132);b=lz(8)|0;c[b>>2]=44;c[b+4>>2]=0;ja(9256,57035,3,11984,57683,4,b|0,0);b=lz(8)|0;c[b>>2]=45;c[b+4>>2]=0;ja(9256,57041,3,11996,57683,5,b|0,0);b=lz(8)|0;c[b>>2]=133;c[b+4>>2]=0;ja(9256,57048,2,12008,57688,46,b|0,0);b=lz(8)|0;c[b>>2]=134;c[b+4>>2]=0;ja(9256,57055,2,12008,57688,46,b|0,0);b=lz(8)|0;c[b>>2]=47;c[b+4>>2]=0;a=lz(8)|0;c[a>>2]=48;c[a+4>>2]=0;ka(9256,57073,9248,57692,18,b|0,9248,57683,6,a|0);a=lz(8)|0;c[a>>2]=49;c[a+4>>2]=0;b=lz(8)|0;c[b>>2]=50;c[b+4>>2]=0;ka(9256,57083,9248,57692,18,a|0,9248,57683,6,b|0);b=lz(8)|0;c[b>>2]=51;c[b+4>>2]=0;a=lz(8)|0;c[a>>2]=52;c[a+4>>2]=0;ka(9256,57091,9248,57692,18,b|0,9248,57683,6,a|0);a=lz(8)|0;c[a>>2]=53;c[a+4>>2]=0;b=lz(8)|0;c[b>>2]=54;c[b+4>>2]=0;ka(9256,57103,9248,57692,18,a|0,9248,57683,6,b|0);b=lz(8)|0;c[b>>2]=55;c[b+4>>2]=0;a=lz(8)|0;c[a>>2]=56;c[a+4>>2]=0;ka(9256,57115,9248,57692,18,b|0,9248,57683,6,a|0);a=lz(8)|0;c[a>>2]=57;c[a+4>>2]=0;ka(9256,57119,9248,57692,18,a|0,0,0,0,0);ha(9336,9352,9368,9256,57675,62,57675,63,57675,64,57130,57680,135);a=lz(4)|0;c[a>>2]=136;ja(9336,57696,2,12016,57688,58,a|0,0);ia(9256,57716,3,12024,57852,27,19);ia(9256,57726,3,12148,57852,28,7);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=hc;hc=hc+16|0;n=o+8|0;m=o;e=b+22828|0;l=b+4|0;if(a[e>>0]|0){f=c[l>>2]|0;if((a[97232]|0)==0?RA(97232)|0:0)c[24488]=Ba(1,11936)|0;ya(c[24488]|0,f|0,57143,m|0)}a[e>>0]=1;g=c[l>>2]|0;j=Ga(57149)|0;g=Ca(g|0,j|0)|0;za(j|0);j=fd(g,57161)|0;za(g|0);c[n>>2]=57169;c[n+4>>2]=j?76282:76276;Ua(0,n|0);a[b+22764>>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=Pm(f,46,g)|0;if(!f){g=h;break a}if(!(xm(f,57178,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+22829>>0]=(e-i|0)!=-1&(g|0)!=(h|0)&1;h=Aa(57183)|0;e=a[j>>0]|0;if(e<<24>>24<0){f=c[k>>2]|0;g=uo(f+4|0)|0;c[g>>2]=f;e=c[d>>2]|0}else{f=e&255;g=uo(f+4|0)|0;c[g>>2]=f;e=d}fB(g+4|0,e|0,f|0)|0;c[n>>2]=g;c[m>>2]=Fa(h|0,1,11944,n|0)|0;za(h|0);dd(m,57193,57204);ed(n,b,57041);k=c[m>>2]|0;d=Ga(57216)|0;Ka(k|0,d|0,c[n>>2]|0);za(d|0);za(c[n>>2]|0);c[b+22820>>2]=Qa()|0;b=c[l>>2]|0;n=Ga(57226)|0;Ka(b|0,n|0,c[m>>2]|0);za(n|0);za(c[m>>2]|0);hc=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=hc;hc=hc+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=Ga(57354)|0;c[w>>2]=Ca(f|0,x|0)|0;za(x|0);id(y,w);za(c[w>>2]|0);x=y+11|0;f=a[x>>0]|0;j=y+4|0;e=b+22824|0;c[e>>2]=(c[e>>2]|0)+(f<<24>>24<0?c[j>>2]|0:f&255);f=Qa()|0;h=b+22820|0;i=c[h>>2]|0;if((f|0)>(i|0)){g[b+22840>>3]=+(c[e>>2]|0)*1.0e3/+(f-i|0);c[h>>2]=f;c[e>>2]=0}a:do if(!(a[b+22829>>0]|0))switch(a[(Jz(y,0)|0)>>0]|0){case 1:{zz(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;jd(b,(r&255)<<8|s&255|(t&255)<<16|(u&255)<<24,w);if((a[v>>0]|0)<0)nz(c[w>>2]|0);break a}case 2:{zz(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;kd(b,(r&255)<<8|s&255|(t&255)<<16|(u&255)<<24,w);if((a[v>>0]|0)<0)nz(c[w>>2]|0);break a}case 10:{e=c[b+4>>2]|0;f=Ga(57226)|0;e=Ca(e|0,f|0)|0;za(f|0);f=Ga(57380)|0;h=f;if((a[97280]|0)==0?RA(97280)|0:0)c[24494]=Ba(2,11972)|0;b=c[24494]|0;Da(f|0);c[w>>2]=h;ya(b|0,e|0,57375,w|0);za(f|0);za(e|0);break a}default:{b=a[(Jz(y,0)|0)>>0]|0;c[k>>2]=57396;c[k+4>>2]=b;Ua(1,k|0);break a}}else{v=b+12|0;p=a[x>>0]|0;r=p<<24>>24<0;Kz(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;gB(f|0,f+13|0,b|0)|0;Gz(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;zz(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;Kz(w,r?c[s>>2]|0:s,A)|0;if((a[m>>0]|0)<0)nz(c[s>>2]|0);switch(k<<24>>24){case 8:{jd(b,e,w);break}case 9:{kd(b,e,w);break}default:{c[t>>2]=57359;c[t+4>>2]=k&255;Ua(0,t|0)}}c[q>>2]=(c[q>>2]|0)+4;if((a[o>>0]|0)<0)nz(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;gB(f|0,f+r|0,A|0)|0;Gz(v,A,0);c[q>>2]=0}while(0);if((a[x>>0]|0)>=0){hc=z;return}nz(c[y>>2]|0);hc=z;return}function Rc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=hc;hc=hc+16|0;h=j;g=Aa(57613)|0;f=b+22812|0;c[h>>2]=c[f>>2];za(wa(g|0,1,11980,h|0)|0);za(g|0);g=b+22784|0;Cd(g);Bd(g);h=c[b+22788>>2]|0;i=b+22792|0;d=c[i>>2]|0;if((d|0)!=(h|0))c[i>>2]=d+(~((d+-4-h|0)>>>2)<<2);Dd(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+22764>>0]|0)==0?(e=c[b+22736>>2]|0,e|0):0)vo(e);c[f>>2]=0;a[b+22816>>0]=1;a[b+22808>>0]=0;Gz(b+12|0,0,0);c[b+24>>2]=0;a[b+8>>0]=0;hc=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=hc;hc=hc+16|0;g=o+4|0;i=o;j=b+22804|0;a:do if(c[j>>2]|0){k=b+22788|0;l=b+22800|0;m=b+4|0;n=b+22836|0;h=b+22728|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=sd(c[m>>2]|0,57604,g)|0,p=((c[n>>2]|0)*1e3|0)+p|0,c[i>>2]=p,(p|0)>0):0)break;rd(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){nz(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){nz(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+22808>>0]=1;c[b+22812>>2]=td(c[m>>2]|0,57588,i)|0;hc=o;return}while(0);a[b+22808>>0]=0;hc=o;return}function Tc(a,b){a=a|0;b=b|0;var e=0,f=0;e=hc;hc=hc+16|0;f=e;c[f>>2]=d[b+22828>>0];c[a>>2]=La(11824,f|0)|0;hc=e;return}function Uc(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=hc;hc=hc+16|0;g=e;f=+va(c[d>>2]|0,11824,g|0);Ja(c[g>>2]|0);a[b+22828>>0]=f!=0.0&1;hc=e;return}function Vc(a,b){a=a|0;b=b|0;var e=0,f=0;e=hc;hc=hc+16|0;f=e;c[f>>2]=d[b+22829>>0];c[a>>2]=La(11824,f|0)|0;hc=e;return}function Wc(b,d){b=b|0;d=d|0;var e=0,f=0.0,g=0;e=hc;hc=hc+16|0;g=e;f=+va(c[d>>2]|0,11824,g|0);Ja(c[g>>2]|0);a[b+22829>>0]=f!=0.0&1;hc=e;return}function Xc(a,b){a=a|0;b=b|0;var d=0,e=0;d=hc;hc=hc+16|0;e=d;c[e>>2]=c[b+22832>>2];c[a>>2]=La(11872,e|0)|0;hc=d;return}function Yc(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=hc;hc=hc+16|0;f=d;e=+va(c[b>>2]|0,11872,f|0);Ja(c[f>>2]|0);c[a+22832>>2]=~~e;hc=d;return}function Zc(a,b){a=a|0;b=b|0;var d=0,e=0;d=hc;hc=hc+16|0;e=d;c[e>>2]=c[b+22836>>2];c[a>>2]=La(11872,e|0)|0;hc=d;return}function _c(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=hc;hc=hc+16|0;f=d;e=+va(c[b>>2]|0,11872,f|0);Ja(c[f>>2]|0);c[a+22836>>2]=~~e;hc=d;return}function $c(a,b){a=a|0;b=b|0;var d=0,e=0;d=hc;hc=hc+16|0;e=d;g[e>>3]=+g[b+22840>>3];c[a>>2]=La(11912,e|0)|0;hc=d;return}function ad(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0;d=hc;hc=hc+16|0;f=d;e=+va(c[b>>2]|0,11912,f|0);Ja(c[f>>2]|0);g[a+22840>>3]=e;hc=d;return}function bd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=hc;hc=hc+16|0;e=d+4|0;f=d;c[e>>2]=Ha()|0;i=b+22788|0;h=b+22800|0;j=c[h>>2]|0;g=(j>>>0)/204|0;Ed(e,57626,(c[(c[i>>2]|0)+(g<<2)>>2]|0)+((j-(g*204|0)|0)*20|0)|0);b=b+22804|0;h=(c[b>>2]|0)+-1+(c[h>>2]|0)|0;g=(h>>>0)/204|0;Fd(e,57632,(c[(c[i>>2]|0)+(g<<2)>>2]|0)+((h-(g*204|0)|0)*20|0)|0);c[f>>2]=c[b>>2];Gd(e,57637,f);b=c[e>>2]|0;c[a>>2]=b;Da(b|0);za(c[e>>2]|0);hc=d;return}function cd(a){a=a|0;za(c[a>>2]|0);return}function dd(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a>>2]|0;b=Ga(b|0)|0;d=Ga(d|0)|0;Ka(a|0,b|0,d|0);za(d|0);za(b|0);return}function ed(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=Ga(d|0)|0;d=Ca(f|0,e|0)|0;za(e|0);hd(a,d,57330,b);za(d|0);return}function fd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0.0;g=hc;hc=hc+16|0;e=g;f=g+8|0;if((a[97240]|0)==0?RA(97240)|0:0)c[24489]=Ba(1,11940)|0;h=+xa(c[24489]|0,b|0,d|0,f|0,e|0);Ja(c[f>>2]|0);hc=g;return h!=0.0|0}function gd(a){a=a|0;O(a|0)|0;uA()}function hd(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=hc;hc=hc+16|0;g=i;h=i+8|0;if((a[97248]|0)==0?RA(97248)|0:0)c[24490]=Ba(2,11948)|0;k=c[24490]|0;Da(c[f>>2]|0);c[g>>2]=c[f>>2];j=+xa(k|0,d|0,e|0,h|0,g|0);h=c[h>>2]|0;c[b>>2]=~~j>>>0;Ja(h|0);hc=i;return}function id(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0,j=0;h=hc;hc=hc+16|0;e=h;i=+va(c[d>>2]|0,9224,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)tz(b);if(g>>>0<11){a[b+11>>0]=g;if(!g){f=b;g=f+g|0;a[g>>0]=0;Ja(e|0);hc=h;return}else d=b}else{j=g+16&-16;d=lz(j)|0;c[b>>2]=d;c[b+8>>2]=j|-2147483648;c[b+4>>2]=g}fB(d|0,f|0,g|0)|0;j=d;j=j+g|0;a[j>>0]=0;Ja(e|0);hc=h;return}function jd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=hc;hc=hc+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+22817|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:{md(b,c[b+22832>>2]<<10,d,g);break}case 11:{md(b,16e3,16e3,g);break}case 2:{md(b,(c[b+22832>>2]|0)*576|0,d,g);break}default:{}}if(a[f>>0]|0){hc=j;return}}g=b+28|0;if((h|0)!=2){hc=j;return}d=c[b+36>>2]|0;f=b+32|0;d=nd(g,e,d+(c[f>>2]|0)|0,d+(c[g>>2]|0)|0)|0;if(!d){hc=j;return}h=(c[f>>2]|0)+d|0;e=(h|0)==(c[g>>2]|0);c[f>>2]=e?0:h;if(!e){hc=j;return}d=c[b+4>>2]|0;if((a[97232]|0)==0?RA(97232)|0:0)c[24488]=Ba(1,11936)|0;ya(c[24488]|0,d|0,57411,i|0);hc=j;return}function kd(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=hc;hc=hc+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+22816|0;if(a[i>>0]|0){g=a[g>>0]|0;f=g&15;switch(g&15){case 7:{c[j>>2]=57457;Ua(0,j|0);break}case 12:{c[k>>2]=57472;Ua(0,k|0);break}default:{c[l>>2]=57487;c[l+4>>2]=f;Ua(0,l|0);hc=q;return}}if(!(h<<24>>24==0&(g&-16)<<24>>24==16)){hc=q;return}qd(b+22728|0,e,f);a[i>>0]=0;c[m>>2]=57547;Ua(0,m|0);hc=q;return}if(h<<24>>24!=1){f=c[b+4>>2]|0;if((a[97232]|0)==0?RA(97232)|0:0)c[24488]=Ba(1,11936)|0;ya(c[24488]|0,f|0,57563,o|0);hc=q;return}if(!d){hc=q;return}c[p>>2]=f+5;f=b+22836|0;a:do if(c[f>>2]|0){g=b+22808|0;do if(!(a[g>>0]|0)){c[o>>2]=d;h=b+4|0;o=sd(c[h>>2]|0,57604,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+22812>>2]=td(c[h>>2]|0,57588,n)|0;break}else break a}while(0);j=b+22792|0;g=c[j>>2]|0;k=b+22788|0;f=c[k>>2]|0;o=g-f|0;i=b+22800|0;l=b+22804|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)){ud(b+22784|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;hc=q;return}while(0);rd(b+22728|0,e);hc=q;return}function ld(b){b=b|0;if((a[b+11>>0]|0)>=0)return;nz(c[b>>2]|0);return}function md(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=hc;hc=hc+32|0;h=i;a[b+22817>>0]=0;j=u(d<<1,f)|0;c[b+28>>2]=j;g=b+36|0;c[g>>2]=uo(j)|0;c[h>>2]=57431;c[h+4>>2]=j;Ua(0,h|0);g=c[g>>2]>>1;b=c[b+4>>2]|0;if((a[97256]|0)==0?RA(97256)|0:0)c[24491]=Ba(5,16)|0;j=c[24491]|0;c[h>>2]=d;c[h+8>>2]=e;c[h+16>>2]=f;c[h+24>>2]=g;ya(j|0,b|0,57421,h|0);hc=i;return}function nd(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;r=d+12|0;i=d+22668|0;j=i+11|0;h=a[j>>0]|0;if(h<<24>>24<0)n=c[d+22672>>2]|0;else n=h&255;h=e+11|0;q=a[h>>0]|0;k=e+4|0;l=e+12|0;Gz(i,n-(c[l>>2]|0)+(q<<24>>24<0?c[k>>2]|0:q&255)|0,0);if((a[j>>0]|0)<0)m=c[i>>2]|0;else m=i;h=a[h>>0]|0;if(h<<24>>24<0){h=c[l>>2]|0;i=c[k>>2]|0;j=h;h=(c[e>>2]|0)+h|0}else{q=c[l>>2]|0;i=h&255;j=q;h=e+q|0}fB(m+n|0,h|0,i-j|0)|0;if((od(r)|0)==-1){r=0;return r|0}o=d+13448|0;p=d+13450|0;q=d+13452|0;n=d+18060|0;h=0;while(1){i=b[o>>1]|0;d=b[p>>1]|0;j=d&65535;h=(u((i&65535)<<1,j)|0)+h|0;e=j+-1|0;do if(d<<16>>16)if(i<<16>>16==2){m=j<<2;j=n;k=q;l=f;i=e;while(1){d=c[k>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[l>>0]=d;a[l+1>>0]=d>>>8;d=c[j>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[l+2>>0]=d;a[l+3>>0]=d>>>8;if(!i)break;else{j=j+4|0;k=k+4|0;l=l+4|0;i=i+-1|0}}f=f+m|0;break}else{l=j<<1;j=q;k=f;i=e;while(1){d=c[j>>2]|0;d=(d|0)>268431359?32767:(d|0)<-268439552?-32768:d+4096>>13;a[k>>0]=d;a[k+1>>0]=d>>>8;if(!i)break;else{j=j+4|0;k=k+2|0;i=i+-1|0}}f=f+l|0;break}while(0);if(f>>>0>=g>>>0){f=22;break}if((od(r)|0)==-1){f=22;break}}if((f|0)==22)return h|0;return 0}function od(d){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;u=hc;hc=hc+272|0;t=u+256|0;s=u;k=u+248|0;l=u+244|0;q=d+22656|0;n=q+11|0;if((a[n>>0]|0)<0)e=c[q>>2]|0;else e=q;r=d+22668|0;i=e+(c[r>>2]|0)|0;j=pd(d,i)|0;if((j|0)==-1){d=-1;hc=u;return d|0}f=c[r>>2]|0;g=f+j|0;c[r>>2]=g;e=a[n>>0]|0;if(e<<24>>24<0)e=c[d+22660>>2]|0;else e=e&255;if((e|0)==(g|0)){c[r>>2]=f;d=-1;hc=u;return d|0}e=d+9328|0;if((c[e>>2]|0)==0?(p=wo(1152,4)|0,c[e>>2]=p,(p|0)==0):0){c[d+60>>2]=49;g=d+92|0;e=d+68|0}else{e=d+68|0;f=(c[e>>2]|0)==0;g=d+92|0;h=c[g>>2]|0;if(((h&16|0)!=0?(m=d+28|0,p=c[m+4>>2]|0,o=s,c[o>>2]=c[m>>2],c[o+4>>2]=p,o=d+88|0,p=b[o>>1]|0,c[t>>2]=c[s>>2],c[t+4>>2]=c[s+4>>2],p=Gl(t,(h&4096|0)==0?(f?136:256):f?72:136,p)|0,b[o>>1]=p,p<<16>>16!=(b[d+90>>1]|0)):0)?(c[d+108>>2]&1|0)==0:0)c[d+60>>2]=513}p=d+64|0;o=(c[e>>2]|0)==0?1:2;f=d+28|0;Pl(f,o,c[g>>2]&4096,s,l,k)|0;c[g>>2]=c[g>>2]|c[k>>2];g=d+96|0;c[g>>2]=c[g>>2]|c[s+4>>2];g=Dl(f)|0;f=i-g+j|0;if((a[n>>0]|0)<0)e=c[q>>2]|0;else e=q;Bl(t,e+(c[r>>2]|0)|0);e=Fl(t,32)|0;if((e&-1703936|0)==-1966080){if(!(e&65536))El(t,16);j=Fl(t,e>>>19&1|8)|0}else j=0;m=d+22672|0;k=m+11|0;e=a[k>>0]|0;if(e<<24>>24<0)e=c[d+22676>>2]|0;else e=e&255;l=d+22684|0;i=e-(c[l>>2]|0)|0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;Gz(t,f,0);h=t+11|0;fB(((a[h>>0]|0)<0?c[t>>2]|0:t)+(c[t+12>>2]|0)|0,g|0,f|0)|0;g=a[h>>0]|0;f=g<<24>>24<0;Kz(m,f?c[t>>2]|0:t,f?c[t+4>>2]|0:g&255)|0;if((a[h>>0]|0)<0)nz(c[t>>2]|0);e=a[n>>0]|0;if(e<<24>>24<0){e=c[r>>2]|0;f=c[q>>2]|0;g=e;e=(c[d+22660>>2]|0)-e|0}else{n=c[r>>2]|0;f=q;g=n;e=(e&255)-n|0}gB(f|0,f+g|0,e|0)|0;Gz(q,e,0);c[r>>2]=0;e=a[k>>0]|0;h=e<<24>>24<0;if(h)e=c[d+22676>>2]|0;else e=e&255;g=e-(c[l>>2]|0)|0;e=c[s>>2]|0;if(i>>>0<e>>>0|g>>>0<j>>>0)e=-1;else{f=i-e|0;c[l>>2]=f;if(h)e=c[m>>2]|0;else e=m;Bl(t,e+f|0);Ql(t,p,s,o)|0;Kl(d+9332|0,p);g=g-j-f+(c[l>>2]|0)|0;c[l>>2]=g;e=a[k>>0]|0;if(e<<24>>24<0){e=c[d+22676>>2]|0;f=c[m>>2]|0}else{e=e&255;f=m}e=e-g|0;gB(f|0,f+g|0,e|0)|0;Gz(m,e,0);c[l>>2]=0;e=0}d=e;hc=u;return d|0}function pd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=a+64|0;Bl(a+28|0,b);c[a+20>>2]=b;Wl(h,a)|0;d=a+100|0;switch(c[h>>2]|0){case 1:{b=384;break}case 3:{b=(c[a+92>>2]&4096|0)==0?1152:576;f=3;break}default:{b=1152;f=3}}g=a+84|0;Xl(d,0,b,c[g>>2]|0);d=a+80|0;e=c[d>>2]|0;if(!e){b=a+16|0;e=c[b>>2]|0;if(!((e|0)!=0?!(e>>>0>64e4&(c[h>>2]|0)==3):0))f=8;do if((f|0)==8)if((Yl(a,h)|0)==-1){h=-1;return h|0}else{e=c[b>>2]|0;break}while(0);c[d>>2]=e;f=a+92|0;b=c[f>>2]|1024;c[f>>2]=b}else b=c[a+92>>2]|0;d=b>>>7&1;switch(c[h>>2]|0){case 1:{h=(((e*12|0)>>>0)/((c[g>>2]|0)>>>0)|0)+d<<2;return h|0}case 3:{b=(b&4096|0)==0?144:72;break}default:b=144}h=u(e,b)|0;h=((h>>>0)/((c[g>>2]|0)>>>0)|0)+d|0;return h|0}function qd(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=hc;hc=hc+16|0;j=l;k=d+12|0;g=c[k>>2]|0;c[j>>2]=57577;c[j+4>>2]=e;Ua(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){yc[c[(c[b>>2]|0)+20>>2]&31](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){hc=l;return}yc[c[(c[b>>2]|0)+20>>2]&31](b,g+f|0,e);hc=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;yc[c[(c[b>>2]|0)+20>>2]&31](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;yc[c[(c[b>>2]|0)+20>>2]&31](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;yc[c[(c[b>>2]|0)+20>>2]&31](b,j+d|0,(m&255)<<8|n&255);hc=l;return}default:{hc=l;return}}}function rd(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;yc[c[(c[b>>2]|0)+20>>2]&31](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 sd(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=hc;hc=hc+16|0;f=h;g=h+8|0;if((a[97264]|0)==0?RA(97264)|0:0)c[24492]=Ba(2,11956)|0;j=c[24492]|0;c[f>>2]=c[e>>2];i=+xa(j|0,b|0,d|0,g|0,f|0);Ja(c[g>>2]|0);hc=h;return ~~i|0}function td(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=hc;hc=hc+16|0;f=h;g=h+8|0;if((a[97272]|0)==0?RA(97272)|0:0)c[24493]=Ba(2,11964)|0;j=c[24493]|0;c[f>>2]=c[e>>2];i=+xa(j|0,b|0,d|0,g|0,f|0);Ja(c[g>>2]|0);hc=h;return ~~i|0}function ud(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=hc;hc=hc+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{gB(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=N(8)|0;rz(r,68988);c[r>>2]=52024;S(r|0,11744,126)}else{h=lz(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){nz(d);b=c[p>>2]|0}}while(0);c[b>>2]=q;c[p>>2]=(c[p>>2]|0)+4;hc=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=N(8)|0;rz(r,68988);c[r>>2]=52024;S(r|0,11744,126)}else{d=lz(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]=lz(4080)|0;xd(k,g);b=c[q>>2]|0;d=c[p>>2]|0;if((b|0)!=(d|0)){do{b=b+-4|0;yd(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)nz(f);hc=r;return}if((d|0)!=(b|0)){c[k>>2]=lz(4080)|0;vd(a,k);hc=r;return}c[k>>2]=lz(4080)|0;wd(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{gB(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=N(8)|0;rz(r,68988);c[r>>2]=52024;S(r|0,11744,126)}else{h=lz(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){nz(d);b=c[q>>2]|0}}while(0);c[b>>2]=n;c[q>>2]=(c[q>>2]|0)+4;hc=r;return}function vd(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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{i=lz(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){nz(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}function wd(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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{h=lz(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){nz(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 xd(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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{i=lz(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){nz(e);d=c[q>>2]|0}}while(0);c[d>>2]=c[b>>2];c[q>>2]=(c[q>>2]|0)+4;return}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,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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{h=lz(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){nz(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 zd(a){a=a|0;var b=0,d=0,e=0,f=0;Cd(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{nz(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;nz(b);return}function Ad(b){b=b|0;if(a[b+36>>0]|0)return;b=c[b+8>>2]|0;if(!b)return;vo(b);return}function Bd(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{nz(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;Dd(a);return}b=a+16|0;e=c[b>>2]|0;d=a+4|0;if(e>>>0>203){nz(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){Dd(a);return}nz(c[d+-4>>2]|0);c[b>>2]=(c[b>>2]|0)+-4;Dd(a);return}function Cd(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)nz(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{nz(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 Dd(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=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{g=lz(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;nz(b);return}function Ed(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=hc;hc=hc+16|0;f=e;a=c[a>>2]|0;b=Ga(b|0)|0;c[f>>2]=c[d>>2];d=La(11888,f|0)|0;Ka(a|0,b|0,d|0);za(d|0);za(b|0);hc=e;return}function Fd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=hc;hc=hc+16|0;f=e;a=c[a>>2]|0;b=Ga(b|0)|0;c[f>>2]=c[d>>2];d=La(11888,f|0)|0;Ka(a|0,b|0,d|0);za(d|0);za(b|0);hc=e;return}function Gd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=hc;hc=hc+16|0;f=e;a=c[a>>2]|0;b=Ga(b|0)|0;c[f>>2]=c[d>>2];d=La(11896,f|0)|0;Ka(a|0,b|0,d|0);za(d|0);za(b|0);hc=e;return}function Hd(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function Id(a){a=a|0;if(!a)return;wc[c[(c[a>>2]|0)+4>>2]&255](a);return}function Jd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=hc;hc=hc+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)tz(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=lz(i)|0;c[h>>2]=b;c[h+8>>2]=i|-2147483648;c[h+4>>2]=e;i=9}if((i|0)==9)fB(b|0,d|0,e|0)|0;a[b+e>>0]=0;xc[f&63](g,h);if((a[h+11>>0]|0)>=0){hc=j;return}nz(c[h>>2]|0);hc=j;return}function Kd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=hc;hc=hc+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;xc[e&63](a,f);za(c[f>>2]|0);hc=g;return}function Ld(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;wc[e&255](a);return}else{e=c[(c[a>>2]|0)+d>>2]|0;wc[e&255](a);return}}function Md(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=hc;hc=hc+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;xc[d&63](e,a);Da(c[e>>2]|0);g=c[e>>2]|0;za(g|0);hc=f;return g|0}function Nd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=hc;hc=hc+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;xc[e&63](a,f);za(c[f>>2]|0);hc=g;return}function Od(b,d){b=b|0;d=d|0;var e=0;e=lz(22856)|0;Zd(e,d);a[e+22848>>0]=0;c[e+22852>>2]=c[b>>2];c[b>>2]=0;c[e>>2]=12044;return e|0}function Pd(b,d,e){b=b|0;d=d|0;e=e|0;c[b>>2]=fa(((a[d+11>>0]|0)<0?c[d>>2]|0:d)|0,9336,c[e>>2]|0)|0;return}function Qd(a){a=a|0;return c[(c[a>>2]|0)+-4>>2]|0}function Rd(a){a=a|0;if(!a)return;wc[c[(c[a>>2]|0)+4>>2]&255](a);return}function Sd(a){a=a|0;return a|0}function Td(a){a=a|0;return a|0}function Ud(a,b){a=a|0;b=b|0;wc[c[a>>2]&255](b);return}function Vd(b){b=b|0;a[b+22848>>0]=1;return}function Wd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=hc;hc=hc+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;d=mc[a&31](f,g)|0;za(c[g>>2]|0);za(c[f>>2]|0);hc=e;return d|0}function Xd(b){b=b|0;var d=0,e=0,f=0,g=0;g=hc;hc=hc+16|0;e=g;c[b>>2]=12060;d=b+22852|0;if(!(a[b+22848>>0]|0)){f=c[d>>2]|0;za(f|0);ae(b);hc=g;return}f=c[d>>2]|0;if((a[97232]|0)==0?RA(97232)|0:0)c[24488]=Ba(1,11936)|0;ya(c[24488]|0,f|0,58058,e|0);f=c[d>>2]|0;za(f|0);ae(b);hc=g;return}function Yd(a){a=a|0;Xd(a);nz(a);return}function Zd(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=hc;hc=hc+32|0;h=f+16|0;i=f+8|0;j=f;c[d>>2]=12076;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=d+22696|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;c[e+24>>2]=0;c[e+28>>2]=0;Hl(d+40|0);Il(d+104|0);Jl(d+9372|0);c[j>>2]=57872;Ua(0,j|0);c[i>>2]=57857;c[i+4>>2]=d+28;Ua(0,i|0);c[d+22736>>2]=0;c[d+22740>>2]=0;c[d+22744>>2]=0;c[d+22760>>2]=0;a[d+22764>>0]=0;c[d+22728>>2]=12092;c[d+22776>>2]=ah()|0;c[h>>2]=57882;Ua(0,h|0);e=d+22784|0;c[d+22812>>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+22816>>0]=1;a[d+22817>>0]=1;e=d+22820|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;c[d+22832>>2]=12;c[d+22732>>2]=g;hc=f;return}function _d(a){a=a|0;Xd(a);nz(a);return}function $d(b){b=b|0;var d=0,e=0,f=0;e=hc;hc=hc+16|0;d=e+8|0;f=e;c[f>>2]=57990;Ua(0,f|0);vo(c[b+8>>2]|0);c[d>>2]=58013;Ua(0,d|0);Ll(b+76|0);d=b+22684|0;if((a[d+11>>0]|0)<0)nz(c[d>>2]|0);b=b+22668|0;if((a[b+11>>0]|0)>=0){hc=e;return}nz(c[b>>2]|0);hc=e;return}function ae(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=hc;hc=hc+32|0;j=k+16|0;g=k+8|0;d=k;c[b>>2]=12076;f=Aa(57613)|0;c[d>>2]=c[b+22812>>2];za(wa(f|0,1,11980,d|0)|0);za(f|0);c[g>>2]=58037;Ua(0,g|0);g=b+22784|0;Cd(g);f=b+22788|0;d=c[f>>2]|0;h=b+22792|0;e=c[h>>2]|0;if((d|0)!=(e|0)){do{nz(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)nz(d);h=b+22728|0;c[h>>2]=12092;Pi(c[b+22776>>2]|0)|0;c[h>>2]=12124;if((a[b+22764>>0]|0)==0?(i=c[b+22736>>2]|0,i|0):0)vo(i);c[j>>2]=57917;Ua(0,j|0);$d(b+28|0);d=b+12|0;if((a[d+11>>0]|0)>=0){b=b+4|0;b=c[b>>2]|0;za(b|0);hc=k;return}nz(c[d>>2]|0);b=b+4|0;b=c[b>>2]|0;za(b|0);hc=k;return}function be(a){a=a|0;ae(a);nz(a);return}function ce(b){b=b|0;var d=0;Ll(b+64|0);d=b+22672|0;if((a[d+11>>0]|0)<0)nz(c[d>>2]|0);b=b+22656|0;if((a[b+11>>0]|0)>=0)return;nz(c[b>>2]|0);return}function de(b){b=b|0;var d=0,e=0,f=0;f=hc;hc=hc+16|0;e=f;c[b>>2]=12092;Pi(c[b+48>>2]|0)|0;c[b>>2]=12124;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)vo(d);c[e>>2]=57917;Ua(0,e|0);hc=f;return}function ee(b){b=b|0;var d=0,e=0,f=0;f=hc;hc=hc+16|0;e=f;c[b>>2]=12092;Pi(c[b+48>>2]|0)|0;c[b>>2]=12124;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)vo(d);c[e>>2]=57917;Ua(0,e|0);nz(b);hc=f;return}function fe(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,r=0,s=0,t=0;t=hc;hc=hc+32|0;s=t+8|0;o=t;p=t+20|0;q=t+16|0;r=b+48|0;ul(c[r>>2]|0,d,e,0,0,0)|0;c[p>>2]=1;m=b+12|0;n=b+36|0;f=b+20|0;g=b+24|0;h=b+28|0;i=b+8|0;j=b+16|0;k=b+4|0;l=b+20|0;a:while(1){c[p>>2]=0;e=tl(c[r>>2]|0,p)|0;switch(e|0){case 13:{d=14;break a}case 0:break;default:{d=3;break a}}d=wl(c[r>>2]|0)|0;if(d|0){c[l>>2]=Al(d,0,q)|0;c[g>>2]=Al(d,1,q)|0;c[h>>2]=Al(d,2,q)|0;if(!(c[m>>2]|0)){e=yl(d,0)|0;ie(b,e,zl(d,0)|0)}if(!(a[n>>0]|0))je(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[i>>2]|0,c[m>>2]|0,c[j>>2]|0);d=c[c[k>>2]>>2]|0;if((a[97232]|0)==0?RA(97232)|0:0)c[24488]=Ba(1,11936)|0;ya(c[24488]|0,d|0,57985,o|0)}if(!(c[p>>2]|0)){d=14;break}}if((d|0)==3){c[s>>2]=57941;c[s+4>>2]=e;Ua(0,s|0);hc=t;return}else if((d|0)==14){hc=t;return}}function ge(b){b=b|0;var d=0,e=0,f=0;f=hc;hc=hc+16|0;e=f;c[b>>2]=12124;if((a[b+36>>0]|0)==0?(d=c[b+8>>2]|0,d|0):0)vo(d);c[e>>2]=57917;Ua(0,e|0);hc=f;return}function he(a){a=a|0;ab()}function ie(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=hc;hc=hc+32|0;h=i;f=b+12|0;c[f>>2]=d;g=b+16|0;c[g>>2]=e;c[h>>2]=57959;c[h+4>>2]=d;c[h+8>>2]=e;Ua(0,h|0);if(!(a[b+36>>0]|0)){e=c[g>>2]|0;e=(u(e<<2,e)|0)+33554432|0;e=uo((e>>>0>16777216?e:16777216)+16777215&-16777216)|0;c[b+8>>2]=e;d=c[c[b+4>>2]>>2]|0;if((a[97288]|0)==0?RA(97288)|0:0)c[24495]=Ba(4,48)|0;b=c[24495]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;ya(b|0,d|0,57972,h|0);hc=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[97288]|0)==0?RA(97288)|0:0)c[24495]=Ba(4,48)|0;b=c[24495]|0;c[h>>2]=c[f>>2];c[h+8>>2]=c[g>>2];c[h+16>>2]=e;ya(b|0,d|0,57972,h|0);hc=i;return}}function je(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,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;F=g<<2;G=f+(u(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;w=k;v=l;while(1){n=d[a+v>>0]|0;p=d[a+(v+g)>>0]|0;s=d[b+i>>0]|0;t=d[e+w>>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=(u(m,-400)|0)+J+(u(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=(u(m,-400)|0)+p+(u(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=v+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=(u(H,-832)|0)+(u(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=(u(I,-832)|0)+(u(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;w=w+1|0;i=i+1|0;v=v+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 ke(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=hc;hc=hc+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)tz(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=lz(i)|0;c[j>>2]=d;c[j+8>>2]=i|-2147483648;c[j+4>>2]=g;i=6}if((i|0)==6)fB(d|0,f|0,g|0)|0;a[d+g>>0]=0;c[k>>2]=e;yc[b&31](h,j,k);Da(c[h>>2]|0);d=c[h>>2]|0;za(d|0);za(c[k>>2]|0);if((a[j+11>>0]|0)>=0){hc=l;return d|0}nz(c[j>>2]|0);hc=l;return d|0}function le(){Oc(0);return}function me(a){a=a|0;return}function ne(a){a=a|0;nz(a);return}function oe(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;n=b+4|0;c[n>>2]=1;p=b+8|0;qe(c[p>>2]|0,b);e=c[p>>2]|0;l=c[e+276>>2]|0;g=c[e+128>>2]|0;m=(c[g+5048>>2]|0)/4|0;o=b+12|0;d=c[o>>2]|0;k=u(d,m)|0;f=d+1|0;m=u(f,m)|0;j=c[e+280>>2]|0;m=(m|0)>(j|0)?j:m;j=b+16|0;s=(a[j>>0]|0)==0;r=s?3:2;q=c[g+5056>>2]|0;h=q+-1|0;if(s){if((d|0)>0){re(e,b,h,d+-1|0,2);e=c[p>>2]|0;d=c[o>>2]|0}re(e,b,h,d,2);d=(c[o>>2]|0)+1|0;e=c[p>>2]|0;if((d|0)<(c[(c[e+128>>2]|0)+5064>>2]|0))re(e,b,h,d,2)}else{s=(c[g+5064>>2]|0)+-1|0;re(e,b,h,(s|0)<(f|0)?s:f,1)}d=c[p>>2]|0;e=c[o>>2]|0;if(!(a[j>>0]|0)){s=u(c[d+156>>2]|0,e)|0;if(a[(c[d+144>>2]|0)+(s*24|0)+21>>0]|0){e=0;i=11}}else{s=se(d,e)|0;d=c[p>>2]|0;h=u(c[d+156>>2]|0,c[o>>2]|0)|0;a[(c[d+144>>2]|0)+(h*24|0)+21>>0]=s&1;if(s){e=(a[j>>0]|0)!=0;i=11}}do if((i|0)==11){te(d,e,k,m,0,l);d=c[p>>2]|0;e=(a[j>>0]|0)!=0;if((c[(c[d+128>>2]|0)+4996>>2]|0)>8)ue(d,e,k,m,0,l);else ve(d,e,k,m,0,l);e=c[p>>2]|0;f=c[e+128>>2]|0;if(c[f+5012>>2]|0){d=(a[j>>0]|0)!=0;if((c[f+5004>>2]|0)>8){we(e,d,k,m,0,l);break}else{xe(e,d,k,m,0,l);break}}}while(0);if((q|0)<=0){c[n>>2]=3;s=c[p>>2]|0;ye(s,b);return}d=0;do{s=c[p>>2]|0;ze((c[s+332>>2]|0)+(((u(c[o>>2]|0,c[(c[s+128>>2]|0)+5056>>2]|0)|0)+d|0)*80|0)|0,r);d=d+1|0}while((d|0)!=(q|0));c[n>>2]=3;s=c[p>>2]|0;ye(s,b);return}function pe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=hc;hc=hc+112|0;g=f+104|0;e=f;c[g>>2]=c[d+12>>2];zm(e,58080,g)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=tn(e)|0;if(d>>>0>4294967279)tz(b);if(d>>>0<11){a[b+11>>0]=d;if(!d){g=b;g=g+d|0;a[g>>0]=0;hc=f;return}}else{h=d+16&-16;g=lz(h)|0;c[b>>2]=g;c[b+8>>2]=h|-2147483648;c[b+4>>2]=d;b=g}fB(b|0,e|0,d|0)|0;h=b;h=h+d|0;a[h>>0]=0;hc=f;return}function qe(a,b){a=a|0;b=b|0;var d=0;b=a+356|0;Ae(b);d=a+336|0;c[d>>2]=(c[d>>2]|0)+-1;a=a+340|0;c[a>>2]=(c[a>>2]|0)+1;Ce(b);return}function re(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;Ge(a,b,(u(c[(c[a+128>>2]|0)+5056>>2]|0,e)|0)+d|0,f);return}function se(b,f){b=b|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,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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;S=b+128|0;i=c[S>>2]|0;g=c[b+136>>2]|0;T=c[i+5044>>2]|0;U=c[i+5040>>2]|0;Q=(1<<U)+-1|0;R=c[i+5056>>2]|0;F=c[i+5036>>2]|0;h=f<<U>>F;F=f+1<<U>>F;P=c[i+5060>>2]|0;F=(P|0)<(F|0)?P:F;if((h|0)>=(F|0)){U=0;return U|0}G=b+176|0;H=b+164|0;I=b+152|0;J=b+156|0;K=b+160|0;L=b+144|0;N=b+52|0;O=b+56|0;P=g+53|0;E=g+4384|0;f=0;g=i;a:while(1){if((c[g+5052>>2]|0)>0){z=u(h,T)|0;x=(z|0)==0?0:32;D=(z|0)!=0&(z&Q|0)==0;A=u(z>>U,R)|0;B=z+-1|0;C=u(B>>U,R)|0;y=0;do{w=(u(c[G>>2]|0,h)|0)+y|0;w=(c[H>>2]|0)+(w*3|0)|0;w=(d[w>>0]|d[w+1>>0]<<8)&7;v=w&65535;if(w<<16>>16){w=u(y,T)|0;p=w>>U;n=c[I>>2]|0;q=w>>n;i=z>>n;if((q|0)<=-1){g=8;break a}r=c[J>>2]|0;if((q|0)>=(r|0)){g=8;break a}if((i|0)<=-1){g=11;break a}s=c[K>>2]|0;if((i|0)>=(s|0)){g=11;break a}t=c[L>>2]|0;k=u(r,i)|0;i=c[N>>2]|0;o=(c[O>>2]|0)-i>>2;j=e[t+((k+q|0)*24|0)+2>>1]|0;if(o>>>0<=j>>>0){f=0;g=33;break a}l=i;m=c[l+(j<<2)>>2]|0;j=(w|0)==0?0:16;do if((w|0)!=0&(w&Q|0)==0){if(!(a[m+768>>0]|0)){i=w+-1>>n;if(!((i|0)>-1&(i|0)<(r|0))){g=16;break a}k=e[t+((k+i|0)*24|0)+2>>1]|0;if(o>>>0>k>>>0?(c[m+804>>2]|0)!=(c[(c[l+(k<<2)>>2]|0)+804>>2]|0):0){j=0;break}}if(!(a[P>>0]|0)){k=c[E>>2]|0;j=(c[k+(p+A<<2)>>2]|0)==(c[k+((w+-1>>U)+A<<2)>>2]|0)?j:0}}while(0);do if(D){if(!(a[m+768>>0]|0)){i=B>>n;if(!((i|0)>-1&(i|0)<(s|0))){g=24;break a}t=e[t+(((u(r,i)|0)+q|0)*24|0)+2>>1]|0;if(o>>>0>t>>>0?(c[m+804>>2]|0)!=(c[(c[l+(t<<2)>>2]|0)+804>>2]|0):0){i=0;break}}if(!(a[P>>0]|0)){i=c[E>>2]|0;i=(c[i+(p+A<<2)>>2]|0)==(c[i+(p+C<<2)>>2]|0)?x:0}else i=x}else i=x;while(0);if(!(a[m+758>>0]|0)){Ee(b,w,z,v,0,j&255,i&255);Fe(b,w,z,v,0,0);f=1;g=c[S>>2]|0}}y=y+1|0}while((y|0)<(c[g+5052>>2]|0))}h=h+1|0;if((h|0)>=(F|0)){g=33;break}}if((g|0)==8)M(60650,60687,120,60707);else if((g|0)==11)M(60711,60687,121,60707);else if((g|0)==16)M(60650,60687,120,60707);else if((g|0)==24)M(60711,60687,121,60707);else if((g|0)==33)return f|0;return 0}function te(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,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,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;ja=g?2:1;ka=g?1:2;la=g&1;ma=(g^1)&1;ia=g?80:160;ga=g?16:32;ha=f+276|0;fa=c[ha>>2]|0;fa=(fa|0)>(k|0)?k:fa;K=c[f+280>>2]|0;K=(K|0)>(i|0)?i:K;if((K|0)<=(h|0))return;L=(fa|0)>(j|0);N=f+264|0;O=f+172|0;P=f+176|0;Q=f+180|0;R=f+164|0;S=f+192|0;T=f+252|0;U=f+196|0;V=f+256|0;W=f+200|0;X=f+260|0;Y=f+184|0;Z=f+244|0;_=f+152|0;$=f+156|0;aa=f+160|0;ba=f+144|0;ca=f+52|0;da=f+56|0;ea=f+112|0;J=f+324|0;a:while(1){if(L){F=h<<2;G=(F|0)/4|0;H=F-ma|0;E=j;do{q=E<<2;I=(q|0)/4|0;g=(u(c[ha>>2]|0,G)|0)+I|0;g=(c[N>>2]|0)+g|0;k=a[g>>0]|0;o=k&255;if(!(ia&o))a[g>>0]=k&-4;else{p=q-la|0;f=c[O>>2]|0;g=p>>f;k=H>>f;if((g|0)<=-1){g=10;break a}l=c[P>>2]|0;if((g|0)>=(l|0)){g=10;break a}if((k|0)<=-1){g=13;break a}m=c[Q>>2]|0;if((k|0)>=(m|0)){g=13;break a}n=c[R>>2]|0;k=n+(((u(l,k)|0)+g|0)*3|0)|0;i=q>>f;g=F>>f;if(!((i|0)>-1&(i|0)<(l|0))){g=15;break a}if(!((g|0)>-1&(g|0)<(m|0))){g=17;break a}D=n+(((u(l,g)|0)+i|0)*3|0)|0;b:do if(!(((d[k>>0]|d[k+1>>0]<<8)&768)==0?1:((d[D>>0]|d[D+1>>0]<<8)&768)==0)){if(ga&o|0){i=c[T>>2]|0;g=q>>i;k=F>>i;if((g|0)<=-1){g=22;break a}f=c[V>>2]|0;if((g|0)>=(f|0)){g=22;break a}if((k|0)<=-1){g=25;break a}l=c[X>>2]|0;if((k|0)>=(l|0)){g=25;break a}m=c[Z>>2]|0;if((a[m+((u(f,k)|0)+g)>>0]|0)<=-1){g=1;break}k=p>>i;g=H>>i;if(!((k|0)>-1&(k|0)<(f|0))){g=28;break a}if(!((g|0)>-1&(g|0)<(l|0))){g=30;break a}if((a[m+((u(f,g)|0)+k)>>0]|0)<=-1){g=1;break}}i=c[S>>2]|0;g=p>>i;k=H>>i;if((g|0)<=-1){g=34;break a}f=c[U>>2]|0;if((g|0)>=(f|0)){g=34;break a}if((k|0)<=-1){g=37;break a}l=c[W>>2]|0;if((k|0)>=(l|0)){g=37;break a}D=c[Y>>2]|0;C=(u(f,k)|0)+g|0;k=q>>i;g=F>>i;if(!((k|0)>-1&(k|0)<(f|0))){g=39;break a}if(!((g|0)>-1&(g|0)<(l|0))){g=41;break a}B=(u(f,g)|0)+k|0;l=c[_>>2]|0;g=p>>l;k=H>>l;if((g|0)<=-1){g=44;break a}m=c[$>>2]|0;if((g|0)>=(m|0)){g=44;break a}if((k|0)<=-1){g=47;break a}n=c[aa>>2]|0;if((k|0)>=(n|0)){g=47;break a}o=c[ba>>2]|0;g=e[o+(((u(m,k)|0)+g|0)*24|0)+2>>1]|0;i=c[ca>>2]|0;f=(c[da>>2]|0)-i>>2;if(f>>>0>g>>>0)p=c[i+(g<<2)>>2]|0;else p=0;k=q>>l;g=F>>l;if(!((k|0)>-1&(k|0)<(m|0))){g=51;break a}if(!((g|0)>-1&(g|0)<(n|0))){g=53;break a}g=e[o+(((u(m,g)|0)+k|0)*24|0)+2>>1]|0;if(f>>>0>g>>>0)g=c[i+(g<<2)>>2]|0;else g=0;x=a[D+(C*12|0)>>0]|0;k=x<<24>>24==0;if(k)z=-1;else z=c[p+920+(a[D+(C*12|0)+2>>0]<<2)>>2]|0;y=a[D+(C*12|0)+1>>0]|0;i=y<<24>>24==0;if(i)v=-1;else v=c[p+984+(a[D+(C*12|0)+3>>0]<<2)>>2]|0;q=a[D+(B*12|0)>>0]|0;f=q<<24>>24==0;if(f)t=-1;else t=c[g+920+(a[D+(B*12|0)+2>>0]<<2)>>2]|0;r=a[D+(B*12|0)+1>>0]|0;n=r<<24>>24==0;if(n)o=-1;else o=c[g+984+(a[D+(B*12|0)+3>>0]<<2)>>2]|0;s=(z|0)==(t|0);if(!(s&(v|0)==(o|0))?!((v|0)==(t|0)&(z|0)==(o|0)):0){g=1;break}A=k?0:b[D+(C*12|0)+6>>1]|0;g=k?0:b[D+(C*12|0)+4>>1]|0;w=i?0:b[D+(C*12|0)+10>>1]|0;m=i?0:b[D+(C*12|0)+8>>1]|0;p=f?0:b[D+(B*12|0)+6>>1]|0;f=f?0:b[D+(B*12|0)+4>>1]|0;l=n?0:b[D+(B*12|0)+10>>1]|0;i=n?0:b[D+(B*12|0)+8>>1]|0;if(((y&255)+(x&255)|0)!=((r&255)+(q&255)|0)){De((c[ea>>2]|0)+4|0,1013,0);a[J>>0]=3}if((z|0)==(v|0)){if((t|0)!=(o|0)){g=81;break a}k=g<<16>>16;g=f<<16>>16;D=k-g|0;do if((((D|0)<0?0-D|0:D)|0)<=3){D=(A<<16>>16)-(p<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)>3)break;D=(m<<16>>16)-(i<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)>3)break;D=(w<<16>>16)-(l<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)<=3){g=0;break b}}while(0);D=k-(i<<16>>16)|0;do if((((D|0)<0?0-D|0:D)|0)<=3){D=(A<<16>>16)-(l<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)>3)break;D=(m<<16>>16)-g|0;if((((D|0)<0?0-D|0:D)|0)>3)break;D=(w<<16>>16)-(p<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)<=3){g=0;break b}}while(0);g=1;break}g=g<<16>>16;if(s){D=g-(f<<16>>16)|0;do if((((D|0)<0?0-D|0:D)|0)<=3){D=(A<<16>>16)-(p<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)>3)break;D=(m<<16>>16)-(i<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)>3)break;D=(w<<16>>16)-(l<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)<=3){g=0;break b}}while(0);g=1;break}else{D=g-(i<<16>>16)|0;do if((((D|0)<0?0-D|0:D)|0)<=3){D=(A<<16>>16)-(l<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)>3)break;D=(m<<16>>16)-(f<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)>3)break;D=(w<<16>>16)-(p<<16>>16)|0;if((((D|0)<0?0-D|0:D)|0)<=3){g=0;break b}}while(0);g=1;break}}else g=2;while(0);I=(u(c[ha>>2]|0,G)|0)+I|0;I=(c[N>>2]|0)+I|0;a[I>>0]=a[I>>0]&-4|g}E=E+ja|0}while((E|0)<(fa|0))}h=h+ka|0;if((h|0)>=(K|0)){g=3;break}}switch(g|0){case 3:return;case 10:{M(60650,60687,120,60707);break}case 13:{M(60711,60687,121,60707);break}case 15:{M(60650,60687,120,60707);break}case 17:{M(60711,60687,121,60707);break}case 22:{M(60650,60687,120,60707);break}case 25:{M(60711,60687,121,60707);break}case 28:{M(60650,60687,120,60707);break}case 30:{M(60711,60687,121,60707);break}case 34:{M(60650,60687,120,60707);break}case 37:{M(60711,60687,121,60707);break}case 39:{M(60650,60687,120,60707);break}case 41:{M(60711,60687,121,60707);break}case 44:{M(60650,60687,120,60707);break}case 47:{M(60711,60687,121,60707);break}case 51:{M(60650,60687,120,60707);break}case 53:{M(60711,60687,121,60707);break}case 81:{M(58139,58158,344,58171);break}}}function ue(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,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,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,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,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0;vc=hc;hc=hc+80|0;sc=vc+32|0;tc=vc;uc=vc+64|0;l=c[f+128>>2]|0;pc=g?2:1;qc=g?1:2;oc=c[f+40>>2]|0;m=c[l+4996>>2]|0;rc=c[f+276>>2]|0;nc=(rc|0)>(k|0)?k:rc;ac=c[f+280>>2]|0;ac=(ac|0)>(i|0)?i:ac;if((ac|0)<=(h|0)){hc=vc;return}bc=(nc|0)>(j|0);cc=f+264|0;dc=f+4|0;ec=f+172|0;fc=f+176|0;gc=f+180|0;ic=f+164|0;jc=f+152|0;kc=f+156|0;lc=f+160|0;mc=f+144|0;Mb=f+52|0;Nb=m+-8|0;Ob=tc+4|0;Pb=tc+2|0;Qb=tc+28|0;Rb=tc+26|0;Sb=tc+24|0;Tb=sc+4|0;Ub=sc+2|0;Vb=sc+28|0;Wb=sc+26|0;Xb=sc+24|0;Yb=tc+6|0;Zb=sc+6|0;_b=tc+30|0;$b=sc+30|0;Jb=l+4716|0;Kb=uc+2|0;Lb=uc+4|0;Ua=1<<m;Va=Ua+65535|0;Wa=oc<<1;Xa=(u(oc,h)|0)+j<<3;Ya=(u(qc,oc)|0)<<3;Za=pc<<3;_a=sc+8|0;$a=oc+-1|0;ab=tc+8|0;bb=oc+1|0;cb=sc+10|0;db=oc+-2|0;eb=tc+10|0;fb=oc+2|0;gb=sc+12|0;hb=oc+-3|0;ib=tc+12|0;jb=oc+3|0;kb=sc+14|0;lb=oc+-4|0;mb=tc+14|0;nb=oc<<1;ob=sc+16|0;pb=nb+-1|0;qb=tc+16|0;rb=nb|1;sb=sc+18|0;tb=nb+-2|0;ub=tc+18|0;vb=nb+2|0;wb=sc+20|0;xb=nb+-3|0;yb=tc+20|0;zb=nb+3|0;Ab=sc+22|0;Bb=nb+-4|0;Cb=tc+22|0;Db=oc*3|0;Eb=Db+-1|0;Fb=Db+1|0;Gb=Db+-2|0;Hb=Db+2|0;Ib=Db+-3|0;_=Db+-4|0;$=0-oc|0;aa=oc<<1;ba=0-aa|0;ca=oc*3|0;da=0-ca|0;Oa=oc<<2;ea=0-Oa|0;fa=sc+8|0;ga=1-oc|0;ha=tc+8|0;ia=oc+1|0;ja=sc+10|0;ka=1-aa|0;la=tc+10|0;ma=aa|1;na=sc+12|0;oa=1-ca|0;pa=tc+12|0;qa=ca+1|0;ra=sc+14|0;sa=1-Oa|0;ta=tc+14|0;ua=sc+16|0;va=2-oc|0;wa=tc+16|0;xa=oc+2|0;ya=sc+18|0;za=2-aa|0;Aa=tc+18|0;Ba=aa+2|0;Ca=sc+20|0;Da=2-ca|0;Ea=tc+20|0;Fa=ca+2|0;Ga=sc+22|0;Ha=2-Oa|0;Ia=tc+22|0;Ja=3-oc|0;Ka=oc+3|0;La=3-aa|0;Ma=aa+3|0;Na=3-ca|0;Oa=3-Oa|0;Pa=oc<<1;Qa=u(oc,-3)|0;Ra=oc<<1;Sa=u(oc,-3)|0;Ta=oc<<1;Y=0;a:while(1){Q=Xa+(u(Ya,Y)|0)|0;if(bc){R=h<<2;S=u((R|0)/4|0,rc)|0;T=u(R,oc)|0;U=R+-1|0;P=j;Z=0;while(1){V=Q+(u(Za,Z)|0)|0;L=P<<2;q=a[(c[cc>>2]|0)+(((L|0)/4|0)+S)>>0]&3;if(q<<24>>24){W=c[dc>>2]|0;X=W+(L+T<<1)|0;b[sc>>1]=b[X>>1]|0;if(g){b[tc>>1]=b[X+-2>>1]|0;b[Ub>>1]=b[X+2>>1]|0;b[Pb>>1]=b[X+-4>>1]|0;b[Tb>>1]=b[X+4>>1]|0;b[Ob>>1]=b[X+-6>>1]|0;b[Zb>>1]=b[X+6>>1]|0;b[Yb>>1]=b[X+-8>>1]|0;b[_a>>1]=b[X+(oc<<1)>>1]|0;b[ab>>1]=b[X+($a<<1)>>1]|0;b[cb>>1]=b[X+(bb<<1)>>1]|0;b[eb>>1]=b[X+(db<<1)>>1]|0;b[gb>>1]=b[X+(fb<<1)>>1]|0;b[ib>>1]=b[X+(hb<<1)>>1]|0;b[kb>>1]=b[X+(jb<<1)>>1]|0;b[mb>>1]=b[X+(lb<<1)>>1]|0;b[ob>>1]=b[X+(nb<<1)>>1]|0;b[qb>>1]=b[X+(pb<<1)>>1]|0;b[sb>>1]=b[X+(rb<<1)>>1]|0;b[ub>>1]=b[X+(tb<<1)>>1]|0;b[wb>>1]=b[X+(vb<<1)>>1]|0;b[yb>>1]=b[X+(xb<<1)>>1]|0;b[Ab>>1]=b[X+(zb<<1)>>1]|0;b[Cb>>1]=b[X+(Bb<<1)>>1]|0;p=_;n=Ib;o=Db;m=Hb;l=Gb;f=Fb;i=Eb;k=X+(Db<<1)|0}else{b[tc>>1]=b[X+($<<1)>>1]|0;b[Ub>>1]=b[X+(oc<<1)>>1]|0;b[Pb>>1]=b[X+(ba<<1)>>1]|0;b[Tb>>1]=b[X+(aa<<1)>>1]|0;b[Ob>>1]=b[X+(da<<1)>>1]|0;b[Zb>>1]=b[X+(ca<<1)>>1]|0;b[Yb>>1]=b[X+(ea<<1)>>1]|0;b[fa>>1]=b[X+2>>1]|0;b[ha>>1]=b[X+(ga<<1)>>1]|0;b[ja>>1]=b[X+(ia<<1)>>1]|0;b[la>>1]=b[X+(ka<<1)>>1]|0;b[na>>1]=b[X+(ma<<1)>>1]|0;b[pa>>1]=b[X+(oa<<1)>>1]|0;b[ra>>1]=b[X+(qa<<1)>>1]|0;b[ta>>1]=b[X+(sa<<1)>>1]|0;b[ua>>1]=b[X+4>>1]|0;b[wa>>1]=b[X+(va<<1)>>1]|0;b[ya>>1]=b[X+(xa<<1)>>1]|0;b[Aa>>1]=b[X+(za<<1)>>1]|0;b[Ca>>1]=b[X+(Ba<<1)>>1]|0;b[Ea>>1]=b[X+(Da<<1)>>1]|0;b[Ga>>1]=b[X+(Fa<<1)>>1]|0;b[Ia>>1]=b[X+(Ha<<1)>>1]|0;p=Oa;n=Na;o=ca;m=Ma;l=La;f=Ka;i=Ja;k=X+6|0}y=b[k>>1]|0;b[Xb>>1]=y;t=b[X+(i<<1)>>1]|0;b[Sb>>1]=t;x=b[X+(f<<1)>>1]|0;b[Wb>>1]=x;r=b[X+(l<<1)>>1]|0;b[Rb>>1]=r;w=b[X+(m<<1)>>1]|0;b[Vb>>1]=w;m=b[X+(n<<1)>>1]|0;b[Qb>>1]=m;A=b[X+(o+3<<1)>>1]|0;b[$b>>1]=A;z=b[X+(p<<1)>>1]|0;b[_b>>1]=z;B=c[ec>>2]|0;D=L>>B;k=R>>B;if((D|0)<=-1){k=13;break a}G=c[fc>>2]|0;if((D|0)>=(G|0)){k=13;break a}if((k|0)<=-1){k=16;break a}E=c[gc>>2]|0;if((k|0)>=(E|0)){k=16;break a}H=c[ic>>2]|0;C=u(G,k)|0;F=C+D|0;i=a[H+(F*3|0)+2>>0]|0;if(g){k=L+-1>>B;if(!((k|0)>-1&(k|0)<(G|0))){k=19;break a}k=C+k|0}else{k=U>>B;if(!((k|0)>-1&(k|0)<(E|0))){k=22;break a}k=(u(G,k)|0)+D|0}l=i+1+(a[H+(k*3|0)+2>>0]|0)>>1;i=c[jc>>2]|0;k=L>>i;i=R>>i;if((k|0)<=-1){k=26;break a}f=c[kc>>2]|0;if((k|0)>=(f|0)){k=26;break a}if((i|0)<=-1){k=29;break a}if((i|0)>=(c[lc>>2]|0)){k=29;break a}O=e[(c[mc>>2]|0)+(((u(f,i)|0)+k|0)*24|0)+2>>1]|0;O=c[(c[Mb>>2]|0)+(O<<2)>>2]|0;v=(c[O+760>>2]|0)+l|0;v=(v|0)<51?v:51;v=d[608+((v|0)>0?v:0)>>0]<<Nb;O=(q<<1&255)+-2+l+(c[O+764>>2]|0)|0;O=(O|0)<53?O:53;O=d[544+((O|0)>0?O:0)>>0]<<Nb;I=b[Ob>>1]|0;n=b[Pb>>1]|0;K=b[tc>>1]|0;s=K&65535;p=(I&65535)-((n&65535)<<1)+s|0;p=(p|0)<0?0-p|0:p;t=t&65535;m=(m&65535)-((r&65535)<<1)+t|0;m=(m|0)<0?0-m|0:m;q=b[Tb>>1]|0;f=b[Ub>>1]|0;J=b[sc>>1]|0;i=J&65535;r=(q&65535)-((f&65535)<<1)+i|0;r=(r|0)<0?0-r|0:r;o=y&65535;N=(w&65535)-((x&65535)<<1)+o|0;N=(N|0)<0?0-N|0:N;k=r+p|0;l=N+m|0;p=m+p|0;r=N+r|0;b:do if((l+k|0)<(v|0)){m=v>>2;do if((k<<1|0)<(m|0)){N=(e[Yb>>1]|0)-s|0;y=i-(e[Zb>>1]|0)|0;if((((y|0)<0?0-y|0:y)+((N|0)<0?0-N|0:N)|0)>=(v>>3|0)){i=0;break}i=s-i|0;i=(((i|0)<0?0-i|0:i)|0)<((O*5|0)+1>>1|0)}else i=0;while(0);do if((l<<1|0)<(m|0)){N=(z&65535)-t|0;A=o-(A&65535)|0;if((((A|0)<0?0-A|0:A)+((N|0)<0?0-N|0:N)|0)>=(v>>3|0)){k=0;break}k=t-o|0;k=(((k|0)<0?0-k|0:k)|0)<((O*5|0)+1>>1|0)}else k=0;while(0);N=i&k;o=(v>>1)+v>>3;m=(p|0)>=(o|0);o=(r|0)>=(o|0);l=a[Jb>>0]|0;k=l<<24>>24!=0;if(g){i=L+-1>>B;if(k){if(!((i|0)>-1&(i|0)<(G|0))){k=40;break a}k=H+((C+i|0)*3|0)|0;k=((d[k>>0]|d[k+1>>0]<<8)&65535)>>>10&1^1}else k=1;if(!((i|0)>-1&(i|0)<(G|0))){k=43;break a}x=H+((C+i|0)*3|0)|0;B=H+(F*3|0)|0;B=d[B>>0]|d[B+1>>0]<<8;B=(l<<24>>24==0|(B&1024)==0)&(B&2048)==0;x=k<<24>>24?((d[x>>0]|d[x+1>>0]<<8)&2048)==0:0}else{i=U>>B;if(k){if(!((i|0)>-1&(i|0)<(E|0))){k=47;break a}k=H+(((u(G,i)|0)+D|0)*3|0)|0;k=((d[k>>0]|d[k+1>>0]<<8)&1024)==0}else k=1;if(!((i|0)>-1&(i|0)<(E|0))){k=50;break a}x=H+(((u(G,i)|0)+D|0)*3|0)|0;B=H+(F*3|0)|0;B=d[B>>0]|d[B+1>>0]<<8;B=(l<<24>>24==0|(B&1024)==0)&(B&2048)==0;x=k&((d[x>>0]|d[x+1>>0]<<8)&2048)==0}y=O<<1;z=O*10|0;A=0-O|0;w=m|x^1;v=o|B^1;s=O>>1;t=0-s|0;r=0;o=I;l=K;i=J;while(1){p=W+(V+(u(Wa,r)|0))|0;do if(!N){m=i&65535;l=l&65535;f=f&65535;i=n&65535;k=((m-l|0)*9|0)+8+(u(f-i|0,-3)|0)>>4;if((((k|0)<0?0-k|0:k)|0)>=(z|0))break;k=(k|0)<(A|0)?A:(k|0)>(O|0)?O:k;do if(g){if(x){L=k+l|0;b[X+((u(r,oc)|0)+-1<<1)>>1]=(L|0)<0?0:((L|0)<(Ua|0)?L:Va)&65535}if(!B)break;L=m-k|0;b[X+((u(r,oc)|0)<<1)>>1]=(L|0)<0?0:((L|0)<(Ua|0)?L:Va)&65535}else{if(x){L=k+l|0;b[X+(r-oc<<1)>>1]=(L|0)<0?0:((L|0)<(Ua|0)?L:Va)&65535}if(!B)break;L=m-k|0;b[X+(r<<1)>>1]=(L|0)<0?0:((L|0)<(Ua|0)?L:Va)&65535}while(0);if(!w){K=((l+1+(o&65535)|0)>>>1)-i+k>>1;K=((K|0)<(t|0)?t:(K|0)>(s|0)?s:K)+i|0;L=(u(r,oc)|0)+-2|0;b[X+((g?L:r-Wa|0)<<1)>>1]=(K|0)<0?0:((K|0)<(Ua|0)?K:Va)&65535}if(v)break;k=((m+1+(q&65535)|0)>>>1)-f-k>>1;k=((k|0)<(t|0)?t:(k|0)>(s|0)?s:k)+f|0;k=(k|0)<0?0:((k|0)<(Ua|0)?k:Va)&65535;if(g){b[X+((u(r,oc)|0)+1<<1)>>1]=k;break}else{b[X+(r+oc<<1)>>1]=k;break}}else{K=b[sc+(r<<3)+6>>1]|0;L=o&65535;I=n&65535;n=l&65535;i=i&65535;k=i<<1;J=f&65535;H=(n<<1)+4|0;m=H+L+(I<<1)+k+J>>3;G=n-y|0;f=y+n|0;m=((m|0)<(G|0)?G:(m|0)>(f|0)?f:m)&65535;f=i+n|0;n=(f+2+I+L|0)>>>2;G=I-y|0;o=y+I|0;n=((n|0)<(G|0)?G:(n|0)>(o|0)?o:n)&65535;o=(f+4+I+(L*3|0)+(e[tc+(r<<3)+6>>1]<<1)|0)>>>3;G=L-y|0;L=y+L|0;o=((o|0)<(G|0)?G:(o|0)>(L|0)?L:o)&65535;L=q&65535;k=H+I+k+(J<<1)+L>>3;I=i-y|0;i=y+i|0;k=((k|0)<(I|0)?I:(k|0)>(i|0)?i:k)&65535;b[uc>>1]=k;f=f+J|0;i=(L+2+f|0)>>>2;I=J-y|0;J=y+J|0;i=((i|0)<(I|0)?I:(i|0)>(J|0)?J:i)&65535;b[Kb>>1]=i;f=(f+4+(L*3|0)+((K&65535)<<1)|0)>>>3;K=L-y|0;L=y+L|0;f=((f|0)<(K|0)?K:(f|0)>(L|0)?L:f)&65535;b[Lb>>1]=f;do if(g){l=u(r,oc)|0;if(!x){if(!B)break;b[p>>1]=b[uc>>1]|0;b[p+2>>1]=b[uc+2>>1]|0;b[p+4>>1]=b[uc+4>>1]|0;break}b[X+(l+-1<<1)>>1]=m;if(B){b[X+(l<<1)>>1]=k;b[X+(l+-2<<1)>>1]=n;b[X+(l+1<<1)>>1]=i;b[X+(l+-3<<1)>>1]=o;b[X+(l+2<<1)>>1]=f;break}else{b[X+(l+-2<<1)>>1]=n;b[X+(l+-3<<1)>>1]=o;break}}else{if(!x){if(!B)break;b[X+(r<<1)>>1]=k;b[X+(oc+r<<1)>>1]=i;b[X+(Ta+r<<1)>>1]=f;break}b[X+(r-oc<<1)>>1]=m;if(B){b[X+(r<<1)>>1]=k;b[X+(r-Pa<<1)>>1]=n;b[X+(oc+r<<1)>>1]=i;b[X+(r+Qa<<1)>>1]=o;b[X+(Pa+r<<1)>>1]=f;break}else{b[X+(r-Ra<<1)>>1]=n;b[X+(r+Sa<<1)>>1]=o;break}}while(0)}while(0);k=r+1|0;if((k|0)==4)break b;r=k;o=b[tc+(k<<3)+4>>1]|0;n=b[tc+(k<<3)+2>>1]|0;l=b[tc+(k<<3)>>1]|0;i=b[sc+(k<<3)>>1]|0;f=b[sc+(k<<3)+2>>1]|0;q=b[sc+(k<<3)+4>>1]|0}}while(0)}P=P+pc|0;if((P|0)>=(nc|0))break;else Z=Z+1|0}}h=h+qc|0;if((h|0)>=(ac|0)){k=3;break}else Y=Y+1|0}switch(k|0){case 3:{hc=vc;return}case 13:{M(60650,60687,120,60707);break}case 16:{M(60711,60687,121,60707);break}case 19:{M(60650,60687,120,60707);break}case 22:{M(60711,60687,121,60707);break}case 26:{M(60650,60687,120,60707);break}case 29:{M(60711,60687,121,60707);break}case 40:{M(60650,60687,120,60707);break}case 43:{M(60650,60687,120,60707);break}case 47:{M(60711,60687,121,60707);break}case 50:{M(60711,60687,121,60707);break}}}function ve(b,f,g,h,i,j){b=b|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,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,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,Db=0,Eb=0,Fb=0,Gb=0,Hb=0;Hb=hc;hc=hc+48|0;Eb=Hb+16|0;Fb=Hb;Gb=Hb+32|0;k=c[b+128>>2]|0;Ab=f?2:1;Bb=f?1:2;Cb=b+40|0;zb=c[Cb>>2]|0;l=c[k+4996>>2]|0;Db=b+276|0;yb=c[Db>>2]|0;yb=(yb|0)>(j|0)?j:yb;mb=c[b+280>>2]|0;mb=(mb|0)>(h|0)?h:mb;if((mb|0)<=(g|0)){hc=Hb;return}nb=(yb|0)>(i|0);ob=b+264|0;pb=b+4|0;qb=b+172|0;rb=b+176|0;sb=b+180|0;tb=b+164|0;ub=b+152|0;vb=b+156|0;wb=b+160|0;xb=b+144|0;Ya=b+52|0;Za=l+-8|0;_a=Fb+2|0;$a=Fb+1|0;ab=Fb+14|0;bb=Fb+13|0;cb=Fb+12|0;db=Eb+2|0;eb=Eb+1|0;fb=Eb+14|0;gb=Eb+13|0;hb=Eb+12|0;ib=Fb+3|0;jb=Eb+3|0;kb=Fb+15|0;lb=Eb+15|0;Va=k+4716|0;Wa=Gb+1|0;Xa=Gb+2|0;Sa=1<<l;Ta=Sa+255|0;Ua=zb<<1;Da=zb<<1;T=zb*3|0;Ja=zb<<1;La=zb*3|0;Ma=zb<<2;Na=zb<<1;Oa=u(zb,-3)|0;Pa=zb<<1;Qa=u(zb,-3)|0;Ra=zb<<1;W=f?-1:0-zb|0;U=f?1:zb;X=f?-2:0-Ja|0;Y=f?2:Ja;Z=f?-3:0-La|0;_=f?3:La;$=f?-4:0-Ma|0;V=f?zb:1;aa=f?Eb+4|0:Eb+4|0;ba=f?zb+-1|0:1-zb|0;ca=f?Fb+4|0:Fb+4|0;da=zb+1|0;ea=f?Eb+5|0:Eb+5|0;fa=f?zb+-2|0:1-Ja|0;ga=f?Fb+5|0:Fb+5|0;ha=f?zb+2|0:Ja|1;ia=f?Eb+6|0:Eb+6|0;ja=f?zb+-3|0:1-La|0;ka=f?Fb+6|0:Fb+6|0;la=f?zb+3|0:La+1|0;ma=f?Eb+7|0:Eb+7|0;na=f?zb+-4|0:1-Ma|0;oa=f?Fb+7|0:Fb+7|0;pa=f?Da:2;qa=f?Eb+8|0:Eb+8|0;ra=f?Da+-1|0:2-zb|0;sa=f?Fb+8|0:Fb+8|0;ta=f?Da|1:zb+2|0;ua=f?Eb+9|0:Eb+9|0;va=f?Da+-2|0:2-Ja|0;wa=f?Fb+9|0:Fb+9|0;xa=(f?Da:Ja)+2|0;ya=f?Eb+10|0:Eb+10|0;za=f?Da+-3|0:2-La|0;Aa=f?Fb+10|0:Fb+10|0;Ba=f?Da+3|0:La+2|0;Ca=f?Eb+11|0:Eb+11|0;Da=f?Da+-4|0:2-Ma|0;Ea=f?Fb+11|0:Fb+11|0;Fa=f?T:3;Ga=f?T+-1|0:3-zb|0;Ha=f?T+1|0:zb+3|0;Ia=f?T+-2|0:3-Ja|0;Ja=f?T+2|0:Ja+3|0;Ka=f?T+-3|0:3-La|0;La=(f?T:La)+3|0;Ma=f?T+-4|0:3-Ma|0;a:while(1){if(nb){O=g<<2;P=(O|0)/4|0;Q=O+-1|0;N=i;do{z=N<<2;l=(u(c[Db>>2]|0,P)|0)+((z|0)/4|0)|0;l=a[(c[ob>>2]|0)+l>>0]&3;if(l<<24>>24){R=c[pb>>2]|0;S=(u(c[Cb>>2]|0,O)|0)+z|0;T=R+S|0;a[Eb>>0]=a[T>>0]|0;a[Fb>>0]=a[T+W>>0]|0;a[eb>>0]=a[T+U>>0]|0;a[$a>>0]=a[T+X>>0]|0;a[db>>0]=a[T+Y>>0]|0;a[_a>>0]=a[T+Z>>0]|0;a[jb>>0]=a[T+_>>0]|0;a[ib>>0]=a[T+$>>0]|0;a[aa>>0]=a[T+V>>0]|0;a[ca>>0]=a[T+ba>>0]|0;a[ea>>0]=a[T+da>>0]|0;a[ga>>0]=a[T+fa>>0]|0;a[ia>>0]=a[T+ha>>0]|0;a[ka>>0]=a[T+ja>>0]|0;a[ma>>0]=a[T+la>>0]|0;a[oa>>0]=a[T+na>>0]|0;a[qa>>0]=a[T+pa>>0]|0;a[sa>>0]=a[T+ra>>0]|0;a[ua>>0]=a[T+ta>>0]|0;a[wa>>0]=a[T+va>>0]|0;a[ya>>0]=a[T+xa>>0]|0;a[Aa>>0]=a[T+za>>0]|0;a[Ca>>0]=a[T+Ba>>0]|0;a[Ea>>0]=a[T+Da>>0]|0;q=a[T+Fa>>0]|0;a[hb>>0]=q;n=a[T+Ga>>0]|0;a[cb>>0]=n;t=a[T+Ha>>0]|0;a[gb>>0]=t;o=a[T+Ia>>0]|0;a[bb>>0]=o;v=a[T+Ja>>0]|0;a[fb>>0]=v;p=a[T+Ka>>0]|0;a[ab>>0]=p;x=a[T+La>>0]|0;a[lb>>0]=x;y=a[T+Ma>>0]|0;a[kb>>0]=y;A=c[qb>>2]|0;C=z>>A;j=O>>A;if((C|0)<=-1){j=10;break a}F=c[rb>>2]|0;if((C|0)>=(F|0)){j=10;break a}if((j|0)<=-1){j=13;break a}D=c[sb>>2]|0;if((j|0)>=(D|0)){j=13;break a}G=c[tb>>2]|0;B=u(F,j)|0;E=B+C|0;h=a[G+(E*3|0)+2>>0]|0;if(f){j=z+-1>>A;if(!((j|0)>-1&(j|0)<(F|0))){j=16;break a}j=B+j|0}else{j=Q>>A;if(!((j|0)>-1&(j|0)<(D|0))){j=19;break a}j=(u(F,j)|0)+C|0}k=h+1+(a[G+(j*3|0)+2>>0]|0)>>1;h=c[ub>>2]|0;j=z>>h;h=O>>h;if((j|0)<=-1){j=23;break a}b=c[vb>>2]|0;if((j|0)>=(b|0)){j=23;break a}if((h|0)<=-1){j=26;break a}if((h|0)>=(c[wb>>2]|0)){j=26;break a}L=e[(c[xb>>2]|0)+(((u(b,h)|0)+j|0)*24|0)+2>>1]|0;L=c[(c[Ya>>2]|0)+(L<<2)>>2]|0;w=(c[L+760>>2]|0)+k|0;w=(w|0)<51?w:51;w=d[608+((w|0)>0?w:0)>>0]<<Za;L=(l<<1&255)+-2+k+(c[L+764>>2]|0)|0;L=(L|0)<53?L:53;L=d[544+((L|0)>0?L:0)>>0]<<Za;H=a[_a>>0]|0;m=a[$a>>0]|0;k=a[Fb>>0]|0;r=k&255;l=(H&255)-((m&255)<<1)+r|0;l=(l|0)<0?0-l|0:l;s=n&255;p=(p&255)-((o&255)<<1)+s|0;p=(p|0)<0?0-p|0:p;o=a[db>>0]|0;J=a[eb>>0]|0;I=a[Eb>>0]|0;h=I&255;K=(o&255)-((J&255)<<1)+h|0;K=(K|0)<0?0-K|0:K;n=q&255;q=(v&255)-((t&255)<<1)+n|0;q=(q|0)<0?0-q|0:q;j=K+l|0;b=q+p|0;p=p+l|0;q=q+K|0;b:do if((b+j|0)<(w|0)){l=w>>2;do if((j<<1|0)<(l|0)){K=(d[ib>>0]|0)-r|0;v=h-(d[jb>>0]|0)|0;if((((v|0)<0?0-v|0:v)+((K|0)<0?0-K|0:K)|0)>=(w>>3|0)){h=0;break}h=r-h|0;h=(((h|0)<0?0-h|0:h)|0)<((L*5|0)+1>>1|0)}else h=0;while(0);do if((b<<1|0)<(l|0)){K=(y&255)-s|0;y=n-(x&255)|0;if((((y|0)<0?0-y|0:y)+((K|0)<0?0-K|0:K)|0)>=(w>>3|0)){j=0;break}j=s-n|0;j=(((j|0)<0?0-j|0:j)|0)<((L*5|0)+1>>1|0)}else j=0;while(0);K=h&j;n=(w>>1)+w>>3;l=(p|0)>=(n|0);n=(q|0)>=(n|0);b=a[Va>>0]|0;j=b<<24>>24!=0;if(f){h=z+-1>>A;if(j){if(!((h|0)>-1&(h|0)<(F|0))){j=37;break a}j=G+((B+h|0)*3|0)|0;j=((d[j>>0]|d[j+1>>0]<<8)&65535)>>>10&1^1}else j=1;if(!((h|0)>-1&(h|0)<(F|0))){j=40;break a}x=G+((B+h|0)*3|0)|0;B=G+(E*3|0)|0;B=d[B>>0]|d[B+1>>0]<<8;B=(b<<24>>24==0|(B&1024)==0)&(B&2048)==0;x=j<<24>>24?((d[x>>0]|d[x+1>>0]<<8)&2048)==0:0}else{h=Q>>A;if(j){if(!((h|0)>-1&(h|0)<(D|0))){j=44;break a}j=G+(((u(F,h)|0)+C|0)*3|0)|0;j=((d[j>>0]|d[j+1>>0]<<8)&1024)==0}else j=1;if(!((h|0)>-1&(h|0)<(D|0))){j=47;break a}x=G+(((u(F,h)|0)+C|0)*3|0)|0;B=G+(E*3|0)|0;B=d[B>>0]|d[B+1>>0]<<8;B=(b<<24>>24==0|(B&1024)==0)&(B&2048)==0;x=j&((d[x>>0]|d[x+1>>0]<<8)&2048)==0}y=L<<1;z=L*10|0;A=0-L|0;w=l|x^1;v=n|B^1;s=L>>1;t=0-s|0;r=0;p=H;h=I;b=J;while(1){q=u(zb,r)|0;n=R+(S+q)|0;do if(!K){l=h&255;k=k&255;b=b&255;h=m&255;j=((l-k|0)*9|0)+8+(u(b-h|0,-3)|0)>>4;if((((j|0)<0?0-j|0:j)|0)>=(z|0))break;j=(j|0)<(A|0)?A:(j|0)>(L|0)?L:j;do if(f){if(x){J=j+k|0;a[T+(q+-1)>>0]=(J|0)<0?0:((J|0)<(Sa|0)?J:Ta)&255}if(!B)break;J=l-j|0;a[T+q>>0]=(J|0)<0?0:((J|0)<(Sa|0)?J:Ta)&255}else{if(x){J=j+k|0;a[T+(r-zb)>>0]=(J|0)<0?0:((J|0)<(Sa|0)?J:Ta)&255}if(!B)break;J=l-j|0;a[T+r>>0]=(J|0)<0?0:((J|0)<(Sa|0)?J:Ta)&255}while(0);if(!w){J=((k+1+(p&255)|0)>>>1)-h+j>>1;J=((J|0)<(t|0)?t:(J|0)>(s|0)?s:J)+h|0;a[T+(f?q+-2|0:r-Ua|0)>>0]=(J|0)<0?0:((J|0)<(Sa|0)?J:Ta)&255}if(v)break;j=((l+1+(o&255)|0)>>>1)-b-j>>1;j=((j|0)<(t|0)?t:(j|0)>(s|0)?s:j)+b|0;j=(j|0)<0?0:((j|0)<(Sa|0)?j:Ta)&255;if(f){a[T+(q+1)>>0]=j;break}else{a[T+(r+zb)>>0]=j;break}}else{I=a[Eb+(r<<2)+3>>0]|0;J=p&255;G=m&255;l=k&255;h=h&255;j=h<<1;H=b&255;F=(l<<1)+4|0;k=F+J+(G<<1)+j+H>>3;E=l-y|0;b=y+l|0;k=((k|0)<(E|0)?E:(k|0)>(b|0)?b:k)&255;b=h+l|0;l=(b+2+G+J|0)>>>2;E=G-y|0;m=y+G|0;l=((l|0)<(E|0)?E:(l|0)>(m|0)?m:l)&255;m=(b+4+G+(J*3|0)+(d[Fb+(r<<2)+3>>0]<<1)|0)>>>3;E=J-y|0;J=y+J|0;m=((m|0)<(E|0)?E:(m|0)>(J|0)?J:m)&255;J=o&255;j=F+G+j+(H<<1)+J>>3;G=h-y|0;h=y+h|0;j=((j|0)<(G|0)?G:(j|0)>(h|0)?h:j)&255;a[Gb>>0]=j;b=b+H|0;h=(J+2+b|0)>>>2;G=H-y|0;H=y+H|0;h=((h|0)<(G|0)?G:(h|0)>(H|0)?H:h)&255;a[Wa>>0]=h;b=(b+4+(J*3|0)+((I&255)<<1)|0)>>>3;I=J-y|0;J=y+J|0;b=((b|0)<(I|0)?I:(b|0)>(J|0)?J:b)&255;a[Xa>>0]=b;do if(f){if(!x){if(!B)break;a[n>>0]=a[Gb>>0]|0;a[n+1>>0]=a[Gb+1>>0]|0;a[n+2>>0]=a[Gb+2>>0]|0;break}a[T+(q+-1)>>0]=k;if(B){a[T+q>>0]=j;a[T+(q+-2)>>0]=l;a[T+(q+1)>>0]=h;a[T+(q+-3)>>0]=m;a[T+(q+2)>>0]=b;break}else{a[T+(q+-2)>>0]=l;a[T+(q+-3)>>0]=m;break}}else{if(!x){if(!B)break;a[T+r>>0]=j;a[T+(zb+r)>>0]=h;a[T+(Ra+r)>>0]=b;break}a[T+(r-zb)>>0]=k;if(B){a[T+r>>0]=j;a[T+(r-Na)>>0]=l;a[T+(zb+r)>>0]=h;a[T+(r+Oa)>>0]=m;a[T+(Na+r)>>0]=b;break}else{a[T+(r-Pa)>>0]=l;a[T+(r+Qa)>>0]=m;break}}while(0)}while(0);j=r+1|0;if((j|0)==4)break b;r=j;p=a[Fb+(j<<2)+2>>0]|0;m=a[Fb+(j<<2)+1>>0]|0;k=a[Fb+(j<<2)>>0]|0;h=a[Eb+(j<<2)>>0]|0;b=a[Eb+(j<<2)+1>>0]|0;o=a[Eb+(j<<2)+2>>0]|0}}while(0)}N=N+Ab|0}while((N|0)<(yb|0))}g=g+Bb|0;if((g|0)>=(mb|0)){j=3;break}}switch(j|0){case 3:{hc=Hb;return}case 10:{M(60650,60687,120,60707);break}case 13:{M(60711,60687,121,60707);break}case 16:{M(60650,60687,120,60707);break}case 19:{M(60711,60687,121,60707);break}case 23:{M(60650,60687,120,60707);break}case 26:{M(60711,60687,121,60707);break}case 37:{M(60650,60687,120,60707);break}case 40:{M(60650,60687,120,60707);break}case 44:{M(60711,60687,121,60707);break}case 47:{M(60711,60687,121,60707);break}}}function we(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,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,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,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,_b=0,$b=0,ac=0;ac=hc;hc=hc+32|0;_b=ac+16|0;$b=ac;l=c[f+128>>2]|0;Vb=c[l+5016>>2]|0;Wb=c[l+5020>>2]|0;Xb=u(Vb,g?2:1)|0;Yb=u(Wb,g?1:2)|0;Ub=c[f+44>>2]|0;Zb=c[f+276>>2]|0;Tb=(Zb|0)>(k|0)?k:Zb;Cb=c[f+280>>2]|0;Cb=(Cb|0)>(i|0)?i:Cb;k=c[l+5004>>2]|0;if((Cb|0)<=(h|0)){hc=ac;return}Db=(Tb|0)>(j|0);Eb=3-Vb|0;Fb=3-Wb|0;Gb=f+264|0;Hb=f+136|0;Ib=f+172|0;Jb=f+176|0;Kb=f+180|0;Lb=f+164|0;Mb=l+5012|0;Nb=f+152|0;Ob=f+156|0;Pb=f+160|0;Qb=f+144|0;Rb=f+52|0;Sb=k+-8|0;Bb=l+4716|0;za=1<<k;Aa=za+65535|0;Ba=Ub<<1;Ca=u(Ub,-2)|0;Da=$b+2|0;Ea=Ub+-1|0;Fa=_b+2|0;Ga=Ub<<1;Ha=$b+4|0;Ia=Ga+-1|0;Ja=_b+4|0;Ka=Ub*3|0;La=$b+6|0;Ma=Ka+-1|0;Na=_b+6|0;Oa=$b+8|0;Pa=_b+8|0;Qa=Ub+1|0;Ra=$b+10|0;Sa=Ub+-2|0;Ta=_b+10|0;Ua=Ga|1;Va=$b+12|0;Wa=Ga+-2|0;Xa=_b+12|0;Ya=Ka+1|0;Za=$b+14|0;_a=Ka+-2|0;$a=_b+14|0;Ab=_b+8|0;zb=$b+8|0;ab=_b+8|0;bb=$b+8|0;cb=_b+8|0;db=$b+8|0;eb=0-Ub|0;fb=$b+2|0;gb=_b+2|0;hb=_b+10|0;ib=$b+10|0;jb=Ub+-1|0;kb=_b+8|0;lb=$b+8|0;mb=$b+2|0;nb=_b+2|0;ob=_b+10|0;pb=$b+10|0;qb=$b+4|0;rb=_b+4|0;sb=_b+12|0;tb=$b+12|0;ub=Ub<<1;vb=$b+6|0;wb=_b+6|0;xb=_b+14|0;yb=$b+14|0;K=Ub*3|0;L=$b+2|0;N=_b+2|0;O=_b+10|0;P=$b+10|0;Q=1-Ub|0;R=_b+8|0;S=$b+8|0;T=$b+2|0;U=_b+2|0;V=_b+10|0;W=$b+10|0;X=$b+4|0;Y=_b+4|0;Z=_b+12|0;_=$b+12|0;$=$b+6|0;aa=_b+6|0;ba=_b+14|0;ca=$b+14|0;da=$b+4|0;ea=_b+4|0;fa=_b+12|0;ga=$b+12|0;ha=Ub<<1;ia=ha+-1|0;ja=$b+4|0;ka=_b+4|0;la=_b+12|0;ma=$b+12|0;na=2-Ub|0;oa=$b+6|0;pa=_b+6|0;qa=_b+14|0;ra=$b+14|0;sa=Ub*3|0;ta=sa+-1|0;ua=$b+6|0;va=_b+6|0;wa=_b+14|0;xa=$b+14|0;ya=3-Ub|0;a:while(1){if(Db){H=h<<Fb;F=u(H,Wb)|0;G=u((F|0)/4|0,Zb)|0;H=u(H,Ub)|0;I=F+-1|0;E=j;do{k=E<<Eb;J=u(k,Vb)|0;i=a[(c[Gb>>2]|0)+(((J|0)/4|0)+G)>>0]&3;if((i&255)>1){C=k+H<<1;D=J+-1|0;y=(i<<1&255)+-2|0;z=Ca+C|0;A=z+Ca|0;B=C+Ba|0;k=0;while(1){l=c[Hb>>2]|0;l=(k|0)==0?c[l+28>>2]|0:c[l+32>>2]|0;w=k+1|0;k=c[f+4+(w<<2)>>2]|0;x=k+C|0;if(g){b[$b>>1]=b[x>>1]|0;b[_b>>1]=b[x+-2>>1]|0;b[Da>>1]=b[x+(Ub<<1)>>1]|0;b[Fa>>1]=b[x+(Ea<<1)>>1]|0;b[Ha>>1]=b[x+(Ga<<1)>>1]|0;b[Ja>>1]=b[x+(Ia<<1)>>1]|0;b[La>>1]=b[x+(Ka<<1)>>1]|0;b[Na>>1]=b[x+(Ma<<1)>>1]|0;b[Oa>>1]=b[x+2>>1]|0;b[Pa>>1]=b[x+-4>>1]|0;b[Ra>>1]=b[x+(Qa<<1)>>1]|0;b[Ta>>1]=b[x+(Sa<<1)>>1]|0;b[Va>>1]=b[x+(Ua<<1)>>1]|0;b[Xa>>1]=b[x+(Wa<<1)>>1]|0;b[Za>>1]=b[x+(Ya<<1)>>1]|0;b[$a>>1]=b[x+(_a<<1)>>1]|0}else{t=x;s=t;t=t+4|0;t=e[t>>1]|e[t+2>>1]<<16;v=$b;c[v>>2]=e[s>>1]|e[s+2>>1]<<16;c[v+4>>2]=t;v=k+z|0;t=v;v=v+4|0;v=e[v>>1]|e[v+2>>1]<<16;s=_b;c[s>>2]=e[t>>1]|e[t+2>>1]<<16;c[s+4>>2]=v;s=k+B|0;v=s;s=s+4|0;s=e[s>>1]|e[s+2>>1]<<16;t=zb;c[t>>2]=e[v>>1]|e[v+2>>1]<<16;c[t+4>>2]=s;t=k+A|0;s=t;t=t+4|0;t=e[t>>1]|e[t+2>>1]<<16;v=Ab;c[v>>2]=e[s>>1]|e[s+2>>1]<<16;c[v+4>>2]=t}n=c[Ib>>2]|0;p=J>>n;k=F>>n;if((p|0)<=-1){k=14;break a}s=c[Jb>>2]|0;if((p|0)>=(s|0)){k=14;break a}if((k|0)<=-1){k=17;break a}q=c[Kb>>2]|0;if((k|0)>=(q|0)){k=17;break a}t=c[Lb>>2]|0;o=u(s,k)|0;r=o+p|0;i=a[t+(r*3|0)+2>>0]|0;if(g){k=D>>n;if(!((k|0)>-1&(k|0)<(s|0))){k=20;break a}k=o+k|0}else{k=I>>n;if(!((k|0)>-1&(k|0)<(q|0))){k=23;break a}k=(u(s,k)|0)+p|0}k=(i+1+(a[t+(k*3|0)+2>>0]|0)>>1)+l|0;do if((c[Mb>>2]|0)==1){if((k|0)>=30)if((k|0)>42){k=k+-6|0;break}else{k=c[480+(k+-30<<2)>>2]|0;break}}else k=(k|0)<51?k:51;while(0);l=c[Nb>>2]|0;i=J>>l;l=F>>l;if((i|0)<=-1){k=33;break a}m=c[Ob>>2]|0;if((i|0)>=(m|0)){k=33;break a}if((l|0)<=-1){k=36;break a}if((l|0)>=(c[Pb>>2]|0)){k=36;break a}v=e[(c[Qb>>2]|0)+(((u(m,l)|0)+i|0)*24|0)+2>>1]|0;v=y+k+(c[(c[(c[Rb>>2]|0)+(v<<2)>>2]|0)+764>>2]|0)|0;v=(v|0)<53?v:53;v=d[544+((v|0)>0?v:0)>>0]<<Sb;l=(a[Bb>>0]|0)==0;do if(g){k=D>>n;if(l)i=1;else{if(!((k|0)>-1&(k|0)<(s|0))){k=40;break a}i=t+((o+k|0)*3|0)|0;i=((d[i>>0]|d[i+1>>0]<<8)&1024)==0}if(!((k|0)>-1&(k|0)<(s|0))){k=43;break a}s=t+((o+k|0)*3|0)|0;m=t+(r*3|0)|0;m=d[m>>0]|d[m+1>>0]<<8;m=(l|(m&1024)==0)&(m&2048)==0;l=0-v|0;if(!(i&((d[s>>0]|d[s+1>>0]<<8)&2048)==0)){if(!m)break;t=e[$b>>1]|0;s=(e[kb>>1]|0)+4+(t-(e[_b>>1]|0)<<2)-(e[lb>>1]|0)>>3;s=t-((s|0)<(l|0)?l:(s|0)>(v|0)?v:s)|0;b[x>>1]=(s|0)<0?0:((s|0)<(za|0)?s:Aa)&65535;s=e[mb>>1]|0;t=(e[ob>>1]|0)+4+(s-(e[nb>>1]|0)<<2)-(e[pb>>1]|0)>>3;t=s-((t|0)<(l|0)?l:(t|0)>(v|0)?v:t)|0;b[x+(Ub<<1)>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535;t=e[qb>>1]|0;s=(e[sb>>1]|0)+4+(t-(e[rb>>1]|0)<<2)-(e[tb>>1]|0)>>3;s=t-((s|0)<(l|0)?l:(s|0)>(v|0)?v:s)|0;b[x+(ub<<1)>>1]=(s|0)<0?0:((s|0)<(za|0)?s:Aa)&65535;s=e[vb>>1]|0;t=(e[xb>>1]|0)+4+(s-(e[wb>>1]|0)<<2)-(e[yb>>1]|0)>>3;v=s-((t|0)<(l|0)?l:(t|0)>(v|0)?v:t)|0;b[x+(K<<1)>>1]=(v|0)<0?0:((v|0)<(za|0)?v:Aa)&65535;break}k=e[$b>>1]|0;t=e[_b>>1]|0;i=(e[ab>>1]|0)+4+(k-t<<2)-(e[bb>>1]|0)>>3;i=(i|0)<(l|0)?l:(i|0)>(v|0)?v:i;t=i+t|0;b[x+-2>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535;if(m){t=k-i|0;b[x>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535}k=e[fb>>1]|0;t=e[gb>>1]|0;i=(e[hb>>1]|0)+4+(k-t<<2)-(e[ib>>1]|0)>>3;i=(i|0)<(l|0)?l:(i|0)>(v|0)?v:i;t=i+t|0;b[x+(jb<<1)>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535;if(m){t=k-i|0;b[x+(Ub<<1)>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535}k=e[da>>1]|0;t=e[ea>>1]|0;i=(e[fa>>1]|0)+4+(k-t<<2)-(e[ga>>1]|0)>>3;i=(i|0)<(l|0)?l:(i|0)>(v|0)?v:i;t=i+t|0;b[x+(ia<<1)>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535;if(m){t=k-i|0;b[x+(ha<<1)>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535}i=e[oa>>1]|0;t=e[pa>>1]|0;k=(e[qa>>1]|0)+4+(i-t<<2)-(e[ra>>1]|0)>>3;k=(k|0)<(l|0)?l:(k|0)>(v|0)?v:k;v=k+t|0;b[x+(ta<<1)>>1]=(v|0)<0?0:((v|0)<(za|0)?v:Aa)&65535;if(!m)break;v=i-k|0;b[x+(sa<<1)>>1]=(v|0)<0?0:((v|0)<(za|0)?v:Aa)&65535}else{k=I>>n;if(l)i=1;else{if(!((k|0)>-1&(k|0)<(q|0))){k=52;break a}i=t+(((u(s,k)|0)+p|0)*3|0)|0;i=((d[i>>0]|d[i+1>>0]<<8)&1024)==0}if(!((k|0)>-1&(k|0)<(q|0))){k=55;break a}s=t+(((u(s,k)|0)+p|0)*3|0)|0;m=t+(r*3|0)|0;m=d[m>>0]|d[m+1>>0]<<8;m=(l|(m&1024)==0)&(m&2048)==0;l=0-v|0;if(!(i&((d[s>>0]|d[s+1>>0]<<8)&2048)==0)){if(!m)break;t=e[$b>>1]|0;s=(e[R>>1]|0)+4+(t-(e[_b>>1]|0)<<2)-(e[S>>1]|0)>>3;s=t-((s|0)<(l|0)?l:(s|0)>(v|0)?v:s)|0;b[x>>1]=(s|0)<0?0:((s|0)<(za|0)?s:Aa)&65535;s=e[T>>1]|0;t=(e[V>>1]|0)+4+(s-(e[U>>1]|0)<<2)-(e[W>>1]|0)>>3;t=s-((t|0)<(l|0)?l:(t|0)>(v|0)?v:t)|0;b[x+2>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535;t=e[X>>1]|0;s=(e[Z>>1]|0)+4+(t-(e[Y>>1]|0)<<2)-(e[_>>1]|0)>>3;s=t-((s|0)<(l|0)?l:(s|0)>(v|0)?v:s)|0;b[x+4>>1]=(s|0)<0?0:((s|0)<(za|0)?s:Aa)&65535;s=e[$>>1]|0;t=(e[ba>>1]|0)+4+(s-(e[aa>>1]|0)<<2)-(e[ca>>1]|0)>>3;v=s-((t|0)<(l|0)?l:(t|0)>(v|0)?v:t)|0;b[x+6>>1]=(v|0)<0?0:((v|0)<(za|0)?v:Aa)&65535;break}k=e[$b>>1]|0;t=e[_b>>1]|0;i=(e[cb>>1]|0)+4+(k-t<<2)-(e[db>>1]|0)>>3;i=(i|0)<(l|0)?l:(i|0)>(v|0)?v:i;t=i+t|0;b[x+(eb<<1)>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535;if(m){t=k-i|0;b[x>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535}k=e[L>>1]|0;t=e[N>>1]|0;i=(e[O>>1]|0)+4+(k-t<<2)-(e[P>>1]|0)>>3;i=(i|0)<(l|0)?l:(i|0)>(v|0)?v:i;t=i+t|0;b[x+(Q<<1)>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535;if(m){t=k-i|0;b[x+2>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535}k=e[ja>>1]|0;t=e[ka>>1]|0;i=(e[la>>1]|0)+4+(k-t<<2)-(e[ma>>1]|0)>>3;i=(i|0)<(l|0)?l:(i|0)>(v|0)?v:i;t=i+t|0;b[x+(na<<1)>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535;if(m){t=k-i|0;b[x+4>>1]=(t|0)<0?0:((t|0)<(za|0)?t:Aa)&65535}i=e[ua>>1]|0;t=e[va>>1]|0;k=(e[wa>>1]|0)+4+(i-t<<2)-(e[xa>>1]|0)>>3;k=(k|0)<(l|0)?l:(k|0)>(v|0)?v:k;v=k+t|0;b[x+(ya<<1)>>1]=(v|0)<0?0:((v|0)<(za|0)?v:Aa)&65535;if(!m)break;v=i-k|0;b[x+6>>1]=(v|0)<0?0:((v|0)<(za|0)?v:Aa)&65535}while(0);if(w>>>0<2)k=1;else break}}E=E+Xb|0}while((E|0)<(Tb|0))}h=h+Yb|0;if((h|0)>=(Cb|0)){k=3;break}}switch(k|0){case 3:{hc=ac;return}case 14:{M(60650,60687,120,60707);break}case 17:{M(60711,60687,121,60707);break}case 20:{M(60650,60687,120,60707);break}case 23:{M(60711,60687,121,60707);break}case 33:{M(60650,60687,120,60707);break}case 36:{M(60711,60687,121,60707);break}case 40:{M(60650,60687,120,60707);break}case 43:{M(60650,60687,120,60707);break}case 52:{M(60711,60687,121,60707);break}case 55:{M(60711,60687,121,60707);break}}}function xe(b,f,g,h,i,j){b=b|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,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,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,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;Yb=hc;hc=hc+16|0;Wb=Yb+8|0;Xb=Yb;k=c[b+128>>2]|0;Qb=c[k+5016>>2]|0;Rb=c[k+5020>>2]|0;Sb=u(Qb,f?2:1)|0;Tb=u(Rb,f?1:2)|0;Ub=b+44|0;Pb=c[Ub>>2]|0;Vb=b+276|0;Ob=c[Vb>>2]|0;Ob=(Ob|0)>(j|0)?j:Ob;xb=c[b+280>>2]|0;xb=(xb|0)>(h|0)?h:xb;yb=k+5004|0;if((xb|0)<=(g|0)){hc=Yb;return}zb=(Ob|0)>(i|0);Ab=3-Qb|0;Bb=3-Rb|0;Cb=b+264|0;Db=b+136|0;Eb=b+172|0;Fb=b+176|0;Gb=b+180|0;Hb=b+164|0;Ib=k+5012|0;Jb=b+152|0;Kb=b+156|0;Lb=b+160|0;Mb=b+144|0;Nb=b+52|0;ta=k+4716|0;ua=1<<c[yb>>2];va=ua+255|0;wa=0-Pb|0;xa=Xb+1|0;ya=Pb+-1|0;za=Wb+1|0;Aa=Pb<<1;Ba=Xb+2|0;Ca=Aa+-1|0;Da=Wb+2|0;Ea=Pb*3|0;Fa=Xb+3|0;Ga=Ea+-1|0;Ha=Wb+3|0;Ia=Xb+4|0;Ja=Wb+4|0;Ka=Pb+1|0;La=Xb+5|0;Ma=Pb+-2|0;Na=Wb+5|0;Oa=Aa|1;Pa=Xb+6|0;Qa=Aa+-2|0;Ra=Wb+6|0;Sa=Ea+1|0;Ta=Xb+7|0;Ua=Ea+-2|0;Va=Wb+7|0;wb=Wb+4|0;vb=Xb+4|0;Wa=Wb+4|0;Xa=Xb+4|0;Ya=Wb+4|0;Za=Xb+4|0;_a=Xb+1|0;$a=Wb+1|0;ab=Wb+5|0;bb=Xb+5|0;cb=Pb+-1|0;db=Wb+4|0;eb=Xb+4|0;fb=Xb+1|0;gb=Wb+1|0;hb=Wb+5|0;ib=Xb+5|0;jb=Xb+2|0;kb=Wb+2|0;lb=Wb+6|0;mb=Xb+6|0;nb=Pb<<1;ob=Xb+3|0;pb=Wb+3|0;qb=Wb+7|0;rb=Xb+7|0;sb=Pb*3|0;tb=Xb+1|0;ub=Wb+1|0;H=Wb+5|0;I=Xb+5|0;J=1-Pb|0;K=Wb+4|0;L=Xb+4|0;N=Xb+1|0;O=Wb+1|0;P=Wb+5|0;Q=Xb+5|0;R=Xb+2|0;S=Wb+2|0;T=Wb+6|0;U=Xb+6|0;V=Xb+3|0;W=Wb+3|0;X=Wb+7|0;Y=Xb+7|0;Z=Xb+2|0;_=Wb+2|0;$=Wb+6|0;aa=Xb+6|0;ba=Pb<<1;ca=ba+-1|0;da=Xb+2|0;ea=Wb+2|0;fa=Wb+6|0;ga=Xb+6|0;ha=2-Pb|0;ia=Xb+3|0;ja=Wb+3|0;ka=Wb+7|0;la=Xb+7|0;ma=Pb*3|0;na=ma+-1|0;oa=Xb+3|0;pa=Wb+3|0;qa=Wb+7|0;ra=Xb+7|0;sa=3-Pb|0;a:while(1){if(zb){A=g<<Bb;B=u(A,Rb)|0;C=(B|0)/4|0;D=B+-1|0;z=i;do{E=z<<Ab;F=u(E,Qb)|0;j=(u(c[Vb>>2]|0,C)|0)+((F|0)/4|0)|0;j=a[(c[Cb>>2]|0)+j>>0]&3;if((j&255)>1){G=F+-1|0;x=(j<<1&255)+-2|0;y=E-Pb|0;j=0;while(1){l=c[Db>>2]|0;l=(j|0)==0?c[l+28>>2]|0:c[l+32>>2]|0;v=j+1|0;j=c[b+4+(v<<2)>>2]|0;h=u(c[Ub>>2]|0,A)|0;k=h+E|0;w=j+k|0;if(f){a[Xb>>0]=a[w>>0]|0;a[Wb>>0]=a[w+-1>>0]|0;a[xa>>0]=a[w+Pb>>0]|0;a[za>>0]=a[w+ya>>0]|0;a[Ba>>0]=a[w+Aa>>0]|0;a[Da>>0]=a[w+Ca>>0]|0;a[Fa>>0]=a[w+Ea>>0]|0;a[Ha>>0]=a[w+Ga>>0]|0;a[Ia>>0]=a[w+1>>0]|0;a[Ja>>0]=a[w+-2>>0]|0;a[La>>0]=a[w+Ka>>0]|0;a[Na>>0]=a[w+Ma>>0]|0;a[Pa>>0]=a[w+Oa>>0]|0;a[Ra>>0]=a[w+Qa>>0]|0;a[Ta>>0]=a[w+Sa>>0]|0;a[Va>>0]=a[w+Ua>>0]|0}else{t=y+h|0;s=j+t|0;c[Xb>>2]=d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24;c[Wb>>2]=d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24;t=j+(t-Pb)|0;s=j+(k+Pb)|0;c[vb>>2]=d[s>>0]|d[s+1>>0]<<8|d[s+2>>0]<<16|d[s+3>>0]<<24;c[wb>>2]=d[t>>0]|d[t+1>>0]<<8|d[t+2>>0]<<16|d[t+3>>0]<<24}m=c[Eb>>2]|0;o=F>>m;j=B>>m;if((o|0)<=-1){j=14;break a}r=c[Fb>>2]|0;if((o|0)>=(r|0)){j=14;break a}if((j|0)<=-1){j=17;break a}p=c[Gb>>2]|0;if((j|0)>=(p|0)){j=17;break a}s=c[Hb>>2]|0;n=u(r,j)|0;q=n+o|0;h=a[s+(q*3|0)+2>>0]|0;if(f){j=G>>m;if(!((j|0)>-1&(j|0)<(r|0))){j=20;break a}j=n+j|0}else{j=D>>m;if(!((j|0)>-1&(j|0)<(p|0))){j=23;break a}j=(u(r,j)|0)+o|0}j=(h+1+(a[s+(j*3|0)+2>>0]|0)>>1)+l|0;do if((c[Ib>>2]|0)==1){if((j|0)>=30)if((j|0)>42){j=j+-6|0;break}else{j=c[480+(j+-30<<2)>>2]|0;break}}else j=(j|0)<51?j:51;while(0);k=c[Jb>>2]|0;h=F>>k;k=B>>k;if((h|0)<=-1){j=33;break a}l=c[Kb>>2]|0;if((h|0)>=(l|0)){j=33;break a}if((k|0)<=-1){j=36;break a}if((k|0)>=(c[Lb>>2]|0)){j=36;break a}t=e[(c[Mb>>2]|0)+(((u(l,k)|0)+h|0)*24|0)+2>>1]|0;t=x+j+(c[(c[(c[Nb>>2]|0)+(t<<2)>>2]|0)+764>>2]|0)|0;t=(t|0)<53?t:53;t=d[544+((t|0)>0?t:0)>>0]<<(c[yb>>2]|0)+-8;k=(a[ta>>0]|0)==0;do if(f){j=G>>m;if(k)h=1;else{if(!((j|0)>-1&(j|0)<(r|0))){j=40;break a}h=s+((n+j|0)*3|0)|0;h=((d[h>>0]|d[h+1>>0]<<8)&1024)==0}if(!((j|0)>-1&(j|0)<(r|0))){j=43;break a}r=s+((n+j|0)*3|0)|0;l=s+(q*3|0)|0;l=d[l>>0]|d[l+1>>0]<<8;l=(k|(l&1024)==0)&(l&2048)==0;k=0-t|0;if(!(h&((d[r>>0]|d[r+1>>0]<<8)&2048)==0)){if(!l)break;s=d[Xb>>0]|0;r=(d[db>>0]|0)+4+(s-(d[Wb>>0]|0)<<2)-(d[eb>>0]|0)>>3;r=s-((r|0)<(k|0)?k:(r|0)>(t|0)?t:r)|0;a[w>>0]=(r|0)<0?0:((r|0)<(ua|0)?r:va)&255;r=d[fb>>0]|0;s=(d[hb>>0]|0)+4+(r-(d[gb>>0]|0)<<2)-(d[ib>>0]|0)>>3;s=r-((s|0)<(k|0)?k:(s|0)>(t|0)?t:s)|0;a[w+Pb>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255;s=d[jb>>0]|0;r=(d[lb>>0]|0)+4+(s-(d[kb>>0]|0)<<2)-(d[mb>>0]|0)>>3;r=s-((r|0)<(k|0)?k:(r|0)>(t|0)?t:r)|0;a[w+nb>>0]=(r|0)<0?0:((r|0)<(ua|0)?r:va)&255;r=d[ob>>0]|0;s=(d[qb>>0]|0)+4+(r-(d[pb>>0]|0)<<2)-(d[rb>>0]|0)>>3;t=r-((s|0)<(k|0)?k:(s|0)>(t|0)?t:s)|0;a[w+sb>>0]=(t|0)<0?0:((t|0)<(ua|0)?t:va)&255;break}j=d[Xb>>0]|0;s=d[Wb>>0]|0;h=(d[Wa>>0]|0)+4+(j-s<<2)-(d[Xa>>0]|0)>>3;h=(h|0)<(k|0)?k:(h|0)>(t|0)?t:h;s=h+s|0;a[w+-1>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255;if(l){s=j-h|0;a[w>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255}j=d[_a>>0]|0;s=d[$a>>0]|0;h=(d[ab>>0]|0)+4+(j-s<<2)-(d[bb>>0]|0)>>3;h=(h|0)<(k|0)?k:(h|0)>(t|0)?t:h;s=h+s|0;a[w+cb>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255;if(l){s=j-h|0;a[w+Pb>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255}j=d[Z>>0]|0;s=d[_>>0]|0;h=(d[$>>0]|0)+4+(j-s<<2)-(d[aa>>0]|0)>>3;h=(h|0)<(k|0)?k:(h|0)>(t|0)?t:h;s=h+s|0;a[w+ca>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255;if(l){s=j-h|0;a[w+ba>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255}h=d[ia>>0]|0;s=d[ja>>0]|0;j=(d[ka>>0]|0)+4+(h-s<<2)-(d[la>>0]|0)>>3;j=(j|0)<(k|0)?k:(j|0)>(t|0)?t:j;t=j+s|0;a[w+na>>0]=(t|0)<0?0:((t|0)<(ua|0)?t:va)&255;if(!l)break;t=h-j|0;a[w+ma>>0]=(t|0)<0?0:((t|0)<(ua|0)?t:va)&255}else{j=D>>m;if(k)h=1;else{if(!((j|0)>-1&(j|0)<(p|0))){j=52;break a}h=s+(((u(r,j)|0)+o|0)*3|0)|0;h=((d[h>>0]|d[h+1>>0]<<8)&1024)==0}if(!((j|0)>-1&(j|0)<(p|0))){j=55;break a}r=s+(((u(r,j)|0)+o|0)*3|0)|0;l=s+(q*3|0)|0;l=d[l>>0]|d[l+1>>0]<<8;l=(k|(l&1024)==0)&(l&2048)==0;k=0-t|0;if(!(h&((d[r>>0]|d[r+1>>0]<<8)&2048)==0)){if(!l)break;s=d[Xb>>0]|0;r=(d[K>>0]|0)+4+(s-(d[Wb>>0]|0)<<2)-(d[L>>0]|0)>>3;r=s-((r|0)<(k|0)?k:(r|0)>(t|0)?t:r)|0;a[w>>0]=(r|0)<0?0:((r|0)<(ua|0)?r:va)&255;r=d[N>>0]|0;s=(d[P>>0]|0)+4+(r-(d[O>>0]|0)<<2)-(d[Q>>0]|0)>>3;s=r-((s|0)<(k|0)?k:(s|0)>(t|0)?t:s)|0;a[w+1>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255;s=d[R>>0]|0;r=(d[T>>0]|0)+4+(s-(d[S>>0]|0)<<2)-(d[U>>0]|0)>>3;r=s-((r|0)<(k|0)?k:(r|0)>(t|0)?t:r)|0;a[w+2>>0]=(r|0)<0?0:((r|0)<(ua|0)?r:va)&255;r=d[V>>0]|0;s=(d[X>>0]|0)+4+(r-(d[W>>0]|0)<<2)-(d[Y>>0]|0)>>3;t=r-((s|0)<(k|0)?k:(s|0)>(t|0)?t:s)|0;a[w+3>>0]=(t|0)<0?0:((t|0)<(ua|0)?t:va)&255;break}j=d[Xb>>0]|0;s=d[Wb>>0]|0;h=(d[Ya>>0]|0)+4+(j-s<<2)-(d[Za>>0]|0)>>3;h=(h|0)<(k|0)?k:(h|0)>(t|0)?t:h;s=h+s|0;a[w+wa>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255;if(l){s=j-h|0;a[w>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255}j=d[tb>>0]|0;s=d[ub>>0]|0;h=(d[H>>0]|0)+4+(j-s<<2)-(d[I>>0]|0)>>3;h=(h|0)<(k|0)?k:(h|0)>(t|0)?t:h;s=h+s|0;a[w+J>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255;if(l){s=j-h|0;a[w+1>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255}j=d[da>>0]|0;s=d[ea>>0]|0;h=(d[fa>>0]|0)+4+(j-s<<2)-(d[ga>>0]|0)>>3;h=(h|0)<(k|0)?k:(h|0)>(t|0)?t:h;s=h+s|0;a[w+ha>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255;if(l){s=j-h|0;a[w+2>>0]=(s|0)<0?0:((s|0)<(ua|0)?s:va)&255}h=d[oa>>0]|0;s=d[pa>>0]|0;j=(d[qa>>0]|0)+4+(h-s<<2)-(d[ra>>0]|0)>>3;j=(j|0)<(k|0)?k:(j|0)>(t|0)?t:j;t=j+s|0;a[w+sa>>0]=(t|0)<0?0:((t|0)<(ua|0)?t:va)&255;if(!l)break;t=h-j|0;a[w+3>>0]=(t|0)<0?0:((t|0)<(ua|0)?t:va)&255}while(0);if(v>>>0<2)j=1;else break}}z=z+Sb|0}while((z|0)<(Ob|0))}g=g+Tb|0;if((g|0)>=(xb|0)){j=3;break}}switch(j|0){case 3:{hc=Yb;return}case 14:{M(60650,60687,120,60707);break}case 17:{M(60711,60687,121,60707);break}case 20:{M(60650,60687,120,60707);break}case 23:{M(60711,60687,121,60707);break}case 33:{M(60650,60687,120,60707);break}case 36:{M(60711,60687,121,60707);break}case 40:{M(60650,60687,120,60707);break}case 43:{M(60650,60687,120,60707);break}case 52:{M(60711,60687,121,60707);break}case 55:{M(60711,60687,121,60707);break}}}function ye(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;b=a+356|0;Ae(b);f=a+340|0;e=c[f>>2]|0;c[f>>2]=e+-1;f=a+348|0;d=(c[f>>2]|0)+1|0;c[f>>2]=d;if((e|0)<=0)M(58091,58112,658,58123);if((d|0)!=(c[a+352>>2]|0)){Ce(b);return}Be(a+384|0,b);Ce(b);return}function ze(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;Do(d)|0;if((c[a>>2]|0)>=(b|0)){Eo(d)|0;return}c[a>>2]=b;iB(a+32|0)|0;Eo(d)|0;return}function Ae(a){a=a|0;Do(a)|0;return}function Be(a,b){a=a|0;b=b|0;iB(a|0)|0;return}function Ce(a){a=a|0;Eo(a)|0;return}function De(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a:do if(d){e=a+164|0;f=c[e>>2]|0;do if((f|0)>0){d=0;while(1){if((c[a+84+(d<<2)>>2]|0)==(b|0)){d=11;break}d=d+1|0;if((d|0)>=(f|0)){d=6;break}}if((d|0)==6)if((f|0)<20)break;else break a;else if((d|0)==11)return}while(0);c[e>>2]=f+1;c[a+84+(f<<2)>>2]=b}while(0);e=a+80|0;d=c[e>>2]|0;if((d|0)==20){b=1001;d=19}else c[e>>2]=d+1;c[a+(d<<2)>>2]=b;return}function Ee(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,v=0,w=0,x=0;s=b+252|0;l=c[s>>2]|0;k=e>>l;if((k|0)<=-1)M(60650,60687,120,60707);p=b+256|0;q=b+260|0;r=b+244|0;x=e;w=f;n=g;m=h;o=i;t=j;g=f>>l;while(1){e=c[p>>2]|0;if((k|0)>=(e|0)){e=4;break}if((g|0)<=-1){e=7;break}if((g|0)>=(c[q>>2]|0)){e=7;break}v=1<<n;if(!(1<<m&(d[(c[r>>2]|0)+((u(e,g)|0)+k)>>0]|0))){e=10;break}h=v>>1;g=h+x|0;h=h+w|0;e=n+-1|0;m=m+1|0;Ee(b,x,w,e,m,o,t);Ee(b,g,w,e,m,16,t);Ee(b,x,h,e,m,o,32);i=c[s>>2]|0;k=g>>i;if((k|0)<=-1){e=4;break}else{x=g;w=h;n=e;o=16;t=32;g=h>>i}}if((e|0)==4)M(60650,60687,120,60707);else if((e|0)==7)M(60711,60687,121,60707);else if((e|0)==10){m=(n|0)==31;if(m)return;g=o&255;h=(x|0)/4|0;i=b+276|0;j=b+280|0;k=b+264|0;e=0;do{f=(e+w|0)/4|0;l=c[i>>2]|0;if((h|0)<(l|0)?(f|0)<(c[j>>2]|0):0){s=(u(l,f)|0)+h|0;s=(c[k>>2]|0)+s|0;a[s>>0]=a[s>>0]|g}e=e+4|0}while((e|0)<(v|0));if(m)return;l=t&255;j=(w|0)/4|0;k=b+276|0;f=b+280|0;g=b+264|0;e=0;do{h=(e+x|0)/4|0;i=c[k>>2]|0;if((h|0)<(i|0)?(j|0)<(c[f>>2]|0):0){b=(u(i,j)|0)+h|0;b=(c[g>>2]|0)+b|0;a[b>>0]=a[b>>0]|l}e=e+4|0}while((e|0)<(v|0));return}}function Fe(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;j=c[b+172>>2]|0;i=e>>j;j=f>>j;if((i|0)<=-1)M(60650,60687,120,60707);h=c[b+176>>2]|0;if((i|0)>=(h|0))M(60650,60687,120,60707);if((j|0)<=-1)M(60711,60687,121,60707);if((j|0)>=(c[b+180>>2]|0))M(60711,60687,121,60707);n=(c[b+164>>2]|0)+(((u(h,j)|0)+i|0)*3|0)|0;o=1<<g;i=1<<g+-1;h=1<<g+-2;switch(((d[n>>0]|d[n+1>>0]<<8)&65535)>>>3&7){case 3:{if((g|0)==31)return;l=(i+e|0)/4|0;m=b+276|0;n=b+280|0;k=(i+f|0)/4|0;g=b+264|0;j=0;do{h=(j+f|0)/4|0;i=c[m>>2]|0;if((l|0)<(i|0)?(h|0)<(c[n>>2]|0):0){i=(u(i,h)|0)+l|0;i=(c[g>>2]|0)+i|0;a[i>>0]=a[i>>0]|64;i=c[m>>2]|0}h=(j+e|0)/4|0;if((h|0)<(i|0)?(k|0)<(c[n>>2]|0):0){b=(u(i,k)|0)+h|0;b=(c[g>>2]|0)+b|0;a[b>>0]=a[b>>0]|-128}j=j+1|0}while((j|0)<(o|0));return}case 2:{if((g|0)==31)return;k=(i+e|0)/4|0;l=b+276|0;m=b+280|0;i=b+264|0;h=0;do{j=(h+f|0)/4|0;g=c[l>>2]|0;if((k|0)<(g|0)?(j|0)<(c[m>>2]|0):0){e=(u(g,j)|0)+k|0;e=(c[i>>2]|0)+e|0;a[e>>0]=a[e>>0]|64}h=h+1|0}while((h|0)<(o|0));return}case 1:{if((g|0)==31)return;k=(i+f|0)/4|0;l=b+276|0;m=b+280|0;i=b+264|0;h=0;do{j=(h+e|0)/4|0;g=c[l>>2]|0;if((j|0)<(g|0)?(k|0)<(c[m>>2]|0):0){f=(u(g,k)|0)+j|0;f=(c[i>>2]|0)+f|0;a[f>>0]=a[f>>0]|-128}h=h+1|0}while((h|0)<(o|0));return}case 6:{if((g|0)==31)return;k=(h+e|0)/4|0;l=b+276|0;m=b+280|0;i=b+264|0;h=0;do{j=(h+f|0)/4|0;g=c[l>>2]|0;if((k|0)<(g|0)?(j|0)<(c[m>>2]|0):0){e=(u(g,j)|0)+k|0;e=(c[i>>2]|0)+e|0;a[e>>0]=a[e>>0]|64}h=h+1|0}while((h|0)<(o|0));return}case 7:{if((g|0)==31)return;k=(i+e+h|0)/4|0;l=b+276|0;m=b+280|0;i=b+264|0;h=0;do{j=(h+f|0)/4|0;g=c[l>>2]|0;if((k|0)<(g|0)?(j|0)<(c[m>>2]|0):0){e=(u(g,j)|0)+k|0;e=(c[i>>2]|0)+e|0;a[e>>0]=a[e>>0]|64}h=h+1|0}while((h|0)<(o|0));return}case 4:{if((g|0)==31)return;k=(h+f|0)/4|0;l=b+276|0;m=b+280|0;i=b+264|0;h=0;do{j=(h+e|0)/4|0;g=c[l>>2]|0;if((j|0)<(g|0)?(k|0)<(c[m>>2]|0):0){f=(u(g,k)|0)+j|0;f=(c[i>>2]|0)+f|0;a[f>>0]=a[f>>0]|-128}h=h+1|0}while((h|0)<(o|0));return}case 5:{if((g|0)==31)return;k=(i+f+h|0)/4|0;l=b+276|0;m=b+280|0;i=b+264|0;h=0;do{j=(h+e|0)/4|0;g=c[l>>2]|0;if((j|0)<(g|0)?(k|0)<(c[m>>2]|0):0){f=(u(g,k)|0)+j|0;f=(c[i>>2]|0)+f|0;a[f>>0]=a[f>>0]|-128}h=h+1|0}while((h|0)<(o|0));return}default:return}}function Ge(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if(!b)return;d=(c[a+332>>2]|0)+(d*80|0)|0;if((He(d)|0)>=(e|0))return;f=a+356|0;Ae(f);g=a+340|0;c[g>>2]=(c[g>>2]|0)+-1;a=a+344|0;c[a>>2]=(c[a>>2]|0)+1;Ce(f);b=b+4|0;c[b>>2]=2;Ie(d,e);c[b>>2]=1;Ae(f);c[a>>2]=(c[a>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+1;Ce(f);return}function He(a){a=a|0;return c[a>>2]|0}function Ie(a,b){a=a|0;b=b|0;var d=0,e=0;if((c[a>>2]|0)>=(b|0))return;d=a+4|0;Do(d)|0;if((c[a>>2]|0)<(b|0)){e=a+32|0;do eb(e|0,d|0)|0;while((c[a>>2]|0)<(b|0))}Eo(d)|0;return}function Je(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;c[a>>2]=12192;f=a+3212|0;b=c[f>>2]|0;g=a+3216|0;d=c[g>>2]|0;if((b|0)!=(d|0))do{d=d+-4|0;e=c[d>>2]|0;if(e){Ne(e);nz(e);d=(c[g>>2]|0)+-4|0;b=c[f>>2]|0}c[g>>2]=d}while((b|0)!=(d|0));if(b|0){c[g>>2]=b;nz(b)}Se(a+2144|0);Oe(a+1392|0);b=c[a+1388>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+1380>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+1372>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=a+856|0;d=a+1368|0;do{e=c[d+-4>>2]|0;d=d+-8|0;if(e|0?(f=e+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[e>>2]|0)+8>>2]&255](e);iz(e)}}while((d|0)!=(b|0));b=c[a+852>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+844>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+836>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+828>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+820>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+812>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+804>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+796>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+788>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+780>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+772>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+764>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+756>>2]|0;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+748>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+740>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+732>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+724>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+716>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+708>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+700>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+692>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+684>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+676>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+668>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+660>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+652>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+644>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+636>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+628>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+620>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+612>>2]|0;do if(b|0){f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0)break;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}while(0);b=c[a+604>>2]|0;if(!b){a=a+548|0;Pe(a);return}f=b+4|0;g=c[f>>2]|0;c[f>>2]=g+-1;if(g|0){a=a+548|0;Pe(a);return}wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b);a=a+548|0;Pe(a);return}function Ke(a){a=a|0;Je(a);nz(a);return}function Le(a,b){a=a|0;b=b|0;var d=0;d=c[a+2152>>2]|0;if((c[a+2156>>2]|0)-d>>2>>>0<=b>>>0){d=0;return d|0}d=c[d+(b<<2)>>2]|0;return d|0}function Me(a,b){a=a|0;b=b|0;if((b|0)<=-1){b=0;return b|0}b=((c[a+2156>>2]|0)-(c[a+2152>>2]|0)>>2|0)>(b|0);return b|0}function Ne(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=a+440|0;l=a+444|0;d=c[l>>2]|0;b=c[k>>2]|0;if((d|0)!=(b|0)){g=0;do{f=c[b+(g<<2)>>2]|0;if(f){gf((c[f+144>>2]|0)+548|0,c[f>>2]|0);d=c[f+136>>2]|0;if(d|0){e=d+-4|0;b=c[e>>2]|0;if(b|0){b=d+(b*18608|0)|0;do{ff(b+-36|0);b=b+-18608|0}while((b|0)!=(d|0))}oz(e)}ef(f+44|0);nz(f);d=c[l>>2]|0;b=c[k>>2]|0}g=g+1|0}while(g>>>0<d-b>>2>>>0)}i=a+472|0;j=a+476|0;e=c[j>>2]|0;d=c[i>>2]|0;b=d;if((e|0)!=(d|0)){h=0;f=b;g=d;while(1){d=c[f+(h<<2)>>2]|0;if(!d){f=g;d=g}else{wc[c[(c[d>>2]|0)+4>>2]&255](d);d=c[i>>2]|0;b=d;f=b;e=c[j>>2]|0}h=h+1|0;if(h>>>0>=e-d>>2>>>0)break;else g=d}}d=a+484|0;f=c[d>>2]|0;if(f){e=a+488|0;b=c[e>>2]|0;if((b|0)==(f|0))b=f;else{do{b=b+-8|0;ff(b)}while((b|0)!=(f|0));b=c[d>>2]|0}c[e>>2]=f;nz(b);b=c[i>>2]|0}if(b|0){c[j>>2]=b;nz(b)}b=c[a+452>>2]|0;if(b|0){c[a+456>>2]=b;nz(b)}b=c[k>>2]|0;if(!b){l=a+8|0;Ue(l);return}c[l>>2]=b;nz(b);l=a+8|0;Ue(l);return}function Oe(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;m=a+8|0;b=c[m>>2]|0;k=a+20|0;g=c[k>>2]|0;h=b+(g>>>10<<2)|0;n=a+12|0;e=c[n>>2]|0;i=e;j=b;if((e|0)!=(b|0)){f=(c[h>>2]|0)+((g&1023)<<2)|0;d=a+24|0;g=(c[d>>2]|0)+g|0;g=(c[b+(g>>>10<<2)>>2]|0)+((g&1023)<<2)|0;if((g|0)!=(f|0))do{f=f+4|0;if((f-(c[h>>2]|0)|0)==4096){f=h+4|0;h=f;f=c[f>>2]|0}}while((g|0)!=(f|0))}else d=a+24|0;c[d>>2]=0;d=i-j>>2;if(d>>>0>2)do{nz(c[b>>2]|0);b=(c[m>>2]|0)+4|0;c[m>>2]=b;e=c[n>>2]|0;d=e-b>>2}while(d>>>0>2);switch(d|0){case 1:{d=512;l=14;break}case 2:{d=1024;l=14;break}default:{}}if((l|0)==14)c[k>>2]=d;if((b|0)!=(e|0)){do{nz(c[b>>2]|0);b=b+4|0}while((b|0)!=(e|0));b=c[m>>2]|0;d=c[n>>2]|0;if((d|0)!=(b|0))c[n>>2]=d+(~((d+-4-b|0)>>>2)<<2)}b=c[a+4>>2]|0;if(!b)return;nz(b);return}function Pe(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;n=hc;hc=hc+16|0;m=n;g=a+32|0;b=c[g>>2]|0;a:do if(b|0){h=a+16|0;i=a+28|0;j=a+36|0;k=a+40|0;l=a+44|0;f=a+48|0;do{d=c[h>>2]|0;o=c[i>>2]|0;e=c[(c[d+(o>>>10<<2)>>2]|0)+((o&1023)<<2)>>2]|0;c[g>>2]=b+-1;b=o+1|0;c[i>>2]=b;if(b>>>0>2047){nz(c[d>>2]|0);c[h>>2]=(c[h>>2]|0)+4;c[i>>2]=(c[i>>2]|0)+-1024}c[j>>2]=(c[j>>2]|0)-(c[e+24>>2]|0);if(!e)break a;c[m>>2]=e;b=e;d=c[l>>2]|0;do if(d-(c[k>>2]|0)>>2>>>0<16)if((c[f>>2]|0)==(d|0)){Qe(k,m);break}else{c[d>>2]=b;c[l>>2]=(c[l>>2]|0)+4;break}else{vo(c[e+20>>2]|0);b=c[e+32>>2]|0;if(b|0){c[e+36>>2]=b;nz(b)}nz(e)}while(0);b=c[g>>2]|0}while((b|0)!=0)}while(0);e=c[a+8>>2]|0;if(!e){f=a+44|0;i=a+40|0}else{c[m>>2]=e;b=e;g=a+40|0;f=a+44|0;d=c[f>>2]|0;do if(d-(c[g>>2]|0)>>2>>>0<16)if((c[a+48>>2]|0)==(d|0)){Qe(g,m);break}else{c[d>>2]=b;c[f>>2]=(c[f>>2]|0)+4;break}else{vo(c[e+20>>2]|0);b=c[e+32>>2]|0;if(b|0){c[e+36>>2]=b;nz(b)}nz(e)}while(0);i=g}e=c[f>>2]|0;d=c[i>>2]|0;b=d;if((e|0)!=(d|0)){h=0;while(1){g=c[b+(h<<2)>>2]|0;if(!g)b=d;else{vo(c[g+20>>2]|0);b=c[g+32>>2]|0;if(b|0){c[g+36>>2]=b;nz(b)}nz(g);b=c[i>>2]|0;e=c[f>>2]|0}h=h+1|0;if(h>>>0>=e-b>>2>>>0)break;else d=b}}if(!b){o=a+12|0;Re(o);hc=n;return}c[f>>2]=b;nz(b);o=a+12|0;Re(o);hc=n;return}function Qe(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function Re(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;m=a+4|0;b=c[m>>2]|0;k=a+16|0;g=c[k>>2]|0;h=b+(g>>>10<<2)|0;n=a+8|0;e=c[n>>2]|0;i=e;j=b;if((e|0)!=(b|0)){f=(c[h>>2]|0)+((g&1023)<<2)|0;d=a+20|0;g=(c[d>>2]|0)+g|0;g=(c[b+(g>>>10<<2)>>2]|0)+((g&1023)<<2)|0;if((g|0)!=(f|0))do{f=f+4|0;if((f-(c[h>>2]|0)|0)==4096){f=h+4|0;h=f;f=c[f>>2]|0}}while((g|0)!=(f|0))}else d=a+20|0;c[d>>2]=0;d=i-j>>2;if(d>>>0>2)do{nz(c[b>>2]|0);b=(c[m>>2]|0)+4|0;c[m>>2]=b;e=c[n>>2]|0;d=e-b>>2}while(d>>>0>2);switch(d|0){case 1:{d=512;l=14;break}case 2:{d=1024;l=14;break}default:{}}if((l|0)==14)c[k>>2]=d;if((b|0)!=(e|0)){do{nz(c[b>>2]|0);b=b+4|0}while((b|0)!=(e|0));b=c[m>>2]|0;d=c[n>>2]|0;if((d|0)!=(b|0))c[n>>2]=d+(~((d+-4-b|0)>>>2)<<2)}b=c[a>>2]|0;if(!b)return;nz(b);return}function Se(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=a+8|0;h=a+12|0;e=c[h>>2]|0;b=c[g>>2]|0;if((e|0)!=(b|0)){f=0;while(1){d=c[b+(f<<2)>>2]|0;if(!d)d=e;else{Ue(d);nz(d);d=c[h>>2]|0;b=c[g>>2]|0}f=f+1|0;if(f>>>0>=d-b>>2>>>0)break;else e=d}}Te(a+32|0);b=c[a+20>>2]|0;if(b|0){c[a+24>>2]=b;nz(b)}b=c[g>>2]|0;if(!b)return;c[h>>2]=b;nz(b);return}function Te(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;m=a+4|0;b=c[m>>2]|0;k=a+16|0;g=c[k>>2]|0;h=b+(g>>>10<<2)|0;n=a+8|0;e=c[n>>2]|0;i=e;j=b;if((e|0)!=(b|0)){f=(c[h>>2]|0)+((g&1023)<<2)|0;d=a+20|0;g=(c[d>>2]|0)+g|0;g=(c[b+(g>>>10<<2)>>2]|0)+((g&1023)<<2)|0;if((g|0)!=(f|0))do{f=f+4|0;if((f-(c[h>>2]|0)|0)==4096){f=h+4|0;h=f;f=c[f>>2]|0}}while((g|0)!=(f|0))}else d=a+20|0;c[d>>2]=0;d=i-j>>2;if(d>>>0>2)do{nz(c[b>>2]|0);b=(c[m>>2]|0)+4|0;c[m>>2]=b;e=c[n>>2]|0;d=e-b>>2}while(d>>>0>2);switch(d|0){case 1:{d=512;l=14;break}case 2:{d=1024;l=14;break}default:{}}if((l|0)==14)c[k>>2]=d;if((b|0)==(e|0)){d=e;b=e}else{do{nz(c[b>>2]|0);b=b+4|0}while((b|0)!=(e|0));d=c[n>>2]|0;b=c[m>>2]|0}if((d|0)!=(b|0))c[n>>2]=d+(~((d+-4-b|0)>>>2)<<2);b=c[a>>2]|0;if(!b)return;nz(b);return}function Ue(a){a=a|0;var b=0,d=0,e=0;Ve(a);d=c[a+332>>2]|0;if(d|0){e=d+-4|0;b=c[e>>2]|0;if(b|0){b=d+(b*80|0)|0;do{b=b+-80|0;ef(b)}while((b|0)!=(d|0))}oz(e)}cf(a+384|0);df(a+356|0);vo(c[a+264>>2]|0);vo(c[a+244>>2]|0);vo(c[a+224>>2]|0);vo(c[a+204>>2]|0);vo(c[a+184>>2]|0);vo(c[a+164>>2]|0);vo(c[a+144>>2]|0);b=c[a+140>>2]|0;if(b|0?(d=b+4|0,e=c[d>>2]|0,c[d>>2]=e+-1,(e|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+132>>2]|0;if(b|0?(d=b+4|0,e=c[d>>2]|0,c[d>>2]=e+-1,(e|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+124>>2]|0;if(b|0?(d=b+4|0,e=c[d>>2]|0,c[d>>2]=e+-1,(e|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[a+52>>2]|0;if(!b)return;c[a+56>>2]=b;nz(b);return}function Ve(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=a+4|0;if(c[e>>2]|0){b=c[a+320>>2]|0;if(!b){b=c[a+112>>2]|0;if(!b)d=0;else d=c[b+544>>2]|0;yc[c[a+316>>2]&31](b,a,d)}else{g=c[a+116>>2]|0;yc[b&31](g,a,c[g+3708>>2]|0)};c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;g=a+64|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0}f=a+52|0;g=a+56|0;d=c[g>>2]|0;b=c[f>>2]|0;if((d|0)==(b|0)){f=d;c[g>>2]=f;return}a=0;do{e=c[b+(a<<2)>>2]|0;if(e){b=c[e+1348>>2]|0;if(b|0){c[e+1352>>2]=b;nz(b)}ff(e+1336|0);b=c[e+780>>2]|0;if(b|0){c[e+784>>2]=b;nz(b)}nz(e);d=c[g>>2]|0;b=c[f>>2]|0}a=a+1|0}while(a>>>0<d-b>>2>>>0);c[g>>2]=b;return}function We(a){a=a|0;vo(c[a>>2]|0);return}function Xe(a){a=a|0;vo(c[a>>2]|0);return}function Ye(a){a=a|0;vo(c[a>>2]|0);return}function Ze(a){a=a|0;vo(c[a>>2]|0);return}function _e(a){a=a|0;var b=0,d=0;a=c[a+4>>2]|0;if(!a)return;d=a+4|0;b=c[d>>2]|0;c[d>>2]=b+-1;if(b|0)return;wc[c[(c[a>>2]|0)+8>>2]&255](a);iz(a);return}function $e(a){a=a|0;var b=0,d=0;a=c[a+4>>2]|0;if(!a)return;d=a+4|0;b=c[d>>2]|0;c[d>>2]=b+-1;if(b|0)return;wc[c[(c[a>>2]|0)+8>>2]&255](a);iz(a);return}function af(a){a=a|0;var b=0,d=0;a=c[a+4>>2]|0;if(!a)return;d=a+4|0;b=c[d>>2]|0;c[d>>2]=b+-1;if(b|0)return;wc[c[(c[a>>2]|0)+8>>2]&255](a);iz(a);return}function bf(a){a=a|0;var b=0;b=c[a>>2]|0;if(!b)return;c[a+4>>2]=b;nz(b);return}function cf(a){a=a|0;bb(a|0)|0;return}function df(a){a=a|0;Fo(a)|0;return}function ef(a){a=a|0;Fo(a+4|0)|0;bb(a+32|0)|0;return}function ff(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=hc;hc=hc+16|0;e=f+8|0;b=f;if(0){c[b>>2]=a;ko(58238,b)|0}d=a+4|0;b=c[d>>2]|0;if(!b){hc=f;return}g=(c[b>>2]|0)+-1|0;c[b>>2]=g;if(g|0){hc=f;return}if(0){c[e>>2]=c[a>>2];ko(58253,e)|0}b=c[a>>2]|0;if(b|0)oz(b);b=c[d>>2]|0;if(!b){hc=f;return}nz(b);hc=f;return}function gf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=hc;hc=hc+16|0;d=i;c[d>>2]=b;e=b;if(!b){hc=i;return}f=a+40|0;g=a+44|0;h=c[g>>2]|0;if(h-(c[f>>2]|0)>>2>>>0>=16){vo(c[b+20>>2]|0);a=c[b+32>>2]|0;if(a|0){c[b+36>>2]=a;nz(a)}nz(b);hc=i;return}if((c[a+48>>2]|0)==(h|0)){Qe(f,d);hc=i;return}else{c[h>>2]=e;c[g>>2]=(c[g>>2]|0)+4;hc=i;return}}function hf(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;b=c[e+4>>2]|0;g=c[e+8>>2]|0;i=(g|0)/(d[f+51>>0]|0|0)|0;e=c[e+12>>2]|0;k=e+-1|0;l=k+b|0;l=l-((l|0)%(e|0)|0)|0;b=k+((b|0)/(d[f+50>>0]|0|0)|0)|0;e=b-((b|0)%(e|0)|0)|0;b=a[f+48>>0]|0;if((b+-8&255)>=9)M(58310,58112,115,58356);h=a[f+49>>0]|0;if((h+-8&255)>=9)M(58379,58112,116,58356);k=Ao(16,u(u(l,g)|0,((b&255)+7|0)>>>3)|0)|0;j=(k|0)==0;if(!(c[f+20>>2]|0))if(j){f=0;return f|0}else{e=0;g=0;b=0}else{i=u(u(e,i)|0,((h&255)+7|0)>>>3)|0;h=Ao(16,i)|0;i=Ao(16,i)|0;g=h;b=i;if(j|((h|0)==0|(i|0)==0)){if(!j)vo(k);if(h|0)vo(h);if(!i){f=0;return f|0}vo(i);f=0;return f|0}}c[f+4>>2]=k;c[f+300>>2]=0;c[f+40>>2]=l;c[f+8>>2]=g;c[f+304>>2]=0;c[f+12>>2]=b;c[f+308>>2]=0;c[f+44>>2]=e;f=1;return f|0}function jf(a,b,d){a=a|0;b=b|0;d=d|0;a=c[b+4>>2]|0;if(a|0)vo(a);a=c[b+8>>2]|0;if(a|0)vo(a);a=c[b+12>>2]|0;if(!a)return;vo(a);return}function kf(a){a=a|0;nz(a);return}function lf(b){b=b|0;var d=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,v=0,w=0,x=0,y=0;t=b+4|0;c[t>>2]=1;w=b+12|0;qe(c[w>>2]|0,b);d=c[w>>2]|0;j=c[d+128>>2]|0;x=j+5056|0;y=c[x>>2]|0;h=y+-1|0;i=c[j+5040>>2]|0;s=1<<i;v=b+8|0;g=b+24|0;re(d,b,h,c[v>>2]|0,c[g>>2]|0);d=c[v>>2]|0;if((d|0)>0){re(c[w>>2]|0,b,h,d+-1|0,c[g>>2]|0);d=c[v>>2]|0}f=d+1|0;if((f|0)<(c[j+5064>>2]|0)){re(c[w>>2]|0,b,h,f,c[g>>2]|0);d=c[v>>2]|0;f=d+1|0}q=b+20|0;r=b+16|0;nf(c[q>>2]|0,c[r>>2]|0,d<<i,f<<i);d=c[x>>2]|0;a:do if((d|0)>0){p=j+5016|0;o=j+5020|0;n=0;do{i=c[w>>2]|0;j=c[v>>2]|0;f=(u(c[i+156>>2]|0,j)|0)+n|0;f=e[(c[i+144>>2]|0)+(f*24|0)+2>>1]|0;g=c[i+52>>2]|0;if((c[i+56>>2]|0)-g>>2>>>0<=f>>>0)break a;m=c[g+(f<<2)>>2]|0;if(!m)break a;do if(a[m+329>>0]|0){d=c[r>>2]|0;g=c[d+4>>2]|0;d=c[d+40>>2]|0;f=c[q>>2]|0;h=c[f+4>>2]|0;f=c[f+40>>2]|0;if((c[(c[i+128>>2]|0)+4996>>2]|0)>8){of(i,n,j,m,0,s,s,g,d,h,f);break}else{pf(i,n,j,m,0,s,s,g,d,h,f);break}}while(0);do if(a[m+330>>0]|0){k=(s|0)/(c[p>>2]|0)|0;l=(s|0)/(c[o>>2]|0)|0;g=c[w>>2]|0;h=c[v>>2]|0;f=c[r>>2]|0;i=c[f+8>>2]|0;f=c[f+44>>2]|0;d=c[q>>2]|0;j=c[d+8>>2]|0;d=c[d+44>>2]|0;if((c[(c[g+128>>2]|0)+5004>>2]|0)>8)of(g,n,h,m,1,k,l,i,f,j,d);else pf(g,n,h,m,1,k,l,i,f,j,d);i=c[w>>2]|0;j=c[v>>2]|0;f=c[r>>2]|0;g=c[f+12>>2]|0;f=c[f+44>>2]|0;d=c[q>>2]|0;h=c[d+12>>2]|0;d=c[d+44>>2]|0;if((c[(c[i+128>>2]|0)+5004>>2]|0)>8){of(i,n,j,m,2,k,l,g,f,h,d);break}else{pf(i,n,j,m,2,k,l,g,f,h,d);break}}while(0);n=n+1|0;d=c[x>>2]|0}while((n|0)<(d|0))}while(0);if((y|0)<=0){c[t>>2]=3;y=c[w>>2]|0;ye(y,b);return}ze((c[(c[w>>2]|0)+332>>2]|0)+((u(c[v>>2]|0,d)|0)*80|0)|0,4);if((y|0)==1){c[t>>2]=3;y=c[w>>2]|0;ye(y,b);return}d=1;do{ze((c[(c[w>>2]|0)+332>>2]|0)+(((u(c[v>>2]|0,c[x>>2]|0)|0)+d|0)*80|0)|0,4);d=d+1|0}while((d|0)!=(y|0));c[t>>2]=3;y=c[w>>2]|0;ye(y,b);return}function mf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=hc;hc=hc+112|0;g=f+104|0;e=f;c[g>>2]=c[d+8>>2];zm(e,58425,g)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=tn(e)|0;if(d>>>0>4294967279)tz(b);if(d>>>0<11){a[b+11>>0]=d;if(!d){g=b;g=g+d|0;a[g>>0]=0;hc=f;return}}else{h=d+16&-16;g=lz(h)|0;c[b>>2]=g;c[b+8>>2]=h|-2147483648;c[b+4>>2]=d;b=g}fB(b|0,e|0,d|0)|0;h=b;h=h+d|0;a[h>>0]=0;hc=f;return}function nf(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;o=c[b+28>>2]|0;o=(o|0)<(f|0)?o:f;if(e&1|0)M(58432,58112,551,58447);if(o&1|0)M(58463,58112,552,58447);p=c[a+128>>2]|0;h=((c[p+4996>>2]|0)+7|0)/8|0;p=((c[p+5004>>2]|0)+7|0)/8|0;i=b+40|0;f=c[i>>2]|0;j=a+40|0;g=c[j>>2]|0;if((f|0)!=(g|0)){if((o|0)>(e|0)?(l=a+4|0,m=b+4|0,n=b+24|0,k=u(h,e)|0,g=(c[l>>2]|0)+(u(k,g)|0)|0,k=(c[m>>2]|0)+(u(k,f)|0)|0,fB(g|0,k|0,u(c[n>>2]|0,h)|0)|0,k=e+1|0,(k|0)<(o|0)):0){f=k;do{k=u(f,h)|0;g=(c[l>>2]|0)+(u(k,c[j>>2]|0)|0)|0;k=(c[m>>2]|0)+(u(k,c[i>>2]|0)|0)|0;fB(g|0,k|0,u(c[n>>2]|0,h)|0)|0;f=f+1|0}while((f|0)<(o|0))}}else{n=u(u(h,e)|0,f)|0;fB((c[a+4>>2]|0)+n|0,(c[b+4>>2]|0)+n|0,u(u(f,h)|0,o-e|0)|0)|0}n=d[b+51>>0]|0;f=(e|0)/(n|0)|0;e=(o|0)/(n|0)|0;if(!(c[b+20>>2]|0))return;l=b+44|0;g=c[l>>2]|0;m=a+44|0;h=c[m>>2]|0;if((g|0)==(h|0)){n=u(f,p)|0;l=u(n,g)|0;o=u(e-f|0,p)|0;fB((c[a+8>>2]|0)+l|0,(c[b+8>>2]|0)+l|0,u(o,g)|0)|0;p=c[m>>2]|0;n=u(n,p)|0;fB((c[a+12>>2]|0)+n|0,(c[b+12>>2]|0)+n|0,u(o,p)|0)|0;return}if((e|0)<=(f|0))return;n=a+8|0;o=b+8|0;k=b+32|0;j=a+12|0;i=b+12|0;while(1){b=u(f,p)|0;h=(c[n>>2]|0)+(u(b,h)|0)|0;a=(c[o>>2]|0)+(u(b,g)|0)|0;fB(h|0,a|0,u(c[k>>2]|0,p)|0)|0;a=(c[j>>2]|0)+(u(b,c[m>>2]|0)|0)|0;b=(c[i>>2]|0)+(u(b,c[l>>2]|0)|0)|0;fB(a|0,b|0,u(c[k>>2]|0,p)|0)|0;f=f+1|0;if((f|0)==(e|0))break;h=c[m>>2]|0;g=c[l>>2]|0}return}function of(f,g,h,i,j,k,l,m,n,o,p){f=f|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;p=p|0;var q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,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;Ga=hc;hc=hc+128|0;Ca=Ga;qa=c[f+156>>2]|0;E=(u(qa,h)|0)+g|0;Da=c[f+144>>2]|0;r=j<<1;s=(d[Da+(E*24|0)+4>>0]|0)>>>r&3;if(!s){hc=Ga;return}t=c[f+128>>2]|0;v=c[f+136>>2]|0;q=(j|0)==0;w=c[(q?t+4996|0:t+5004|0)>>2]|0;Ea=1<<w;Fa=Ea+-1|0;Ba=u(k,g)|0;Aa=u(l,h)|0;la=c[(q?f+24|0:f+32|0)>>2]|0;ma=c[(q?f+28|0:f+36|0)>>2]|0;na=c[f+152>>2]|0;i=Ba>>na;g=Aa>>na;if(!((i|0)>-1&(i|0)<(qa|0)))M(60650,60687,120,60707);if((g|0)<=-1)M(60711,60687,121,60707);oa=c[f+160>>2]|0;if((g|0)>=(oa|0))M(60711,60687,121,60707);ja=e[Da+(((u(g,qa)|0)+i|0)*24|0)+2>>1]|0;ia=c[f+52>>2]|0;ha=(c[f+56>>2]|0)-ia>>2;ja=c[(c[ia+(ja<<2)>>2]|0)+804>>2]|0;ka=c[t+5056>>2]|0;if(q){va=0;wa=0}else{va=(c[t+5016>>2]|0)+-1|0;wa=(c[t+5020>>2]|0)+-1|0}ga=c[t+5040>>2]|0;fa=ga-va|0;ga=ga-wa|0;za=(Ba+k|0)>(la|0)?la-Ba|0:k;ya=(Aa+l|0)>(ma|0)?ma-Aa|0:l;pa=(a[Da+(E*24|0)+22>>0]|0)!=0;if((s|0)!=2){i=a[Da+(E*24|0)+6+j>>0]|0;g=Ca;h=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[Ca+((i&31)<<2)>>2]=1;c[Ca+((i+1&31)<<2)>>2]=2;c[Ca+((i+2&31)<<2)>>2]=3;c[Ca+((i+3&31)<<2)>>2]=4;D=w+-5|0;i=(ya|0)>0;a:do if(pa){if(i){C=(za|0)>0;y=t+4716|0;z=f+172|0;A=f+176|0;B=f+180|0;x=f+164|0;t=(w|0)>12;s=0;b:while(1){c:do if(C){r=s+Aa|0;v=r<<wa;l=u(r,n)|0;r=u(r,p)|0;w=(a[y>>0]|0)==0;if(t){q=0;while(1){if(w){g=c[z>>2]|0;i=q+Ba<<va>>g;if((i|0)>-1){g=v>>g;xa=83}else{xa=98;break b}}else{g=c[z>>2]|0;i=q+Ba<<va>>g;g=v>>g;if((i|0)<=-1){xa=91;break b}h=c[A>>2]|0;if((i|0)>=(h|0)){xa=91;break b}if((g|0)<=-1){xa=94;break b}if((g|0)>=(c[B>>2]|0)){xa=94;break b}ua=(c[x>>2]|0)+(((u(h,g)|0)+i|0)*3|0)|0;if(!((d[ua>>0]|d[ua+1>>0]<<8)&1024))xa=83}if((xa|0)==83){xa=0;if((i|0)>=(c[A>>2]|0)){xa=98;break b}if((g|0)<=-1){xa=101;break b}if((g|0)>=(c[B>>2]|0)){xa=101;break b}}q=q+1|0;if((q|0)>=(za|0))break c}}k=0;do{if(w){h=c[z>>2]|0;i=k+Ba|0;g=i<<va>>h;if((g|0)>-1){h=v>>h;xa=97}else{xa=98;break b}}else{i=k+Ba|0;h=c[z>>2]|0;g=i<<va>>h;h=v>>h;if((g|0)<=-1){xa=91;break b}q=c[A>>2]|0;if((g|0)>=(q|0)){xa=91;break b}if((h|0)<=-1){xa=94;break b}if((h|0)>=(c[B>>2]|0)){xa=94;break b}ua=(c[x>>2]|0)+(((u(q,h)|0)+g|0)*3|0)|0;if(!((d[ua>>0]|d[ua+1>>0]<<8)&1024))xa=97}do if((xa|0)==97){xa=0;q=c[A>>2]|0;if((g|0)>=(q|0)){xa=98;break b}if((h|0)<=-1){xa=101;break b}if((h|0)>=(c[B>>2]|0)){xa=101;break b}ua=(c[x>>2]|0)+(((u(q,h)|0)+g|0)*3|0)|0;if((d[ua>>0]|d[ua+1>>0]<<8)&2048)break;g=e[m+(i+l<<1)>>1]|0;h=c[Ca+(g>>>D<<2)>>2]|0;if((h|0)<=0)break;ua=(a[h+-1+(Da+(E*24|0)+9+(j<<2))>>0]|0)+g|0;b[o+(i+r<<1)>>1]=(ua|0)<0?0:((ua|0)<(Ea|0)?ua:Fa)&65535}while(0);k=k+1|0}while((k|0)<(za|0))}while(0);s=s+1|0;if((s|0)>=(ya|0))break a}if((xa|0)==91)M(60650,60687,120,60707);else if((xa|0)==94)M(60711,60687,121,60707);else if((xa|0)==98)M(60650,60687,120,60707);else if((xa|0)==101)M(60711,60687,121,60707)}}else if(i?(x=(w|0)>12,(za|0)>0):0){g=0;do{q=g+Aa|0;h=u(q,n)|0;q=u(q,p)|0;if(!x){i=0;do{k=i+Ba|0;l=e[m+(k+h<<1)>>1]|0;r=c[Ca+(l>>>D<<2)>>2]|0;if((r|0)>0){xa=(a[r+-1+(Da+(E*24|0)+9+(j<<2))>>0]|0)+l|0;b[o+(k+q<<1)>>1]=(xa|0)<0?0:((xa|0)<(Ea|0)?xa:Fa)&65535}i=i+1|0}while((i|0)<(za|0))}g=g+1|0}while((g|0)<(ya|0))}while(0);hc=Ga;return}switch((d[Da+(E*24|0)+5>>0]|0)>>>r&3){case 0:{ra=0;sa=0;ta=-1;ua=1;break}case 1:{ra=-1;sa=1;ta=0;ua=0;break}case 2:{ra=-1;sa=1;ta=-1;ua=1;break}case 3:{ra=-1;sa=1;ta=1;ua=-1;break}default:{}}ea=u(ra,n)|0;da=0-sa&n;a[Ca>>0]=a[Da+(E*24|0)+9+(j<<2)>>0]|0;a[Ca+1>>0]=a[Da+(E*24|0)+9+(j<<2)+1>>0]|0;a[Ca+2>>0]=0;a[Ca+3>>0]=a[Da+(E*24|0)+9+(j<<2)+2>>0]|0;a[Ca+4>>0]=a[Da+(E*24|0)+9+(j<<2)+3>>0]|0;if((ya|0)<=0){hc=Ga;return}ca=(za|0)>0;_=t+4716|0;$=f+172|0;aa=f+176|0;ba=f+180|0;W=f+164|0;X=za+-1|0;Y=ya+-1|0;Z=v+53|0;C=v+4384|0;f=(u(Aa>>ga,ka)|0)+(Ba>>fa)|0;B=0;d:while(1){i=B+Aa|0;D=m+((u(i,n)|0)+Ba<<1)|0;E=o+((u(i,p)|0)+Ba<<1)|0;if(ca){j=i<<wa;F=(B|0)==0;G=(B|0)==(Y|0);H=j>>na;V=(H|0)>-1&(H|0)<(oa|0);H=u(H,qa)|0;I=ra+i|0;J=(I|0)<(ma|0);K=ra+i|0;L=(K|0)<(ma|0);N=I<<wa>>na;O=K<<wa>>na;U=(N|0)>-1&(N|0)<(oa|0);T=(O|0)>-1&(O|0)<(oa|0);N=u(N,qa)|0;O=u(O,qa)|0;P=u(I>>ga,ka)|0;Q=sa+i|0;R=(Q|0)<(ma|0);S=u(K>>ga,ka)|0;s=sa+i|0;t=(s|0)<(ma|0);v=Q<<wa>>na;w=s<<wa>>na;A=(v|0)>-1&(v|0)<(oa|0);z=(w|0)>-1&(w|0)<(oa|0);v=u(v,qa)|0;w=u(w,qa)|0;x=u(Q>>ga,ka)|0;y=u(s>>ga,ka)|0;r=0;do{if(pa?(a[_>>0]|0)!=0:0){g=c[$>>2]|0;i=r+Ba<<va>>g;g=j>>g;if((i|0)<=-1){xa=23;break d}h=c[aa>>2]|0;if((i|0)>=(h|0)){xa=23;break d}if((g|0)<=-1){xa=26;break d}if((g|0)>=(c[ba>>2]|0)){xa=26;break d}l=(c[W>>2]|0)+(((u(h,g)|0)+i|0)*3|0)|0;if(!((d[l>>0]|d[l+1>>0]<<8)&1024))xa=28}else xa=28;e:do if((xa|0)==28){xa=0;l=r+Ba|0;i=l<<va;h=c[$>>2]|0;g=i>>h;h=j>>h;if((g|0)<=-1){xa=30;break d}q=c[aa>>2]|0;if((g|0)>=(q|0)){xa=30;break d}if((h|0)<=-1){xa=33;break d}if((h|0)>=(c[ba>>2]|0)){xa=33;break d}k=(c[W>>2]|0)+(((u(q,h)|0)+g|0)*3|0)|0;if(!((d[k>>0]|d[k+1>>0]<<8)&2048)){do if(G|((r|0)==(X|0)|(F|(r|0)==0))){q=i>>na;k=Da+((q+H|0)*24|0)+2|0;h=ta+l|0;if(!((q|0)>-1&(q|0)<(qa|0))){if(!(L&((h|0)<(la|0)&(K|h|0)>-1)))break e;i=h<<va>>na;if(!((i|0)>-1&(i|0)<(qa|0))){xa=52;break d}if(!T){xa=54;break d}i=e[Da+((O+i|0)*24|0)+2>>1]|0;if(ha>>>0<=i>>>0){xa=68;break d}i=c[ia+(i<<2)>>2]|0;if(!i){xa=68;break d}g=c[i+804>>2]|0;if((g|0)<(ja|0)){xa=58;break d}if((g|0)>(ja|0)?(a[i+768>>0]|0)==0:0)break e;q=(a[Z>>0]|0)==0;if(q?(k=c[C>>2]|0,(c[k+(S+(h>>fa)<<2)>>2]|0)!=(c[k+(f<<2)>>2]|0)):0)break e;h=ua+l|0;if(!(t&((h|0)<(la|0)&(s|h|0)>-1)))break e;i=h<<va>>na;if(!((i|0)>-1&(i|0)<(qa|0))){xa=52;break d}if(!z){xa=54;break d}i=e[Da+((w+i|0)*24|0)+2>>1]|0;if(ha>>>0<=i>>>0){xa=68;break d}i=c[ia+(i<<2)>>2]|0;if(!i){xa=68;break d}g=c[i+804>>2]|0;if((g|0)<(ja|0)){xa=58;break d}if((g|0)>(ja|0)?(a[i+768>>0]|0)==0:0)break e;if(!q)break;l=c[C>>2]|0;if((c[l+(y+(h>>fa)<<2)>>2]|0)==(c[l+(f<<2)>>2]|0))break;else break e}if(!(J&((h|0)<(la|0)&(I|h|0)>-1)))break e;i=h<<va>>na;if(!((i|0)>-1&(i|0)<(qa|0))){xa=52;break d}if(!U){xa=54;break d}i=e[Da+((N+i|0)*24|0)+2>>1]|0;if(ha>>>0<=i>>>0){xa=68;break d}i=c[ia+(i<<2)>>2]|0;if(!i){xa=68;break d}g=c[i+804>>2]|0;if((g|0)<(ja|0)){if(!V){xa=59;break d}if(!(a[(c[ia+(e[k>>1]<<2)>>2]|0)+768>>0]|0))break e}if((g|0)>(ja|0)?(a[i+768>>0]|0)==0:0)break e;q=(a[Z>>0]|0)==0;if(q?(g=c[C>>2]|0,(c[g+(P+(h>>fa)<<2)>>2]|0)!=(c[g+(f<<2)>>2]|0)):0)break e;h=ua+l|0;if(!(R&((h|0)<(la|0)&(Q|h|0)>-1)))break e;i=h<<va>>na;if(!((i|0)>-1&(i|0)<(qa|0))){xa=52;break d}if(!A){xa=54;break d}i=e[Da+((v+i|0)*24|0)+2>>1]|0;if(ha>>>0<=i>>>0){xa=68;break d}i=c[ia+(i<<2)>>2]|0;if(!i){xa=68;break d}g=c[i+804>>2]|0;if((g|0)<(ja|0)){if(!V){xa=59;break d}if(!(a[(c[ia+(e[k>>1]<<2)>>2]|0)+768>>0]|0))break e}if((g|0)>(ja|0)?(a[i+768>>0]|0)==0:0)break e;if(!q)break;l=c[C>>2]|0;if((c[l+(x+(h>>fa)<<2)>>2]|0)!=(c[l+(f<<2)>>2]|0))break e}while(0);l=e[D+(r<<1)>>1]|0;q=l-(e[D+(r+ea+ta<<1)>>1]|0)|0;k=l-(e[D+(r+da+ua<<1)>>1]|0)|0;l=(a[Ca+(((q|0)<0?1:(q|0)==0?2:3)+((k|0)<0?-1:(k|0)!=0&1))>>0]|0)+l|0;b[E+(r<<1)>>1]=(l|0)<0?0:((l|0)<(Ea|0)?l:Fa)&65535}}while(0);r=r+1|0}while((r|0)<(za|0))}B=B+1|0;if((B|0)>=(ya|0)){xa=68;break}}if((xa|0)==23)M(60650,60687,120,60707);else if((xa|0)==26)M(60711,60687,121,60707);else if((xa|0)==30)M(60650,60687,120,60707);else if((xa|0)==33)M(60711,60687,121,60707);else if((xa|0)==52)M(60650,60687,120,60707);else if((xa|0)==54)M(60711,60687,121,60707);else if((xa|0)==58)M(60650,60687,120,60707);else if((xa|0)==59)M(60711,60687,121,60707);else if((xa|0)==68){hc=Ga;return}}function pf(b,f,g,h,i,j,k,l,m,n,o){b=b|0;f=f|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,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,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;za=hc;hc=hc+128|0;wa=za;ja=b+156|0;p=c[ja>>2]|0;D=(u(p,g)|0)+f|0;ka=b+144|0;E=c[ka>>2]|0;r=i<<1;s=(d[E+(D*24|0)+4>>0]|0)>>>r&3;if(!s){hc=za;return}t=c[b+128>>2]|0;v=c[b+136>>2]|0;q=(i|0)==0;B=c[(q?t+4996|0:t+5004|0)>>2]|0;xa=1<<B;ya=xa+-1|0;va=u(j,f)|0;ua=u(k,g)|0;fa=c[(q?b+24|0:b+32|0)>>2]|0;ga=c[(q?b+28|0:b+36|0)>>2]|0;ha=b+152|0;f=c[ha>>2]|0;h=va>>f;f=ua>>f;if(!((h|0)>-1&(h|0)<(p|0)))M(60650,60687,120,60707);if((f|0)<=-1)M(60711,60687,121,60707);ia=b+160|0;if((f|0)>=(c[ia>>2]|0))M(60711,60687,121,60707);ca=e[E+(((u(f,p)|0)+h|0)*24|0)+2>>1]|0;aa=b+52|0;ba=b+56|0;ca=c[(c[(c[aa>>2]|0)+(ca<<2)>>2]|0)+804>>2]|0;da=c[t+5056>>2]|0;if(q){pa=0;qa=0}else{pa=(c[t+5016>>2]|0)+-1|0;qa=(c[t+5020>>2]|0)+-1|0}$=c[t+5040>>2]|0;_=$-pa|0;$=$-qa|0;ta=(va+j|0)>(fa|0)?fa-va|0:j;sa=(ua+k|0)>(ga|0)?ga-ua|0:k;ea=(a[E+(D*24|0)+22>>0]|0)!=0;if((s|0)!=2){h=a[E+(D*24|0)+6+i>>0]|0;f=wa;g=f+128|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[wa+((h&31)<<2)>>2]=1;c[wa+((h+1&31)<<2)>>2]=2;c[wa+((h+2&31)<<2)>>2]=3;c[wa+((h+3&31)<<2)>>2]=4;C=B+-5|0;h=(sa|0)>0;a:do if(ea){if(h){A=(ta|0)>0;w=t+4716|0;x=b+172|0;y=b+176|0;z=b+180|0;v=b+164|0;s=(B|0)>12;r=0;b:while(1){c:do if(A){k=r+ua|0;t=k<<qa;j=u(k,m)|0;k=u(k,o)|0;if(s){q=(a[w>>0]|0)==0;p=0;while(1){if(q){f=c[x>>2]|0;h=p+va<<pa>>f;if((h|0)>-1){f=t>>f;ra=74}else{ra=89;break b}}else{f=c[x>>2]|0;h=p+va<<pa>>f;f=t>>f;if((h|0)<=-1){ra=82;break b}g=c[y>>2]|0;if((h|0)>=(g|0)){ra=82;break b}if((f|0)<=-1){ra=85;break b}if((f|0)>=(c[z>>2]|0)){ra=85;break b}oa=(c[v>>2]|0)+(((u(g,f)|0)+h|0)*3|0)|0;if(!((d[oa>>0]|d[oa+1>>0]<<8)&1024))ra=74}if((ra|0)==74){ra=0;if((h|0)>=(c[y>>2]|0)){ra=89;break b}if((f|0)<=-1){ra=92;break b}if((f|0)>=(c[z>>2]|0)){ra=92;break b}}p=p+1|0;if((p|0)>=(ta|0))break c}}q=0;do{if(!(a[w>>0]|0)){g=c[x>>2]|0;h=q+va|0;f=h<<pa>>g;if((f|0)>-1){g=t>>g;ra=88}else{ra=89;break b}}else{h=q+va|0;g=c[x>>2]|0;f=h<<pa>>g;g=t>>g;if((f|0)<=-1){ra=82;break b}p=c[y>>2]|0;if((f|0)>=(p|0)){ra=82;break b}if((g|0)<=-1){ra=85;break b}if((g|0)>=(c[z>>2]|0)){ra=85;break b}oa=(c[v>>2]|0)+(((u(p,g)|0)+f|0)*3|0)|0;if(!((d[oa>>0]|d[oa+1>>0]<<8)&1024))ra=88}do if((ra|0)==88){ra=0;p=c[y>>2]|0;if((f|0)>=(p|0)){ra=89;break b}if((g|0)<=-1){ra=92;break b}if((g|0)>=(c[z>>2]|0)){ra=92;break b}oa=(c[v>>2]|0)+(((u(p,g)|0)+f|0)*3|0)|0;if((d[oa>>0]|d[oa+1>>0]<<8)&2048)break;f=d[l+(h+j)>>0]|0;g=c[wa+(f>>>C<<2)>>2]|0;if((g|0)<=0)break;oa=(a[g+-1+(E+(D*24|0)+9+(i<<2))>>0]|0)+f|0;a[n+(h+k)>>0]=(oa|0)<0?0:((oa|0)<(xa|0)?oa:ya)&255}while(0);q=q+1|0}while((q|0)<(ta|0))}while(0);r=r+1|0;if((r|0)>=(sa|0))break a}if((ra|0)==82)M(60650,60687,120,60707);else if((ra|0)==85)M(60711,60687,121,60707);else if((ra|0)==89)M(60650,60687,120,60707);else if((ra|0)==92)M(60711,60687,121,60707)}}else if(h?(w=(B|0)>12,(ta|0)>0):0){f=0;do{p=f+ua|0;g=u(p,m)|0;p=u(p,o)|0;if(!w){h=0;do{q=h+va|0;j=d[l+(q+g)>>0]|0;k=c[wa+(j>>>C<<2)>>2]|0;if((k|0)>0){ra=(a[k+-1+(E+(D*24|0)+9+(i<<2))>>0]|0)+j|0;a[n+(q+p)>>0]=(ra|0)<0?0:((ra|0)<(xa|0)?ra:ya)&255}h=h+1|0}while((h|0)<(ta|0))}f=f+1|0}while((f|0)<(sa|0))}while(0);hc=za;return}switch((d[E+(D*24|0)+5>>0]|0)>>>r&3){case 0:{la=-1;ma=1;na=0;oa=0;break}case 1:{la=0;ma=0;na=-1;oa=1;break}case 2:{la=-1;ma=1;na=-1;oa=1;break}case 3:{la=1;ma=-1;na=-1;oa=1;break}default:{}}Y=u(na,m)|0;Z=0-oa&m;a[wa>>0]=a[E+(D*24|0)+9+(i<<2)>>0]|0;a[wa+1>>0]=a[E+(D*24|0)+9+(i<<2)+1>>0]|0;a[wa+2>>0]=0;a[wa+3>>0]=a[E+(D*24|0)+9+(i<<2)+2>>0]|0;a[wa+4>>0]=a[E+(D*24|0)+9+(i<<2)+3>>0]|0;if((sa|0)<=0){hc=za;return}X=(ta|0)>0;T=t+4716|0;U=b+172|0;V=b+176|0;W=b+180|0;P=b+164|0;Q=ta+-1|0;R=sa+-1|0;S=v+53|0;E=v+4384|0;i=(u(ua>>$,da)|0)+(va>>_)|0;D=0;d:while(1){h=D+ua|0;F=l+((u(h,m)|0)+va)|0;G=n+((u(h,o)|0)+va)|0;if(X){H=h<<qa;I=(D|0)==0;J=(D|0)==(R|0);K=na+h|0;L=(K|0)<(ga|0);N=K<<qa;O=u(K>>$,da)|0;A=oa+h|0;B=(A|0)<(ga|0);C=A<<qa;b=u(A>>$,da)|0;z=0;do{if(ea?(a[T>>0]|0)!=0:0){f=c[U>>2]|0;h=z+va<<pa>>f;f=H>>f;if((h|0)<=-1){ra=23;break d}g=c[V>>2]|0;if((h|0)>=(g|0)){ra=23;break d}if((f|0)<=-1){ra=26;break d}if((f|0)>=(c[W>>2]|0)){ra=26;break d}y=(c[P>>2]|0)+(((u(g,f)|0)+h|0)*3|0)|0;if(!((d[y>>0]|d[y+1>>0]<<8)&1024))ra=28}else ra=28;e:do if((ra|0)==28){ra=0;s=z+va|0;y=s<<pa;f=c[U>>2]|0;h=y>>f;f=H>>f;if((h|0)<=-1){ra=30;break d}g=c[V>>2]|0;if((h|0)>=(g|0)){ra=30;break d}if((f|0)<=-1){ra=33;break d}if((f|0)>=(c[W>>2]|0)){ra=33;break d}x=(c[P>>2]|0)+(((u(g,f)|0)+h|0)*3|0)|0;if(!((d[x>>0]|d[x+1>>0]<<8)&2048)){do if(J|((z|0)==(Q|0)|(I|(z|0)==0))){j=la+s|0;if(!(L&((j|0)<(fa|0)&(K|j|0)>-1)))break e;t=c[ha>>2]|0;h=j<<pa>>t;f=N>>t;if((h|0)<=-1){ra=39;break d}v=c[ja>>2]|0;if((h|0)>=(v|0)){ra=39;break d}if((f|0)<=-1){ra=42;break d}w=c[ia>>2]|0;if((f|0)>=(w|0)){ra=42;break d}x=c[ka>>2]|0;f=e[x+(((u(v,f)|0)+h|0)*24|0)+2>>1]|0;h=c[aa>>2]|0;r=(c[ba>>2]|0)-h>>2;if(r>>>0<=f>>>0){ra=59;break d}f=c[h+(f<<2)>>2]|0;if(!f){ra=59;break d}g=c[f+804>>2]|0;if((g|0)<(ca|0)){p=y>>t;q=H>>t;if(!((p|0)>-1&(p|0)<(v|0))){ra=47;break d}if(!((q|0)>-1&(q|0)<(w|0))){ra=49;break d}if(!(a[(c[h+(e[x+(((u(v,q)|0)+p|0)*24|0)+2>>1]<<2)>>2]|0)+768>>0]|0))break e}if((g|0)>(ca|0)?(a[f+768>>0]|0)==0:0)break e;k=(a[S>>0]|0)==0;if(k?(q=c[E>>2]|0,(c[q+(O+(j>>_)<<2)>>2]|0)!=(c[q+(i<<2)>>2]|0)):0)break e;j=ma+s|0;if(!(B&((j|0)<(fa|0)&(A|j|0)>-1)))break e;f=j<<pa>>t;g=C>>t;if(!((f|0)>-1&(f|0)<(v|0))){ra=39;break d}if(!((g|0)>-1&(g|0)<(w|0))){ra=42;break d}f=e[x+(((u(v,g)|0)+f|0)*24|0)+2>>1]|0;if(r>>>0<=f>>>0){ra=59;break d}p=c[h+(f<<2)>>2]|0;if(!p){ra=59;break d}q=c[p+804>>2]|0;if((q|0)<(ca|0)){g=y>>t;f=H>>t;if(!((g|0)>-1&(g|0)<(v|0))){ra=47;break d}if(!((f|0)>-1&(f|0)<(w|0))){ra=49;break d}if(!(a[(c[h+(e[x+(((u(v,f)|0)+g|0)*24|0)+2>>1]<<2)>>2]|0)+768>>0]|0))break e}if((q|0)>(ca|0)?(a[p+768>>0]|0)==0:0)break e;if(!k)break;y=c[E>>2]|0;if((c[y+(b+(j>>_)<<2)>>2]|0)!=(c[y+(i<<2)>>2]|0))break e}while(0);y=d[F+z>>0]|0;w=y-(d[F+(z+Y+la)>>0]|0)|0;x=y-(d[F+(z+Z+ma)>>0]|0)|0;y=(a[wa+(((w|0)<0?1:(w|0)==0?2:3)+((x|0)<0?-1:(x|0)!=0&1))>>0]|0)+y|0;a[G+z>>0]=(y|0)<0?0:((y|0)<(xa|0)?y:ya)&255}}while(0);z=z+1|0}while((z|0)<(ta|0))}D=D+1|0;if((D|0)>=(sa|0)){ra=59;break}}if((ra|0)==23)M(60650,60687,120,60707);else if((ra|0)==26)M(60711,60687,121,60707);else if((ra|0)==30)M(60650,60687,120,60707);else if((ra|0)==33)M(60711,60687,121,60707);else if((ra|0)==39)M(60650,60687,120,60707);else if((ra|0)==42)M(60711,60687,121,60707);else if((ra|0)==47)M(60650,60687,120,60707);else if((ra|0)==49)M(60711,60687,121,60707);else if((ra|0)==59){hc=za;return}}function qf(a){a=a|0;nz(a);return}
function rf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=c[b+20>>2]|0;f=h+18588|0;i=c[f>>2]|0;j=b+4|0;c[j>>2]=1;qe(i,b);f=c[f>>2]|0;g=c[f+128>>2]|0;e=c[h+4>>2]|0;d=c[g+5072>>2]|0;if((e|0)<(d|0)){d=c[(c[(c[f+136>>2]|0)+4360>>2]|0)+(e<<2)>>2]|0;f=c[g+5056>>2]|0;g=(d|0)/(f|0)|0;e=g;f=d-(u(g,f)|0)|0}else{f=c[g+5056>>2]|0;g=(d|0)/(f|0)|0;e=g;f=d-(u(g,f)|0)|0}c[h>>2]=d;c[h+8>>2]=f;c[h+12>>2]=e;d=b+8|0;do if(!(a[d>>0]|0)){e=c[h+18592>>2]|0;f=c[e+800>>2]|0;if(f>>>0<3){vf(h+18572|0,f,c[e+796>>2]|0);g=h+18580|0;a[g>>0]=0;a[g+1>>0]=0;a[g+2>>0]=0;a[g+3>>0]=0;break}else M(58514,58545,1511,58556)}else if(!(tf(h)|0)){c[j>>2]=3;uf((c[h+18600>>2]|0)+44|0,1);ye(i,b);return}while(0);wf(h+18548|0);xf(h,0,(a[d>>0]|0)!=0)|0;c[j>>2]=3;uf((c[h+18600>>2]|0)+44|0,1);ye(i,b);return}function sf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=hc;hc=hc+112|0;g=f+104|0;e=f;h=c[d+16>>2]|0;c[g>>2]=c[d+12>>2];c[g+4>>2]=h;zm(e,58494,g)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=tn(e)|0;if(d>>>0>4294967279)tz(b);if(d>>>0<11){a[b+11>>0]=d;if(!d){h=b;h=h+d|0;a[h>>0]=0;hc=f;return}}else{g=d+16&-16;h=lz(g)|0;c[b>>2]=h;c[b+8>>2]=g|-2147483648;c[b+4>>2]=d;b=h}fB(b|0,e|0,d|0)|0;h=b;h=h+d|0;a[h>>0]=0;hc=f;return}function tf(b){b=b|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=c[b+18588>>2]|0;i=c[h+136>>2]|0;j=c[h+128>>2]|0;k=b+18592|0;f=c[k>>2]|0;if(!(a[f+16>>0]|0)){d=c[f+800>>2]|0;if(d>>>0>=3)M(58514,58545,1511,58556);vf(b+18572|0,d,c[f+796>>2]|0);b=b+18580|0;a[b>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;b=1;return b|0}g=c[f+20>>2]|0;d=e[(c[h+144>>2]|0)+((c[(c[i+4360>>2]|0)+((c[(c[i+4348>>2]|0)+(g<<2)>>2]|0)+-1<<2)>>2]|0)*24|0)+2>>1]|0;f=c[h+52>>2]|0;if((c[h+56>>2]|0)-f>>2>>>0<=d>>>0){b=0;return b|0}l=c[f+(d<<2)>>2]|0;h=c[j+5056>>2]|0;j=(g|0)/(h|0)|0;if(Ig(i,g-(u(j,h)|0)|0,j)|0){d=c[k>>2]|0;f=c[d+800>>2]|0;if(f>>>0>=3)M(58514,58545,1511,58556);vf(b+18572|0,f,c[d+796>>2]|0);b=b+18580|0;a[b>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;b=1;return b|0}g=c[b+18596>>2]|0;f=c[b+18600>>2]|0;h=c[g+440>>2]|0;g=(c[g+444>>2]|0)-h>>2;if(g>>>0<=1){b=0;return b|0}d=1;while(1){if((c[h+(d<<2)>>2]|0)==(f|0))break;d=d+1|0;if(d>>>0>=g>>>0){d=0;m=17;break}}if((m|0)==17)return d|0;d=c[h+(d+-1<<2)>>2]|0;if(!d){b=0;return b|0}Ie(d+44|0,c[d+124>>2]|0);if(!(a[l+1344>>0]|0)){b=0;return b|0}m=l+1336|0;yf(b+18572|0,m)|0;zf(m);b=1;return b|0}function uf(a,b){a=a|0;b=b|0;var d=0;d=a+4|0;Do(d)|0;c[a>>2]=(c[a>>2]|0)+b;iB(a+32|0)|0;Eo(d)|0;return}function vf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=hc;hc=hc+16|0;h=i+8|0;e=i;if(0){c[e>>2]=a;ko(59522,e)|0}e=a+4|0;f=c[e>>2]|0;do if(f|0){g=c[f>>2]|0;if((g|0)==1){h=c[a>>2]|0;Kg(h,b,d);hc=i;return}if((g|0)>1){c[f>>2]=g+-1;break}else M(59531,58605,177,59541)}while(0);if(0){c[h>>2]=a;ko(59575,h)|0}h=mz(172)|0;c[a>>2]=h;a=lz(4)|0;c[e>>2]=a;c[a>>2]=1;Kg(h,b,d);hc=i;return}function wf(a){a=a|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=a+4|0;f=c[h>>2]|0;i=(c[a+8>>2]|0)-f|0;c[a+12>>2]=510;j=a+20|0;b[j>>1]=8;g=a+16|0;c[g>>2]=0;a=f;if((i|0)<=0)return;e=a+1|0;c[h>>2]=e;f=(d[a>>0]|0)<<8;c[g>>2]=f;b[j>>1]=0;if((i|0)==1)return;c[h>>2]=a+2;c[g>>2]=f|(d[e>>0]|0);b[j>>1]=-8;return}function xf(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,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=b+18588|0;g=c[H>>2]|0;i=c[g+136>>2]|0;h=c[g+128>>2]|0;G=h+5056|0;E=c[G>>2]|0;F=b+12|0;do if(((!e?a[i+41>>0]|0:0)?(f=c[F>>2]|0,(f|0)>0):0)?(c[b+8>>2]|0)==0:0)if((E|0)>1){f=f+-1|0;e=b+18596|0;D=c[e>>2]|0;if(f>>>0<(c[D+488>>2]|0)-(c[D+484>>2]|0)>>3>>>0){re(g,c[b+18604>>2]|0,1,f,1);yf(b+18572|0,(c[(c[e>>2]|0)+484>>2]|0)+((c[F>>2]|0)+-1<<3)|0)|0;zf((c[(c[e>>2]|0)+484>>2]|0)+((c[F>>2]|0)+-1<<3)|0);break}else{H=2;return H|0}}else{re(g,c[b+18604>>2]|0,0,f+-1|0,1);f=c[b+18592>>2]|0;e=c[f+800>>2]|0;if(e>>>0<3){vf(b+18572|0,e,c[f+796>>2]|0);D=b+18580|0;a[D>>0]=0;a[D+1>>0]=0;a[D+2>>0]=0;a[D+3>>0]=0;break}else M(58514,58545,1511,58556)}while(0);A=b+8|0;f=c[A>>2]|0;g=c[F>>2]|0;e=(u(g,E)|0)+f|0;B=i+4348|0;C=i+4352|0;if(!((f|0)<(c[G>>2]|0)?e>>>0<(c[C>>2]|0)-(c[B>>2]|0)>>2>>>0:0)){H=2;return H|0}o=h+5064|0;p=E+-1|0;q=b+18604|0;r=b+18572|0;s=b+18576|0;t=i+41|0;D=b+18548|0;v=b+18596|0;w=i+10|0;x=b+4|0;y=b+18592|0;z=i+42|0;n=i+4372|0;while(1){if((g|0)>=(c[o>>2]|0)){f=2;e=36;break}if((f|0)<(p|0)&((g|0)>0&d))re(c[H>>2]|0,c[q>>2]|0,f+1|0,g+-1|0,1);if(!(c[s>>2]|0)){f=2;e=36;break}Af(b);if((f|0)==1&(a[t>>0]|0)!=0?(g|0)<((c[o>>2]|0)+-1|0):0){m=c[v>>2]|0;f=c[m+484>>2]|0;if((c[m+488>>2]|0)-f>>3>>>0<=g>>>0){f=2;e=36;break}yf(f+(g<<3)|0,r)|0;Bf((c[(c[v>>2]|0)+484>>2]|0)+(g<<3)|0)}i=Cf(D)|0;l=(i|0)!=0;if(l?a[w>>0]|0:0){yf((c[y>>2]|0)+1336|0,r)|0;Bf((c[y>>2]|0)+1336|0);a[(c[y>>2]|0)+1344>>0]=1}ze((c[(c[H>>2]|0)+332>>2]|0)+(e*80|0)|0,1);m=c[F>>2]|0;j=c[x>>2]|0;k=j+1|0;c[x>>2]=k;f=c[H>>2]|0;e=c[f+128>>2]|0;h=c[e+5072>>2]|0;if((k|0)>=(h|0)){f=c[e+5056>>2]|0;g=(h|0)/(f|0)|0;f=h-(u(g,f)|0)|0;c[b>>2]=h;c[A>>2]=f;c[F>>2]=g;if(!i){e=28;break}}else{i=c[(c[(c[f+136>>2]|0)+4360>>2]|0)+(k<<2)>>2]|0;f=c[e+5056>>2]|0;g=(i|0)/(f|0)|0;f=i-(u(g,f)|0)|0;c[b>>2]=i;c[A>>2]=f;c[F>>2]=g}if(l){f=0;e=36;break}if(!(a[z>>0]|0))e=0;else{e=c[n>>2]|0;e=(c[e+(k<<2)>>2]|0)!=(c[e+(j<<2)>>2]|0)}if(e|(m|0)!=(g|0)&(a[t>>0]|0)!=0){e=33;break}e=(u(g,E)|0)+f|0;if(!((f|0)<(c[G>>2]|0)?e>>>0<(c[C>>2]|0)-(c[B>>2]|0)>>2>>>0:0)){f=2;e=36;break}}if((e|0)==28){De((c[b+18584>>2]|0)+4|0,1004,0);a[(c[H>>2]|0)+324>>0]=3;H=2;return H|0}else if((e|0)==33)if(!(Cf(D)|0)){De((c[b+18584>>2]|0)+4|0,1017,0);a[(c[H>>2]|0)+324>>0]=3;H=2;return H|0}else{wf(D);H=1;return H|0}else if((e|0)==36)return f|0;return 0}function yf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=hc;hc=hc+32|0;f=i+16|0;e=i+8|0;d=i;if(0){c[d>>2]=a;c[d+4>>2]=b;ko(59506,d)|0}h=b+4|0;d=c[h>>2]|0;if(!d){f=a+4|0;if(0){b=c[f>>2]|0;c[e>>2]=a;c[e+4>>2]=b;ko(59491,e)|0}d=c[f>>2]|0;if(!d){hc=i;return a|0}b=(c[d>>2]|0)+-1|0;c[d>>2]=b;do if(!b){e=c[a>>2]|0;if(e){oz(e);d=c[f>>2]|0;if(!d)break}nz(d)}while(0);c[a>>2]=0;c[f>>2]=0;hc=i;return a|0}else{c[d>>2]=(c[d>>2]|0)+1;g=a+4|0;if(0){e=c[g>>2]|0;c[f>>2]=a;c[f+4>>2]=e;ko(59491,f)|0}d=c[g>>2]|0;if(d|0){f=(c[d>>2]|0)+-1|0;c[d>>2]=f;do if(!f){e=c[a>>2]|0;if(e){oz(e);d=c[g>>2]|0;if(!d)break}nz(d)}while(0);c[a>>2]=0;c[g>>2]=0}c[a>>2]=c[b>>2];c[g>>2]=c[h>>2];hc=i;return a|0}return 0}function zf(a){a=a|0;var b=0,d=0,e=0,f=0;f=hc;hc=hc+16|0;b=f;e=a+4|0;if(0){d=c[e>>2]|0;c[b>>2]=a;c[b+4>>2]=d;ko(59491,b)|0}b=c[e>>2]|0;if(!b){hc=f;return}d=(c[b>>2]|0)+-1|0;c[b>>2]=d;do if(!d){d=c[a>>2]|0;if(d){oz(d);b=c[e>>2]|0;if(!b)break}nz(b)}while(0);c[a>>2]=0;c[e>>2]=0;hc=f;return}function Af(d){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;k=c[d+18592>>2]|0;q=c[d+18588>>2]|0;g=c[q+128>>2]|0;h=c[d>>2]|0;f=c[g+5056>>2]|0;e=(h|0)/(f|0)|0;f=h-(u(e,f)|0)|0;g=g+5040|0;h=c[g>>2]|0;i=f<<h;j=e<<h;l=c[q+156>>2]|0;n=(u(l,e)|0)+f|0;m=c[q+144>>2]|0;b[m+(n*24|0)>>1]=c[k+804>>2];n=c[k>>2]&65535;p=c[q+152>>2]|0;o=i>>p;p=j>>p;if(!((o|0)>-1&(o|0)<(l|0)))M(60650,60687,130,60707);if((p|0)<=-1)M(60711,60687,131,60707);if((p|0)>=(c[q+160>>2]|0))M(60711,60687,131,60707);b[m+(((u(p,l)|0)+o|0)*24|0)+2>>1]=n;if((a[k+329>>0]|0)==0?(a[k+330>>0]|0)==0:0){q=h;Ef(d,i,j,q,0);return}Df(d,f,e,0);q=c[g>>2]|0;Ef(d,i,j,q,0);return}function Bf(a){a=a|0;var b=0,d=0,e=0,f=0;f=hc;hc=hc+16|0;b=f;e=a+4|0;if(0){d=c[e>>2]|0;c[b>>2]=a;c[b+4>>2]=d;ko(58580,b)|0}b=c[e>>2]|0;if(!b)M(58598,58605,95,58623);d=c[b>>2]|0;if((d|0)<=1){hc=f;return}c[b>>2]=d+-1;d=c[a>>2]|0;b=mz(172)|0;c[a>>2]=b;a=lz(4)|0;c[e>>2]=a;c[a>>2]=1;fB(b|0,d|0,172)|0;hc=f;return}function Cf(a){a=a|0;var e=0,f=0,g=0,h=0,i=0;e=a+12|0;f=(c[e>>2]|0)+-2|0;c[e>>2]=f;g=f<<7;i=a+16|0;h=c[i>>2]|0;if(h>>>0>=g>>>0){i=1;return i|0}if(g>>>0>=32768){i=0;return i|0}c[e>>2]=f<<1&67108862;g=h<<1;c[i>>2]=g;e=a+20|0;h=(b[e>>1]|0)+1<<16>>16;b[e>>1]=h;if(h<<16>>16){i=0;return i|0}b[e>>1]=-8;e=a+4|0;f=c[e>>2]|0;if(f>>>0>=(c[a+8>>2]|0)>>>0){i=0;return i|0}c[e>>2]=f+1;c[i>>2]=g+(d[f>>0]|0);i=0;return i|0}function Df(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,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;E=hc;hc=hc+32|0;f=E;j=c[b+18592>>2]|0;D=c[b+18588>>2]|0;A=D+128|0;i=c[A>>2]|0;k=c[D+136>>2]|0;g=f;h=g+17|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));if((d|0)>0?(C=u(c[i+5056>>2]|0,e)|0,B=c[k+4384>>2]|0,(c[b>>2]|0)>(c[j+804>>2]|0)?(c[B+(C+d<<2)>>2]|0)==(c[B+(d+-1+C<<2)>>2]|0):0):0)g=(Ff(b+18548|0,c[b+18572>>2]|0)|0)&255;else g=0;B=g<<24>>24==0;if((e|0)>0&B?(C=c[i+5056>>2]|0,y=(u(C,e)|0)+d|0,z=c[k+4384>>2]|0,((c[b>>2]|0)-C|0)>=(c[j+804>>2]|0)?(c[z+(y<<2)>>2]|0)==(c[z+((u(C,e+-1|0)|0)+d<<2)>>2]|0):0):0)h=(Ff(b+18548|0,c[b+18572>>2]|0)|0)&255;else h=0;C=h<<24>>24==0;if(!((h|g)<<24>>24)){z=(c[i+5012>>2]|0)==0?1:3;y=j+329|0;w=j+330|0;x=b+18548|0;t=b+18572|0;v=k+4163|0;n=k+4164|0;o=f+1|0;p=f+5|0;q=f+6|0;r=f+7|0;s=f+8|0;m=0;h=0;g=0;do{l=(m|0)==0;if(!(!(l&(a[y>>0]|0)!=0)?!((m|0)!=0&(a[w>>0]|0)!=0):0)){do if(l){if(!(Ff(x,(c[t>>2]|0)+1|0)|0))h=0;else{h=(Jf(x)|0)==0;h=h?1:2}j=h;h=h&255}else{if((m|0)!=1){j=(h&255)>>>(m<<1)&3;break}if(!(Ff(x,(c[t>>2]|0)+1|0)|0))i=0;else{i=(Jf(x)|0)==0;i=i?1:2}j=i;h=(i<<4|i<<2|h&255)&255}while(0);i=j&255;if(i){j=c[A>>2]|0;if(l){k=c[j+4996>>2]|0;a[p>>0]=Of(x,(1<<((k|0)<10?k:10)+-5)+-1|0)|0;k=c[(c[A>>2]|0)+4996>>2]|0;a[q>>0]=Of(x,(1<<((k|0)<10?k:10)+-5)+-1|0)|0;k=c[(c[A>>2]|0)+4996>>2]|0;a[r>>0]=Of(x,(1<<((k|0)<10?k:10)+-5)+-1|0)|0;k=c[(c[A>>2]|0)+4996>>2]|0;a[s>>0]=Of(x,(1<<((k|0)<10?k:10)+-5)+-1|0)|0}else{k=c[j+5004>>2]|0;a[f+5+(m<<2)>>0]=Of(x,(1<<((k|0)<10?k:10)+-5)+-1|0)|0;k=c[(c[A>>2]|0)+5004>>2]|0;a[f+5+(m<<2)+1>>0]=Of(x,(1<<((k|0)<10?k:10)+-5)+-1|0)|0;k=c[(c[A>>2]|0)+5004>>2]|0;a[f+5+(m<<2)+2>>0]=Of(x,(1<<((k|0)<10?k:10)+-5)+-1|0)|0;k=c[(c[A>>2]|0)+5004>>2]|0;a[f+5+(m<<2)+3>>0]=Of(x,(1<<((k|0)<10?k:10)+-5)+-1|0)|0}do if((i|0)!=1){if(l){i=1;j=1;k=-1;b=-1;g=(Pf(x,2)|0)&255;break}if((m|0)==1){F=(Pf(x,2)|0)&255;i=1;j=1;k=-1;b=-1;g=(F<<2|g&255|F<<4)&255}else{i=1;j=1;k=-1;b=-1}}else{if(!(a[f+5+(m<<2)>>0]|0))i=0;else{i=(Jf(x)|0)==0;i=i?1:-1}if(!(a[f+5+(m<<2)+1>>0]|0))j=0;else{j=(Jf(x)|0)==0;j=j?1:-1}if(!(a[f+5+(m<<2)+2>>0]|0))k=0;else{k=(Jf(x)|0)==0;k=k?1:-1}if(!(a[f+5+(m<<2)+3>>0]|0))b=0;else{b=(Jf(x)|0)==0;b=b?1:-1}a[f+2+m>>0]=Pf(x,5)|0}while(0);l=(l?a[v>>0]|0:a[n>>0]|0)&255;F=f+5+(m<<2)|0;a[F>>0]=u(a[F>>0]<<l,i)|0;F=f+5+(m<<2)+1|0;a[F>>0]=u(a[F>>0]<<l,j)|0;F=f+5+(m<<2)+2|0;a[F>>0]=u(a[F>>0]<<l,k)|0;F=f+5+(m<<2)+3|0;a[F>>0]=u(a[F>>0]<<l,b)|0}}m=m+1|0}while((m|0)!=(z|0));a[f>>0]=h;a[o>>0]=g;g=(u(c[D+156>>2]|0,e)|0)+d|0;g=(c[D+144>>2]|0)+(g*24|0)+4|0;h=g+17|0;do{a[g>>0]=a[f>>0]|0;g=g+1|0;f=f+1|0}while((g|0)<(h|0))}if(!B){f=u(c[D+156>>2]|0,e)|0;h=c[D+144>>2]|0;g=h+((f+d|0)*24|0)+4|0;f=h+((d+-1+f|0)*24|0)+4|0;h=g+17|0;do{a[g>>0]=a[f>>0]|0;g=g+1|0;f=f+1|0}while((g|0)<(h|0))}if(C){hc=E;return}g=c[D+156>>2]|0;f=(u(g,e+-1|0)|0)+d|0;h=c[D+144>>2]|0;g=h+(((u(g,e)|0)+d|0)*24|0)+4|0;f=h+(f*24|0)+4|0;h=g+17|0;do{a[g>>0]=a[f>>0]|0;g=g+1|0;f=f+1|0}while((g|0)<(h|0));hc=E;return}function Ef(e,f,g,h,i){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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;v=e+18588|0;w=e+18592|0;z=e+18500|0;A=e+18504|0;B=e+18508|0;p=e+18548|0;q=e+18572|0;F=f;E=g;C=h;D=i;while(1){n=c[v>>2]|0;m=c[n+128>>2]|0;l=c[n+136>>2]|0;f=1<<C;o=m+484|0;g=c[o>>2]|0;if(((f+F|0)<=(g|0)?(r=c[m+488>>2]|0,(f+E|0)<=(r|0)):0)?(c[m+5036>>2]|0)<(C|0):0){h=F+-1|0;if((h|E|0)>-1&(g|0)>=(F|0)&(r|0)>(E|0)?(t=c[m+5040>>2]|0,k=u(E>>t,c[m+5056>>2]|0)|0,s=k+(F>>t)|0,t=k+(h>>t)|0,k=c[n+144>>2]|0,(b[k+(s*24|0)>>1]|0)==(b[k+(t*24|0)>>1]|0)):0){f=c[l+4384>>2]|0;f=(c[f+(s<<2)>>2]|0)==(c[f+(t<<2)>>2]|0)&1}else f=0;k=E+-1|0;if(!((k|F|0)<0|(g|0)<=(F|0)|(r|0)<(E|0))?(i=c[m+5040>>2]|0,j=c[m+5056>>2]|0,y=F>>i,x=(u(E>>i,j)|0)+y|0,y=(u(k>>i,j)|0)+y|0,j=c[n+144>>2]|0,(b[j+(x*24|0)>>1]|0)==(b[j+(y*24|0)>>1]|0)):0){j=c[l+4384>>2]|0;j=(c[j+(x<<2)>>2]|0)==(c[j+(y<<2)>>2]|0)&1}else j=0;if(!f)i=2;else{g=c[n+172>>2]|0;f=h>>g;g=E>>g;if((f|0)<=-1){f=14;break}h=c[n+176>>2]|0;if((f|0)>=(h|0)){f=14;break}if((g|0)<=-1){f=17;break}if((g|0)>=(c[n+180>>2]|0)){f=17;break}i=(c[n+164>>2]|0)+(((u(h,g)|0)+f|0)*3|0)|0;i=(D|0)<(((d[i>>0]|d[i+1>>0]<<8)&65535)>>>6&3|0)?3:2}if(!j)f=0;else{f=c[n+172>>2]|0;h=F>>f;f=k>>f;if((h|0)<=-1){f=22;break}g=c[n+176>>2]|0;if((h|0)>=(g|0)){f=22;break}if((f|0)<=-1){f=25;break}if((f|0)>=(c[n+180>>2]|0)){f=25;break}f=(c[n+164>>2]|0)+(((u(g,f)|0)+h|0)*3|0)|0;f=(D|0)<(((d[f>>0]|d[f+1>>0]<<8)&65535)>>>6&3|0)&1}f=Ff(p,(c[q>>2]|0)+(f+i)|0)|0}else f=(c[m+5036>>2]|0)<(C|0)&1;if(a[l+22>>0]|0?(c[l+4168>>2]|0)<=(C|0):0){c[z>>2]=0;c[A>>2]=0}if(a[(c[w>>2]|0)+756>>0]|0?(c[l+4172>>2]|0)<=(C|0):0)c[B>>2]=0;if(!f){f=41;break}h=C+-1|0;j=1<<h;i=j+F|0;j=j+E|0;k=D+1|0;Ef(e,F,E,h,k);if((i|0)<(c[o>>2]|0))Ef(e,i,E,h,k);g=m+488|0;f=c[g>>2]|0;if((j|0)<(f|0)){Ef(e,F,j,h,k);f=c[g>>2]|0}if((j|0)<(f|0)?(i|0)<(c[o>>2]|0):0){F=i;E=j;C=h;D=k}else{f=47;break}}if((f|0)==14)M(60650,60687,120,60707);else if((f|0)==17)M(60711,60687,121,60707);else if((f|0)==22)M(60650,60687,120,60707);else if((f|0)==25)M(60711,60687,121,60707);else if((f|0)==41){B=c[n+172>>2]|0;l=F>>B;g=E>>B;B=C-B|0;f=1<<B;m=f+g|0;if((B|0)!=31){j=f+l|0;k=n+176|0;h=n+164|0;i=(D&65535)<<6&192;f=g;do{g=l;do{B=(u(c[k>>2]|0,f)|0)+g|0;B=(c[h>>2]|0)+(B*3|0)|0;A=(d[B>>0]|d[B+1>>0]<<8)&-193|i;a[B>>0]=A;a[B+1>>0]=A>>8;g=g+1|0}while((g|0)<(j|0));f=f+1|0}while((f|0)<(m|0))}Gf(e,F,E,C,D);return}else if((f|0)==47)return}function Ff(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=f+12|0;i=c[l>>2]|0;h=d[(i>>>6)+-4+(64+(((d[g>>0]|0)>>>1&255)<<2))>>0]|0;i=i-h|0;c[l>>2]=i;k=i<<7;n=f+16|0;j=c[n>>2]|0;if(j>>>0<k>>>0){h=a[g>>0]|0;j=h&1;m=j&255;a[g>>0]=a[416+((h&255)>>>1&255)>>0]<<1&255|j;if(k>>>0>=32768){n=m;return n|0}c[l>>2]=i<<1&67108862;j=c[n>>2]<<1;c[n>>2]=j;h=f+20|0;g=(b[h>>1]|0)+1<<16>>16;b[h>>1]=g;if(g<<16>>16){n=m;return n|0}b[h>>1]=-8;h=f+4|0;i=c[h>>2]|0;if(i>>>0>=(c[f+8>>2]|0)>>>0){n=m;return n|0}c[h>>2]=i+1;c[n>>2]=j|(d[i>>0]|0);n=m;return n|0}else{m=d[320+(h>>>3)>>0]|0;c[n>>2]=j-k<<m;c[l>>2]=h<<m;h=a[g>>0]|0;i=h&1;j=i^1;l=j&255;if((h&255)<2){h=j|h&-2;a[g>>0]=h;i=j}a[g>>0]=a[352+((h&255)>>>1&255)>>0]<<1&255|i;k=f+20|0;h=(e[k>>1]|0)+m|0;b[k>>1]=h;if(h&32768|0){n=l;return n|0}i=f+4|0;j=c[i>>2]|0;if(j>>>0<(c[f+8>>2]|0)>>>0){c[i>>2]=j+1;c[n>>2]=(d[j>>0]|0)<<(h<<16>>16)|c[n>>2]}b[k>>1]=h+65528;n=l;return n|0}return 0}function Gf(e,f,g,h,i){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,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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;W=hc;hc=hc+80|0;V=W+32|0;O=W+16|0;P=W;Q=W+56|0;N=e+18588|0;S=c[N>>2]|0;I=S+128|0;T=c[I>>2]|0;J=S+136|0;r=c[J>>2]|0;C=e+18592|0;s=c[C>>2]|0;F=S+172|0;U=c[F>>2]|0;q=f>>U;l=g>>U;U=h-U|0;j=1<<U;p=j+l|0;if((U|0)==31)j=q;else{m=j+q|0;n=S+176|0;o=S+164|0;j=l;do{k=q;do{U=(u(c[n>>2]|0,j)|0)+k|0;U=(c[o>>2]|0)+(U*3|0)|0;L=(d[U>>0]|d[U+1>>0]<<8)&-8;a[U>>0]=L;a[U+1>>0]=L>>8;k=k+1|0}while((k|0)<(m|0));j=j+1|0}while((j|0)<(p|0));j=c[F>>2]|0;l=g>>j;j=f>>j}if((j|0)<=-1)M(60650,60687,130,60707);G=S+176|0;k=c[G>>2]|0;if((j|0)>=(k|0))M(60650,60687,130,60707);if((l|0)<=-1)M(60711,60687,131,60707);q=S+180|0;if((l|0)>=(c[q>>2]|0))M(60711,60687,131,60707);H=S+164|0;U=(c[H>>2]|0)+(((u(k,l)|0)+j|0)*3|0)|0;o=(d[U>>0]|d[U+1>>0]<<8)&-8|h&7;a[U>>0]=o;a[U+1>>0]=o>>8;U=c[S+252>>2]|0;o=f>>U;k=g>>U;U=h-U|0;j=1<<U;p=j+k|0;if((U|0)!=31){l=j+o|0;m=S+256|0;n=S+244|0;j=k;do{k=o;do{U=(u(c[m>>2]|0,j)|0)+k|0;a[(c[n>>2]|0)+U>>0]=0;k=k+1|0}while((k|0)<(l|0));j=j+1|0}while((j|0)<(p|0))}U=1<<h;Hf(e,f,g,f,g);if(a[r+40>>0]|0){L=Ff(e+18548|0,(c[e+18572>>2]|0)+161|0)|0;a[e+32>>0]=L;if(L|0)If(S,f,g,h,1)}else a[e+32>>0]=0;p=s+24|0;do if((c[p>>2]|0)==2)L=0;else{o=c[N>>2]|0;k=f+-1|0;if((((k|g|0)>=0?(w=c[o+128>>2]|0,(c[w+484>>2]|0)>=(f|0)):0)?(c[w+488>>2]|0)>(g|0):0)?(v=c[w+5040>>2]|0,L=u(g>>v,c[w+5056>>2]|0)|0,t=L+(f>>v)|0,v=L+(k>>v)|0,L=c[o+144>>2]|0,(b[L+(t*24|0)>>1]|0)==(b[L+(v*24|0)>>1]|0)):0){j=c[(c[o+136>>2]|0)+4384>>2]|0;j=(c[j+(t<<2)>>2]|0)==(c[j+(v<<2)>>2]|0)&1}else j=0;n=g+-1|0;if((((n|f|0)>=0?(x=c[o+128>>2]|0,(c[x+484>>2]|0)>(f|0)):0)?(c[x+488>>2]|0)>=(g|0):0)?(K=c[x+5040>>2]|0,L=c[x+5056>>2]|0,z=f>>K,y=(u(g>>K,L)|0)+z|0,z=(u(n>>K,L)|0)+z|0,L=c[o+144>>2]|0,(b[L+(y*24|0)>>1]|0)==(b[L+(z*24|0)>>1]|0)):0){m=c[(c[o+136>>2]|0)+4384>>2]|0;m=(c[m+(y<<2)>>2]|0)==(c[m+(z<<2)>>2]|0)&1}else m=0;do if(j){L=c[o+172>>2]|0;j=k>>L;k=g>>L;if((j|0)<=-1)M(60650,60687,120,60707);l=c[o+176>>2]|0;if((j|0)>=(l|0))M(60650,60687,120,60707);if((k|0)<=-1)M(60711,60687,121,60707);if((k|0)<(c[o+180>>2]|0)){A=(c[o+164>>2]|0)+(((u(l,k)|0)+j|0)*3|0)|0;A=((d[A>>0]|d[A+1>>0]<<8)&768)==512?6:5;break}else M(60711,60687,121,60707)}else A=5;while(0);do if(m){j=c[o+172>>2]|0;l=f>>j;j=n>>j;if((l|0)<=-1)M(60650,60687,120,60707);k=c[o+176>>2]|0;if((l|0)>=(k|0))M(60650,60687,120,60707);if((j|0)<=-1)M(60711,60687,121,60707);if((j|0)<(c[o+180>>2]|0)){B=(c[o+164>>2]|0)+(((u(k,j)|0)+l|0)*3|0)|0;B=((d[B>>0]|d[B+1>>0]<<8)&768)==512&1;break}else M(60711,60687,121,60707)}else B=0;while(0);k=e+18548|0;j=e+18572|0;if(!(((Ff(k,(c[j>>2]|0)+(B+A)|0)|0)&255)<<24>>24)){if((c[p>>2]|0)==2){L=0;break}L=(Ff(k,(c[j>>2]|0)+149|0)|0)==0&1;break}a:do if((c[(c[C>>2]|0)+808>>2]|0)>=2?(Ff(k,(c[j>>2]|0)+148|0)|0)!=0:0)if((c[(c[C>>2]|0)+808>>2]|0)>2){j=1;do{if(!(Jf(k)|0))break a;j=j+1|0}while((j|0)<((c[(c[C>>2]|0)+808>>2]|0)+-1|0))}else j=1;else j=0;while(0);k=e+26|0;a[k>>0]=a[k>>0]&15|(j&255)<<5&255|16;k=c[F>>2]|0;j=f>>k;k=g>>k;if((j|0)<=-1)M(60650,60687,130,60707);l=c[G>>2]|0;if((j|0)>=(l|0))M(60650,60687,130,60707);if((k|0)<=-1)M(60711,60687,131,60707);if((k|0)>=(c[q>>2]|0))M(60711,60687,131,60707);V=(c[H>>2]|0)+(((u(l,k)|0)+j|0)*3|0)|0;n=(d[V>>0]|d[V+1>>0]<<8)&-57;a[V>>0]=n;a[V+1>>0]=n>>8;V=c[F>>2]|0;n=f>>V;k=g>>V;V=h-V|0;j=1<<V;m=j+k|0;if((V|0)!=31){l=j+n|0;j=k;do{k=n;do{V=(u(c[G>>2]|0,j)|0)+k|0;V=(c[H>>2]|0)+(V*3|0)|0;h=(d[V>>0]|d[V+1>>0]<<8)&-769|512;a[V>>0]=h;a[V+1>>0]=h>>8;k=k+1|0}while((k|0)<(l|0));j=j+1|0}while((j|0)<(m|0))}Kf(c[e+18584>>2]|0,c[C>>2]|0,c[N>>2]|0,e+16|0,f,g,0,0,U,U,U,0);hc=W;return}while(0);K=c[F>>2]|0;n=f>>K;k=g>>K;K=h-K|0;j=1<<K;o=j+k|0;if((K|0)!=31){l=j+n|0;m=(L&65535)<<8&768;j=k;do{k=n;do{K=(u(c[G>>2]|0,j)|0)+k|0;K=(c[H>>2]|0)+(K*3|0)|0;C=(d[K>>0]|d[K+1>>0]<<8)&-769|m;a[K>>0]=C;a[K+1>>0]=C>>8;k=k+1|0}while((k|0)<(l|0));j=j+1|0}while((j|0)<(o|0))}K=(L|0)!=0;do if(K){j=c[(c[N>>2]|0)+128>>2]|0;k=e+18548|0;l=e+18572|0;if(!(Ff(k,(c[l>>2]|0)+8|0)|0)){m=Ff(k,(c[l>>2]|0)+9|0)|0;if((c[j+5036>>2]|0)>=(h|0)){if(m|0){j=1;D=92;break}if((h|0)==3){j=2;D=92;break}j=3-(Ff(k,(c[l>>2]|0)+10|0)|0)|0;D=92;break}if(!(a[j+4702>>0]|0)){j=(m|0)==0?2:1;D=92;break}if(Ff(k,(c[l>>2]|0)+11|0)|0){j=(m|0)==0?2:1;D=92;break}j=Jf(k)|0;k=(j|0)!=0;if(!((m|0)!=0&k)){l=(m|0)==0;if(l|k)if(j|m)if(l&k){j=7;D=92}else M(76276,58545,1765,58632);else{j=6;D=92}else{j=4;D=92}}else{j=5;D=92}}else{j=0;D=92}}else if((c[T+5036>>2]|0)==(h|0)){j=(Ff(e+18548|0,(c[e+18572>>2]|0)+8|0)|0)==0;j=j?3:0;D=92}else{R=0;E=0}while(0);if((D|0)==92){R=(L|0)==0&(j|0)==3&1;E=j}l=c[F>>2]|0;k=f>>l;l=g>>l;if((k|0)<=-1)M(60650,60687,130,60707);j=c[G>>2]|0;if((k|0)>=(j|0))M(60650,60687,130,60707);if((l|0)<=-1)M(60711,60687,131,60707);if((l|0)>=(c[q>>2]|0))M(60711,60687,131,60707);G=(c[H>>2]|0)+(((u(j,l)|0)+k|0)*3|0)|0;H=(d[G>>0]|d[G+1>>0]<<8)&-57|(E&65535)<<3&56;a[G>>0]=H;a[G+1>>0]=H>>8;G=(L|0)==0;H=(E|0)==0;b:do if(G){do if((H?a[T+4704>>0]|0:0)?(c[T+5120>>2]|0)<=(h|0):0){if((c[T+5124>>2]|0)<(h|0))break;v=e+18548|0;if(!(Cf(v)|0))break;Lf(S,f,g,h,1);t=e+18552|0;j=c[t>>2]|0;c[V>>2]=j;c[V+4>>2]=(c[e+18556>>2]|0)-j;j=V+8|0;c[j>>2]=0;c[j+4>>2]=0;c[V+16>>2]=0;j=c[N>>2]|0;p=c[j+128>>2]|0;l=c[p+4996>>2]|0;p=a[p+4705>>0]|0;o=c[j+40>>2]|0;j=c[j+4>>2]|0;k=(u(o,g)|0)+f|0;do if((l|0)>8){n=j+(k<<1)|0;m=l-p|0;if((h|0)==31)break;k=0;do{l=u(k,o)|0;j=0;do{b[n+(j+l<<1)>>1]=(Mf(V,p)|0)<<m;j=j+1|0}while((j|0)!=(U|0));k=k+1|0}while((k|0)!=(U|0))}else{n=j+k|0;m=l-p|0;if((h|0)==31)break;k=0;do{l=u(k,o)|0;j=0;do{a[n+(j+l)>>0]=(Mf(V,p)|0)<<m;j=j+1|0}while((j|0)!=(U|0));k=k+1|0}while((k|0)!=(U|0))}while(0);j=c[N>>2]|0;k=c[j+128>>2]|0;do if(c[k+5012>>2]|0){m=c[k+5004>>2]|0;h=c[k+5016>>2]|0;q=(U|0)/(h|0)|0;e=c[k+5020>>2]|0;s=(U|0)/(e|0)|0;o=a[k+4706>>0]|0;r=c[j+44>>2]|0;l=c[j+8>>2]|0;k=(u(r,(g|0)/(e|0)|0)|0)+((f|0)/(h|0)|0)|0;if((m|0)>8){k=k<<1;p=l+k|0;n=m-o|0;if((q|0)>0&(s|0)>0){k=0;do{l=u(k,r)|0;j=0;do{b[p+(j+l<<1)>>1]=(Mf(V,o)|0)<<n;j=j+1|0}while((j|0)!=(q|0));k=k+1|0}while((k|0)!=(s|0));j=c[N>>2]|0;h=c[j+128>>2]|0;k=c[h+5016>>2]|0;T=c[h+5020>>2]|0;e=c[j+44>>2]|0;n=a[h+4706>>0]|0;r=e;q=(U|0)/(k|0)|0;p=(U|0)/(T|0)|0;o=n;k=(u((g|0)/(T|0)|0,e)|0)+((f|0)/(k|0)|0)<<1;n=(c[h+5004>>2]|0)-n|0}else p=s;l=(c[j+12>>2]|0)+k|0;if(!((p|0)>0&(q|0)>0))break;k=0;do{m=u(k,r)|0;j=0;do{b[l+(j+m<<1)>>1]=(Mf(V,o)|0)<<n;j=j+1|0}while((j|0)!=(q|0));k=k+1|0}while((k|0)!=(p|0))}else{p=l+k|0;n=m-o|0;if((q|0)>0&(s|0)>0){k=0;do{l=u(k,r)|0;j=0;do{a[p+(j+l)>>0]=(Mf(V,o)|0)<<n;j=j+1|0}while((j|0)!=(q|0));k=k+1|0}while((k|0)!=(s|0));j=c[N>>2]|0;h=c[j+128>>2]|0;k=c[h+5016>>2]|0;T=c[h+5020>>2]|0;e=c[j+44>>2]|0;n=a[h+4706>>0]|0;r=e;q=(U|0)/(k|0)|0;p=(U|0)/(T|0)|0;o=n;k=(u((g|0)/(T|0)|0,e)|0)+((f|0)/(k|0)|0)|0;n=(c[h+5004>>2]|0)-n|0}else p=s;l=(c[j+12>>2]|0)+k|0;if(!((p|0)>0&(q|0)>0))break;k=0;do{m=u(k,r)|0;j=0;do{a[l+(j+m)>>0]=(Mf(V,o)|0)<<n;j=j+1|0}while((j|0)!=(q|0));k=k+1|0}while((k|0)!=(p|0))}}while(0);Nf(V);c[t>>2]=c[V>>2];wf(v);hc=W;return}while(0);F=(E|0)==3;i=F?(U|0)/2|0:U;F=(F<<31>>31)+h|0;E=(h|0)==31;if(!E){m=e+18548|0;n=e+18572|0;j=0;k=0;do{l=0;do{N=j;j=j+1|0;c[V+(N<<2)>>2]=Ff(m,(c[n>>2]|0)+12|0)|0;l=l+i|0}while((l|0)<(U|0));k=k+i|0}while((k|0)<(U|0))}k=f+-1|0;do if((k|g|0)<0)m=0;else{j=c[I>>2]|0;if((c[j+484>>2]|0)<(f|0)){m=0;break}if((c[j+488>>2]|0)<=(g|0)){m=0;break}N=c[j+5040>>2]|0;j=u(g>>N,c[j+5056>>2]|0)|0;l=j+(f>>N)|0;j=j+(k>>N)|0;N=c[S+144>>2]|0;if((b[N+(l*24|0)>>1]|0)!=(b[N+(j*24|0)>>1]|0)){m=0;break}m=c[(c[J>>2]|0)+4384>>2]|0;m=(c[m+(l<<2)>>2]|0)==(c[m+(j<<2)>>2]|0)&1}while(0);l=g+-1|0;do if((l|f|0)<0)j=0;else{j=c[I>>2]|0;if((c[j+484>>2]|0)<=(f|0)){j=0;break}if((c[j+488>>2]|0)<(g|0)){j=0;break}I=c[j+5040>>2]|0;N=c[j+5056>>2]|0;j=f>>I;k=(u(g>>I,N)|0)+j|0;j=(u(l>>I,N)|0)+j|0;N=c[S+144>>2]|0;if((b[N+(k*24|0)>>1]|0)!=(b[N+(j*24|0)>>1]|0)){j=0;break}N=c[(c[J>>2]|0)+4384>>2]|0;j=(c[N+(k<<2)>>2]|0)==(c[N+(j<<2)>>2]|0)&1}while(0);if(!E){D=e+18548|0;C=(m|0)!=0;r=(j|0)!=0;s=T+5108|0;t=T+5112|0;v=S+212|0;w=Q+4|0;x=S+216|0;y=S+204|0;z=Q+8|0;p=0;j=0;do{A=p+g|0;B=r|(p|0)>0;q=0;do{m=c[V+(j<<2)>>2]|0;if(!m){k=Pf(D,5)|0;l=P}else{k=Of(D,2)|0;l=O}c[l+(j<<2)>>2]=k;N=q+f|0;o=c[s>>2]|0;o=(u(A>>o,c[t>>2]|0)|0)+(N>>o)|0;Qf(Q,N,A,o,C|(q|0)>0,B,S);if((m|0)==1)k=c[Q+(c[O+(j<<2)>>2]<<2)>>2]|0;else{k=c[Q>>2]|0;l=c[w>>2]|0;if((k|0)>(l|0)){c[Q>>2]=l;c[w>>2]=k;m=l}else{m=k;k=l}l=c[z>>2]|0;if((m|0)>(l|0)){c[Q>>2]=l;c[z>>2]=m;n=m}else{n=l;l=m}if((k|0)>(n|0)){c[w>>2]=n;c[z>>2]=k;m=n}else{m=k;k=n}N=c[P+(j<<2)>>2]|0;N=N+((N|0)>=(l|0)&1)|0;N=N+((N|0)>=(m|0)&1)|0;k=N+((N|0)>=(k|0)&1)|0}N=F-(c[v>>2]|0)|0;n=1<<N;if((N|0)!=31){m=k&255;k=0;do{l=0;do{N=l+o+(u(c[x>>2]|0,k)|0)|0;a[(c[y>>2]|0)+N>>0]=m;l=l+1|0}while((l|0)<(n|0));k=k+1|0}while((k|0)<(n|0))}j=j+1|0;q=q+i|0}while((q|0)<(U|0));p=p+i|0}while((p|0)<(U|0))}n=T+5012|0;c:do switch(c[n>>2]|0){case 3:{if(E)break c;p=e+18548|0;q=e+18572|0;r=S+212|0;s=S+216|0;t=S+220|0;v=S+204|0;o=0;d:while(1){w=o+g|0;n=0;do{x=n+f|0;if(!(Ff(p,(c[q>>2]|0)+13|0)|0))m=4;else m=Pf(p,2)|0;k=c[r>>2]|0;j=x>>k;k=w>>k;if((j|0)<=-1){D=192;break d}l=c[s>>2]|0;if((j|0)>=(l|0)){D=192;break d}if((k|0)<=-1){D=193;break d}if((k|0)>=(c[t>>2]|0)){D=193;break d}j=d[(c[v>>2]|0)+((u(l,k)|0)+j)>>0]|0;k=(m|0)==4;if(!k){V=c[816+(m<<2)>>2]|0;j=(V|0)==(j|0)?34:V}Rf(S,x,w,F,j,k);n=n+i|0}while((n|0)<(U|0));o=o+i|0;if((o|0)>=(U|0))break c}if((D|0)==192)M(60650,60687,120,60707);else if((D|0)==193)M(60711,60687,121,60707);break}case 0:break;default:{j=e+18548|0;if(!(Ff(j,(c[e+18572>>2]|0)+13|0)|0))m=4;else m=Pf(j,2)|0;k=c[S+212>>2]|0;j=f>>k;k=g>>k;if((j|0)<=-1)M(60650,60687,120,60707);l=c[S+216>>2]|0;if((j|0)>=(l|0))M(60650,60687,120,60707);if((k|0)<=-1)M(60711,60687,121,60707);if((k|0)>=(c[S+220>>2]|0))M(60711,60687,121,60707);j=d[(c[S+204>>2]|0)+((u(l,k)|0)+j)>>0]|0;k=(m|0)==4;if(!k){V=c[816+(m<<2)>>2]|0;j=(V|0)==(j|0)?34:V}if((c[n>>2]|0)==2)j=d[832+j>>0]|0;Rf(S,f,g,h,j,k)}}while(0)}else{if(H){Sf(e,f,g,0,0,U,U,i,U,0);break}switch(E|0){case 1:{V=(U|0)/2|0;Sf(e,f,g,0,0,U,V,i,U,0);Sf(e,f,g,0,V,U,V,i,U,1);break b}case 2:{V=(U|0)/2|0;Sf(e,f,g,0,0,V,U,i,U,0);Sf(e,f,g,V,0,V,U,i,U,1);break b}case 4:{V=(U|0)/4|0;Sf(e,f,g,0,0,U,V,i,U,0);Sf(e,f,g,0,V,U,(3<<h|0)/4|0,i,U,1);break b}case 5:{V=(3<<h|0)/4|0;Sf(e,f,g,0,0,U,V,i,U,0);Sf(e,f,g,0,V,U,(U|0)/4|0,i,U,1);break b}case 6:{V=(U|0)/4|0;Sf(e,f,g,0,0,V,U,i,U,0);Sf(e,f,g,V,0,(3<<h|0)/4|0,U,i,U,1);break b}case 7:{V=(3<<h|0)/4|0;Sf(e,f,g,0,0,V,U,i,U,0);Sf(e,f,g,V,0,(U|0)/4|0,U,i,U,1);break b}case 3:{V=(U|0)/2|0;Sf(e,f,g,0,0,V,V,i,U,0);Sf(e,f,g,V,0,V,V,i,U,1);Sf(e,f,g,0,V,V,V,i,U,2);Sf(e,f,g,V,V,V,V,i,U,3);break b}default:M(69335,58545,4525,58649)}}while(0);if((K?!(H&(a[e+26>>0]&16)!=0):0)?(Ff(e+18548|0,(c[e+18572>>2]|0)+153|0)|0)==0:0){hc=W;return}V=(c[T+5012>>2]|0)!=0&1;Tf(e,f,g,f,g,f,g,h,0,0,G?(c[T+632>>2]|0)+R|0:c[T+628>>2]|0,R,L,V,V);hc=W;return}function Hf(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,v=0,w=0;v=b+18588|0;t=c[v>>2]|0;s=c[t+136>>2]|0;t=c[t+128>>2]|0;j=b+18592|0;r=c[j>>2]|0;n=-1<<c[s+4168>>2];o=n&g;n=n&h;e=b+18524|0;f=b+18528|0;if(!((o|0)==(c[e>>2]|0)?(n|0)==(c[f>>2]|0):0)){c[b+18532>>2]=c[b+18520>>2];c[e>>2]=o;c[f>>2]=n}m=t+5040|0;if(!o)f=((1<<c[m>>2])+-1&n|0)==0;else f=0;i=c[r+804>>2]|0;e=c[t+5056>>2]|0;w=(i|0)/(e|0)|0;e=i-(u(w,e)|0)|0;i=c[t+5048>>2]|0;e=(u(i,e)|0)==(o|0);i=(u(w,i)|0)==(n|0);i=e?i:0;if((a[s+42>>0]|0)!=0?(k=c[m>>2]|0,((1<<k)+-1&(o|n)|0)==0):0)e=Ig(s,o>>k,n>>k)|0;else e=0;do if(i|e)l=12;else{if(f?a[s+41>>0]|0:0){l=12;break}e=b+18532|0}while(0);if((l|0)==12)e=(c[j>>2]|0)+796|0;k=c[e>>2]|0;e=o+-1|0;do if(Jg(c[v>>2]|0,o,n,e,n)|0?(w=c[t+5100>>2]|0,l=(u(n>>w,c[t+5088>>2]|0)|0)+(e>>w)|0,(c[(c[s+4396>>2]|0)+(l<<2)>>2]>>((c[m>>2]|0)-w<<1)|0)==(c[b+4>>2]|0)):0){j=c[v>>2]|0;f=c[j+172>>2]|0;e=e>>f;f=n>>f;if((e|0)<=-1)M(60650,60687,120,60707);i=c[j+176>>2]|0;if((e|0)>=(i|0))M(60650,60687,120,60707);if((f|0)<=-1)M(60711,60687,121,60707);if((f|0)<(c[j+180>>2]|0)){p=a[(c[j+164>>2]|0)+(((u(i,f)|0)+e|0)*3|0)+2>>0]|0;break}else M(60711,60687,121,60707)}else p=k;while(0);e=n+-1|0;do if(Jg(c[v>>2]|0,o,n,o,e)|0?(w=c[t+5100>>2]|0,n=(u(e>>w,c[t+5088>>2]|0)|0)+(o>>w)|0,(c[(c[s+4396>>2]|0)+(n<<2)>>2]>>((c[m>>2]|0)-w<<1)|0)==(c[b+4>>2]|0)):0){j=c[v>>2]|0;w=c[j+172>>2]|0;i=o>>w;e=e>>w;if((i|0)<=-1)M(60650,60687,120,60707);f=c[j+176>>2]|0;if((i|0)>=(f|0))M(60650,60687,120,60707);if((e|0)<=-1)M(60711,60687,121,60707);if((e|0)<(c[j+180>>2]|0)){q=a[(c[j+164>>2]|0)+(((u(f,e)|0)+i|0)*3|0)+2>>0]|0;break}else M(60711,60687,121,60707)}else q=k;while(0);i=c[t+5e3>>2]|0;e=((c[b+18504>>2]|0)+52+(p+1+q>>1)+(i<<1)|0)%(i+52|0)|0;p=e-i|0;c[b+18536>>2]=e;e=(c[s+28>>2]|0)+p+(c[r+748>>2]|0)+(c[b+18512>>2]|0)|0;i=c[t+5008>>2]|0;w=0-i|0;e=(e|0)<(w|0)?w:(e|0)<57?e:57;f=(c[s+32>>2]|0)+p+(c[r+752>>2]|0)+(c[b+18516>>2]|0)|0;f=(f|0)<(w|0)?w:(f|0)<57?f:57;do if((c[t+5012>>2]|0)==1){do if((e|0)>=30)if((e|0)>42){e=e+-6|0;break}else{e=c[480+(e+-30<<2)>>2]|0;break}while(0);if((f|0)>=30)if((f|0)>42){f=f+-6|0;break}else{f=c[480+(f+-30<<2)>>2]|0;break}}while(0);c[b+18540>>2]=e+i;c[b+18544>>2]=f+i;e=c[v>>2]|0;f=c[e+172>>2]|0;o=g>>f;i=h>>f;if((o|0)<=-1)M(60650,60687,120,60707);n=c[e+176>>2]|0;if((o|0)>=(n|0))M(60650,60687,120,60707);if((i|0)<=-1)M(60711,60687,121,60707);if((i|0)>=(c[e+180>>2]|0))M(60711,60687,121,60707);m=c[e+164>>2]|0;w=m+(((u(n,i)|0)+o|0)*3|0)|0;w=(d[w>>0]|d[w+1>>0]<<8)&7;w=(w>>>0>3?w:3)-f|0;e=1<<w;l=e+i|0;if((w|0)==31){w=b+18520|0;c[w>>2]=p;return}j=e+o|0;k=p&255;e=i;do{i=u(e,n)|0;f=o;do{a[m+((f+i|0)*3|0)+2>>0]=k;f=f+1|0}while((f|0)<(j|0));e=e+1|0}while((e|0)<(l|0));w=b+18520|0;c[w>>2]=p;return}function If(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;l=c[b+172>>2]|0;o=e>>l;m=f>>l;l=g-l|0;g=1<<l;n=g+m|0;if((l|0)!=31){j=g+o|0;k=b+176|0;l=b+164|0;i=(h&1)<<11&65535;g=m;do{h=o;do{m=(u(c[k>>2]|0,g)|0)+h|0;m=(c[l>>2]|0)+(m*3|0)|0;p=(d[m>>0]|d[m+1>>0]<<8)&-2049|i;a[m>>0]=p;a[m+1>>0]=p>>8;h=h+1|0}while((h|0)<(j|0));g=g+1|0}while((g|0)<(n|0))}g=c[b+152>>2]|0;i=e>>g;g=f>>g;if((i|0)<=-1)M(60650,60687,130,60707);h=c[b+156>>2]|0;if((i|0)>=(h|0))M(60650,60687,130,60707);if((g|0)<=-1)M(60711,60687,131,60707);if((g|0)<(c[b+160>>2]|0)){a[(c[b+144>>2]|0)+(((u(h,g)|0)+i|0)*24|0)+22>>0]=1;return}else M(60711,60687,131,60707)}function Jf(a){a=a|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=a+16|0;f=c[i>>2]<<1;c[i>>2]=f;h=a+20|0;j=(b[h>>1]|0)+1<<16>>16;b[h>>1]=j;if(j<<16>>16>-1?(e=a+4|0,g=c[e>>2]|0,(c[a+8>>2]|0)>>>0>g>>>0):0){b[h>>1]=-8;c[e>>2]=g+1;f=f|(d[g>>0]|0);c[i>>2]=f}e=c[a+12>>2]<<7;if(f>>>0<e>>>0){j=0;return j|0}c[i>>2]=f-e;j=1;return j|0}function Kf(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;m=hc;hc=hc+16|0;n=m;tg(a,b,c,d,e,f,g,h,i,j,k,l,n);ug(a,b,c,e,f,g,h,i,j,k,n);vg(c,g+e|0,h+f|0,j,k,n);hc=m;return}function Lf(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;l=c[b+172>>2]|0;o=e>>l;m=f>>l;l=g-l|0;g=1<<l;n=g+m|0;if((l|0)!=31){j=g+o|0;k=b+176|0;l=b+164|0;i=(h&1)<<10&65535;g=m;do{h=o;do{m=(u(c[k>>2]|0,g)|0)+h|0;m=(c[l>>2]|0)+(m*3|0)|0;p=(d[m>>0]|d[m+1>>0]<<8)&-1025|i;a[m>>0]=p;a[m+1>>0]=p>>8;h=h+1|0}while((h|0)<(j|0));g=g+1|0}while((g|0)<(n|0))}g=c[b+152>>2]|0;i=e>>g;g=f>>g;if((i|0)<=-1)M(60650,60687,130,60707);h=c[b+156>>2]|0;if((i|0)>=(h|0))M(60650,60687,130,60707);if((g|0)<=-1)M(60711,60687,131,60707);if((g|0)<(c[b+160>>2]|0)){a[(c[b+144>>2]|0)+(((u(h,g)|0)+i|0)*24|0)+22>>0]=1;return}else M(60711,60687,131,60707)}function Mf(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;j=a+16|0;e=c[j>>2]|0;if((e|0)<(b|0)){e=64-e|0;h=a+4|0;a:do if((e|0)>7){i=a+8|0;g=c[h>>2]|0;while(1){if(!g)break a;m=c[a>>2]|0;c[a>>2]=m+1;m=d[m>>0]|0;g=g+-1|0;c[h>>2]=g;f=e+-8|0;m=eB(m|0,0,f|0)|0;l=y()|0;n=i;l=c[n+4>>2]|l;k=i;c[k>>2]=c[n>>2]|m;c[k+4>>2]=l;if((e|0)<=15){e=f;break}else e=f}}while(0);e=64-e|0;c[j>>2]=e}m=a+8|0;k=m;l=c[k>>2]|0;k=c[k+4>>2]|0;n=dB(l|0,k|0,64-b|0)|0;y()|0;k=eB(l|0,k|0,b|0)|0;l=y()|0;c[m>>2]=k;c[m+4>>2]=l;c[j>>2]=e-b;return n|0}function Nf(a){a=a|0;var b=0,d=0,e=0;b=a+16|0;e=(c[b>>2]&-8|0)/8|0;c[a>>2]=(c[a>>2]|0)+(0-e);d=a+4|0;c[d>>2]=(c[d>>2]|0)+e;a=a+8|0;c[a>>2]=0;c[a+4>>2]=0;c[b>>2]=0;return}function Of(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if((e|0)<=0){n=e;return n|0}k=a+16|0;l=a+20|0;m=a+8|0;n=a+4|0;i=a+12|0;a=0;f=b[l>>1]|0;g=c[k>>2]|0;while(1){g=g<<1;c[k>>2]=g;f=f+1<<16>>16;b[l>>1]=f;if(f<<16>>16>-1?(j=c[n>>2]|0,(c[m>>2]|0)>>>0>j>>>0):0){b[l>>1]=-8;c[n>>2]=j+1;h=g|(d[j>>0]|0);c[k>>2]=h;f=-8}else h=g;g=c[i>>2]<<7;if(h>>>0<g>>>0){f=8;break}g=h-g|0;c[k>>2]=g;a=a+1|0;if((a|0)>=(e|0)){a=e;f=8;break}}if((f|0)==8)return a|0;return 0}function Pf(a,f){a=a|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;if((f|0)<9){if(!f){r=0;return r|0}j=a+16|0;g=c[j>>2]<<f;c[j>>2]=g;i=a+20|0;h=(e[i>>1]|0)+f|0;b[i>>1]=h;if((h&32768|0)==0?(k=a+4|0,l=c[k>>2]|0,(c[a+8>>2]|0)>>>0>l>>>0):0){c[k>>2]=l+1;q=h<<16>>16;r=(d[l>>0]|0)<<q;b[i>>1]=q+65528;g=r|g;c[j>>2]=g}q=c[a+12>>2]<<7;p=(g>>>0)/(q>>>0)|0;r=1<<f;r=(p|0)<(r|0)?p:r+-1|0;c[j>>2]=g-(u(r,q)|0);return r|0}p=a+16|0;g=c[p>>2]<<8;c[p>>2]=g;q=a+20|0;o=b[q>>1]|0;h=(o&65535)+8|0;i=h&65535;b[q>>1]=i;if(o+8<<16>>16<<16>>16>-1?(j=a+4|0,m=c[j>>2]|0,(c[a+8>>2]|0)>>>0>m>>>0):0){c[j>>2]=m+1;i=h<<16>>16;o=(d[m>>0]|0)<<i;i=i+65528&65535;b[q>>1]=i;g=o|g;c[p>>2]=g}o=c[a+12>>2]<<7;k=(g>>>0)/(o>>>0)|0;k=(k|0)<255?k:255;h=g-(u(k,o)|0)|0;c[p>>2]=h;n=a+8|0;m=a+4|0;l=f+-8|0;g=k;while(1){l=l+-1|0;k=g<<1;g=h<<1;c[p>>2]=g;i=i+1<<16>>16;b[q>>1]=i;if(i<<16>>16>-1?(r=c[m>>2]|0,(c[n>>2]|0)>>>0>r>>>0):0){b[q>>1]=-8;c[m>>2]=r+1;g=g|(d[r>>0]|0);c[p>>2]=g;i=-8}if(g>>>0<o>>>0){h=0;j=g}else{j=g-o|0;c[p>>2]=j;h=1}g=h|k;if(!l)break;else h=j}return g|0}function Qf(a,b,e,f,g,h,i){a=a|0;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;m=c[i+128>>2]|0;if(g){j=c[i+172>>2]|0;g=b+-1>>j;j=e>>j;if((g|0)<=-1)M(60650,60687,120,60707);k=c[i+176>>2]|0;if((g|0)>=(k|0))M(60650,60687,120,60707);if((j|0)<=-1)M(60711,60687,121,60707);if((j|0)>=(c[i+180>>2]|0))M(60711,60687,121,60707);l=(c[i+164>>2]|0)+(((u(k,j)|0)+g|0)*3|0)|0;if(!((d[l>>0]|d[l+1>>0]<<8)&1792))l=d[(c[i+204>>2]|0)+(f+-1)>>0]|0;else l=1}else l=1;if(h){j=c[i+172>>2]|0;g=b>>j;j=e+-1>>j;if((g|0)<=-1)M(60650,60687,120,60707);k=c[i+176>>2]|0;if((g|0)>=(k|0))M(60650,60687,120,60707);if((j|0)<=-1)M(60711,60687,121,60707);if((j|0)>=(c[i+180>>2]|0))M(60711,60687,121,60707);h=(c[i+164>>2]|0)+(((u(k,j)|0)+g|0)*3|0)|0;if(((d[h>>0]|d[h+1>>0]<<8)&1792)==0?(h=c[m+5040>>2]|0,(e>>h<<h|0)<(e|0)):0)j=d[(c[i+204>>2]|0)+(f-(c[m+5112>>2]|0))>>0]|0;else j=1}else j=1;if((l|0)==(j|0))if(l>>>0<2){c[a>>2]=0;c[a+4>>2]=1;c[a+8>>2]=26;return}else{c[a>>2]=l;c[a+4>>2]=(l+29&31)+2;c[a+8>>2]=((l+-1|0)%32|0)+2;return}c[a>>2]=l;c[a+4>>2]=j;if((l|0)!=0&(j|0)!=0){c[a+8>>2]=0;return}g=a+8|0;if((l|0)!=1&(j|0)!=1){c[g>>2]=1;return}else{c[g>>2]=26;return}}function Rf(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;m=(h?g|128:g)&255;j=f-(c[b+212>>2]|0)|0;k=1<<j;l=b+128|0;f=c[l>>2]|0;i=c[f+5108>>2]|0;e=(u(e>>i,c[f+5112>>2]|0)|0)+(d>>i)|0;if((j|0)==31)return;i=b+236|0;j=b+228|0;d=b+224|0;f=0;a:while(1){h=0;do{g=c[l>>2]|0;if((h|0)>=(c[g+5112>>2]|0)){g=10;break a}if((f|0)>=(c[g+5116>>2]|0)){g=11;break a}g=e+h+(u(c[i>>2]|0,f)|0)|0;if((g|0)>=(c[j>>2]|0)){g=12;break a}a[(c[d>>2]|0)+g>>0]=m;h=h+1|0}while((h|0)<(k|0));f=f+1|0;if((f|0)>=(k|0)){g=9;break}}if((g|0)==9)return;else if((g|0)==10)M(59088,60687,682,59112);else if((g|0)==11)M(59131,60687,683,59112);else if((g|0)==12)M(59156,60687,686,59112)}function Sf(d,e,f,g,h,i,j,k,l,m){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=d+18592|0;q=c[t>>2]|0;s=d+18548|0;r=d+18572|0;p=Ff(s,(c[r>>2]|0)+147|0)|0;u=d+16|0;v=d+26|0;n=(p&255)<<4&16|a[v>>0]&-17;a[v>>0]=n;if(!p){if(!(c[q+24>>2]|0)){n=c[r>>2]|0;if((j+i|0)!=12?(Ff(s,n+156+k|0)|0)!=0:0)n=3;else n=(Ff(s,n+160|0)|0)+1|0;a[v>>0]=a[v>>0]&-4|n&3;if((n|0)==2)p=2;else{p=n;o=15}}else{a[v>>0]=n&-4|1;p=1;o=15}if((o|0)==15){n=(c[q+332>>2]|0)+-1|0;a:do if((n|0)!=0?(Ff(s,(c[r>>2]|0)+154|0)|0)!=0:0){k=0;while(1){o=k+1|0;if((o|0)==(n|0))break a;if(!k)k=Ff(s,(c[r>>2]|0)+155|0)|0;else k=Jf(s)|0;if(!k){n=o;break}else k=o}}else n=0;while(0);a[u>>0]=n;sg(d,0,0,0);o=(Ff(s,(c[r>>2]|0)+152|0)|0)&255;a[v>>0]=o<<2&4|a[v>>0]&-5;if((p|0)==1){s=d+18584|0;s=c[s>>2]|0;t=c[t>>2]|0;v=d+18588|0;v=c[v>>2]|0;Kf(s,t,v,u,e,f,g,h,l,i,j,m);return}}o=(c[q+336>>2]|0)+-1|0;b:do if((o|0)!=0?(Ff(s,(c[r>>2]|0)+154|0)|0)!=0:0){k=0;while(1){n=k+1|0;if((n|0)==(o|0)){n=o;break b}if(!k)k=Ff(s,(c[r>>2]|0)+155|0)|0;else k=Jf(s)|0;if(!k)break;else k=n}}else n=0;while(0);a[d+17>>0]=n;if((p|0)==3&(a[q+374>>0]|0)!=0){b[d+22>>1]=0;b[d+24>>1]=0}else sg(d,0,0,1);k=(Ff(s,(c[r>>2]|0)+152|0)|0)&255;k=k<<3&8;n=a[v>>0]&-9}else{c:do if((c[(c[t>>2]|0)+808>>2]|0)>=2?(Ff(s,(c[r>>2]|0)+148|0)|0)!=0:0)if((c[(c[t>>2]|0)+808>>2]|0)>2){n=1;do{if(!(Jf(s)|0))break c;n=n+1|0}while((n|0)<((c[(c[t>>2]|0)+808>>2]|0)+-1|0))}else n=1;else n=0;while(0);k=a[v>>0]&31;n=(n&255)<<5&255}a[v>>0]=k|n;s=d+18584|0;s=c[s>>2]|0;t=c[t>>2]|0;v=d+18588|0;v=c[v>>2]|0;Kf(s,t,v,u,e,f,g,h,l,i,j,m);return}function Tf(b,e,f,g,h,i,j,k,l,m,n,o,p,q,r){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;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;B=b+18588|0;s=c[B>>2]|0;v=c[s+172>>2]|0;t=e>>v;if((t|0)<=-1)M(60650,60687,120,60707);C=(o|0)==1;D=(o|0)!=0;E=b+18548|0;F=b+18572|0;A=f;y=g;x=h;z=k;w=m;h=f>>v;while(1){v=c[s+128>>2]|0;g=c[s+176>>2]|0;if((t|0)>=(g|0)){h=4;break}if((h|0)<=-1){h=7;break}if((h|0)>=(c[s+180>>2]|0)){h=7;break}g=(c[s+164>>2]|0)+(((u(g,h)|0)+t|0)*3|0)|0;g=d[g>>0]|d[g+1>>0]<<8;f=(g&65535)>>>8&3;if((f&65535|0)!=(p|0)){h=9;break}h=(c[v+5104>>2]|0)<(z|0);if(!h?!(((l|0)>=(n|0)?1:(c[v+5100>>2]|0)>=(z|0))|D&(l|0)==0):0){g=5-z|0;if(g>>>0>=3){h=13;break}m=Ff(E,(c[F>>2]|0)+(g+20)|0)|0}else m=(C&(l|0)==0|h|(g&56)!=0&(f<<16>>16==1?(c[v+628>>2]|l|0)==0:0))&1;t=(m|0)!=0;if(t){h=c[s+252>>2]|0;g=e>>h;h=A>>h;if((g|0)<=-1){h=19;break}k=c[s+256>>2]|0;if((g|0)>=(k|0)){h=19;break}if((h|0)<=-1){h=22;break}if((h|0)>=(c[s+260>>2]|0)){h=22;break}k=(c[s+244>>2]|0)+((u(k,h)|0)+g)|0;a[k>>0]=1<<l|(d[k>>0]|0)}s=c[v+5012>>2]|0;if((z|0)>2)if(!s){s=-1;g=0;h=38}else h=27;else if((s|0)==3)h=27;else{s=-1;h=36}if((h|0)==27){h=0;if(q<<24>>24){g=l+16|0;s=Ff(E,(c[F>>2]|0)+g|0)|0;if((c[v+5012>>2]|0)==2?(z|0)==3|(m|0)==0:0)k=(Ff(E,(c[F>>2]|0)+g|0)|0)<<1|s;else k=s}else k=-1;if(r<<24>>24){g=l+16|0;s=Ff(E,(c[F>>2]|0)+g|0)|0;if((c[v+5012>>2]|0)==2?(z|0)==3|(m|0)==0:0)s=(Ff(E,(c[F>>2]|0)+g|0)|0)<<1|s}else s=-1;if((k|0)<0)h=36}if((h|0)==36){g=(z|0)==2;if(g&(l|0)==0){h=37;break}else h=38}if((h|0)==38)k=g&(l|0)>0?q&255:0;s=(s|0)<0?((z|0)==2&(l|0)>0?r&255:0):s;if(!t){h=41;break}g=z+-1|0;m=1<<g;h=m+e|0;m=m+A|0;l=l+1|0;q=k&255;r=s&255;Tf(b,e,A,e,A,i,j,g,l,0,n,o,p,q,r);Tf(b,h,A,e,A,i,j,g,l,1,n,o,p,q,r);Tf(b,e,m,e,A,i,j,g,l,2,n,o,p,q,r);s=c[B>>2]|0;k=c[s+172>>2]|0;t=h>>k;if((t|0)<=-1){h=4;break}else{x=A;y=e;e=h;A=m;z=g;w=3;h=m>>k}}if((h|0)==4)M(60650,60687,120,60707);else if((h|0)==7)M(60711,60687,121,60707);else if((h|0)==9)M(58666,58545,3843,58689);else if((h|0)==13)M(58709,58545,1825,58738);else if((h|0)==19)M(60650,60687,130,60707);else if((h|0)==22)M(60711,60687,131,60707);else if((h|0)==37)M(58766,58545,3910,58689);else if((h|0)==41){if(!(f<<16>>16==0|(k|l|s|0)!=0)){F=1;Uf(b,e,A,y,x,i,j,z,0,w,F,k,s)|0;return}F=Ff(E,(c[F>>2]|0)+((l|0)==0?15:14)|0)|0;Uf(b,e,A,y,x,i,j,z,0,w,F,k,s)|0;return}}function Uf(b,e,f,g,h,i,j,k,l,m,n,o,p){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;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;if((o|0)==-1)M(58803,58545,3561,58816);if((p|0)==-1)M(58836,58545,3562,58816);if((n|0)==-1)M(58849,58545,3563,58816);B=b+18588|0;s=c[B>>2]|0;y=c[s+128>>2]|0;H=y+5012|0;E=c[H>>2]|0;C=(E|0)==3;F=((C^1)<<31>>31)+k|0;F=(F|0)>2?F:2;t=p|o;q=b+33|0;a[q>>0]=0;a[q+1>>0]=0;a[q+2>>0]=0;a[q+3>>0]=0;q=c[s+172>>2]|0;l=e>>q;q=f>>q;if((l|0)<=-1)M(60650,60687,120,60707);r=c[s+176>>2]|0;if((l|0)>=(r|0))M(60650,60687,120,60707);if((q|0)<=-1)M(60711,60687,121,60707);if((q|0)>=(c[s+180>>2]|0))M(60711,60687,121,60707);z=(c[s+164>>2]|0)+(((u(r,q)|0)+l|0)*3|0)|0;z=((d[z>>0]|d[z+1>>0]<<8)&65535)>>>8&3;G=z&65535;A=(n|0)!=0;r=(t|0)!=0;do if(t|n|0){if((a[(c[s+136>>2]|0)+22>>0]|0)!=0?(v=b+18500|0,(c[v>>2]|0)==0):0){q=b+18548|0;l=b+18572|0;do if(!(Ff(q,(c[l>>2]|0)+139|0)|0)){q=0;l=0}else{if(Ff(q,(c[l>>2]|0)+140|0)|0)if(Ff(q,(c[l>>2]|0)+140|0)|0)if(Ff(q,(c[l>>2]|0)+140|0)|0)if(Ff(q,(c[l>>2]|0)+140|0)|0){l=(Vf(q,0)|0)+5|0;if(!l){q=0;l=0;break}}else l=4;else l=3;else l=2;else l=1;q=Jf(q)|0}while(0);c[v>>2]=1;c[b+18504>>2]=u(1-(q<<1)|0,l)|0;s=1}else s=0;if((r&(a[(c[b+18592>>2]|0)+756>>0]|0)!=0?(a[b+32>>0]|0)==0:0)?(w=b+18508|0,(c[w>>2]|0)==0):0){l=b+18548|0;q=b+18572|0;D=Ff(l,(c[q>>2]|0)+23|0)|0;r=c[(c[B>>2]|0)+136>>2]|0;if(!D){c[w>>2]=1;c[b+18512>>2]=0;l=0}else{if((d[r+4150>>0]|0)>1)l=Ff(l,(c[q>>2]|0)+24|0)|0;else l=0;c[w>>2]=1;c[b+18512>>2]=a[r+4151+l>>0];l=a[r+4157+l>>0]|0}c[b+18516>>2]=l}else x=32;if((x|0)==32?!s:0)break;Hf(b,e,f,i,j)}while(0);r=1<<k;x=1<<F;D=c[y+5016>>2]|0;w=c[y+5020>>2]|0;v=b+28|0;c[v>>2]=0;if(A)Wf(b,e,f,k,0)|0;Xf(b,e,f,i,j,r,0,G,A);if(!((k|0)>2|C)){if((m|0)!=3)return 0;l=(o&1|0)!=0;if(l)Wf(b,g,h,k,1)|0;if(c[H>>2]|0)Xf(b,(g|0)/(D|0)|0,(h|0)/(w|0)|0,(i|0)/(D|0)|0,(j|0)/(w|0)|0,r,1,G,l);l=(o&2|0)!=0;if(l)Wf(b,g,r+h|0,k,1)|0;q=(E|0)==2;if(q)Xf(b,(g|0)/(D|0)|0,((h|0)/(w|0)|0)+r|0,(i|0)/(D|0)|0,(j|0)/(w|0)|0,r,1,G,l);l=(p&1|0)!=0;if(l)Wf(b,g,h,k,2)|0;if(c[H>>2]|0)Xf(b,(g|0)/(D|0)|0,(h|0)/(w|0)|0,(i|0)/(D|0)|0,(j|0)/(w|0)|0,r,2,G,l);l=(p&2|0)!=0;if(l)Wf(b,g,x+h|0,k,2)|0;if(!q)return 0;Xf(b,(g|0)/(D|0)|0,((h|0)/(w|0)|0)+r|0,(i|0)/(D|0)|0,(j|0)/(w|0)|0,r,2,G,l);return 0}s=c[B>>2]|0;a:do if(A&(a[(c[s+136>>2]|0)+4147>>0]|0)!=0){do if(z<<16>>16!=1){q=c[s+232>>2]|0;l=e>>q;q=f>>q;if((l|0)<=-1)M(60650,60687,120,60707);r=c[s+236>>2]|0;if((l|0)>=(r|0))M(60650,60687,120,60707);if((q|0)<=-1)M(60711,60687,121,60707);if((q|0)<(c[s+240>>2]|0))if((a[(c[s+224>>2]|0)+((u(r,q)|0)+l)>>0]|0)<0)break;else{n=0;l=0;break a}else M(60711,60687,121,60707)}while(0);r=b+18548|0;s=b+18572|0;l=0;q=0;do{k=(Ff(r,(c[s>>2]|0)+(l+162)|0)|0)!=0;q=q+(k&1)|0;l=l+1|0}while(l>>>0<4&k);if(!q){n=1;l=0}else{n=1;l=1-((Ff(r,(c[s>>2]|0)+170|0)|0)<<1)<<q+-1}}else{n=0;l=0}while(0);c[v>>2]=l;l=(o&1|0)!=0;if(l)Wf(b,e,f,F,1)|0;if(c[H>>2]|0)Xf(b,(e|0)/(D|0)|0,(f|0)/(w|0)|0,(i|0)/(D|0)|0,(j|0)/(w|0)|0,x,1,G,l);t=(E|0)==2;if(t){l=(o&2|0)!=0;if(l)Wf(b,e,(w<<F)+f|0,F,1)|0;Xf(b,(e|0)/(D|0)|0,((f|0)/(w|0)|0)+x|0,(i|0)/(D|0)|0,((j|0)/(w|0)|0)+x|0,x,1,G,l)}if(n){r=b+18548|0;s=b+18572|0;l=0;q=0;do{o=(Ff(r,(c[s>>2]|0)+(l+166)|0)|0)!=0;q=q+(o&1)|0;l=l+1|0}while(l>>>0<4&o);if(q)l=1-((Ff(r,(c[s>>2]|0)+171|0)|0)<<1)<<q+-1;else l=0}else l=0;c[v>>2]=l;l=(p&1|0)!=0;if(l)Wf(b,e,f,F,2)|0;if(c[H>>2]|0)Xf(b,(e|0)/(D|0)|0,(f|0)/(w|0)|0,(i|0)/(D|0)|0,(j|0)/(w|0)|0,x,2,G,l);if(!t)return 0;l=(p&2|0)!=0;if(l)Wf(b,e,(w<<F)+f|0,F,2)|0;Xf(b,(e|0)/(D|0)|0,((f|0)/(w|0)|0)+x|0,(i|0)/(D|0)|0,((j|0)/(w|0)|0)+x|0,x,2,G,l);return 0}function Vf(a,e){a=a|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;k=a+16|0;l=a+20|0;m=a+8|0;n=a+4|0;o=a+12|0;p=e+31|0;i=0;f=b[l>>1]|0;g=c[k>>2]|0;while(1){g=g<<1;c[k>>2]=g;f=f+1<<16>>16;b[l>>1]=f;if(f<<16>>16>-1?(j=c[n>>2]|0,(c[m>>2]|0)>>>0>j>>>0):0){b[l>>1]=-8;c[n>>2]=j+1;h=g|(d[j>>0]|0);c[k>>2]=h;f=-8}else h=g;g=c[o>>2]<<7;if(h>>>0<g>>>0)break;g=h-g|0;c[k>>2]=g;if((e|0)==(p|0)){e=0;q=8;break}else{i=i+(1<<e)|0;e=e+1|0}}if((q|0)==8)return e|0;q=(Pf(a,e)|0)+i|0;return q|0}function Wf(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,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,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;ma=hc;hc=hc+160|0;y=ma+144|0;ha=ma+80|0;ia=ma+48|0;ja=ma+32|0;ka=ma+16|0;ga=ma;B=c[f+18588>>2]|0;A=c[B+128>>2]|0;z=c[B+136>>2]|0;l=c[B+172>>2]|0;k=g>>l;l=h>>l;if((k|0)<=-1)M(60650,60687,120,60707);m=c[B+176>>2]|0;if((k|0)>=(m|0))M(60650,60687,120,60707);if((l|0)<=-1)M(60711,60687,121,60707);if((l|0)>=(c[B+180>>2]|0))M(60711,60687,121,60707);v=(c[B+164>>2]|0)+(((u(m,l)|0)+k|0)*3|0)|0;v=((d[v>>0]|d[v+1>>0]<<8)&65535)>>>8&3;fa=(j|0)==0;if(fa?(ea=c[B+252>>2]|0,q=g>>ea,p=h>>ea,ea=i-ea|0,n=1<<ea,r=n+p|0,(ea|0)!=31):0){m=n+q|0;n=B+256|0;o=B+244|0;k=p;do{l=q;do{ea=(u(c[n>>2]|0,k)|0)+l|0;ea=(c[o>>2]|0)+ea|0;a[ea>>0]=a[ea>>0]|-128;l=l+1|0}while((l|0)<(m|0));k=k+1|0}while((k|0)<(r|0))}if(((a[z+21>>0]|0)!=0?(a[f+32>>0]|0)==0:0)?(c[z+4176>>2]|0)>=(i|0):0)k=(Ff(f+18548|0,(c[f+18572>>2]|0)+(fa?141:142)|0)|0)&255;else k=0;a[f+33+j>>0]=k;ea=f+36|0;a[ea>>0]=0;do if(v<<16>>16==1?(a[A+4987>>0]|0)!=0:0){k=f+33+j|0;if((a[k>>0]|0)==0?(a[f+32>>0]|0)==0:0){la=23;break}l=f+18572|0;m=f+18548|0;n=(j|0)!=0&1;da=(Ff(m,(c[l>>2]|0)+143+n|0)|0)&255;a[ea>>0]=da;if(!(da<<24>>24))da=k;else{a[f+37>>0]=Ff(m,(c[l>>2]|0)+145+n|0)|0;da=k}}else la=23;while(0);if((la|0)==23){a[ea>>0]=0;da=f+33+j|0}k=fa?2:0;if(!((a[da>>0]|0)==0?(a[f+32>>0]|0)==0:0))k=k|1;ca=f+18572|0;l=c[ca>>2]|0;q=l+25|0;m=i<<1;t=m+-1|0;if(fa){o=(i*3|0)+-6+(i+-1>>2)|0;p=i+1>>2}else{o=15;p=i+-2|0}s=(m|0)>1;if(s){n=f+18548|0;l=t;m=0;do{ba=(Ff(n,q+((m>>>p)+o)|0)|0)==0;l=ba?m:l;m=m+1|0}while((m|0)<(t|0)&(ba^1));r=l;l=c[ca>>2]|0}else r=t;q=l+43|0;if(fa){o=(i*3|0)+-6+(i+-1>>2)|0;p=i+1>>2}else{o=15;p=i+-2|0}if(s){n=f+18548|0;m=t;l=0;do{ba=(Ff(n,q+((l>>>p)+o)|0)|0)==0;m=ba?l:m;l=l+1|0}while((l|0)<(t|0)&(ba^1))}else m=t;l=(r>>1)+-1|0;if((r|0)>3)p=(Pf(f+18548|0,l)|0)+((r&1|2)<<l)|0;else p=r;l=(m>>1)+-1|0;if((m|0)>3)m=(Pf(f+18548|0,l)|0)+((m&1|2)<<l)|0;ba=v<<16>>16==0;if(ba){do if(fa){n=c[B+212>>2]|0;l=g>>n;n=h>>n;if((l|0)<=-1)M(60650,60687,120,60707);o=c[B+216>>2]|0;if((l|0)>=(o|0))M(60650,60687,120,60707);if((n|0)<=-1)M(60711,60687,121,60707);if((n|0)<(c[B+220>>2]|0)){w=0;x=a[(c[B+204>>2]|0)+((u(o,n)|0)+l)>>0]|0;break}else M(60711,60687,121,60707)}else{n=c[B+232>>2]|0;l=g>>n;n=h>>n;if((l|0)<=-1)M(60650,60687,120,60707);o=c[B+236>>2]|0;if((l|0)>=(o|0))M(60650,60687,120,60707);if((n|0)<=-1)M(60711,60687,121,60707);if((n|0)<(c[B+240>>2]|0)){w=j;x=a[(c[B+224>>2]|0)+((u(o,n)|0)+l)>>0]&63;break}else M(60711,60687,121,60707)}while(0);o=pg(i,x&255,w,A)|0;l=(o|0)==2;n=l?p:m;l=l?m:p}else{o=0;n=m;l=p}_=i+-2|0;$=qg(_,o)|0;aa=qg(2,o)|0;rg(y,l,n,o,i);Z=a[y+1>>0]|0;V=d[y>>0]|0;hB(ha|0,0,1<<_<<_|0)|0;W=f+14396+(j<<1)|0;b[W>>1]=0;X=f+18548|0;Y=(j|0)!=0&1;J=(o|0)!=0&1;K=(Z&255)+-1|0;L=A+4985|0;N=f+32|0;O=fa?42:43;P=(j|0)>0;Q=B+212|0;R=B+232|0;S=B+216|0;T=B+236|0;U=A+4986|0;H=z+11|0;I=B+220|0;E=A+4991|0;F=B+240|0;G=B+204|0;D=f+18580+k|0;C=B+224|0;k=1;B=V;t=0;l=0;a:while(1){q=a[$+(B<<1)>>0]|0;r=a[$+(B<<1)+1>>0]|0;if((B|0)<(V|0)&(B|0)!=0){n=q&255;o=r&255;m=o<<_;A=d[ha+(m+n)>>0]|0;A=A&1|A>>>1;if(!(Ff(X,(c[ca>>2]|0)+((fa?A:A+2|0)+61)|0)|0)){o=1;m=0}else{p=1;la=67}}else if((B|0)==0|(B|0)==(V|0)){m=r&255;p=0;n=q&255;o=m;m=m<<_;la=67}else{o=0;m=0}if((la|0)==67){la=0;m=ha+(n+-1+m)|0;if(q<<24>>24)a[m>>0]=a[m>>0]|1;m=ha+((o+-1<<_)+n)|0;if(!(r<<24>>24)){o=p;m=1}else{a[m>>0]=a[m>>0]|2;o=p;m=1}}do if(m){y=q&255;A=y<<2;r=r&255;z=r<<2;r=c[77072+(_<<6)+(Y<<5)+(J<<4)+(d[ha+((r<<_)+y)>>0]<<2)>>2]|0;y=(B|0)==(V|0);s=y?K:15;if(y){b[ia>>1]=1;a[ga>>0]=1;a[ja>>0]=Z;n=1}else n=0;if((s|0)>0){q=s;p=o;while(1){m=A+(d[aa+(q<<1)>>0]|0)|0;o=z+(d[aa+(q<<1)+1>>0]|0)|0;do if(a[L>>0]|0){if(a[N>>0]|0){m=O;break}if(a[da>>0]|0)m=O;else la=80}else la=80;while(0);if((la|0)==80){la=0;m=d[r+(m+(o<<i))>>0]|0}if(!(Ff(X,(c[ca>>2]|0)+(m+65)|0)|0))m=p;else{b[ia+(n<<1)>>1]=1;a[ga+n>>0]=1;a[ja+n>>0]=q;m=0;n=n+1|0}if((q|0)>1){q=q+-1|0;p=m}else break}}else m=o;do if((s|0)>-1){if(m|0){b[ia+(n<<1)>>1]=1;a[ga+n>>0]=1;a[ja+n>>0]=0;y=n+1|0;break}do if(a[L>>0]|0){if(a[N>>0]|0){m=O;break}if(a[da>>0]|0)m=O;else la=88}else la=88;while(0);if((la|0)==88){la=0;m=d[r+((z<<i)+A)>>0]|0}if(!(Ff(X,(c[ca>>2]|0)+(m+65)|0)|0)){y=n;break}b[ia+(n<<1)>>1]=1;a[ga+n>>0]=1;a[ja+n>>0]=0;y=n+1|0}else y=n;while(0);if(!y){m=t;break}s=(P|(B|0)==0?0:2)|(k|0)==0;q=(y|0)<8?y:8;v=(y|0)>0;do if(v){r=s<<2;if(P){p=0;n=-1;k=1;m=t;do{do if(p){o=l+1|0;if((l|0)<=0){m=l;la=101;break}if((m|0)==1){m=0;la=101;break}if((l|0)<2){m=o;la=101}else{l=o;m=3}}else{m=1;la=101}while(0);if((la|0)==101){la=0;l=m}m=Ff(X,(c[ca>>2]|0)+(m+r+125)|0)|0;if(!m){a[ga+p>>0]=0;k=k+((k+-1|0)>>>0<2&1)|0}else{k=ia+(p<<1)|0;b[k>>1]=(b[k>>1]|0)+1<<16>>16;n=(n|0)==-1?p:n;k=0}p=p+1|0}while((p|0)<(q|0))}else{p=0;n=-1;k=1;m=t;do{do if(p){o=l+1|0;if((l|0)<=0){m=l;la=111;break}if((m|0)==1){m=0;la=111;break}if((l|0)<2){m=o;la=111}else{l=o;m=3}}else{m=1;la=111}while(0);if((la|0)==111){la=0;l=m}m=Ff(X,(c[ca>>2]|0)+(m+r+109)|0)|0;if(!m){a[ga+p>>0]=0;k=k+((k+-1|0)>>>0<2&1)|0}else{k=ia+(p<<1)|0;b[k>>1]=(b[k>>1]|0)+1<<16>>16;n=(n|0)==-1?p:n;k=0}p=p+1|0}while((p|0)<(q|0))}if((n|0)==-1)break;x=Ff(X,(c[ca>>2]|0)+((P?s|4:s)+133)|0)|0;w=ia+(n<<1)|0;b[w>>1]=x+(e[w>>1]|0);a[ga+n>>0]=x}else{k=1;m=t}while(0);if(fa){o=c[Q>>2]|0;n=g>>o;o=h>>o;if((n|0)<=-1){la=120;break a}p=c[S>>2]|0;if((n|0)>=(p|0)){la=120;break a}if((o|0)<=-1){la=123;break a}if((o|0)>=(c[I>>2]|0)){la=123;break a}n=a[(c[G>>2]|0)+((u(p,o)|0)+n)>>0]|0}else{o=c[R>>2]|0;n=g>>o;o=h>>o;if((n|0)<=-1){la=127;break a}p=c[T>>2]|0;if((n|0)>=(p|0)){la=127;break a}if((o|0)<=-1){la=130;break a}if((o|0)>=(c[F>>2]|0)){la=130;break a}n=a[(c[C>>2]|0)+((u(p,o)|0)+n)>>0]&63}b:do if(!(a[N>>0]|0)){do if(ba){if(!(a[U>>0]|0))break;if((n|16)<<24>>24==26&(a[da>>0]|0)!=0){o=0;break b}}while(0);if(a[ea>>0]|0){o=0;break}o=((a[ja>>0]|0)-(a[ja+(y+-1)>>0]|0)|0)>3&1}else o=0;while(0);x=y+-1|0;if((y|0)>1){n=0;do{a[ka+n>>0]=Jf(X)|0;n=n+1|0}while((n|0)!=(x|0))}w=(o|0)!=0;if(w&(a[H>>0]|0)!=0)n=0;else n=(Jf(X)|0)&255;a[ka+x>>0]=n;if(!(a[E>>0]|0))n=0;else n=(d[D>>0]|0)>>>2&255;if(!v)break;v=0;s=1;o=0;do{t=b[ia+(v<<1)>>1]|0;do if(!(a[ga+v>>0]|0))r=0;else{p=-1;while(1){q=p+1|0;r=Jf(X)|0;if((p|0)>63){r=0;break}if(!r){la=151;break}else p=q}do if((la|0)==151){la=0;if((p|0)<3){r=(Pf(X,n)|0)+(q<<n)|0;break}else{r=p+-2|0;r=(Pf(X,r+n|0)|0)+((1<<r)+2<<n)|0;break}}while(0);p=(r+t|0)>(3<<n|0);q=n+1|0;if(!(a[E>>0]|0)){s=0;n=p?((q|0)<4?q:4):n;break}n=p?q:n;if(!s){s=0;break}p=a[D>>0]|0;q=(p&255)>>>2;if((r|0)>=(3<<q|0)){a[D>>0]=p+1<<24>>24;s=0;break}if(p<<24>>24==0|(r<<1|0)>=(1<<q|0)){s=0;break}a[D>>0]=p+-1<<24>>24;s=0}while(0);q=r+t|0;r=(a[ka+v>>0]|0)==0?q:0-(q&65535)|0;p=r&65535;do if(w&(a[H>>0]|0)!=0){o=q+o|0;if((v|0)!=(x|0)|(o&1|0)==0)break;p=0-r&65535}while(0);t=a[ja+v>>0]|0;r=A+(d[aa+(t<<1)>>0]|0)|0;t=z+(d[aa+(t<<1)+1>>0]|0)|0;b[f+2108+(j<<11)+(b[W>>1]<<1)>>1]=p;b[f+8252+(j<<11)+(b[W>>1]<<1)>>1]=r+(t<<i);b[W>>1]=(b[W>>1]|0)+1<<16>>16;v=v+1|0}while((v|0)!=(y|0))}else m=t;while(0);if((B|0)>0){B=B+-1|0;t=m}else{la=62;break}}if((la|0)==62){hc=ma;return 0}else if((la|0)==120)M(60650,60687,120,60707);else if((la|0)==123)M(60711,60687,121,60707);else if((la|0)==127)M(60650,60687,120,60707);else if((la|0)==130)M(60711,60687,121,60707);return 0}function Xf(d,e,f,g,h,i,j,k,l){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0;p=c[d+18588>>2]|0;q=c[p+128>>2]|0;r=(k|0)==0;if(!r)if(!(a[d+36>>0]|0))k=0;else k=(a[d+37>>0]|0)==0?1:2;else{do if(!j){m=c[p+212>>2]|0;k=e>>m;m=f>>m;if((k|0)<=-1)M(60650,60687,120,60707);n=c[p+216>>2]|0;if((k|0)>=(n|0))M(60650,60687,120,60707);if((m|0)<=-1)M(60711,60687,121,60707);if((m|0)<(c[p+220>>2]|0)){o=a[(c[p+204>>2]|0)+((u(n,m)|0)+k)>>0]|0;break}else M(60711,60687,121,60707)}else{k=u(c[q+5016>>2]|0,e)|0;n=u(c[q+5020>>2]|0,f)|0;m=c[p+232>>2]|0;k=k>>m;m=n>>m;if((k|0)<=-1)M(60650,60687,120,60707);n=c[p+236>>2]|0;if((k|0)>=(n|0))M(60650,60687,120,60707);if((m|0)<=-1)M(60711,60687,121,60707);if((m|0)<(c[p+240>>2]|0)){o=a[(c[p+224>>2]|0)+((u(n,m)|0)+k)>>0]&63;break}else M(60711,60687,121,60707)}while(0);m=(o&255)>34?1:o&255;Yf(p,e,f,m,i,j);do if(!(a[q+4986>>0]|0))k=0;else{if((a[d+32>>0]|0)==0?(a[d+33+j>>0]|0)==0:0){k=0;break}k=(m|16|0)==26}while(0);k=(m|0)==26&k?2:k&1}if(l){Zf(d,e,f,g,h,i,j,(a[d+33+j>>0]|0)!=0,r,k);return}if(!j)return;if(!(c[d+28>>2]|0))return;b[d+14396+(j<<1)>>1]=0;Zf(d,e,f,g,h,i,j,(a[d+33+j>>0]|0)!=0,r,0);return}function Yf(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,k=0,l=0;l=(g|0)==0;k=c[a+128>>2]|0;h=c[(l?a+40|0:a+44|0)>>2]|0;i=c[a+4+(g<<2)>>2]|0;j=(u(h,d)|0)+b|0;if((c[(l?k+4996|0:k+5004|0)>>2]|0)>8){cg(a,b,d,e,i+(j<<1)|0,h,f,g);return}else{dg(a,b,d,e,i+j|0,h,f,g);return}}function Zf(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|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;l=c[(c[a+18588>>2]|0)+128>>2]|0;if((c[((h|0)==0?l+4996|0:l+5004|0)>>2]|0)>8){_f(a,b,d,e,f,g,h,i,j,k);return}else{$f(a,b,d,e,f,g,h,i,j,k);return}}function _f(e,f,g,h,i,j,k,l,m,n){e=e|0;f=f|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;var o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=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,N=0,O=0;N=hc;hc=hc+4096|0;B=N;E=e+18588|0;p=c[E>>2]|0;q=c[p+128>>2]|0;A=c[p+136>>2]|0;switch(k|0){case 0:{o=e+18536|0;break}case 1:{o=e+18540|0;break}case 2:{o=e+18544|0;break}default:M(69335,58864,367,58879)}v=c[o>>2]|0;L=e+2104|0;h=c[L>>2]|0;C=(k|0)==0;I=c[(C?p+40|0:p+44|0)>>2]|0;K=(c[p+4+(k<<2)>>2]|0)+((u(I,g)|0)+f<<1)|0;J=c[(C?q+4996|0:q+5004|0)>>2]|0;i=c[p+172>>2]|0;f=f>>i;i=g>>i;if((f|0)<=-1)M(60650,60687,120,60707);o=c[p+176>>2]|0;if((f|0)>=(o|0))M(60650,60687,120,60707);if((i|0)<=-1)M(60711,60687,121,60707);if((i|0)>=(c[p+180>>2]|0))M(60711,60687,121,60707);D=(c[p+164>>2]|0)+(((u(o,i)|0)+f|0)*3|0)|0;D=((d[D>>0]|d[D+1>>0]<<8)&65535)>>>8&3;w=D&65535;x=(j|0)==4;D=x&(a[q+4984>>0]|0)!=0&D<<16>>16==0;a:do if(!(a[e+32>>0]|0)){s=(j|0)>1;if(s){o=j;i=0;while(1){i=i+1|0;if(o>>>0>3)o=o>>>1;else break}}else i=0;i=i+J|0;r=i+-5|0;if(!(a[q+636>>0]|0)){g=i+-9|0;p=1<<i+-10;o=c[880+(((v|0)%6|0)<<2)>>2]<<((v|0)/6|0);f=e+14396+(k<<1)|0;if((b[f>>1]|0)>0){i=0;do{z=(u(o,b[e+2108+(k<<11)+(i<<1)>>1]|0)|0)+p>>g;z=(z|0)<32767?z:32767;b[h+(b[e+8252+(k<<11)+(i<<1)>>1]<<1)>>1]=(z|0)>-32768?z:-32768;i=i+1|0}while((i|0)<(b[f>>1]|0))}}else{q=1<<i+-6;do if(!m)if((j|0)<32){i=k+3|0;break}else{i=k+1|0;break}else i=k;while(0);m=j+-4|0;switch(m>>>2|m<<30|0){case 0:{z=A+69+(i<<4)|0;break}case 1:{z=A+165+(i<<6)|0;break}case 3:{z=A+549+(i<<8)|0;break}case 7:{z=A+2085+(i<<10)|0;break}default:M(69335,58864,492,58879)}p=e+14396+(k<<1)|0;if((b[p>>1]|0)>0){g=(v|0)/6|0;o=c[880+(v-(g*6|0)<<2)>>2]|0;f=((q|0)<0)<<31>>31;i=0;do{v=b[e+8252+(k<<11)+(i<<1)>>1]|0;t=(u(o,d[z+v>>0]|0)|0)<<g;m=b[e+2108+(k<<11)+(i<<1)>>1]|0;m=YA(t|0,((t|0)<0)<<31>>31|0,m|0,((m|0)<0)<<31>>31|0)|0;m=ZA(m|0,y()|0,q|0,f|0)|0;m=cB(m|0,y()|0,r|0)|0;t=y()|0;O=(t|0)<0|(t|0)==0&m>>>0<32767;m=O?m:32767;t=O?t:0;O=(t|0)>-1|(t|0)==-1&m>>>0>4294934528;m=O?m:-32768;b[h+(v<<1)>>1]=m;i=i+1|0}while((i|0)<(b[p>>1]|0))}}g=(j|0)>0;if(!l){o=x&(w|k|0)==0;if(n|0)M(58907,58864,591,58879);if(a[A+4147>>0]|0){bg(e,h,j,j,o&1,K,I,J,k);break}i=c[e+18584>>2]|0;if(o){zc[c[i+412>>2]&31](K,h,I,J);break}switch(j|0){case 4:{zc[c[i+416>>2]&31](K,h,I,J);break a}case 8:{zc[c[i+420>>2]&31](K,h,I,J);break a}case 16:{zc[c[i+424>>2]&31](K,h,I,J);break a}default:{zc[c[i+428>>2]&31](K,h,I,J);break a}}}if(s){i=j;o=0;while(1)if(i>>>0>3){i=i>>>1;o=o+1|0}else break;f=o+6|0}else f=5;o=20-J|0;o=(o|0)>0?o:0;if(D)xc[c[(c[e+18584>>2]|0)+432>>2]&63](h,4);p=C?e+14404|0:B;do if(n){i=c[e+18584>>2]|0;if((n|0)==2){Ac[c[i+464>>2]&15](p,h,j,f,o);break}else{Ac[c[i+468>>2]&15](p,h,j,f,o);break}}else Ac[c[(c[e+18584>>2]|0)+472>>2]&15](p,h,j,f,o);while(0);if((!C?(F=e+28|0,c[F>>2]|0):0)?(H=c[(c[E>>2]|0)+128>>2]|0,G=c[H+5004>>2]|0,H=c[H+4996>>2]|0,g):0){i=0;do{f=u(i,j)|0;o=0;do{O=o+f|0;n=(u(c[e+14404+(O<<2)>>2]<<G>>H,c[F>>2]|0)|0)>>3;O=p+(O<<2)|0;c[O>>2]=n+(c[O>>2]|0);o=o+1|0}while((o|0)!=(j|0));i=i+1|0}while((i|0)!=(j|0))}Ac[c[(c[e+18584>>2]|0)+460>>2]&15](K,I,p,j,J);if(D){i=h+32|0;do{b[h>>1]=0;h=h+2|0}while((h|0)<(i|0))}}else{p=C?e+14404|0:B;o=e+14396+(k<<1)|0;if((b[o>>1]|0)>0){i=0;do{b[h+(b[e+8252+(k<<11)+(i<<1)>>1]<<1)>>1]=b[e+2108+(k<<11)+(i<<1)>>1]|0;i=i+1|0}while((i|0)<(b[o>>1]|0))}if(D)xc[c[(c[e+18584>>2]|0)+432>>2]&63](h,4);do if(n){i=c[e+18584>>2]|0;if((n|0)==2){yc[c[i+368>>2]&31](p,h,j);break}else{yc[c[i+372>>2]&31](p,h,j);break}}else yc[c[(c[e+18584>>2]|0)+364>>2]&31](p,h,j);while(0);if((!C?(s=e+28|0,c[s>>2]|0):0)?(r=c[(c[E>>2]|0)+128>>2]|0,t=c[r+5004>>2]|0,r=c[r+4996>>2]|0,(j|0)>0):0){i=0;do{f=u(i,j)|0;o=0;do{O=o+f|0;n=(u(c[e+14404+(O<<2)>>2]<<t>>r,c[s>>2]|0)|0)>>3;O=p+(O<<2)|0;c[O>>2]=n+(c[O>>2]|0);o=o+1|0}while((o|0)!=(j|0));i=i+1|0}while((i|0)!=(j|0))}Ac[c[(c[e+18584>>2]|0)+460>>2]&15](K,I,p,j,J);if(D){i=h+32|0;do{b[h>>1]=0;h=h+2|0}while((h|0)<(i|0))}}while(0);o=e+14396+(k<<1)|0;if((b[o>>1]|0)<=0){hc=N;return}i=c[L>>2]|0;h=0;do{b[i+(b[e+8252+(k<<11)+(h<<1)>>1]<<1)>>1]=0;h=h+1|0}while((h|0)<(b[o>>1]|0));hc=N;return}function $f(e,f,g,h,i,j,k,l,m,n){e=e|0;f=f|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;var o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=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,N=0;L=hc;hc=hc+4096|0;B=L;E=e+18588|0;p=c[E>>2]|0;q=c[p+128>>2]|0;A=c[p+136>>2]|0;switch(k|0){case 0:{o=e+18536|0;break}case 1:{o=e+18540|0;break}case 2:{o=e+18544|0;break}default:M(69335,58864,367,58879)}v=c[o>>2]|0;K=e+2104|0;h=c[K>>2]|0;C=(k|0)==0;I=c[(C?p+40|0:p+44|0)>>2]|0;J=(c[p+4+(k<<2)>>2]|0)+((u(I,g)|0)+f)|0;i=c[p+172>>2]|0;f=f>>i;i=g>>i;if((f|0)<=-1)M(60650,60687,120,60707);o=c[p+176>>2]|0;if((f|0)>=(o|0))M(60650,60687,120,60707);if((i|0)<=-1)M(60711,60687,121,60707);if((i|0)>=(c[p+180>>2]|0))M(60711,60687,121,60707);D=(c[p+164>>2]|0)+(((u(o,i)|0)+f|0)*3|0)|0;D=((d[D>>0]|d[D+1>>0]<<8)&65535)>>>8&3;w=D&65535;x=(j|0)==4;D=x&(a[q+4984>>0]|0)!=0&D<<16>>16==0;a:do if(!(a[e+32>>0]|0)){f=c[(C?q+4996|0:q+5004|0)>>2]|0;s=(j|0)>1;if(s){o=j;i=0;while(1){i=i+1|0;if(o>>>0>3)o=o>>>1;else break}}else i=0;i=i+f|0;r=i+-5|0;if(!(a[q+636>>0]|0)){g=i+-9|0;p=1<<i+-10;o=c[880+(((v|0)%6|0)<<2)>>2]<<((v|0)/6|0);f=e+14396+(k<<1)|0;if((b[f>>1]|0)>0){i=0;do{z=(u(o,b[e+2108+(k<<11)+(i<<1)>>1]|0)|0)+p>>g;z=(z|0)<32767?z:32767;b[h+(b[e+8252+(k<<11)+(i<<1)>>1]<<1)>>1]=(z|0)>-32768?z:-32768;i=i+1|0}while((i|0)<(b[f>>1]|0))}}else{q=1<<i+-6;do if(!m)if((j|0)<32){i=k+3|0;break}else{i=k+1|0;break}else i=k;while(0);m=j+-4|0;switch(m>>>2|m<<30|0){case 0:{z=A+69+(i<<4)|0;break}case 1:{z=A+165+(i<<6)|0;break}case 3:{z=A+549+(i<<8)|0;break}case 7:{z=A+2085+(i<<10)|0;break}default:M(69335,58864,492,58879)}p=e+14396+(k<<1)|0;if((b[p>>1]|0)>0){g=(v|0)/6|0;o=c[880+(v-(g*6|0)<<2)>>2]|0;f=((q|0)<0)<<31>>31;i=0;do{v=b[e+8252+(k<<11)+(i<<1)>>1]|0;t=(u(o,d[z+v>>0]|0)|0)<<g;m=b[e+2108+(k<<11)+(i<<1)>>1]|0;m=YA(t|0,((t|0)<0)<<31>>31|0,m|0,((m|0)<0)<<31>>31|0)|0;m=ZA(m|0,y()|0,q|0,f|0)|0;m=cB(m|0,y()|0,r|0)|0;t=y()|0;N=(t|0)<0|(t|0)==0&m>>>0<32767;m=N?m:32767;t=N?t:0;N=(t|0)>-1|(t|0)==-1&m>>>0>4294934528;m=N?m:-32768;b[h+(v<<1)>>1]=m;i=i+1|0}while((i|0)<(b[p>>1]|0))}}f=(j|0)>0;if(!l){o=x&(w|k|0)==0;if(n|0)M(58907,58864,591,58879);if(a[A+4147>>0]|0){ag(e,h,j,j,o&1,J,I,8,k);break}i=c[e+18584>>2]|0;if(o){yc[c[i+388>>2]&31](J,h,I);break}switch(j|0){case 4:{yc[c[i+392>>2]&31](J,h,I);break a}case 8:{yc[c[i+396>>2]&31](J,h,I);break a}case 16:{yc[c[i+400>>2]&31](J,h,I);break a}default:{yc[c[i+404>>2]&31](J,h,I);break a}}}if(s){i=j;o=0;while(1)if(i>>>0>3){i=i>>>1;o=o+1|0}else break;o=o+6|0}else o=5;if(D)xc[c[(c[e+18584>>2]|0)+432>>2]&63](h,4);p=C?e+14404|0:B;do if(n){i=c[e+18584>>2]|0;if((n|0)==2){Ac[c[i+464>>2]&15](p,h,j,o,12);break}else{Ac[c[i+468>>2]&15](p,h,j,o,12);break}}else Ac[c[(c[e+18584>>2]|0)+472>>2]&15](p,h,j,o,12);while(0);if((!C?(F=e+28|0,c[F>>2]|0):0)?(H=c[(c[E>>2]|0)+128>>2]|0,G=c[H+5004>>2]|0,H=c[H+4996>>2]|0,f):0){i=0;do{f=u(i,j)|0;o=0;do{N=o+f|0;n=(u(c[e+14404+(N<<2)>>2]<<G>>H,c[F>>2]|0)|0)>>3;N=p+(N<<2)|0;c[N>>2]=n+(c[N>>2]|0);o=o+1|0}while((o|0)!=(j|0));i=i+1|0}while((i|0)!=(j|0))}Ac[c[(c[e+18584>>2]|0)+456>>2]&15](J,I,p,j,8);if(D){i=h+32|0;do{b[h>>1]=0;h=h+2|0}while((h|0)<(i|0))}}else{p=C?e+14404|0:B;o=e+14396+(k<<1)|0;if((b[o>>1]|0)>0){i=0;do{b[h+(b[e+8252+(k<<11)+(i<<1)>>1]<<1)>>1]=b[e+2108+(k<<11)+(i<<1)>>1]|0;i=i+1|0}while((i|0)<(b[o>>1]|0))}if(D)xc[c[(c[e+18584>>2]|0)+432>>2]&63](h,4);do if(n){i=c[e+18584>>2]|0;if((n|0)==2){yc[c[i+368>>2]&31](p,h,j);break}else{yc[c[i+372>>2]&31](p,h,j);break}}else yc[c[(c[e+18584>>2]|0)+364>>2]&31](p,h,j);while(0);if((!C?(r=e+28|0,c[r>>2]|0):0)?(t=c[(c[E>>2]|0)+128>>2]|0,s=c[t+5004>>2]|0,t=c[t+4996>>2]|0,(j|0)>0):0){i=0;do{f=u(i,j)|0;o=0;do{N=o+f|0;n=(u(c[e+14404+(N<<2)>>2]<<s>>t,c[r>>2]|0)|0)>>3;N=p+(N<<2)|0;c[N>>2]=n+(c[N>>2]|0);o=o+1|0}while((o|0)!=(j|0));i=i+1|0}while((i|0)!=(j|0))}Ac[c[(c[e+18584>>2]|0)+456>>2]&15](J,I,p,j,8);if(D){i=h+32|0;do{b[h>>1]=0;h=h+2|0}while((h|0)<(i|0))}}while(0);o=e+14396+(k<<1)|0;if((b[o>>1]|0)<=0){hc=L;return}i=c[K>>2]|0;h=0;do{b[i+(b[e+8252+(k<<11)+(h<<1)>>1]<<1)>>1]=0;h=h+1|0}while((h|0)<(b[o>>1]|0));hc=L;return}function ag(a,b,d,e,f,g,h,i,j){a=a|0;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,p=0,q=0;m=hc;hc=hc+4096|0;l=c[a+18584>>2]|0;d=(j|0)==0;k=d?a+14404|0:m;j=20-i|0;a:do if((f|0)==1)zc[c[l+436>>2]&31](k,b,j,15);else switch(e|0){case 4:{zc[c[l+440>>2]&31](k,b,j,15);break a}case 8:{zc[c[l+444>>2]&31](k,b,j,15);break a}case 16:{zc[c[l+448>>2]&31](k,b,j,15);break a}default:{zc[c[l+452>>2]&31](k,b,j,15);break a}}while(0);if((!d?(n=a+28|0,c[n>>2]|0):0)?(p=c[(c[a+18588>>2]|0)+128>>2]|0,o=c[p+5004>>2]|0,p=c[p+4996>>2]|0,(e|0)>0):0){d=0;do{b=u(d,e)|0;j=0;do{f=j+b|0;q=(u(c[a+14404+(f<<2)>>2]<<o>>p,c[n>>2]|0)|0)>>3;f=k+(f<<2)|0;c[f>>2]=q+(c[f>>2]|0);j=j+1|0}while((j|0)!=(e|0));d=d+1|0}while((d|0)!=(e|0))}Ac[c[l+456>>2]&15](g,h,k,e,i);hc=m;return}function bg(a,b,d,e,f,g,h,i,j){a=a|0;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,p=0,q=0;m=hc;hc=hc+4096|0;l=c[a+18584>>2]|0;d=(j|0)==0;k=d?a+14404|0:m;j=20-i|0;a:do if((f|0)==1)zc[c[l+436>>2]&31](k,b,j,15);else switch(e|0){case 4:{zc[c[l+440>>2]&31](k,b,j,15);break a}case 8:{zc[c[l+444>>2]&31](k,b,j,15);break a}case 16:{zc[c[l+448>>2]&31](k,b,j,15);break a}default:{zc[c[l+452>>2]&31](k,b,j,15);break a}}while(0);if((!d?(n=a+28|0,c[n>>2]|0):0)?(p=c[(c[a+18588>>2]|0)+128>>2]|0,o=c[p+5004>>2]|0,p=c[p+4996>>2]|0,(e|0)>0):0){d=0;do{b=u(d,e)|0;j=0;do{f=j+b|0;q=(u(c[a+14404+(f<<2)>>2]<<o>>p,c[n>>2]|0)|0)>>3;f=k+(f<<2)|0;c[f>>2]=q+(c[f>>2]|0);j=j+1|0}while((j|0)!=(e|0));d=d+1|0}while((d|0)!=(e|0))}Ac[c[l+460>>2]&15](g,h,k,e,i);hc=m;return}function cg(f,g,h,i,j,k,l,m){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0;v=hc;hc=hc+848|0;r=v+516|0;t=v+256|0;n=r+4|0;c[n>>2]=f;p=r+8|0;c[p>>2]=l;o=r+12|0;c[o>>2]=m;c[r>>2]=t;c[r+16>>2]=g;c[r+20>>2]=h;if((l|0)>=65)M(59028,58937,379,59060);c[r+304>>2]=16843009;kg(r);lg(r);n=c[(c[n>>2]|0)+128>>2]|0;o=c[((c[o>>2]|0)==0?n+4996|0:n+5004|0)>>2]|0;n=c[r+316>>2]|0;q=c[p>>2]|0;a:do if((n|0)!=(q<<2|1|0)){if(!n){n=u(q,-2)|0;q=q<<1;if((n|0)>(q|0))break;p=1<<o+-1&65535;o=c[r>>2]|0;while(1){b[o+(n<<1)>>1]=p;if((n|0)<(q|0))n=n+1|0;else break a}}p=c[r+292>>2]|0;n=u(q,-2)|0;if(!(a[p+n>>0]|0))b[(c[r>>2]|0)+(n<<1)>>1]=b[r+320>>1]|0;n=n|1;o=q<<1;if((n|0)<=(o|0))while(1){if(!(a[p+n>>0]|0)){q=c[r>>2]|0;b[q+(n<<1)>>1]=b[q+(n+-1<<1)>>1]|0}if((n|0)<(o|0))n=n+1|0;else break}}while(0);n=f+128|0;o=c[n>>2]|0;do if(!(a[o+4989>>0]|0)){if(m|0?(c[o+5012>>2]|0)!=3:0)break;mg(o,t,l,m,i)}while(0);switch(i|0){case 0:{if((l|0)>1){n=l;o=0;while(1)if(n>>>0>3){n=n>>>1;o=o+1|0}else break;n=o+2|0}else n=1;if((l|0)<=0){hc=v;return}q=l+-1|0;r=e[t+(l+1<<1)>>1]|0;f=e[t+(~l<<1)>>1]|0;p=0;do{g=q-p|0;s=u(p,k)|0;h=e[t+(~p<<1)>>1]|0;p=p+1|0;i=u(p,f)|0;o=0;do{x=u(q-o|0,h)|0;m=o;o=o+1|0;w=u(o,r)|0;b[j+(m+s<<1)>>1]=x+l+w+(u(g,e[t+(o<<1)>>1]|0)|0)+i>>n}while((o|0)!=(l|0))}while((p|0)!=(l|0));hc=v;return}case 1:{ng(j,k,l,m,t);hc=v;return}default:{x=c[n>>2]|0;n=c[((m|0)==0?x+4996|0:x+5004|0)>>2]|0;do if(a[x+4986>>0]|0){p=c[f+172>>2]|0;o=g>>p;p=h>>p;if((o|0)<=-1)M(60650,60687,120,60707);q=c[f+176>>2]|0;if((o|0)>=(q|0))M(60650,60687,120,60707);if((p|0)<=-1)M(60711,60687,121,60707);if((p|0)<(c[f+180>>2]|0)){s=(c[f+164>>2]|0)+(((u(q,p)|0)+o|0)*3|0)|0;s=((d[s>>0]|d[s+1>>0]<<8)&2048)!=0;break}else M(60711,60687,121,60707)}else s=0;while(0);og(j,k,n,s,g,h,i,l,m,t);hc=v;return}}}function dg(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,v=0;r=hc;hc=hc+272|0;q=r+128|0;eg(b,e,f,j,k,q);l=b+128|0;m=c[l>>2]|0;do if(!(a[m+4989>>0]|0)){if(k|0?(c[m+5012>>2]|0)!=3:0)break;fg(m,q,j,k,g)}while(0);switch(g|0){case 0:{if((j|0)>1){l=j;m=0;while(1)if(l>>>0>3){l=l>>>1;m=m+1|0}else break;l=m+2|0}else l=1;if((j|0)<=0){hc=r;return}o=j+-1|0;b=d[q+(j+1)>>0]|0;e=d[q+~j>>0]|0;n=0;do{f=o-n|0;g=u(n,i)|0;k=d[q+~n>>0]|0;n=n+1|0;p=u(n,e)|0;m=0;do{v=u(o-m|0,k)|0;s=m;m=m+1|0;t=u(m,b)|0;a[h+(s+g)>>0]=v+j+t+(u(f,d[q+m>>0]|0)|0)+p>>l}while((m|0)!=(j|0))}while((n|0)!=(j|0));hc=r;return}case 1:{gg(h,i,j,k,q);hc=r;return}default:{v=c[l>>2]|0;l=c[((k|0)==0?v+4996|0:v+5004|0)>>2]|0;do if(a[v+4986>>0]|0){n=c[b+172>>2]|0;m=e>>n;n=f>>n;if((m|0)<=-1)M(60650,60687,120,60707);o=c[b+176>>2]|0;if((m|0)>=(o|0))M(60650,60687,120,60707);if((n|0)<=-1)M(60711,60687,121,60707);if((n|0)<(c[b+180>>2]|0)){p=(c[b+164>>2]|0)+(((u(o,n)|0)+m|0)*3|0)|0;p=((d[p>>0]|d[p+1>>0]<<8)&2048)!=0;break}else M(60711,60687,121,60707)}else p=0;while(0);hg(h,i,l,p,e,f,g,j,k,q);hc=r;return}}}function eg(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;m=hc;hc=hc+336|0;l=m;i=l+4|0;c[i>>2]=b;k=l+8|0;c[k>>2]=f;j=l+12|0;c[j>>2]=g;c[l>>2]=h;c[l+16>>2]=d;c[l+20>>2]=e;if((f|0)>=65)M(59028,58937,379,59060);c[l+304>>2]=16843009;ig(l);jg(l);b=c[(c[i>>2]|0)+128>>2]|0;e=c[l+316>>2]|0;d=c[k>>2]|0;f=d<<2|1;if((e|0)==(f|0)){hc=m;return}if(!e){hB((c[l>>2]|0)+(0-(d<<1))|0,1<<(c[((c[j>>2]|0)==0?b+4996|0:b+5004|0)>>2]|0)+-1&255|0,f|0)|0;hc=m;return}e=l+292|0;b=u(d,-2)|0;if(!(a[(c[e>>2]|0)+b>>0]|0)){a[(c[l>>2]|0)+b>>0]=a[l+320>>0]|0;d=c[k>>2]|0;b=u(d,-2)|0}b=b|1;if((b|0)>(d<<1|0)){hc=m;return}while(1){if(!(a[(c[e>>2]|0)+b>>0]|0)){d=c[l>>2]|0;a[d+b>>0]=a[d+(b+-1)>>0]|0;d=c[k>>2]|0}if((b|0)<(d<<1|0))b=b+1|0;else break}hc=m;return}function fg(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;l=hc;hc=hc+144|0;k=l;if((f|0)==4|(h|0)==1){hc=l;return}m=(h|0)<26?26-h|0:h+-26|0;h=(h|0)<10?10-h|0:h+-10|0;h=(m|0)<(h|0)?m:h;m=f+-8|0;switch(m>>>3|m<<29|0){case 0:{if((h|0)<=7){hc=l;return}break}case 1:{if((h|0)<=1){hc=l;return}break}case 3:{if((h|0)<=0){hc=l;return}break}case 7:{hc=l;return}default:M(76276,58937,841,58994)}if((f|0)==32&((g|0)==0&(a[b+4901>>0]|0)!=0)?(i=d[e>>0]|0,m=(d[e+64>>0]|0)+i-(d[e+32>>0]<<1)|0,j=1<<(c[b+512>>2]|0)+-5,(((m|0)<0?0-m|0:m)|0)<(j|0)):0){h=(d[e+-64>>0]|0)+i-(d[e+-32>>0]<<1)|0;h=(((h|0)<0?0-h|0:h)|0)<(j|0)}else h=0;j=k+64|0;k=u(f,-2)|0;a[j+k>>0]=a[e+k>>0]|0;k=f<<1;a[j+k>>0]=a[e+k>>0]|0;if(!h){h=1-k|0;if((h|0)<(k|0)){b=h;h=a[e+h>>0]|0;do{m=b;b=b+1|0;i=h;h=a[e+b>>0]|0;a[j+m>>0]=((h&255)+2+((i&255)<<1)+(d[e+(m+-1)>>0]|0)|0)>>>2}while((b|0)!=(k|0))}}else{b=a[e>>0]|0;a[j>>0]=b;b=b&255;g=(d[e+-64>>0]|0)-b|0;i=(d[e+64>>0]|0)-b|0;h=1;do{a[j+(0-h)>>0]=(((u(g,h)|0)+32|0)>>>6)+b;a[j+h>>0]=(((u(i,h)|0)+32|0)>>>6)+b;h=h+1|0}while((h|0)!=64)}m=0-k|0;fB(e+m|0,j+m|0,f<<2|1|0)|0;hc=l;return}function gg(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;l=(e|0)>1;if(l){h=e;i=0;while(1)if(h>>>0>3){h=h>>>1;i=i+1|0}else break;j=i+2|0}else j=1;k=(e|0)>0;if(k){i=0;h=0;do{m=i;i=i+1|0;h=h+(d[g+i>>0]|0)+(d[g+~m>>0]|0)|0}while((i|0)!=(e|0))}else h=0;j=h+e>>j;if(!((e|0)<32&(f|0)==0)){if(!k)return;i=j&255;h=0;do{hB(b+(u(h,c)|0)|0,i|0,e|0)|0;h=h+1|0}while((h|0)!=(e|0));return}a[b>>0]=((j<<1)+2+(d[g+-1>>0]|0)+(d[g+1>>0]|0)|0)>>>2;if(!l)return;i=(j*3|0)+2|0;h=1;do{m=h;h=h+1|0;a[b+m>>0]=(i+(d[g+h>>0]|0)|0)>>>2}while((h|0)!=(e|0));if(!l)return;i=(j*3|0)+2|0;h=1;do{a[b+(u(h,c)|0)>>0]=(i+(d[g+~h>>0]|0)|0)>>>2;h=h+1|0}while((h|0)!=(e|0));if(!l)return;j=j&255;k=c+1|0;h=e+-1|0;i=0;do{hB(b+(k+(u(i,c)|0))|0,j|0,h|0)|0;i=i+1|0}while((i|0)!=(h|0));return}function hg(b,e,f,g,h,i,j,k,l,m){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;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;w=hc;hc=hc+272|0;n=w;t=n+128|0;if((j|0)>=35)M(58920,58937,913,58952);if((j|0)<=1)M(58977,58937,914,58952);v=c[672+(j<<2)>>2]|0;h=(k|0)<0;if((j|0)>17){if(!h)fB(t|0,m|0,k+1|0)|0;h=j+-11|0;if(h>>>0<15){i=c[912+(h<<2)>>2]|0;h=u(v,k)|0;if((h|0)<-32){h=h>>5;while(1){a[t+h>>0]=a[m+(0-((u(h,i)|0)+128>>8))>>0]|0;if((h|0)<-1)h=h+1|0;else break}}}else if((k<<1|0)>(k|0))fB(n+(k+129)|0,m+(k+1)|0,k|0)|0;s=(k|0)>0;if(s){r=n+129|0;h=0;do{n=u(h,e)|0;h=h+1|0;p=u(h,v)|0;o=p>>5;p=p&31;q=32-p|0;if(!p)fB(b+n|0,r+o|0,k|0)|0;else{i=0;do{x=i+o|0;y=u(q,d[t+(x+1)>>0]|0)|0;a[b+(i+n)>>0]=(y+16+(u(p,d[t+(x+2)>>0]|0)|0)|0)>>>5;i=i+1|0}while((i|0)!=(k|0))}}while((h|0)!=(k|0))}if(!((k|0)<32&((j|0)==26&(l|0)==0)&(g^1)&s)){hc=w;return}o=m+1|0;i=1<<f;n=i+255|0;h=0;do{y=((d[m+~h>>0]|0)-(d[m>>0]|0)>>1)+(d[o>>0]|0)|0;a[b+(u(h,e)|0)>>0]=(y|0)<0?0:((y|0)<(i|0)?y:n)&255;h=h+1|0}while((h|0)!=(k|0));hc=w;return}if(!h){h=0;while(1){a[t+h>>0]=a[m+(0-h)>>0]|0;if((h|0)==(k|0))break;else h=h+1|0}}h=j+-11|0;if(h>>>0<15){i=c[912+(h<<2)>>2]|0;h=u(v,k)|0;if((h|0)<-32){h=h>>5;while(1){a[t+h>>0]=a[m+((u(h,i)|0)+128>>8)>>0]|0;if((h|0)<-1)h=h+1|0;else break}}}else{i=k<<1;if((i|0)>(k|0)){h=k;do{y=h;h=h+1|0;a[t+h>>0]=a[m+~y>>0]|0}while((h|0)!=(i|0))}}r=(k|0)>0;if(r){p=0;do{q=p;p=p+1|0;s=u(q,e)|0;n=0;do{o=n;n=n+1|0;i=u(n,v)|0;h=i>>5;i=i&31;if(!i)h=a[t+(p+h)>>0]|0;else{h=h+q|0;y=u(32-i|0,d[t+(h+1)>>0]|0)|0;h=(y+16+(u(i,d[t+(h+2)>>0]|0)|0)|0)>>>5&255}a[b+(o+s)>>0]=h}while((n|0)!=(k|0))}while((p|0)!=(k|0))}if(!((k|0)<32&((j|0)==10&(l|0)==0)&(g^1)&r)){hc=w;return}o=m+-1|0;i=1<<f;n=i+255|0;h=0;do{y=h;h=h+1|0;x=((d[m+h>>0]|0)-(d[m>>0]|0)>>1)+(d[o>>0]|0)|0;a[b+y>>0]=(x|0)<0?0:((x|0)<(i|0)?x:n)&255}while((h|0)!=(k|0));hc=w;return}function ig(b){b=b|0;var d=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,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;i=c[b+4>>2]|0;I=c[i+128>>2]|0;c[b+24>>2]=I;s=c[i+136>>2]|0;c[b+28>>2]=s;if(!(c[b+12>>2]|0)){D=1;E=1}else{D=c[I+5016>>2]|0;E=c[I+5020>>2]|0}c[b+296>>2]=D;c[b+300>>2]=E;F=u(c[b+16>>2]|0,D)|0;G=u(c[b+20>>2]|0,E)|0;h=c[I+5040>>2]|0;C=c[I+5056>>2]|0;if(!F){a[b+304>>0]=0;a[b+307>>0]=0;d=0}else d=F;if(!G){a[b+305>>0]=0;a[b+307>>0]=0;a[b+306>>0]=0;g=0}else g=G;H=c[b+8>>2]|0;f=(u(H,D)|0)+d|0;J=I+484|0;if((f|0)>=(c[J>>2]|0))a[b+306>>0]=0;z=d>>h;j=g>>h;A=d+-1>>h;B=f>>h;w=g+-1>>h;g=c[i+156>>2]|0;d=u(g,j)|0;f=c[i+144>>2]|0;x=e[f+((d+z|0)*24|0)>>1]|0;y=b+304|0;h=(a[y>>0]|0)==0;if(h)o=-1;else o=e[f+((d+A|0)*24|0)>>1]|0;r=b+305|0;k=(a[r>>0]|0)==0;if(k)p=-1;else p=e[f+(((u(g,w)|0)+z|0)*24|0)>>1]|0;t=b+306|0;n=(a[t>>0]|0)==0;if(n)q=-1;else q=e[f+(((u(g,w)|0)+B|0)*24|0)>>1]|0;v=b+307|0;m=(a[v>>0]|0)==0;if(m)l=-1;else l=e[f+(((u(g,w)|0)+A|0)*24|0)>>1]|0;d=u(j,C)|0;i=c[s+4384>>2]|0;j=c[i+(d+z<<2)>>2]|0;if(h)h=-1;else h=c[i+(d+A<<2)>>2]|0;if(k)g=-1;else g=c[i+((u(w,C)|0)+z<<2)>>2]|0;if(m)f=-1;else f=c[i+((u(w,C)|0)+A<<2)>>2]|0;if(n)d=-1;else d=c[i+(B+(u(w,C)|0)<<2)>>2]|0;if(!((o|0)==(x|0)&(h|0)==(j|0)))a[y>>0]=0;if(!((p|0)==(x|0)&(g|0)==(j|0)))a[r>>0]=0;if(!((l|0)==(x|0)&(f|0)==(j|0)))a[v>>0]=0;if(!((q|0)==(x|0)&(d|0)==(j|0)))a[t>>0]=0;G=(E+-1-G+(c[I+488>>2]|0)|0)/(E|0)|0;I=H<<1;c[b+308>>2]=(G|0)>(I|0)?I:G;J=(D+-1-F+(c[J>>2]|0)|0)/(D|0)|0;c[b+312>>2]=(J|0)>(I|0)?I:J;c[b+316>>2]=0;J=b+160|0;c[b+292>>2]=J;hB(J+(0-I)|0,0,H<<2|1|0)|0;return}function jg(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,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;v=b+8|0;if((c[v>>2]|0)>=33)M(59065,58937,587,59072);D=b+4|0;t=c[D>>2]|0;w=c[b+12>>2]|0;E=c[t+4+(w<<2)>>2]|0;t=c[((w|0)==0?t+40|0:t+44|0)>>2]|0;w=b+16|0;x=b+296|0;e=u(c[x>>2]|0,c[w>>2]|0)|0;y=b+20|0;z=b+300|0;r=u(c[z>>2]|0,c[y>>2]|0)|0;A=b+28|0;B=b+24|0;s=c[B>>2]|0;C=c[s+5100>>2]|0;C=(u(r>>C,c[s+5088>>2]|0)|0)+(e>>C)|0;C=c[(c[(c[A>>2]|0)+4396>>2]|0)+(C<<2)>>2]|0;e=c[b+308>>2]|0;a:do if((e|0)>0){m=b+304|0;n=b+316|0;o=b+320|0;p=b+292|0;h=e+-1|0;b:while(1){do if(a[m>>0]|0){s=c[A>>2]|0;i=(c[w>>2]|0)+-1|0;e=u(i,c[x>>2]|0)|0;r=c[B>>2]|0;k=c[r+5100>>2]|0;j=(c[y>>2]|0)+h|0;f=u(j,c[z>>2]|0)|0;k=(u(f>>k,c[r+5088>>2]|0)|0)+(e>>k)|0;k=(c[(c[s+4396>>2]|0)+(k<<2)>>2]|0)<=(C|0);if(!(a[s+20>>0]|0)){if(!k)break}else{l=c[D>>2]|0;s=c[l+172>>2]|0;g=e>>s;e=f>>s;if((g|0)<=-1){e=10;break b}f=c[l+176>>2]|0;if((g|0)>=(f|0)){e=10;break b}if((e|0)<=-1){e=13;break b}if((e|0)>=(c[l+180>>2]|0)){e=13;break b}s=(c[l+164>>2]|0)+(((u(f,e)|0)+g|0)*3|0)|0;if(!(k&((d[s>>0]|d[s+1>>0]<<8)&768)==0))break}if(!(c[n>>2]|0))a[o>>0]=a[E+((u(j,t)|0)+i)>>0]|0;s=~h;a[(c[p>>2]|0)+s>>0]=1;r=a[E+((c[w>>2]|0)+-1+(u(h+(c[y>>2]|0)|0,t)|0))>>0]|0;a[(c[b>>2]|0)+s>>0]=r;s=1-h+-1|0;a[(c[p>>2]|0)+s>>0]=1;r=a[E+((c[w>>2]|0)+-1+(u(h+-1+(c[y>>2]|0)|0,t)|0))>>0]|0;a[(c[b>>2]|0)+s>>0]=r;s=2-h+-1|0;a[(c[p>>2]|0)+s>>0]=1;r=a[E+((c[w>>2]|0)+-1+(u(h+-2+(c[y>>2]|0)|0,t)|0))>>0]|0;a[(c[b>>2]|0)+s>>0]=r;s=3-h+-1|0;a[(c[p>>2]|0)+s>>0]=1;r=a[E+((c[w>>2]|0)+-1+(u(h+-3+(c[y>>2]|0)|0,t)|0))>>0]|0;a[(c[b>>2]|0)+s>>0]=r;c[n>>2]=(c[n>>2]|0)+4}while(0);if((h|0)>3)h=h+-4|0;else break a}if((e|0)==10)M(60650,60687,120,60707);else if((e|0)==13)M(60711,60687,121,60707)}while(0);c:do if(a[b+307>>0]|0){s=c[A>>2]|0;j=(c[w>>2]|0)+-1|0;e=u(j,c[x>>2]|0)|0;r=c[B>>2]|0;h=c[r+5100>>2]|0;k=(c[y>>2]|0)+-1|0;f=u(k,c[z>>2]|0)|0;h=(u(f>>h,c[r+5088>>2]|0)|0)+(e>>h)|0;h=(c[(c[s+4396>>2]|0)+(h<<2)>>2]|0)<=(C|0);do if(!(a[s+20>>0]|0)){if(!h)break c}else{i=c[D>>2]|0;s=c[i+172>>2]|0;g=e>>s;e=f>>s;if((g|0)<=-1)M(60650,60687,120,60707);f=c[i+176>>2]|0;if((g|0)>=(f|0))M(60650,60687,120,60707);if((e|0)<=-1)M(60711,60687,121,60707);if((e|0)<(c[i+180>>2]|0)){s=(c[i+164>>2]|0)+(((u(f,e)|0)+g|0)*3|0)|0;if(h&((d[s>>0]|d[s+1>>0]<<8)&768)==0)break;else break c}else M(60711,60687,121,60707)}while(0);f=b+316|0;if(!(c[f>>2]|0)){e=E+((u(k,t)|0)+j)|0;a[b+320>>0]=a[e>>0]|0}else e=E+((u(k,t)|0)+j)|0;a[c[b>>2]>>0]=a[e>>0]|0;a[c[b+292>>2]>>0]=1;c[f>>2]=(c[f>>2]|0)+1}while(0);n=b+312|0;e=c[n>>2]|0;if((e|0)<=0)return;o=b+305|0;p=b+306|0;q=b+316|0;r=b+320|0;s=b+292|0;m=0;d:while(1){do if(a[((m|0)<(c[v>>2]|0)?o:p)>>0]|0){k=c[A>>2]|0;l=(c[w>>2]|0)+m|0;f=u(l,c[x>>2]|0)|0;h=c[B>>2]|0;j=c[h+5100>>2]|0;i=(c[y>>2]|0)+-1|0;g=u(i,c[z>>2]|0)|0;j=(u(g>>j,c[h+5088>>2]|0)|0)+(f>>j)|0;j=(c[(c[k+4396>>2]|0)+(j<<2)>>2]|0)<=(C|0);if(!(a[k+20>>0]|0)){if(!j)break}else{k=c[D>>2]|0;F=c[k+172>>2]|0;h=f>>F;f=g>>F;if((h|0)<=-1){e=40;break d}g=c[k+176>>2]|0;if((h|0)>=(g|0)){e=40;break d}if((f|0)<=-1){e=43;break d}if((f|0)>=(c[k+180>>2]|0)){e=43;break d}F=(c[k+164>>2]|0)+(((u(g,f)|0)+h|0)*3|0)|0;if(!(j&((d[F>>0]|d[F+1>>0]<<8)&768)==0))break}e=u(i,t)|0;if(!(c[q>>2]|0)){e=E+(e+l)|0;a[r>>0]=a[e>>0]|0}else e=E+(l+e)|0;F=m|1;a[(c[b>>2]|0)+F>>0]=a[e>>0]|0;a[(c[s>>2]|0)+F>>0]=1;e=a[E+(F+(c[w>>2]|0)+(u((c[y>>2]|0)+-1|0,t)|0))>>0]|0;F=F+1|0;a[(c[b>>2]|0)+F>>0]=e;a[(c[s>>2]|0)+F>>0]=1;F=a[E+((m|2)+(c[w>>2]|0)+(u((c[y>>2]|0)+-1|0,t)|0))>>0]|0;e=m|3;a[(c[b>>2]|0)+e>>0]=F;a[(c[s>>2]|0)+e>>0]=1;e=m|3;F=a[E+(e+(c[w>>2]|0)+(u((c[y>>2]|0)+-1|0,t)|0))>>0]|0;e=e+1|0;a[(c[b>>2]|0)+e>>0]=F;a[(c[s>>2]|0)+e>>0]=1;c[q>>2]=(c[q>>2]|0)+4;e=c[n>>2]|0}while(0);m=m+4|0;if((m|0)>=(e|0)){e=35;break}}if((e|0)==35)return;else if((e|0)==40)M(60650,60687,120,60707);else if((e|0)==43)M(60711,60687,121,60707)}function kg(b){b=b|0;var d=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,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;i=c[b+4>>2]|0;I=c[i+128>>2]|0;c[b+24>>2]=I;s=c[i+136>>2]|0;c[b+28>>2]=s;if(!(c[b+12>>2]|0)){D=1;E=1}else{D=c[I+5016>>2]|0;E=c[I+5020>>2]|0}c[b+296>>2]=D;c[b+300>>2]=E;F=u(c[b+16>>2]|0,D)|0;G=u(c[b+20>>2]|0,E)|0;h=c[I+5040>>2]|0;C=c[I+5056>>2]|0;if(!F){a[b+304>>0]=0;a[b+307>>0]=0;d=0}else d=F;if(!G){a[b+305>>0]=0;a[b+307>>0]=0;a[b+306>>0]=0;g=0}else g=G;H=c[b+8>>2]|0;f=(u(H,D)|0)+d|0;J=I+484|0;if((f|0)>=(c[J>>2]|0))a[b+306>>0]=0;z=d>>h;j=g>>h;A=d+-1>>h;B=f>>h;w=g+-1>>h;g=c[i+156>>2]|0;d=u(g,j)|0;f=c[i+144>>2]|0;x=e[f+((d+z|0)*24|0)>>1]|0;y=b+304|0;h=(a[y>>0]|0)==0;if(h)o=-1;else o=e[f+((d+A|0)*24|0)>>1]|0;r=b+305|0;k=(a[r>>0]|0)==0;if(k)p=-1;else p=e[f+(((u(g,w)|0)+z|0)*24|0)>>1]|0;t=b+306|0;n=(a[t>>0]|0)==0;if(n)q=-1;else q=e[f+(((u(g,w)|0)+B|0)*24|0)>>1]|0;v=b+307|0;m=(a[v>>0]|0)==0;if(m)l=-1;else l=e[f+(((u(g,w)|0)+A|0)*24|0)>>1]|0;d=u(j,C)|0;i=c[s+4384>>2]|0;j=c[i+(d+z<<2)>>2]|0;if(h)h=-1;else h=c[i+(d+A<<2)>>2]|0;if(k)g=-1;else g=c[i+((u(w,C)|0)+z<<2)>>2]|0;if(m)f=-1;else f=c[i+((u(w,C)|0)+A<<2)>>2]|0;if(n)d=-1;else d=c[i+(B+(u(w,C)|0)<<2)>>2]|0;if(!((o|0)==(x|0)&(h|0)==(j|0)))a[y>>0]=0;if(!((p|0)==(x|0)&(g|0)==(j|0)))a[r>>0]=0;if(!((l|0)==(x|0)&(f|0)==(j|0)))a[v>>0]=0;if(!((q|0)==(x|0)&(d|0)==(j|0)))a[t>>0]=0;G=(E+-1-G+(c[I+488>>2]|0)|0)/(E|0)|0;I=H<<1;c[b+308>>2]=(G|0)>(I|0)?I:G;J=(D+-1-F+(c[J>>2]|0)|0)/(D|0)|0;c[b+312>>2]=(J|0)>(I|0)?I:J;c[b+316>>2]=0;J=b+160|0;c[b+292>>2]=J;hB(J+(0-I)|0,0,H<<2|1|0)|0;return}function lg(e){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,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;x=e+8|0;if((c[x>>2]|0)>=33)M(59065,58937,587,59072);F=e+4|0;w=c[F>>2]|0;y=c[e+12>>2]|0;G=c[w+4+(y<<2)>>2]|0;w=c[((y|0)==0?w+40|0:w+44|0)>>2]|0;y=e+16|0;f=c[y>>2]|0;z=e+296|0;g=u(c[z>>2]|0,f)|0;A=e+20|0;h=c[A>>2]|0;B=e+300|0;r=u(c[B>>2]|0,h)|0;C=e+28|0;D=e+24|0;s=c[D>>2]|0;E=c[s+5100>>2]|0;E=(u(r>>E,c[s+5088>>2]|0)|0)+(g>>E)|0;E=c[(c[(c[C>>2]|0)+4396>>2]|0)+(E<<2)>>2]|0;g=c[e+308>>2]|0;a:do if((g|0)>0){p=e+304|0;q=e+316|0;r=e+320|0;s=e+292|0;o=g+-1|0;g=h;b:while(1){do if(a[p>>0]|0){n=c[C>>2]|0;k=f+-1|0;h=u(k,c[z>>2]|0)|0;j=c[D>>2]|0;m=c[j+5100>>2]|0;l=g+o|0;i=u(l,c[B>>2]|0)|0;m=(u(i>>m,c[j+5088>>2]|0)|0)+(h>>m)|0;m=(c[(c[n+4396>>2]|0)+(m<<2)>>2]|0)<=(E|0);if(!(a[n+20>>0]|0)){if(!m)break}else{n=c[F>>2]|0;H=c[n+172>>2]|0;j=h>>H;h=i>>H;if((j|0)<=-1){f=10;break b}i=c[n+176>>2]|0;if((j|0)>=(i|0)){f=10;break b}if((h|0)<=-1){f=13;break b}if((h|0)>=(c[n+180>>2]|0)){f=13;break b}H=(c[n+164>>2]|0)+(((u(i,h)|0)+j|0)*3|0)|0;if(!(m&((d[H>>0]|d[H+1>>0]<<8)&768)==0))break}if(!(c[q>>2]|0))b[r>>1]=b[G+((u(l,w)|0)+k<<1)>>1]|0;H=~o;a[(c[s>>2]|0)+H>>0]=1;f=b[G+((c[y>>2]|0)+-1+(u(o+(c[A>>2]|0)|0,w)|0)<<1)>>1]|0;b[(c[e>>2]|0)+(H<<1)>>1]=f;H=1-o+-1|0;a[(c[s>>2]|0)+H>>0]=1;f=b[G+((c[y>>2]|0)+-1+(u(o+-1+(c[A>>2]|0)|0,w)|0)<<1)>>1]|0;b[(c[e>>2]|0)+(H<<1)>>1]=f;H=2-o+-1|0;a[(c[s>>2]|0)+H>>0]=1;f=b[G+((c[y>>2]|0)+-1+(u(o+-2+(c[A>>2]|0)|0,w)|0)<<1)>>1]|0;b[(c[e>>2]|0)+(H<<1)>>1]=f;H=3-o+-1|0;a[(c[s>>2]|0)+H>>0]=1;f=c[y>>2]|0;g=c[A>>2]|0;n=b[G+(f+-1+(u(o+-3+g|0,w)|0)<<1)>>1]|0;b[(c[e>>2]|0)+(H<<1)>>1]=n;c[q>>2]=(c[q>>2]|0)+4}while(0);if((o|0)>3)o=o+-4|0;else{t=f;v=g;break a}}if((f|0)==10)M(60650,60687,120,60707);else if((f|0)==13)M(60711,60687,121,60707)}else{t=f;v=h}while(0);c:do if(a[e+307>>0]|0){H=c[C>>2]|0;l=t+-1|0;f=u(l,c[z>>2]|0)|0;t=c[D>>2]|0;i=c[t+5100>>2]|0;k=v+-1|0;g=u(k,c[B>>2]|0)|0;i=(u(g>>i,c[t+5088>>2]|0)|0)+(f>>i)|0;i=(c[(c[H+4396>>2]|0)+(i<<2)>>2]|0)<=(E|0);do if(!(a[H+20>>0]|0)){if(!i)break c}else{j=c[F>>2]|0;H=c[j+172>>2]|0;h=f>>H;f=g>>H;if((h|0)<=-1)M(60650,60687,120,60707);g=c[j+176>>2]|0;if((h|0)>=(g|0))M(60650,60687,120,60707);if((f|0)<=-1)M(60711,60687,121,60707);if((f|0)<(c[j+180>>2]|0)){H=(c[j+164>>2]|0)+(((u(g,f)|0)+h|0)*3|0)|0;if(i&((d[H>>0]|d[H+1>>0]<<8)&768)==0)break;else break c}else M(60711,60687,121,60707)}while(0);g=e+316|0;if(!(c[g>>2]|0)){f=G+((u(k,w)|0)+l<<1)|0;b[e+320>>1]=b[f>>1]|0}else f=G+((u(k,w)|0)+l<<1)|0;b[c[e>>2]>>1]=b[f>>1]|0;a[c[e+292>>2]>>0]=1;c[g>>2]=(c[g>>2]|0)+1}while(0);o=e+312|0;f=c[o>>2]|0;if((f|0)<=0)return;p=e+305|0;q=e+306|0;r=e+316|0;s=e+320|0;t=e+292|0;n=0;d:while(1){do if(a[((n|0)<(c[x>>2]|0)?p:q)>>0]|0){H=c[C>>2]|0;m=(c[y>>2]|0)+n|0;g=u(m,c[z>>2]|0)|0;v=c[D>>2]|0;k=c[v+5100>>2]|0;j=(c[A>>2]|0)+-1|0;h=u(j,c[B>>2]|0)|0;k=(u(h>>k,c[v+5088>>2]|0)|0)+(g>>k)|0;k=(c[(c[H+4396>>2]|0)+(k<<2)>>2]|0)<=(E|0);if(!(a[H+20>>0]|0)){if(!k)break}else{l=c[F>>2]|0;H=c[l+172>>2]|0;i=g>>H;g=h>>H;if((i|0)<=-1){f=40;break d}h=c[l+176>>2]|0;if((i|0)>=(h|0)){f=40;break d}if((g|0)<=-1){f=43;break d}if((g|0)>=(c[l+180>>2]|0)){f=43;break d}H=(c[l+164>>2]|0)+(((u(h,g)|0)+i|0)*3|0)|0;if(!(k&((d[H>>0]|d[H+1>>0]<<8)&768)==0))break}f=u(j,w)|0;if(!(c[r>>2]|0)){f=G+(f+m<<1)|0;b[s>>1]=b[f>>1]|0}else f=G+(m+f<<1)|0;H=n|1;b[(c[e>>2]|0)+(H<<1)>>1]=b[f>>1]|0;a[(c[t>>2]|0)+H>>0]=1;f=b[G+(H+(c[y>>2]|0)+(u((c[A>>2]|0)+-1|0,w)|0)<<1)>>1]|0;H=H+1|0;b[(c[e>>2]|0)+(H<<1)>>1]=f;a[(c[t>>2]|0)+H>>0]=1;H=b[G+((n|2)+(c[y>>2]|0)+(u((c[A>>2]|0)+-1|0,w)|0)<<1)>>1]|0;f=n|3;b[(c[e>>2]|0)+(f<<1)>>1]=H;a[(c[t>>2]|0)+f>>0]=1;f=n|3;H=b[G+(f+(c[y>>2]|0)+(u((c[A>>2]|0)+-1|0,w)|0)<<1)>>1]|0;f=f+1|0;b[(c[e>>2]|0)+(f<<1)>>1]=H;a[(c[t>>2]|0)+f>>0]=1;c[r>>2]=(c[r>>2]|0)+4;f=c[o>>2]|0}while(0);n=n+4|0;if((n|0)>=(f|0)){f=35;break}}if((f|0)==35)return;else if((f|0)==40)M(60650,60687,120,60707);else if((f|0)==43)M(60711,60687,121,60707)}function mg(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;m=hc;hc=hc+272|0;l=m;if((g|0)==4|(i|0)==1){hc=m;return}n=(i|0)<26?26-i|0:i+-26|0;i=(i|0)<10?10-i|0:i+-10|0;i=(n|0)<(i|0)?n:i;n=g+-8|0;switch(n>>>3|n<<29|0){case 0:{if((i|0)<=7){hc=m;return}break}case 1:{if((i|0)<=1){hc=m;return}break}case 3:{if((i|0)<=0){hc=m;return}break}case 7:{hc=m;return}default:M(76276,58937,841,58994)}if((g|0)==32&((h|0)==0&(a[d+4901>>0]|0)!=0)?(j=e[f>>1]|0,n=(e[f+128>>1]|0)+j-(e[f+64>>1]<<1)|0,k=1<<(c[d+512>>2]|0)+-5,(((n|0)<0?0-n|0:n)|0)<(k|0)):0){i=(e[f+-128>>1]|0)+j-(e[f+-64>>1]<<1)|0;i=(((i|0)<0?0-i|0:i)|0)<(k|0)}else i=0;k=l+128|0;l=u(g,-2)|0;b[k+(l<<1)>>1]=b[f+(l<<1)>>1]|0;l=g<<1;b[k+(l<<1)>>1]=b[f+(l<<1)>>1]|0;if(!i){i=1-l|0;if((i|0)<(l|0)){d=i;i=b[f+(i<<1)>>1]|0;do{n=d;d=d+1|0;j=i;i=b[f+(d<<1)>>1]|0;b[k+(n<<1)>>1]=((i&65535)+2+((j&65535)<<1)+(e[f+(n+-1<<1)>>1]|0)|0)>>>2}while((d|0)!=(l|0))}}else{d=b[f>>1]|0;b[k>>1]=d;d=d&65535;h=(e[f+-128>>1]|0)-d|0;j=(e[f+128>>1]|0)-d|0;i=1;do{b[k+(0-i<<1)>>1]=(((u(h,i)|0)+32|0)>>>6)+d;b[k+(i<<1)>>1]=(((u(j,i)|0)+32|0)>>>6)+d;i=i+1|0}while((i|0)!=64)}n=0-l|0;fB(f+(n<<1)|0,k+(n<<1)|0,g<<3|2|0)|0;hc=m;return}function ng(a,c,d,f,g){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;l=(d|0)>1;if(l){h=d;i=0;while(1)if(h>>>0>3){h=h>>>1;i=i+1|0}else break;j=i+2|0}else j=1;k=(d|0)>0;if(k){i=0;h=0;do{m=i;i=i+1|0;h=h+(e[g+(i<<1)>>1]|0)+(e[g+(~m<<1)>>1]|0)|0}while((i|0)!=(d|0))}else h=0;j=h+d>>j;if(!((d|0)<32&(f|0)==0)){if(!k)return;j=j&65535;h=0;do{k=u(h,c)|0;i=0;do{b[a+(i+k<<1)>>1]=j;i=i+1|0}while((i|0)!=(d|0));h=h+1|0}while((h|0)!=(d|0));return}b[a>>1]=((j<<1)+2+(e[g+-2>>1]|0)+(e[g+2>>1]|0)|0)>>>2;if(!l)return;i=(j*3|0)+2|0;h=1;do{m=h;h=h+1|0;b[a+(m<<1)>>1]=(i+(e[g+(h<<1)>>1]|0)|0)>>>2}while((h|0)!=(d|0));if(!l)return;i=(j*3|0)+2|0;h=1;do{b[a+((u(h,c)|0)<<1)>>1]=(i+(e[g+(~h<<1)>>1]|0)|0)>>>2;h=h+1|0}while((h|0)!=(d|0));if(!l)return;j=j&65535;i=1;do{k=u(i,c)|0;h=1;do{b[a+(h+k<<1)>>1]=j;h=h+1|0}while((h|0)!=(d|0));i=i+1|0}while((i|0)!=(d|0));return}function og(a,d,f,g,h,i,j,k,l,m){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0;x=hc;hc=hc+528|0;n=x;v=n+256|0;if((j|0)>=35)M(58920,58937,913,58952);if((j|0)<=1)M(58977,58937,914,58952);w=c[672+(j<<2)>>2]|0;h=(k|0)<0;if((j|0)>17){if(!h)fB(v|0,m|0,(k<<1)+2|0)|0;h=j+-11|0;if(h>>>0<15){i=c[912+(h<<2)>>2]|0;h=u(w,k)|0;if((h|0)<-32){h=h>>5;while(1){b[v+(h<<1)>>1]=b[m+(0-((u(h,i)|0)+128>>8)<<1)>>1]|0;if((h|0)<-1)h=h+1|0;else break}}}else{h=k<<1;if((h|0)>(k|0))fB(n+(k+129<<1)|0,m+(k+1<<1)|0,h|0)|0}t=(k|0)>0;if(t){s=n+258|0;n=k<<1;h=0;do{o=u(h,d)|0;h=h+1|0;q=u(h,w)|0;p=q>>5;q=q&31;r=32-q|0;if(!q)fB(a+(o<<1)|0,s+(p<<1)|0,n|0)|0;else{i=0;do{y=i+p|0;z=u(r,e[v+(y+1<<1)>>1]|0)|0;b[a+(i+o<<1)>>1]=(z+16+(u(q,e[v+(y+2<<1)>>1]|0)|0)|0)>>>5;i=i+1|0}while((i|0)!=(k|0))}}while((h|0)!=(k|0))}if(!((k|0)<32&((j|0)==26&(l|0)==0)&(g^1)&t)){hc=x;return}o=m+2|0;i=1<<f;n=i+65535|0;h=0;do{z=((e[m+(~h<<1)>>1]|0)-(e[m>>1]|0)>>1)+(e[o>>1]|0)|0;b[a+((u(h,d)|0)<<1)>>1]=(z|0)<0?0:((z|0)<(i|0)?z:n)&65535;h=h+1|0}while((h|0)!=(k|0));hc=x;return}if(!h){h=0;while(1){b[v+(h<<1)>>1]=b[m+(0-h<<1)>>1]|0;if((h|0)==(k|0))break;else h=h+1|0}}h=j+-11|0;if(h>>>0<15){i=c[912+(h<<2)>>2]|0;h=u(w,k)|0;if((h|0)<-32){h=h>>5;while(1){b[v+(h<<1)>>1]=b[m+((u(h,i)|0)+128>>8<<1)>>1]|0;if((h|0)<-1)h=h+1|0;else break}}}else{i=k<<1;if((i|0)>(k|0)){h=k;do{z=h;h=h+1|0;b[v+(h<<1)>>1]=b[m+(~z<<1)>>1]|0}while((h|0)!=(i|0))}}r=(k|0)>0;if(r){p=0;do{q=p;p=p+1|0;s=u(q,d)|0;n=0;do{o=n;n=n+1|0;i=u(n,w)|0;h=i>>5;i=i&31;if(!i)h=b[v+(p+h<<1)>>1]|0;else{h=h+q|0;z=u(32-i|0,e[v+(h+1<<1)>>1]|0)|0;h=(z+16+(u(i,e[v+(h+2<<1)>>1]|0)|0)|0)>>>5&65535}b[a+(o+s<<1)>>1]=h}while((n|0)!=(k|0))}while((p|0)!=(k|0))}if(!((k|0)<32&((j|0)==10&(l|0)==0)&(g^1)&r)){hc=x;return}o=m+-2|0;i=1<<f;n=i+65535|0;h=0;do{z=h;h=h+1|0;y=((e[m+(h<<1)>>1]|0)-(e[m>>1]|0)>>1)+(e[o>>1]|0)|0;b[a+(z<<1)>>1]=(y|0)<0?0:((y|0)<(i|0)?y:n)&65535}while((h|0)!=(k|0));hc=x;return}function pg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;switch(a|0){case 2:break;case 3:{f=2;break}default:return 0}if(((f|0)==2?d|0:0)?(c[e+5012>>2]|0)!=3:0)return 0;return ((b+-6|0)>>>0<9?2:(b+-22|0)>>>0<9&1)|0}function qg(a,b){a=a|0;b=b|0;var d=0;switch(b|0){case 0:{b=1120;d=4;break}case 1:{b=1088;d=4;break}case 2:{b=1056;d=4;break}default:b=0}if((d|0)==4)b=c[b+(a<<2)>>2]|0;return b|0}function rg(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;h=(c[976+(g*24|0)+(h<<2)>>2]|0)+((f<<h)+e<<1)|0;h=d[h>>0]|d[h+1>>0]<<8;a[b>>0]=h;a[b+1>>0]=h>>8;return}function sg(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=a+18548|0;e=a+18572|0;g=Ff(k,(c[e>>2]|0)+150|0)|0;d=Ff(k,(c[e>>2]|0)+150|0)|0;g=(g|0)==0;if(g)h=0;else h=Ff(k,(c[e>>2]|0)+151|0)|0;j=(d|0)==0;if(j)i=0;else i=Ff(k,(c[e>>2]|0)+151|0)|0;if(g)e=0;else{if(!h)d=-1;else d=Vf(k,1)|0;e=(Jf(k)|0)==0;e=(e?d+2|0:65534-d|0)&65535}if(j){k=0;j=a+18+(f<<2)|0;b[j>>1]=e;f=a+18+(f<<2)+2|0;b[f>>1]=k;return}if(!i)d=-1;else d=Vf(k,1)|0;k=(Jf(k)|0)==0;k=(k?d+2|0:65534-d|0)&65535;j=a+18+(f<<2)|0;b[j>>1]=e;f=a+18+(f<<2)+2|0;b[f>>1]=k;return}function tg(f,g,h,i,j,k,l,m,n,o,p,q,r){f=f|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;p=p|0;q=q|0;r=r|0;var s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=hc;hc=hc+80|0;z=B+64|0;t=B;v=B+60|0;y=l+j|0;w=m+k|0;m=c[h+172>>2]|0;l=j>>m;m=k>>m;if((l|0)<=-1)M(60650,60687,120,60707);s=c[h+176>>2]|0;if((l|0)>=(s|0))M(60650,60687,120,60707);if((m|0)<=-1)M(60711,60687,121,60707);if((m|0)>=(c[h+180>>2]|0))M(60711,60687,121,60707);s=(c[h+164>>2]|0)+(((u(s,m)|0)+l|0)*3|0)|0;switch(((d[s>>0]|d[s+1>>0]<<8)&65535)>>>8&3){case 2:{m=a[i+10>>0]|0;A=11;break}case 1:{l=i+10|0;m=a[l>>0]|0;if(m&16)A=11;break}default:{l=i+10|0;m=a[l>>0]|0}}if((A|0)==11){A=(m&255)>>>5&255;c[v>>2]=h;c[z>>2]=c[v>>2];Ag(f,g,z,h,j,k,y,w,n,o,p,q,A,t);A=t+(A*12|0)|0;b[r>>1]=b[A>>1]|0;b[r+2>>1]=b[A+2>>1]|0;b[r+4>>1]=b[A+4>>1]|0;b[r+6>>1]=b[A+6>>1]|0;b[r+8>>1]=b[A+8>>1]|0;b[r+10>>1]=b[A+10>>1]|0;if(a[r>>0]|0?(x=r+1|0,(p+o|0)==12&(a[x>>0]|0)!=0):0){a[r+3>>0]=-1;a[x>>0]=0}hc=B;return}switch(m&3){case 1:case 3:{x=a[i>>0]|0;a[r+2>>0]=x;a[r>>0]=1;A=e[i+4>>1]|0;v=e[i+2>>1]|0;Bg(f,g,h,j,k,n,y,w,o,p,0,x<<24>>24,q,z);x=z+(((d[l>>0]|0)>>>2&1)<<2)|0;x=e[x>>1]|e[x+2>>1]<<16;b[r+4>>1]=x+v;b[r+6>>1]=(x>>>16)+A;break}default:{a[r+2>>0]=-1;a[r>>0]=0}}if(!(a[l>>0]&2)){a[r+3>>0]=-1;a[r+1>>0]=0;hc=B;return}else{x=a[i+1>>0]|0;a[r+3>>0]=x;a[r+1>>0]=1;A=e[i+8>>1]|0;i=e[i+6>>1]|0;Bg(f,g,h,j,k,n,y,w,o,p,1,x<<24>>24,q,z);o=z+(((d[l>>0]|0)>>>3&1)<<2)|0;o=e[o>>1]|e[o+2>>1]<<16;b[r+8>>1]=o+i;b[r+10>>1]=(o>>>16)+A;hc=B;return}}function ug(e,f,g,h,i,j,k,l,m,n,o){e=e|0;f=f|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,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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;U=hc;hc=hc+49168|0;L=U+32768|0;T=U;A=U+49152|0;y=j+h|0;v=k+i|0;H=c[f+4>>2]|0;w=c[H+4>>2]|0;N=c[w+5016>>2]|0;O=c[w+5020>>2]|0;I=c[g+40>>2]|0;J=(u(I,v)|0)+y|0;J=(c[g+4>>2]|0)+(J<<d[g+16>>0])|0;P=c[g+44>>2]|0;R=(u(P,(v|0)/(O|0)|0)|0)+((y|0)/(N|0)|0)|0;Q=(c[g+8>>2]|0)+(R<<d[g+17>>0])|0;R=(c[g+12>>2]|0)+(R<<d[g+18>>0])|0;B=a[o>>0]|0;i=B&255;c[A>>2]=i;F=a[o+1>>0]|0;h=F&255;j=A+4|0;c[j>>2]=h;x=w+4996|0;K=c[x>>2]|0;z=w+5004|0;S=c[z>>2]|0;D=H+37|0;G=B<<24>>24==0;if(((!(F<<24>>24==0|(G|(a[D>>0]|0)!=0))?(b[o+4>>1]|0)==(b[o+8>>1]|0):0)?(b[o+6>>1]|0)==(b[o+10>>1]|0):0)?(c[f+920+(a[o+2>>0]<<2)>>2]|0)==(c[f+984+(a[o+3>>0]<<2)>>2]|0):0){c[j>>2]=0;h=0}E=g+324|0;F=e+4|0;t=g+128|0;s=0;j=i;a:while(1){do if(j|0){j=a[o+2+s>>0]|0;if(j<<24>>24>15){C=9;break a}p=mc[c[(c[e>>2]|0)+8>>2]&31](e,c[f+920+(s<<6)+(j<<24>>24<<2)>>2]|0)|0;if(!(c[p+100>>2]|0)){a[E>>0]=3;De(F,1012,0);break}q=o+4+(s<<2)|0;j=b[q>>1]|0;r=o+4+(s<<2)+2|0;i=b[r>>1]|0;k=L+(s<<13)|0;g=c[p+4>>2]|0;if((c[(c[t>>2]|0)+4996>>2]|0)>8)wg(e,w,j,i,y,v,k,l,g,c[p+40>>2]|0,m,n,K);else xg(e,w,j,i,y,v,k,l,g,c[p+40>>2]|0,m,n,K);j=b[q>>1]|0;i=b[r>>1]|0;k=T+(s<<13)|0;g=c[p+8>>2]|0;if((c[(c[t>>2]|0)+4996>>2]|0)>8){X=p+44|0;W=(m|0)/(N|0)|0;V=(n|0)/(O|0)|0;yg(e,w,j,i,y,v,k,l,g,c[X>>2]|0,W,V,S);yg(e,w,b[q>>1]|0,b[r>>1]|0,y,v,T+16384+(s<<13)|0,l,c[p+12>>2]|0,c[X>>2]|0,W,V,S);break}else{V=p+44|0;W=(m|0)/(N|0)|0;X=(n|0)/(O|0)|0;zg(e,w,j,i,y,v,k,l,g,c[V>>2]|0,W,X,S);zg(e,w,b[q>>1]|0,b[r>>1]|0,y,v,T+16384+(s<<13)|0,l,c[p+12>>2]|0,c[V>>2]|0,W,X,S);break}}while(0);j=s+1|0;if(j>>>0>=2)break;s=j;j=c[A+(j<<2)>>2]|0}if((C|0)==9){a[E>>0]=3;De(F,1012,0);hc=U;return}i=14-(c[x>>2]|0)|0;i=(i|0)>2?i:2;A=c[t>>2]|0;v=d[A+5156>>0]|0;q=14-(c[z>>2]|0)|0;q=(q|0)>2?q:2;A=d[A+5157>>0]|0;switch(c[f+24>>2]|0){case 1:{h=B<<24>>24==1&(h|0)==0;if(!(a[D>>0]|0)){if(!h){De(F,1011,0);a[E>>0]=3;hc=U;return}if((K|0)<9)Bc[c[e+176>>2]&15](J,I,L,l,m,n);else Cc[c[e+192>>2]&31](J,I,L,l,m,n,K);j=(m|0)/(N|0)|0;h=(n|0)/(O|0)|0;if((S|0)<9){X=e+176|0;Bc[c[X>>2]&15](Q,P,T,l,j,h);Bc[c[X>>2]&15](R,P,T+16384|0,l,j,h);hc=U;return}else{X=e+192|0;Cc[c[X>>2]&31](Q,P,T,l,j,h,S);Cc[c[X>>2]&31](R,P,T+16384|0,l,j,h,S);hc=U;return}}else{if(!h){De(F,1011,0);a[E>>0]=3;hc=U;return}X=a[o+2>>0]|0;k=i+(d[f+384>>0]|0)|0;r=q+(d[f+385>>0]|0)|0;j=b[f+450+(X<<1)>>1]|0;h=a[f+514+X>>0]<<v;g=b[f+546+(X<<2)>>1]|0;p=a[f+674+(X<<1)>>0]<<A;q=b[f+546+(X<<2)+2>>1]|0;i=a[f+674+(X<<1)+1>>0]<<A;if((K|0)<9)Ec[c[e+180>>2]&3](J,I,L,l,m,n,j,h,k);else Fc[c[e+196>>2]&7](J,I,L,l,m,n,j,h,k,K);j=(m|0)/(N|0)|0;h=(n|0)/(O|0)|0;if((S|0)<9){X=e+180|0;Ec[c[X>>2]&3](Q,P,T,l,j,h,g,p,r);Ec[c[X>>2]&3](R,P,T+16384|0,l,j,h,q,i,r);hc=U;return}else{X=e+196|0;Fc[c[X>>2]&7](Q,P,T,l,j,h,g,p,r,S);Fc[c[X>>2]&7](R,P,T+16384|0,l,j,h,q,i,r,S);hc=U;return}}}case 0:{j=B<<24>>24==1;h=(h|0)==1;if(j&h)if(!(a[H+38>>0]|0)){h=L+8192|0;p=e+172|0;if((K|0)<9)Cc[c[p>>2]&31](J,I,L,h,l,m,n);else Dc[c[e+188>>2]&31](J,I,L,h,l,m,n,K);i=T+8192|0;k=T+16384|0;g=T+24576|0;j=(m|0)/(N|0)|0;h=(n|0)/(O|0)|0;if((S|0)<9){Cc[c[p>>2]&31](Q,P,T,i,l,j,h);Cc[c[p>>2]&31](R,P,k,g,l,j,h);hc=U;return}else{X=e+188|0;Dc[c[X>>2]&31](Q,P,T,i,l,j,h,S);Dc[c[X>>2]&31](R,P,k,g,l,j,h,S);hc=U;return}}else{w=a[o+2>>0]|0;h=a[o+3>>0]|0;p=i+(d[f+384>>0]|0)|0;z=q+(d[f+385>>0]|0)|0;i=b[f+450+(w<<1)>>1]|0;k=a[f+514+w>>0]<<v;g=b[f+482+(h<<1)>>1]|0;j=a[f+530+h>>0]<<v;r=b[f+546+(w<<2)>>1]|0;s=a[f+674+(w<<1)>>0]<<A;t=b[f+546+(w<<2)+2>>1]|0;v=a[f+674+(w<<1)+1>>0]<<A;w=b[f+610+(h<<2)>>1]|0;x=a[f+706+(h<<1)>>0]<<A;y=b[f+610+(h<<2)+2>>1]|0;q=a[f+706+(h<<1)+1>>0]<<A;h=L+8192|0;if((K|0)<9)Gc[c[e+184>>2]&1](J,I,L,h,l,m,n,i,k,g,j,p);else Hc[c[e+200>>2]&1](J,I,L,h,l,m,n,i,k,g,j,p,K);i=T+8192|0;k=T+16384|0;g=T+24576|0;j=(m|0)/(N|0)|0;h=(n|0)/(O|0)|0;if((S|0)<9){X=e+184|0;Gc[c[X>>2]&1](Q,P,T,i,l,j,h,r,s,w,x,z);Gc[c[X>>2]&1](R,P,k,g,l,j,h,t,v,y,q,z);hc=U;return}else{X=e+200|0;Hc[c[X>>2]&1](Q,P,T,i,l,j,h,r,s,w,x,z,S);Hc[c[X>>2]&1](R,P,k,g,l,j,h,t,v,y,q,z,S);hc=U;return}}if(!(j|h)){De(F,1011,0);a[E>>0]=3;hc=U;return}t=G&1;if(!(a[H+38>>0]|0)){h=L+(t<<13)|0;if((K|0)<9)Bc[c[e+176>>2]&15](J,I,h,l,m,n);else Cc[c[e+192>>2]&31](J,I,h,l,m,n,K);i=T+(t<<13)|0;j=(m|0)/(N|0)|0;h=(n|0)/(O|0)|0;if((S|0)<9){X=e+176|0;Bc[c[X>>2]&15](Q,P,i,l,j,h);Bc[c[X>>2]&15](R,P,T+16384+(t<<13)|0,l,j,h);hc=U;return}else{X=e+192|0;Cc[c[X>>2]&31](Q,P,i,l,j,h,S);Cc[c[X>>2]&31](R,P,T+16384+(t<<13)|0,l,j,h,S);hc=U;return}}else{k=a[o+2+t>>0]|0;g=i+(d[f+384>>0]|0)|0;s=q+(d[f+385>>0]|0)|0;i=b[f+450+(t<<5)+(k<<1)>>1]|0;j=a[f+514+(t<<4)+k>>0]<<v;p=b[f+546+(t<<6)+(k<<2)>>1]|0;q=a[f+674+(t<<5)+(k<<1)>>0]<<A;r=b[f+546+(t<<6)+(k<<2)+2>>1]|0;k=a[f+674+(t<<5)+(k<<1)+1>>0]<<A;h=L+(t<<13)|0;if((K|0)<9)Ec[c[e+180>>2]&3](J,I,h,l,m,n,i,j,g);else Fc[c[e+196>>2]&7](J,I,h,l,m,n,i,j,g,K);i=T+(t<<13)|0;j=(m|0)/(N|0)|0;h=(n|0)/(O|0)|0;if((S|0)<9){X=e+180|0;Ec[c[X>>2]&3](Q,P,i,l,j,h,p,q,s);Ec[c[X>>2]&3](R,P,T+16384+(t<<13)|0,l,j,h,r,k,s);hc=U;return}else{X=e+196|0;Fc[c[X>>2]&7](Q,P,i,l,j,h,p,q,s,S);Fc[c[X>>2]&7](R,P,T+16384+(t<<13)|0,l,j,h,r,k,s,S);hc=U;return}}}default:M(59185,59218,494,59230)}}function vg(a,d,e,f,g,h){a=a|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;m=d>>2;j=e>>2;k=f>>2;l=g>>2;i=c[a+196>>2]|0;if((g|0)<=3)return;g=a+184|0;if((f|0)<=3)return;d=0;do{a=(u(d+j|0,i)|0)+m|0;e=0;do{f=(c[g>>2]|0)+((a+e|0)*12|0)|0;b[f>>1]=b[h>>1]|0;b[f+2>>1]=b[h+2>>1]|0;b[f+4>>1]=b[h+4>>1]|0;b[f+6>>1]=b[h+6>>1]|0;b[f+8>>1]=b[h+8>>1]|0;b[f+10>>1]=b[h+10>>1]|0;e=e+1|0}while((e|0)<(k|0));d=d+1|0}while((d|0)<(l|0));return}function wg(a,d,f,g,h,i,j,k,l,m,n,o,p){a=a|0;d=d|0;f=f|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;p=p|0;var q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;F=hc;hc=hc+20448|0;A=F+11360|0;x=F;y=f&3;z=g&3;E=(f>>2)+h|0;D=(g>>2)+i|0;r=14-(c[d+4996>>2]|0)|0;C=c[d+484>>2]|0;B=c[d+488>>2]|0;if(!((g|f)&3)){if(!((D|E|0)<0|(E+n|0)>(C|0)|(D+o|0)>(B|0))){h=l+((u(D,m)|0)+E<<1)|0;if((p|0)<9){Cc[c[a+220>>2]&31](j,k,h,m,n,o,A);hc=F;return}else{Dc[c[a+300>>2]&31](j,k,h,m,n,o,A,p);hc=F;return}}if((o|0)<=0){hc=F;return}d=C+-1|0;f=B+-1|0;if((n|0)<=0){hc=F;return}h=0;do{g=h+D|0;g=u((g|0)<0?0:(g|0)<(B|0)?g:f,m)|0;q=u(h,k)|0;i=0;do{A=i+E|0;b[j+(i+q<<1)>>1]=(e[l+(((A|0)<0?0:(A|0)<(C|0)?A:d)+g<<1)>>1]|0)<<r;i=i+1|0}while((i|0)!=(n|0));h=h+1|0}while((h|0)!=(o|0));hc=F;return}r=c[3728+(y<<2)>>2]|0;i=c[3744+(y<<2)>>2]|0;s=c[3728+(z<<2)>>2]|0;h=c[3744+(z<<2)>>2]|0;q=0-r|0;if(((D-s|E-r|0)>-1?(E+n+i|0)<(C|0):0)?(D+o+h|0)<(B|0):0){i=m;h=l+((u(D,m)|0)+E<<1)|0}else{d=0-s|0;g=h+o|0;if((g|0)>(d|0)?(t=i+n|0,v=C+-1|0,w=B+-1|0,(t|0)>(q|0)):0)do{i=d+D|0;i=u((i|0)<0?0:(i|0)<(B|0)?i:w,m)|0;f=((d+s|0)*80|0)+r|0;h=q;do{G=h+E|0;b[x+(f+h<<1)>>1]=b[l+(((G|0)<0?0:(G|0)<(C|0)?G:v)+i<<1)>>1]|0;h=h+1|0}while((h|0)!=(t|0));d=d+1|0}while((d|0)!=(g|0));i=80;h=x+((s*80|0)+r<<1)|0}if((p|0)<9)Cc[c[a+220+(y<<4)+(z<<2)>>2]&31](j,k,h,i,n,o,A);else Dc[c[a+300+(y<<4)+(z<<2)>>2]&31](j,k,h,i,n,o,A,p);hc=F;return}function xg(e,f,g,h,i,j,k,l,m,n,o,p,q){e=e|0;f=f|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;p=p|0;q=q|0;var r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;G=hc;hc=hc+14768|0;B=G+5680|0;y=G;z=g&3;A=h&3;F=(g>>2)+i|0;E=(h>>2)+j|0;s=14-(c[f+4996>>2]|0)|0;D=c[f+484>>2]|0;C=c[f+488>>2]|0;if(!((h|g)&3)){if(!((E|F|0)<0|(F+o|0)>(D|0)|(E+p|0)>(C|0))){i=m+((u(E,n)|0)+F)|0;if((q|0)<9){Cc[c[e+220>>2]&31](k,l,i,n,o,p,B);hc=G;return}else{Dc[c[e+300>>2]&31](k,l,i,n,o,p,B,q);hc=G;return}}if((p|0)<=0){hc=G;return}f=D+-1|0;g=C+-1|0;if((o|0)<=0){hc=G;return}i=0;do{h=i+E|0;h=u((h|0)<0?0:(h|0)<(C|0)?h:g,n)|0;r=u(i,l)|0;j=0;do{B=j+F|0;b[k+(j+r<<1)>>1]=(d[m+(((B|0)<0?0:(B|0)<(D|0)?B:f)+h)>>0]|0)<<s;j=j+1|0}while((j|0)!=(o|0));i=i+1|0}while((i|0)!=(p|0));hc=G;return}s=c[3728+(z<<2)>>2]|0;j=c[3744+(z<<2)>>2]|0;t=c[3728+(A<<2)>>2]|0;i=c[3744+(A<<2)>>2]|0;r=0-s|0;if(((E-t|F-s|0)>-1?(F+o+j|0)<(D|0):0)?(E+p+i|0)<(C|0):0){j=n;i=m+((u(E,n)|0)+F)|0}else{f=0-t|0;h=i+p|0;if((h|0)>(f|0)?(v=j+o|0,w=D+-1|0,x=C+-1|0,(v|0)>(r|0)):0)do{j=f+E|0;j=u((j|0)<0?0:(j|0)<(C|0)?j:x,n)|0;g=((f+t|0)*80|0)+s|0;i=r;do{H=i+F|0;a[y+(g+i)>>0]=a[m+(((H|0)<0?0:(H|0)<(D|0)?H:w)+j)>>0]|0;i=i+1|0}while((i|0)!=(v|0));f=f+1|0}while((f|0)!=(h|0));j=80;i=y+((t*80|0)+s)|0}if((q|0)<9)Cc[c[e+220+(z<<4)+(A<<2)>>2]&31](k,l,i,j,o,p,B);else Dc[c[e+300+(z<<4)+(A<<2)>>2]&31](k,l,i,j,o,p,B,q);hc=G;return}function yg(a,d,f,g,h,i,j,k,l,m,n,o,p){a=a|0;d=d|0;f=f|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;p=p|0;var q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=hc;q=hc=hc+31&-32;hc=hc+19808|0;z=q;q=q+9088|0;x=14-(c[d+5004>>2]|0)|0;y=c[d+5016>>2]|0;B=(c[d+484>>2]|0)/(y|0)|0;w=c[d+5020>>2]|0;A=(c[d+488>>2]|0)/(w|0)|0;f=u(2/(y|0)|0,f)|0;g=u(2/(w|0)|0,g)|0;t=f&7;v=g&7;y=((h|0)/(y|0)|0)+(f>>3)|0;w=((i|0)/(w|0)|0)+(g>>3)|0;if(!((g|f)&7)){if((y|0)>-1?!((w|0)<0|(y+n|0)>(B|0)|(w+o|0)>(A|0)):0){d=l+((u(w,m)|0)+y<<1)|0;if((p|0)<9){Ec[c[a+204>>2]&3](j,k,d,m,n,o,0,0,0);hc=C;return}else{Fc[c[a+284>>2]&7](j,k,d,m,n,o,0,0,0,p);hc=C;return}}if((o|0)<=0){hc=C;return}g=B+-1|0;h=A+-1|0;if((n|0)<=0){hc=C;return}f=0;do{i=f+w|0;i=u((i|0)<0?0:(i|0)<(A|0)?i:h,m)|0;q=u(f,k)|0;d=0;do{p=d+y|0;b[j+(d+q<<1)>>1]=(e[l+(((p|0)<0?0:(p|0)<(B|0)?p:g)+i<<1)>>1]|0)<<x;d=d+1|0}while((d|0)!=(n|0));f=f+1|0}while((f|0)!=(o|0));hc=C;return}if(((y|0)>0?(y+n|0)<=(B+-2|0)&(w|0)>0:0)?(w+o|0)<=(A+-2|0):0){h=l+((u(w,m)|0)+y<<1)|0;d=m}else{if((o|0)>-3?(r=B+-1|0,s=A+-1|0,(n|0)>-3):0){f=-1;while(1){h=f+w|0;h=u((h|0)<0?0:(h|0)<(A|0)?h:s,m)|0;g=(f*80|0)+80|0;d=-1;do{i=d+y|0;x=d;d=d+1|0;b[q+(g+d<<1)>>1]=b[l+(((i|0)<0?0:(i|0)<(B|0)?i:r)+h<<1)>>1]|0}while((x|0)<=(n|0));if((f|0)>(o|0))break;else f=f+1|0}}h=q+162|0;d=80}f=(t|0)!=0;g=(v|0)!=0;do if(f&g)if((p|0)<9){Fc[c[a+216>>2]&7](j,k,h,d,n,o,t,v,z,p);break}else{Fc[c[a+296>>2]&7](j,k,h,d,n,o,t,v,z,p);break}else{if(f)if((p|0)<9){Fc[c[a+208>>2]&7](j,k,h,d,n,o,t,v,z,p);break}else{Fc[c[a+288>>2]&7](j,k,h,d,n,o,t,v,z,p);break}if(!g)M(76276,59218,270,59264);if((p|0)<9){Fc[c[a+212>>2]&7](j,k,h,d,n,o,0,v,z,p);break}else{Fc[c[a+292>>2]&7](j,k,h,d,n,o,0,v,z,p);break}}while(0);hc=C;return}function zg(e,f,g,h,i,j,k,l,m,n,o,p,q){e=e|0;f=f|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;p=p|0;q=q|0;var r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=hc;r=hc=hc+31&-32;hc=hc+14448|0;A=r;r=r+9088|0;y=14-(c[f+5004>>2]|0)|0;z=c[f+5016>>2]|0;C=(c[f+484>>2]|0)/(z|0)|0;x=c[f+5020>>2]|0;B=(c[f+488>>2]|0)/(x|0)|0;g=u(2/(z|0)|0,g)|0;h=u(2/(x|0)|0,h)|0;v=g&7;w=h&7;z=((i|0)/(z|0)|0)+(g>>3)|0;x=((j|0)/(x|0)|0)+(h>>3)|0;if(!((h|g)&7)){if((z|0)>-1?!((x|0)<0|(z+o|0)>(C|0)|(x+p|0)>(B|0)):0){f=m+((u(x,n)|0)+z)|0;if((q|0)<9){Ec[c[e+204>>2]&3](k,l,f,n,o,p,0,0,0);hc=D;return}else{Fc[c[e+284>>2]&7](k,l,f,n,o,p,0,0,0,q);hc=D;return}}if((p|0)<=0){hc=D;return}h=C+-1|0;i=B+-1|0;if((o|0)<=0){hc=D;return}g=0;do{j=g+x|0;j=u((j|0)<0?0:(j|0)<(B|0)?j:i,n)|0;r=u(g,l)|0;f=0;do{q=f+z|0;b[k+(f+r<<1)>>1]=(d[m+(((q|0)<0?0:(q|0)<(C|0)?q:h)+j)>>0]|0)<<y;f=f+1|0}while((f|0)!=(o|0));g=g+1|0}while((g|0)!=(p|0));hc=D;return}if(((z|0)>0?(z+o|0)<=(C+-2|0)&(x|0)>0:0)?(x+p|0)<=(B+-2|0):0){i=m+((u(x,n)|0)+z)|0;f=n}else{if((p|0)>-3?(s=C+-1|0,t=B+-1|0,(o|0)>-3):0){g=-1;while(1){i=g+x|0;i=u((i|0)<0?0:(i|0)<(B|0)?i:t,n)|0;h=(g*80|0)+80|0;f=-1;do{j=f+z|0;y=f;f=f+1|0;a[r+(h+f)>>0]=a[m+(((j|0)<0?0:(j|0)<(C|0)?j:s)+i)>>0]|0}while((y|0)<=(o|0));if((g|0)>(p|0))break;else g=g+1|0}}i=r+81|0;f=80}g=(v|0)!=0;h=(w|0)!=0;do if(g&h)if((q|0)<9){Fc[c[e+216>>2]&7](k,l,i,f,o,p,v,w,A,q);break}else{Fc[c[e+296>>2]&7](k,l,i,f,o,p,v,w,A,q);break}else{if(g)if((q|0)<9){Fc[c[e+208>>2]&7](k,l,i,f,o,p,v,w,A,q);break}else{Fc[c[e+288>>2]&7](k,l,i,f,o,p,v,w,A,q);break}if(!h)M(76276,59218,270,59264);if((q|0)<9){Fc[c[e+212>>2]&7](k,l,i,f,o,p,0,w,A,q);break}else{Fc[c[e+292>>2]&7](k,l,i,f,o,p,0,w,A,q);break}}while(0);hc=D;return}function Ag(d,e,f,g,h,i,j,k,l,m,n,o,p,q){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;y=hc;w=hc=hc+31&-32;hc=hc+32|0;v=w+8|0;x=w+4|0;A=w;w=w+16|0;z=(l|0)==8?(c[(c[g+136>>2]|0)+4136>>2]|0)>2:0;t=z?l:n;s=z?l:m;r=z?i:k;j=z?h:j;u=p+1|0;c[A>>2]=c[f>>2];c[v>>2]=c[A>>2];k=Gg(v,g,h,i,l,j,r,z&1,s,t,z?0:o,q,u)|0;c[x>>2]=k;if((k|0)>(p|0))f=e+24|0;else{Dg(d,g,e,j,r,s,t,0,0,v,w);n=a[w>>0]|0;m=w+1|0;a[m>>0]=0;f=e+24|0;if(!(c[f>>2]|0)){Dg(d,g,e,j,r,s,t,0,1,v+4|0,m);m=a[m>>0]|0;n=m|n}else m=0;if(n<<24>>24){c[x>>2]=k+1;A=q+(k*12|0)+4|0;z=c[v>>2]|0;b[A>>1]=z;b[A+2>>1]=z>>>16;A=q+(k*12|0)+8|0;z=c[v+4>>2]|0;b[A>>1]=z;b[A+2>>1]=z>>>16;a[q+(k*12|0)>>0]=a[w>>0]|0;a[q+(k*12|0)+1>>0]=m;a[q+(k*12|0)+2>>0]=0;a[q+(k*12|0)+3>>0]=0}}n=c[f>>2]|0;if(!n){Hg(d,e,q,x,u);k=c[f>>2]|0}else k=n;n=c[e+332>>2]|0;if((k|0)!=1){A=c[e+336>>2]|0;n=(n|0)<(A|0)?n:A}m=c[x>>2]|0;if((m|0)>(p|0)){hc=y;return}o=0;j=k;while(1){k=(j|0)==1;A=(o|0)<(n|0)?o&255:0;a[q+(m*12|0)+2>>0]=A;a[q+(m*12|0)+3>>0]=k?-1:A;a[q+(m*12|0)>>0]=1;a[q+(m*12|0)+1>>0]=(k^1)&1;k=q+(m*12|0)+4|0;A=k;b[A>>1]=0;b[A+2>>1]=0>>>16;k=k+4|0;b[k>>1]=0;b[k+2>>1]=0>>>16;k=m+1|0;if((m|0)>=(p|0))break;o=o+1|0;j=c[f>>2]|0;m=k}c[x>>2]=k;hc=y;return}function Bg(d,e,f,g,h,i,j,k,l,m,n,o,p,q){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0;w=hc;v=hc=hc+31&-32;hc=hc+32|0;r=v+18|0;t=v+8|0;u=v+16|0;Cg(d,f,e,g,h,i,j,k,l,m,n,o,p,r,t);h=(a[r>>0]|0)==0;if(h){Dg(d,f,e,j,k,l,m,o,n,v,u);p=0;g=a[r+1>>0]|0}else{g=a[r+1>>0]|0;do if(!(g<<24>>24))s=6;else{if((b[t>>1]|0)==(b[t+4>>1]|0)?(b[t+2>>1]|0)==(b[t+6>>1]|0):0){s=6;break}a[u>>0]=0}while(0);if((s|0)==6)Dg(d,f,e,j,k,l,m,o,n,v,u);p=c[t>>2]|0;b[q>>1]=p;b[q+2>>1]=p>>>16;p=1}do if(g<<24>>24){if((!h?(b[t>>1]|0)==(b[t+4>>1]|0):0)?(b[t+2>>1]|0)==(b[t+6>>1]|0):0)break;s=q+(p<<2)|0;t=c[t+4>>2]|0;b[s>>1]=t;b[s+2>>1]=t>>>16;p=p+1|0}while(0);if(a[u>>0]|0){u=q+(p<<2)|0;v=c[v>>2]|0;b[u>>1]=v;b[u+2>>1]=v>>>16;p=p+1|0}if((p|0)<2){hB(q+(p<<2)|0,0,8-(p<<2)|0)|0;while(1){g=p+1|0;if((p|0)<1)p=g;else{p=g;break}}}if((p|0)==2){hc=w;return}else M(59274,59218,2018,59290)}function Cg(f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){f=f|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;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;var 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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;ga=hc;ba=hc=hc+31&-32;hc=hc+48|0;I=ba+32|0;J=ba+24|0;L=ba+44|0;$=ba+12|0;aa=ba;ba=ba+40|0;ca=s+1|0;a[ca>>0]=0;T=l+-1|0;c[I>>2]=T;y=o+m|0;c[J>>2]=y;c[I+4>>2]=T;D=y+-1|0;c[J+4>>2]=D;a[s>>0]=0;b[t>>1]=0;O=t+2|0;b[O>>1]=0;w=Fg(g,i,j,k,l,m,n,o,r,T,y)|0;a[L>>0]=w&1;C=Fg(g,i,j,k,l,m,n,o,r,T,D)|0;a[L+1>>0]=C&1;U=w|C;da=h+920+(p<<6)+(q<<2)|0;v=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[da>>2]|0)|0;if(!v){hc=ga;return}V=c[v+96>>2]|0;E=g+172|0;F=g+176|0;G=g+180|0;H=g+164|0;W=1-p|0;X=g+192|0;Y=g+196|0;Z=g+200|0;_=g+184|0;do if(w?(a[s>>0]|0)==0:0){w=c[E>>2]|0;v=T>>w;w=y>>w;if((v|0)<=-1)M(60650,60687,120,60707);x=c[F>>2]|0;if((v|0)>=(x|0))M(60650,60687,120,60707);if((w|0)<=-1)M(60711,60687,121,60707);if((w|0)>=(c[G>>2]|0))M(60711,60687,121,60707);S=(c[H>>2]|0)+(((u(x,w)|0)+v|0)*3|0)|0;if((d[S>>0]|d[S+1>>0]<<8)&768){v=c[X>>2]|0;x=T>>v;v=y>>v;if((x|0)<=-1)M(60650,60687,120,60707);w=c[Y>>2]|0;if((x|0)>=(w|0))M(60650,60687,120,60707);if((v|0)<=-1)M(60711,60687,121,60707);if((v|0)>=(c[Z>>2]|0))M(60711,60687,121,60707);A=c[_>>2]|0;x=(u(w,v)|0)+x|0;y=A+(x*12|0)+p|0;if(!(a[y>>0]|0))v=0;else v=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(p<<6)+(a[A+(x*12|0)+2+p>>0]<<2)>>2]|0)|0;z=A+(x*12|0)+W|0;if(!(a[z>>0]|0))w=0;else w=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(W<<6)+(a[A+(x*12|0)+2+W>>0]<<2)>>2]|0)|0;if((v|0)!=0&(a[y>>0]|0)!=0?(c[v+96>>2]|0)==(V|0):0){a[s>>0]=1;B=A+(x*12|0)+4+(p<<2)|0;B=e[B>>1]|e[B+2>>1]<<16;b[t>>1]=B;b[t+2>>1]=B>>>16;B=a[A+(x*12|0)+2+p>>0]|0;break}if((w|0)!=0&(a[z>>0]|0)!=0?(c[w+96>>2]|0)==(V|0):0){a[s>>0]=1;B=A+(x*12|0)+4+(W<<2)|0;B=e[B>>1]|e[B+2>>1]<<16;b[t>>1]=B;b[t+2>>1]=B>>>16;B=a[A+(x*12|0)+2+W>>0]|0}else B=-1}else B=-1}else B=-1;while(0);do if(C?(a[s>>0]|0)==0:0){w=c[E>>2]|0;v=T>>w;w=D>>w;if((v|0)<=-1)M(60650,60687,120,60707);x=c[F>>2]|0;if((v|0)>=(x|0))M(60650,60687,120,60707);if((w|0)<=-1)M(60711,60687,121,60707);if((w|0)>=(c[G>>2]|0))M(60711,60687,121,60707);S=(c[H>>2]|0)+(((u(x,w)|0)+v|0)*3|0)|0;if((d[S>>0]|d[S+1>>0]<<8)&768){v=c[X>>2]|0;x=T>>v;v=D>>v;if((x|0)<=-1)M(60650,60687,120,60707);w=c[Y>>2]|0;if((x|0)>=(w|0))M(60650,60687,120,60707);if((v|0)<=-1)M(60711,60687,121,60707);if((v|0)>=(c[Z>>2]|0))M(60711,60687,121,60707);A=c[_>>2]|0;x=(u(w,v)|0)+x|0;y=A+(x*12|0)+p|0;if(!(a[y>>0]|0))v=0;else v=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(p<<6)+(a[A+(x*12|0)+2+p>>0]<<2)>>2]|0)|0;z=A+(x*12|0)+W|0;if(!(a[z>>0]|0))w=0;else w=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(W<<6)+(a[A+(x*12|0)+2+W>>0]<<2)>>2]|0)|0;if((v|0)!=0&(a[y>>0]|0)!=0?(c[v+96>>2]|0)==(V|0):0){a[s>>0]=1;v=A+(x*12|0)+4+(p<<2)|0;v=e[v>>1]|e[v+2>>1]<<16;b[t>>1]=v;b[t+2>>1]=v>>>16;v=a[A+(x*12|0)+2+p>>0]|0;break}if((w|0)!=0&(a[z>>0]|0)!=0?(c[w+96>>2]|0)==(V|0):0){a[s>>0]=1;v=A+(x*12|0)+4+(W<<2)|0;v=e[v>>1]|e[v+2>>1]<<16;b[t>>1]=v;b[t+2>>1]=v>>>16;v=a[A+(x*12|0)+2+W>>0]|0}else v=B}else v=B}else v=B;while(0);P=h+1304+(p<<4)+q|0;Q=g+96|0;R=f+4|0;S=g+324|0;B=0;a:while(1){if(a[s>>0]|0){v=59;break}do if(a[L+B>>0]|0){w=c[I+(B<<2)>>2]|0;A=c[J+(B<<2)>>2]|0;y=c[E>>2]|0;x=w>>y;y=A>>y;if((x|0)<=-1){v=32;break a}z=c[F>>2]|0;if((x|0)>=(z|0)){v=32;break a}if((y|0)<=-1){v=35;break a}if((y|0)>=(c[G>>2]|0)){v=35;break a}q=(c[H>>2]|0)+(((u(z,y)|0)+x|0)*3|0)|0;if((d[q>>0]|d[q+1>>0]<<8)&768){q=c[X>>2]|0;y=w>>q;w=A>>q;if((y|0)<=-1){v=39;break a}x=c[Y>>2]|0;if((y|0)>=(x|0)){v=39;break a}if((w|0)<=-1){v=42;break a}if((w|0)>=(c[Z>>2]|0)){v=42;break a}z=c[_>>2]|0;w=(u(x,w)|0)+y|0;if((a[z+(w*12|0)+p>>0]|0)==1?(K=z+(w*12|0)+2+p|0,(a[P>>0]|0)==(a[(a[K>>0]|0)+(h+1304+(p<<4))>>0]|0)):0){a[s>>0]=1;x=z+(w*12|0)+4+(p<<2)|0;x=e[x>>1]|e[x+2>>1]<<16;b[t>>1]=x;b[t+2>>1]=x>>>16;x=p;v=a[K>>0]|0;break}if((a[z+(w*12|0)+W>>0]|0)==1?(N=z+(w*12|0)+2+W|0,(a[P>>0]|0)==(a[(a[N>>0]|0)+(h+1304+(W<<4))>>0]|0)):0){a[s>>0]=1;x=z+(w*12|0)+4+(W<<2)|0;x=e[x>>1]|e[x+2>>1]<<16;b[t>>1]=x;b[t+2>>1]=x>>>16;x=W;v=a[N>>0]|0}else x=-1}else x=-1}else x=-1;while(0);do if((a[s>>0]|0)==1){if((v|0)<0){v=58;break a}if((x|0)<=-1){v=52;break a}w=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(x<<6)+(v<<2)>>2]|0)|0;mc[c[(c[f>>2]|0)+8>>2]&31](f,c[da>>2]|0)|0;if(!((a[P>>0]|a[h+1304+(x<<4)+v>>0])<<24>>24)){y=c[Q>>2]|0;x=y-(c[w+96>>2]|0)|0;y=y-V|0;w=e[t>>1]|e[t+2>>1]<<16;x=(x|0)<127?x:127;x=(x|0)>-128?x:-128;y=(y|0)<127?y:127;if(!x){De(R,1008,0);a[S>>0]=3;break}else{q=u(((((x|0)<0?0-x|0:x)>>1)+16384|0)/(x|0)|0,(y|0)>-128?y:-128)|0;q=(q|0)<-262176?-4096:(q|0)>262111?4095:q+32>>6;D=u(q,w<<16>>16)|0;C=(D|0)<0;D=u((C?0-D|0:D)+127>>8,C?-1:(D|0)!=0&1)|0;D=(D|0)<32767?D:32767;b[t>>1]=(D|0)>-32768?D:-32768;q=u(q,w>>16)|0;D=(q|0)<0;q=u((D?0-q|0:q)+127>>8,D?-1:(q|0)!=0&1)|0;q=(q|0)<32767?q:32767;b[O>>1]=(q|0)>-32768?q:-32768;break}}}while(0);if((B+1|0)>>>0<2)B=1;else{v=59;break}}if((v|0)==32)M(60650,60687,120,60707);else if((v|0)==35)M(60711,60687,121,60707);else if((v|0)==39)M(60650,60687,120,60707);else if((v|0)==42)M(60711,60687,121,60707);else if((v|0)==52)M(59381,59218,1773,59395);else if((v|0)==58){a[ca>>0]=0;a[s>>0]=0;hc=ga;return}else if((v|0)==59){v=n+l|0;c[$>>2]=v;C=m+-1|0;c[aa>>2]=C;B=v+-1|0;c[$+4>>2]=B;c[aa+4>>2]=C;c[$+8>>2]=T;c[aa+8>>2]=C;a[ca>>0]=0;D=t+4|0;b[D>>1]=0;q=t+6|0;b[q>>1]=0;O=Fg(g,i,j,k,l,m,n,o,r,v,C)|0;a[ba>>0]=O&1;do if(O?(a[ca>>0]|0)==0:0){w=c[X>>2]|0;v=v>>w;w=C>>w;if((v|0)<=-1)M(60650,60687,120,60707);x=c[Y>>2]|0;if((v|0)>=(x|0))M(60650,60687,120,60707);if((w|0)<=-1)M(60711,60687,121,60707);if((w|0)>=(c[Z>>2]|0))M(60711,60687,121,60707);A=c[_>>2]|0;x=(u(x,w)|0)+v|0;y=A+(x*12|0)+p|0;if(!(a[y>>0]|0))w=0;else w=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(p<<6)+(a[A+(x*12|0)+2+p>>0]<<2)>>2]|0)|0;z=A+(x*12|0)+W|0;if(!(a[z>>0]|0))v=0;else v=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(W<<6)+(a[A+(x*12|0)+2+W>>0]<<2)>>2]|0)|0;if((w|0)!=0&(a[y>>0]|0)!=0?(c[w+96>>2]|0)==(V|0):0){a[ca>>0]=1;v=A+(x*12|0)+4+(p<<2)|0;v=e[v>>1]|e[v+2>>1]<<16;b[D>>1]=v;b[D+2>>1]=v>>>16;v=a[A+(x*12|0)+2+p>>0]|0;break}if((v|0)!=0&(a[z>>0]|0)!=0?(c[v+96>>2]|0)==(V|0):0){a[ca>>0]=1;v=A+(x*12|0)+4+(W<<2)|0;v=e[v>>1]|e[v+2>>1]<<16;b[D>>1]=v;b[D+2>>1]=v>>>16;v=a[A+(x*12|0)+2+W>>0]|0}else v=-1}else v=-1;while(0);O=Fg(g,i,j,k,l,m,n,o,r,B,C)|0;a[ba+1>>0]=O&1;do if(O?(a[ca>>0]|0)==0:0){x=c[X>>2]|0;w=B>>x;x=C>>x;if((w|0)<=-1)M(60650,60687,120,60707);y=c[Y>>2]|0;if((w|0)>=(y|0))M(60650,60687,120,60707);if((x|0)<=-1)M(60711,60687,121,60707);if((x|0)>=(c[Z>>2]|0))M(60711,60687,121,60707);B=c[_>>2]|0;y=(u(y,x)|0)+w|0;z=B+(y*12|0)+p|0;if(!(a[z>>0]|0))x=0;else x=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(p<<6)+(a[B+(y*12|0)+2+p>>0]<<2)>>2]|0)|0;A=B+(y*12|0)+W|0;if(!(a[A>>0]|0))w=0;else w=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(W<<6)+(a[B+(y*12|0)+2+W>>0]<<2)>>2]|0)|0;if((x|0)!=0&(a[z>>0]|0)!=0?(c[x+96>>2]|0)==(V|0):0){a[ca>>0]=1;v=B+(y*12|0)+4+(p<<2)|0;v=e[v>>1]|e[v+2>>1]<<16;b[D>>1]=v;b[D+2>>1]=v>>>16;v=a[B+(y*12|0)+2+p>>0]|0;break}if((w|0)!=0&(a[A>>0]|0)!=0?(c[w+96>>2]|0)==(V|0):0){a[ca>>0]=1;v=B+(y*12|0)+4+(W<<2)|0;v=e[v>>1]|e[v+2>>1]<<16;b[D>>1]=v;b[D+2>>1]=v>>>16;v=a[B+(y*12|0)+2+W>>0]|0}}while(0);o=Fg(g,i,j,k,l,m,n,o,r,T,C)|0;a[ba+2>>0]=o&1;do if(o?(a[ca>>0]|0)==0:0){w=c[X>>2]|0;y=T>>w;w=C>>w;if((y|0)<=-1)M(60650,60687,120,60707);x=c[Y>>2]|0;if((y|0)>=(x|0))M(60650,60687,120,60707);if((w|0)<=-1)M(60711,60687,121,60707);if((w|0)>=(c[Z>>2]|0))M(60711,60687,121,60707);B=c[_>>2]|0;y=(u(x,w)|0)+y|0;z=B+(y*12|0)+p|0;if(!(a[z>>0]|0))x=0;else x=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(p<<6)+(a[B+(y*12|0)+2+p>>0]<<2)>>2]|0)|0;A=B+(y*12|0)+W|0;if(!(a[A>>0]|0))w=0;else w=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(W<<6)+(a[B+(y*12|0)+2+W>>0]<<2)>>2]|0)|0;if((x|0)!=0&(a[z>>0]|0)!=0?(c[x+96>>2]|0)==(V|0):0){a[ca>>0]=1;v=B+(y*12|0)+4+(p<<2)|0;v=e[v>>1]|e[v+2>>1]<<16;b[D>>1]=v;b[D+2>>1]=v>>>16;v=a[B+(y*12|0)+2+p>>0]|0;break}if((w|0)!=0&(a[A>>0]|0)!=0?(c[w+96>>2]|0)==(V|0):0){a[ca>>0]=1;v=B+(y*12|0)+4+(W<<2)|0;v=e[v>>1]|e[v+2>>1]<<16;b[D>>1]=v;b[D+2>>1]=v>>>16;v=a[B+(y*12|0)+2+W>>0]|0}}while(0);b:do if(!U){if(a[ca>>0]|0){a[s>>0]=1;U=e[D>>1]|e[D+2>>1]<<16;b[t>>1]=U;b[t+2>>1]=U>>>16}a[ca>>0]=0;B=g+112|0;A=0;z=v;c:while(1){do if(a[ba+A>>0]|0){w=c[X>>2]|0;v=c[$+(A<<2)>>2]>>w;w=c[aa+(A<<2)>>2]>>w;if((v|0)<=-1){v=84;break c}x=c[Y>>2]|0;if((v|0)>=(x|0)){v=84;break c}if((w|0)<=-1){v=87;break c}if((w|0)>=(c[Z>>2]|0)){v=87;break c}y=c[_>>2]|0;v=(u(x,w)|0)+v|0;if((a[y+(v*12|0)+p>>0]|0)==1?(ea=y+(v*12|0)+2+p|0,(a[P>>0]|0)==(a[(a[ea>>0]|0)+(h+1304+(p<<4))>>0]|0)):0){a[ca>>0]=1;x=y+(v*12|0)+4+(p<<2)|0;x=e[x>>1]|e[x+2>>1]<<16;b[D>>1]=x;b[D+2>>1]=x>>>16;x=p;z=a[ea>>0]|0;break}if((a[y+(v*12|0)+W>>0]|0)==1?(fa=y+(v*12|0)+2+W|0,(a[P>>0]|0)==(a[(a[fa>>0]|0)+(h+1304+(W<<4))>>0]|0)):0){a[ca>>0]=1;x=y+(v*12|0)+4+(W<<2)|0;x=e[x>>1]|e[x+2>>1]<<16;b[D>>1]=x;b[D+2>>1]=x>>>16;x=W;z=a[fa>>0]|0}else x=-1}else x=-1;while(0);do if((a[ca>>0]|0)==1){if((z|0)<0){v=104;break c}if((x|0)<=-1){v=97;break c}v=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(x<<6)+(z<<2)>>2]|0)|0;w=mc[c[(c[f>>2]|0)+8>>2]&31](f,c[da>>2]|0)|0;if((v|0)==0|(w|0)==0){De((c[B>>2]|0)+4|0,1012,0);a[S>>0]=3;break}v=c[v+96>>2]|0;if(!((v|0)==(c[w+96>>2]|0)?1:(a[h+1304+(x<<4)+z>>0]|a[P>>0])<<24>>24!=0)){x=c[Q>>2]|0;w=x-v|0;x=x-V|0;v=e[D>>1]|e[D+2>>1]<<16;w=(w|0)<127?w:127;w=(w|0)>-128?w:-128;x=(x|0)<127?x:127;if(!w){De(R,1008,0);a[S>>0]=3;break}else{U=u(((((w|0)<0?0-w|0:w)>>1)+16384|0)/(w|0)|0,(x|0)>-128?x:-128)|0;U=(U|0)<-262176?-4096:(U|0)>262111?4095:U+32>>6;t=u(U,v<<16>>16)|0;g=(t|0)<0;t=u((g?0-t|0:t)+127>>8,g?-1:(t|0)!=0&1)|0;t=(t|0)<32767?t:32767;b[D>>1]=(t|0)>-32768?t:-32768;U=u(U,v>>16)|0;t=(U|0)<0;U=u((t?0-U|0:U)+127>>8,t?-1:(U|0)!=0&1)|0;U=(U|0)<32767?U:32767;b[q>>1]=(U|0)>-32768?U:-32768;break}}}while(0);A=A+1|0;if(A>>>0>=3)break b;if(a[ca>>0]|0)break b}if((v|0)==84)M(60650,60687,120,60707);else if((v|0)==87)M(60711,60687,121,60707);else if((v|0)==97)M(59381,59218,1914,59395);else if((v|0)==104){a[ca>>0]=0;a[s>>0]=0;break}}while(0);hc=ga;return}}function Dg(d,e,f,g,h,i,j,k,l,m,n){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0;if(!(a[f+328>>0]|0)){b[m>>1]=0;b[m+2>>1]=0;a[n>>0]=0;return}r=e+128|0;s=c[(c[r>>2]|0)+5040>>2]|0;if((c[f+24>>2]|0)==0?(a[f+376>>0]|0)==0:0)o=f+984+(c[f+380>>2]<<2)|0;else o=f+920+(c[f+380>>2]<<2)|0;o=c[o>>2]|0;if(!(mc[c[(c[d>>2]|0)+12>>2]&31](d,o)|0)){b[m>>1]=0;b[m+2>>1]=0;a[n>>0]=0;De(d+4|0,1012,0);return}p=j+h|0;q=i+g|0;if(((h>>s|0)==(p>>s|0)?(t=c[r>>2]|0,(q|0)<(c[t+484>>2]|0)):0)?(p|0)<(c[t+488>>2]|0):0){Eg(d,e,f,0,0,o,q&-16,p&-16,k,l,m,n);if(a[n>>0]|0)return}else{b[m>>1]=0;b[m+2>>1]=0;a[n>>0]=0}Eg(d,e,f,0,0,o,(i>>1)+g&-16,(j>>1)+h&-16,k,l,m,n);return}function Eg(f,g,h,i,j,k,l,m,n,o,p,q){f=f|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;p=p|0;q=q|0;var r=0,s=0,t=0,v=0,w=0;if(!(mc[c[(c[f>>2]|0)+12>>2]&31](f,k)|0))M(59325,59218,1116,59348);w=mc[c[(c[f>>2]|0)+8>>2]&31](f,k)|0;if((c[w+24>>2]|0)>(l|0)?(c[w+28>>2]|0)>(m|0):0){j=c[w+172>>2]|0;i=l>>j;j=m>>j;if((i|0)<=-1)M(60650,60687,120,60707);k=c[w+176>>2]|0;if((i|0)>=(k|0))M(60650,60687,120,60707);if((j|0)<=-1)M(60711,60687,121,60707);if((j|0)>=(c[w+180>>2]|0))M(60711,60687,121,60707);v=(c[w+164>>2]|0)+(((u(k,j)|0)+i|0)*3|0)|0;if(!((d[v>>0]|d[v+1>>0]<<8)&768)){b[p>>1]=0;b[p+2>>1]=0;a[q>>0]=0;return}if((a[w+324>>0]|0)==1){b[p>>1]=0;b[p+2>>1]=0;a[q>>0]=0;return}j=c[w+192>>2]|0;i=l>>j;j=m>>j;if((i|0)<=-1)M(60650,60687,120,60707);k=c[w+196>>2]|0;if((i|0)>=(k|0))M(60650,60687,120,60707);if((j|0)<=-1)M(60711,60687,121,60707);if((j|0)>=(c[w+200>>2]|0))M(60711,60687,121,60707);v=c[w+184>>2]|0;s=(u(k,j)|0)+i|0;do if(a[v+(s*12|0)>>0]|0){if(!(a[v+(s*12|0)+1>>0]|0)){j=v+(s*12|0)+4|0;t=0;i=v+(s*12|0)+2|0;break}r=c[g+96>>2]|0;k=h+336|0;if((c[k>>2]|0)>0){j=0;do{i=(c[(mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+984+(j<<2)>>2]|0)|0)+96>>2]|0)<=(r|0);j=j+1|0}while(i&(j|0)<(c[k>>2]|0))}else i=1;k=h+332|0;if(i&(c[k>>2]|0)>0){j=0;do{i=(c[(mc[c[(c[f>>2]|0)+8>>2]&31](f,c[h+920+(j<<2)>>2]|0)|0)+96>>2]|0)<=(r|0);j=j+1|0}while(i&(j|0)<(c[k>>2]|0))}if(i){j=v+(s*12|0)+4+(o<<2)|0;t=o;i=v+(s*12|0)+2+o|0;break}else{i=a[h+376>>0]|0;j=v+(s*12|0)+4+(i<<2)|0;t=i;i=v+(s*12|0)+2+i|0;break}}else{j=v+(s*12|0)+8|0;t=1;i=v+(s*12|0)+3|0}while(0);r=a[i>>0]|0;s=e[j>>1]|e[j+2>>1]<<16;i=c[w+152>>2]|0;k=l>>i;i=m>>i;if((k|0)<=-1)M(60650,60687,120,60707);j=c[w+156>>2]|0;if((k|0)>=(j|0))M(60650,60687,120,60707);if((i|0)<=-1)M(60711,60687,121,60707);if((i|0)>=(c[w+160>>2]|0))M(60711,60687,121,60707);i=e[(c[w+144>>2]|0)+(((u(j,i)|0)+k|0)*24|0)+2>>1]|0;i=c[(c[w+52>>2]|0)+(i<<2)>>2]|0;k=h+1304+(o<<4)+n|0;if((a[k>>0]|0)!=(a[i+1304+(t<<4)+r>>0]|0)){a[q>>0]=0;b[p>>1]=0;b[p+2>>1]=0;return}a[q>>0]=1;j=(c[w+96>>2]|0)-(c[i+1048+(t<<6)+(r<<2)>>2]|0)|0;i=(c[g+96>>2]|0)-(c[h+1048+(o<<6)+(n<<2)>>2]|0)|0;if((a[k>>0]|0)!=0|(j|0)==(i|0)){b[p>>1]=s;b[p+2>>1]=s>>>16;return}j=(j|0)<127?j:127;j=(j|0)>-128?j:-128;i=(i|0)<127?i:127;if(!j){b[p>>1]=s;b[p+2>>1]=s>>>16;De(f+4|0,1008,0);a[g+324>>0]=3;return}else{g=u(((((j|0)<0?0-j|0:j)>>1)+16384|0)/(j|0)|0,(i|0)>-128?i:-128)|0;g=(g|0)<-262176?-4096:(g|0)>262111?4095:g+32>>6;f=u(g,s<<16>>16)|0;o=(f|0)<0;f=u((o?0-f|0:f)+127>>8,o?-1:(f|0)!=0&1)|0;f=(f|0)<32767?f:32767;b[p>>1]=(f|0)>-32768?f:-32768;g=u(g,s>>16)|0;f=(g|0)<0;g=u((f?0-g|0:g)+127>>8,f?-1:(g|0)!=0&1)|0;g=(g|0)<32767?g:32767;b[p+2>>1]=(g|0)>-32768?g:-32768;return}}De(f+4|0,1026,0);a[q>>0]=0;return}
function bj(b){b=b|0;var d=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,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;q=b+128|0;f=c[q>>2]|0;if(!(a[f+4703>>0]|0))return;E=b+40|0;F=b+28|0;G=u(c[F>>2]|0,c[E>>2]|0)|0;G=u(G,((c[f+4996>>2]|0)+7|0)/8|0)|0;r=b+44|0;s=b+36|0;H=u(c[s>>2]|0,c[r>>2]|0)|0;H=u(H,((c[f+5004>>2]|0)+7|0)/8|0)|0;H=(G|0)>(H|0)?G:H;H=mz((H|0)>-1?H:-1)|0;G=(c[f+5012>>2]|0)==0?1:3;t=f+5064|0;v=f+5056|0;w=b+156|0;x=b+144|0;y=b+52|0;z=b+56|0;A=f+5040|0;B=b+4|0;C=f+5016|0;D=f+5020|0;d=0;a:while(1){o=(d|0)==0;n=o?E:r;m=c[n>>2]|0;p=b+4+(d<<2)|0;l=u(c[(o?F:s)>>2]|0,m)|0;fB(H|0,c[p>>2]|0,u(l,((c[(o?f+4996|0:f+5004|0)>>2]|0)+7|0)/8|0)|0)|0;if((c[t>>2]|0)>0){l=0;f=c[v>>2]|0;do{if((f|0)>0){k=0;do{f=(u(c[w>>2]|0,l)|0)+k|0;f=e[(c[x>>2]|0)+(f*24|0)+2>>1]|0;g=c[y>>2]|0;if((c[z>>2]|0)-g>>2>>>0<=f>>>0){d=23;break a}j=c[g+(f<<2)>>2]|0;if(!j){d=23;break a}do if(o){if(a[j+329>>0]|0){g=1<<c[A>>2];h=c[B>>2]|0;f=c[E>>2]|0;if((c[(c[q>>2]|0)+4996>>2]|0)>8){of(b,k,l,j,0,g,g,H,m,h,f);break}else{pf(b,k,l,j,0,g,g,H,m,h,f);break}}}else if(a[j+330>>0]|0){h=1<<c[A>>2];g=(h|0)/(c[C>>2]|0)|0;h=(h|0)/(c[D>>2]|0)|0;i=c[p>>2]|0;f=c[n>>2]|0;if((c[(c[q>>2]|0)+5004>>2]|0)>8){of(b,k,l,j,d,g,h,H,m,i,f);break}else{pf(b,k,l,j,d,g,h,H,m,i,f);break}}while(0);k=k+1|0;f=c[v>>2]|0}while((k|0)<(f|0))}l=l+1|0}while((l|0)<(c[t>>2]|0))}d=d+1|0;if(d>>>0>=G>>>0){d=22;break}f=c[q>>2]|0}if((d|0)==22){oz(H);return}else if((d|0)==23)return}function cj(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,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;Z=hc;K=hc=hc+31&-32;hc=hc+208|0;Y=K+40|0;X=K+24|0;W=K+16|0;z=K+56|0;if((c[f>>2]|0)!=132){Y=0;hc=Z;return Y|0}if(!(a[(c[g+112>>2]|0)+512>>0]|0)){Y=0;hc=Z;return Y|0}if(!(a[g+104>>0]|0)){Y=0;hc=Z;return Y|0}w=g+128|0;x=(c[(c[w>>2]|0)+476>>2]|0)==0?1:3;y=g+24|0;A=g+32|0;B=g+28|0;C=g+36|0;D=g+40|0;E=g+44|0;F=f+8|0;G=K+1|0;H=K+2|0;I=K+3|0;J=K+4|0;L=K+5|0;M=K+6|0;N=K+7|0;O=K+8|0;P=K+9|0;Q=K+10|0;R=K+11|0;S=K+12|0;T=K+13|0;U=K+14|0;V=K+15|0;v=0;a:while(1){j=(v|0)==0;p=c[(j?y:A)>>2]|0;s=c[(j?B:C)>>2]|0;r=c[g+4+(v<<2)>>2]|0;q=c[(j?D:E)>>2]|0;switch(c[F>>2]|0){case 0:{h=c[w>>2]|0;h=c[(j?h+4996|0:h+5004|0)>>2]|0;jj(z);b:do if((s|0)>0){m=p<<1;n=(p|0)<0?-1:m;if((h|0)<=8){h=0;while(1){kj(z,r+(u(h,q)|0)|0,p);h=h+1|0;if((h|0)>=(s|0)){h=0;break b}}}if((p|0)<=0){i=0;h=0;while(1){if(!h){h=mz(n)|0;j=h}else j=h;kj(z,j,m);i=i+1|0;if((i|0)>=(s|0))break b}}if((p|0)==1){i=0;h=0;while(1){if(!h){h=mz(n)|0;j=h}else j=h;p=r+((u(i,q)|0)<<1)|0;a[j>>0]=b[p>>1];a[j+1>>0]=(e[p>>1]|0)>>>8;kj(z,j,m);i=i+1|0;if((i|0)>=(s|0))break b}}k=0;h=0;do{if(!h){h=mz(n)|0;l=h}else l=h;j=u(k,q)|0;i=r+(j<<1)|0;a[l>>0]=b[i>>1];a[l+1>>0]=(e[i>>1]|0)>>>8;i=1;do{_=r+(i+j<<1)|0;o=i<<1;a[l+o>>0]=b[_>>1];a[l+(o|1)>>0]=(e[_>>1]|0)>>>8;i=i+1|0}while((i|0)!=(p|0));kj(z,l,m);k=k+1|0}while((k|0)<(s|0))}else h=0;while(0);lj(K,z);if(h|0)oz(h);if((a[K>>0]|0)!=(a[f+12+(v<<4)>>0]|0)){t=30;break a}if((a[G>>0]|0)!=(a[f+12+(v<<4)+1>>0]|0)){t=30;break a}if((a[H>>0]|0)!=(a[f+12+(v<<4)+2>>0]|0)){t=30;break a}if((a[I>>0]|0)!=(a[f+12+(v<<4)+3>>0]|0)){t=30;break a}if((a[J>>0]|0)!=(a[f+12+(v<<4)+4>>0]|0)){t=30;break a}if((a[L>>0]|0)!=(a[f+12+(v<<4)+5>>0]|0)){t=30;break a}if((a[M>>0]|0)!=(a[f+12+(v<<4)+6>>0]|0)){t=30;break a}if((a[N>>0]|0)!=(a[f+12+(v<<4)+7>>0]|0)){t=30;break a}if((a[O>>0]|0)!=(a[f+12+(v<<4)+8>>0]|0)){t=30;break a}if((a[P>>0]|0)!=(a[f+12+(v<<4)+9>>0]|0)){t=30;break a}if((a[Q>>0]|0)!=(a[f+12+(v<<4)+10>>0]|0)){t=30;break a}if((a[R>>0]|0)!=(a[f+12+(v<<4)+11>>0]|0)){t=30;break a}if((a[S>>0]|0)!=(a[f+12+(v<<4)+12>>0]|0)){t=30;break a}if((a[T>>0]|0)!=(a[f+12+(v<<4)+13>>0]|0)){t=30;break a}if((a[U>>0]|0)!=(a[f+12+(v<<4)+14>>0]|0)){t=30;break a}if((a[V>>0]|0)!=(a[f+12+(v<<4)+15>>0]|0)){t=30;break a}break}case 1:{h=c[w>>2]|0;c:do if((s|0)>0){n=p<<1;o=(p|0)<0?-1:n;i=(p|0)>0;if((c[(j?h+4996|0:h+5004|0)>>2]|0)<=8){if(!i){h=7439;t=59;break}i=0;h=7439;while(1){k=r+(u(i,q)|0)|0;j=0;do{t=h&65535;_=t>>>8^d[k+j>>0];_=_>>>4^_;h=(_|t<<8)^_<<5^_<<12;j=j+1|0}while((j|0)!=(p|0));i=i+1|0;if((i|0)==(s|0)){t=59;break c}}}d:do if(i){if((p|0)==1){m=(p|0)>0;l=0;h=7439;i=0;while(1){if(!i){i=mz(o)|0;k=i}else k=i;_=r+((u(l,q)|0)<<1)|0;p=b[_>>1]|0;a[k>>0]=p;a[k+1>>0]=(e[_>>1]|0)>>>8;_=h&65535;h=_>>>8^p&255;h=h>>>4^h;h=(h|_<<8)^h<<5^h<<12;if(m){j=1;do{_=h&65535;h=_>>>8^d[k+j>>0];h=h>>>4^h;h=(h|_<<8)^h<<5^h<<12;j=j+1|0}while((j|0)<(n|0))}l=l+1|0;if((l|0)==(s|0))break d}}l=0;h=7439;i=0;do{if(!i){i=mz(o)|0;m=i}else m=i;k=u(l,q)|0;j=r+(k<<1)|0;a[m>>0]=b[j>>1];a[m+1>>0]=(e[j>>1]|0)>>>8;j=1;do{$=r+(j+k<<1)|0;_=j<<1;a[m+_>>0]=b[$>>1];a[m+(_|1)>>0]=(e[$>>1]|0)>>>8;j=j+1|0}while((j|0)!=(p|0));j=0;do{_=h&65535;$=_>>>8^d[m+j>>0];$=$>>>4^$;h=($|_<<8)^$<<5^$<<12;j=j+1|0}while((j|0)<(n|0));l=l+1|0}while((l|0)!=(s|0))}else{h=0;i=0;do{if(!i)i=mz(o)|0;h=h+1|0}while((h|0)!=(s|0));h=7439}while(0);h=h&65535;if(i)oz(i)}else{h=7439;t=59}while(0);if((t|0)==59){t=0;h=h&65535}i=b[f+60+(v<<1)>>1]|0;if((h|0)!=(i&65535|0)){t=63;break a}break}case 2:{$=c[w>>2]|0;h=(p|0)>0&(s|0)>0;if((c[(j?$+4996|0:$+5004|0)>>2]|0)<9)if(h){i=0;h=0;do{k=i>>>8^i;l=u(i,q)|0;j=0;do{h=((k^j^j>>>8)&255^d[r+(j+l)>>0])+h|0;j=j+1|0}while((j|0)!=(p|0));i=i+1|0}while((i|0)!=(s|0))}else h=0;else if(h){j=0;h=0;do{k=j>>>8^j;l=u(j,q)|0;i=0;do{$=(k^i^i>>>8)&255;h=$+h+($^d[r+(i+l)>>0])|0;i=i+1|0}while((i|0)!=(p|0));j=j+1|0}while((j|0)!=(s|0))}else h=0;i=c[f+68+(v<<2)>>2]|0;if((h|0)!=(i|0)){t=76;break a}break}default:{}}v=v+1|0;if(v>>>0>=x>>>0){h=0;t=93;break}}if((t|0)==30){$=c[12099]|0;c[W>>2]=c[g+96>>2];_n($,60411,W)|0;$=5;hc=Z;return $|0}else if((t|0)==63){$=c[12099]|0;_=c[g+96>>2]|0;c[X>>2]=i&65535;c[X+4>>2]=h;c[X+8>>2]=_;_n($,60454,X)|0;$=5;hc=Z;return $|0}else if((t|0)==76){$=c[12099]|0;_=c[g+96>>2]|0;c[Y>>2]=i;c[Y+4>>2]=h;c[Y+8>>2]=_;_n($,60454,Y)|0;$=5;hc=Z;return $|0}else if((t|0)==93){hc=Z;return h|0}return 0}function dj(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function ej(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;j=a+20|0;k=c[j>>2]|0;l=a+24|0;b=c[l>>2]|0;if((k|0)==(b|0))M(60334,60364,147,60373);h=b-k>>2;if(h>>>0>1){b=0;d=c[(c[k>>2]|0)+96>>2]|0;e=1;while(1){f=c[(c[k+(e<<2)>>2]|0)+96>>2]|0;g=(f|0)<(d|0);b=g?e:b;e=e+1|0;if(e>>>0>=h>>>0){h=b;break}else d=g?f:d}}else h=0;g=a+36|0;d=c[g>>2]|0;m=(c[a+40>>2]|0)-d|0;f=a+48|0;i=a+52|0;b=c[i>>2]|0;e=b+(c[f>>2]|0)|0;if((((m|0)==0?0:(m<<8)+-1|0)|0)==(e|0)){gj(a+32|0);b=c[i>>2]|0;e=(c[f>>2]|0)+b|0;d=c[g>>2]|0}c[(c[d+(e>>>10<<2)>>2]|0)+((e&1023)<<2)>>2]=c[k+(h<<2)>>2];c[i>>2]=b+1;c[(c[j>>2]|0)+(h<<2)>>2]=c[(c[l>>2]|0)+-4>>2];c[l>>2]=(c[l>>2]|0)+-4;return}function fj(a){a=a|0;return}function gj(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;s=hc;o=hc=hc+31&-32;hc=hc+32|0;b=a+16|0;d=c[b>>2]|0;if(d>>>0>1023){c[b>>2]=d+-1024;o=a+4|0;n=c[o>>2]|0;q=c[n>>2]|0;n=n+4|0;c[o>>2]=n;p=a+8|0;b=c[p>>2]|0;m=a+12|0;r=c[m>>2]|0;e=r;do if((b|0)==(r|0)){i=n;d=c[a>>2]|0;f=d;if(n>>>0>d>>>0){e=((i-f>>2)+1|0)/-2|0;f=n+(e<<2)|0;d=b-i|0;if(!d)b=f;else{gB(f|0,n|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){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{h=lz(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;l=e;j=h+(f<<2)|0;if((n|0)==(b|0))b=l;else{f=((b+-4-i|0)>>>2)+1|0;d=n;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[m>>2]=j;if(d){nz(d);b=c[p>>2]|0}}while(0);c[b>>2]=q;c[p>>2]=(c[p>>2]|0)+4;hc=s;return}r=a+8|0;b=c[r>>2]|0;q=a+4|0;l=c[q>>2]|0;i=b-l|0;j=i>>2;p=a+12|0;e=c[p>>2]|0;f=c[a>>2]|0;g=e-f|0;m=b;h=e;n=l;d=f;if(j>>>0>=g>>2>>>0){d=(g|0)==0?1:g>>1;c[o+12>>2]=0;c[o+16>>2]=a+12;do if(d)if(d>>>0>1073741823){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{g=lz(d<<2)|0;f=g;break}else{f=0;g=0}while(0);c[o>>2]=f;b=g+(j<<2)|0;m=o+8|0;c[m>>2]=b;k=o+4|0;c[k>>2]=b;l=o+12|0;c[l>>2]=g+(d<<2);h=lz(4096)|0;do if((j|0)==(d|0)){if((i|0)>0){b=b+(((j+1|0)/-2|0)<<2)|0;c[m>>2]=b;c[k>>2]=b;break}d=(i|0)==0?1:i>>1;b=d>>>2;do if(d)if(d>>>0>1073741823){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{e=lz(d<<2)|0;break}else e=0;while(0);b=e+(b<<2)|0;n=b;c[o>>2]=e;c[k>>2]=n;c[m>>2]=n;c[l>>2]=e+(d<<2);if(g)nz(f)}while(0);c[b>>2]=h;e=(c[m>>2]|0)+4|0;c[m>>2]=e;b=c[r>>2]|0;d=c[q>>2]|0;if((b|0)==(d|0))h=m;else{do{b=b+-4|0;ij(o,b);d=c[q>>2]|0}while((b|0)!=(d|0));h=m;e=c[m>>2]|0;b=c[r>>2]|0}f=d;g=c[a>>2]|0;c[a>>2]=c[o>>2];c[o>>2]=g;c[q>>2]=c[k>>2];c[k>>2]=f;c[r>>2]=e;c[h>>2]=b;a=c[p>>2]|0;c[p>>2]=c[l>>2];c[l>>2]=a;if((d|0)!=(b|0))c[m>>2]=b+(~((b+-4-f|0)>>>2)<<2);if(g|0)nz(g);hc=s;return}if((e|0)==(b|0)){c[o>>2]=lz(4096)|0;hj(a,o);m=c[q>>2]|0;n=c[m>>2]|0;m=m+4|0;c[q>>2]=m;b=c[r>>2]|0;o=c[p>>2]|0;e=o;do if((b|0)==(o|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{gB(f|0,m|0,d|0)|0;b=(c[q>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[r>>2]=a;c[q>>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){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{h=lz(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[q>>2]=l;c[r>>2]=b;c[p>>2]=j;if(d){nz(d);b=c[r>>2]|0}}while(0);c[b>>2]=n;c[r>>2]=(c[r>>2]|0)+4;hc=s;return}else{o=lz(4096)|0;do if((m|0)==(h|0)){if(n>>>0>d>>>0){b=((l-f>>2)+1|0)/-2|0;d=n+(b<<2)|0;if(!i)b=d;else{gB(d|0,l|0,i|0)|0;b=(c[q>>2]|0)+(b<<2)|0}a=d+(j<<2)|0;c[r>>2]=a;c[q>>2]=b;b=a;break}b=(g|0)==0?1:g>>1;h=b>>>2;do if(b)if(b>>>0>1073741823){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{g=lz(b<<2)|0;break}else g=0;while(0);j=g;f=g+(h<<2)|0;k=f;i=g+(b<<2)|0;if((n|0)==(m|0))b=k;else{e=((m+-4-l|0)>>>2)+1|0;d=f;b=n;while(1){c[d>>2]=c[b>>2];b=b+4|0;if((b|0)==(m|0))break;else d=d+4|0}b=g+(e+h<<2)|0;d=c[a>>2]|0}c[a>>2]=j;c[q>>2]=k;c[r>>2]=b;c[p>>2]=i;if(d){nz(d);b=c[r>>2]|0}}while(0);c[b>>2]=o;c[r>>2]=(c[r>>2]|0)+4;hc=s;return}}function hj(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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{h=lz(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){nz(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 ij(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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{h=lz(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){nz(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 jj(a){a=a|0;c[a+8>>2]=1732584193;c[a+12>>2]=-271733879;c[a+16>>2]=-1732584194;c[a+20>>2]=271733878;c[a>>2]=0;c[a+4>>2]=0;return}function kj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=c[a>>2]|0;h=f+d&536870911;c[a>>2]=h;g=a+4|0;e=c[g>>2]|0;if(h>>>0<f>>>0){e=e+1|0;c[g>>2]=e}c[g>>2]=e+(d>>>29);e=f&63;do if(e){f=64-e|0;e=a+24+e|0;if(f>>>0<=d>>>0){fB(e|0,b|0,f|0)|0;mj(a,a+24|0,64)|0;b=b+f|0;d=d-f|0;break}fB(e|0,b|0,d|0)|0;return}while(0);if(d>>>0>63){b=mj(a,b,d&-64)|0;d=d&63}fB(a+24|0,b|0,d|0)|0;return}function lj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[d>>2]&63;e=f+1|0;a[d+24+f>>0]=-128;f=f^63;g=d+24|0;if(f>>>0<8){hB(d+24+e|0,0,f|0)|0;mj(d,g,64)|0;f=56;e=0}else f=f+-8|0;hB(d+24+e|0,0,f|0)|0;f=c[d>>2]|0;e=f<<3;c[d>>2]=e;a[d+80>>0]=e;a[d+81>>0]=f>>>5;a[d+82>>0]=f>>>13;a[d+83>>0]=f>>>21;f=c[d+4>>2]|0;a[d+84>>0]=f;a[d+85>>0]=f>>>8;a[d+86>>0]=f>>>16;a[d+87>>0]=f>>>24;mj(d,g,64)|0;g=d+8|0;a[b>>0]=c[g>>2];a[b+1>>0]=(c[g>>2]|0)>>>8;a[b+2>>0]=(c[g>>2]|0)>>>16;a[b+3>>0]=(c[g>>2]|0)>>>24;g=d+12|0;a[b+4>>0]=c[g>>2];a[b+5>>0]=(c[g>>2]|0)>>>8;a[b+6>>0]=(c[g>>2]|0)>>>16;a[b+7>>0]=(c[g>>2]|0)>>>24;g=d+16|0;a[b+8>>0]=c[g>>2];a[b+9>>0]=(c[g>>2]|0)>>>8;a[b+10>>0]=(c[g>>2]|0)>>>16;a[b+11>>0]=(c[g>>2]|0)>>>24;g=d+20|0;a[b+12>>0]=c[g>>2];a[b+13>>0]=(c[g>>2]|0)>>>8;a[b+14>>0]=(c[g>>2]|0)>>>16;a[b+15>>0]=(c[g>>2]|0)>>>24;hB(d|0,0,152)|0;return}function mj(a,b,e){a=a|0;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,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;y=a+8|0;z=a+12|0;A=a+16|0;B=a+20|0;j=a+88|0;k=a+92|0;l=a+96|0;m=a+100|0;n=a+104|0;o=a+108|0;p=a+112|0;q=a+116|0;r=a+120|0;s=a+124|0;t=a+128|0;u=a+132|0;v=a+136|0;w=a+140|0;x=a+144|0;i=a+148|0;a=c[y>>2]|0;f=c[z>>2]|0;g=c[B>>2]|0;h=c[A>>2]|0;do{V=(d[b+1>>0]|0)<<8|(d[b>>0]|0)|(d[b+2>>0]|0)<<16|(d[b+3>>0]|0)<<24;c[j>>2]=V;W=a+-680876936+(f&(g^h)^g)+V|0;W=(W<<7|W>>>25)+f|0;O=(d[b+5>>0]|0)<<8|(d[b+4>>0]|0)|(d[b+6>>0]|0)<<16|(d[b+7>>0]|0)<<24;c[k>>2]=O;C=g+-389564586+O+(W&(f^h)^h)|0;C=(C<<12|C>>>20)+W|0;H=(d[b+9>>0]|0)<<8|(d[b+8>>0]|0)|(d[b+10>>0]|0)<<16|(d[b+11>>0]|0)<<24;c[l>>2]=H;D=h+606105819+H+(C&(W^f)^f)|0;D=(D<<17|D>>>15)+C|0;Q=(d[b+13>>0]|0)<<8|(d[b+12>>0]|0)|(d[b+14>>0]|0)<<16|(d[b+15>>0]|0)<<24;c[m>>2]=Q;E=f+-1044525330+Q+(D&(C^W)^W)|0;E=(E<<22|E>>>10)+D|0;J=(d[b+17>>0]|0)<<8|(d[b+16>>0]|0)|(d[b+18>>0]|0)<<16|(d[b+19>>0]|0)<<24;c[n>>2]=J;W=W+-176418897+J+(E&(D^C)^C)|0;W=(W<<7|W>>>25)+E|0;S=(d[b+21>>0]|0)<<8|(d[b+20>>0]|0)|(d[b+22>>0]|0)<<16|(d[b+23>>0]|0)<<24;c[o>>2]=S;C=C+1200080426+S+(W&(E^D)^D)|0;C=(C<<12|C>>>20)+W|0;L=(d[b+25>>0]|0)<<8|(d[b+24>>0]|0)|(d[b+26>>0]|0)<<16|(d[b+27>>0]|0)<<24;c[p>>2]=L;D=D+-1473231341+L+(C&(W^E)^E)|0;D=(D<<17|D>>>15)+C|0;U=(d[b+29>>0]|0)<<8|(d[b+28>>0]|0)|(d[b+30>>0]|0)<<16|(d[b+31>>0]|0)<<24;c[q>>2]=U;E=E+-45705983+U+(D&(C^W)^W)|0;E=(E<<22|E>>>10)+D|0;N=(d[b+33>>0]|0)<<8|(d[b+32>>0]|0)|(d[b+34>>0]|0)<<16|(d[b+35>>0]|0)<<24;c[r>>2]=N;W=W+1770035416+N+(E&(D^C)^C)|0;W=(W<<7|W>>>25)+E|0;G=(d[b+37>>0]|0)<<8|(d[b+36>>0]|0)|(d[b+38>>0]|0)<<16|(d[b+39>>0]|0)<<24;c[s>>2]=G;C=G+-1958414417+C+(W&(E^D)^D)|0;C=(C<<12|C>>>20)+W|0;P=(d[b+41>>0]|0)<<8|(d[b+40>>0]|0)|(d[b+42>>0]|0)<<16|(d[b+43>>0]|0)<<24;c[t>>2]=P;D=P+-42063+D+(C&(W^E)^E)|0;D=(D<<17|D>>>15)+C|0;I=(d[b+45>>0]|0)<<8|(d[b+44>>0]|0)|(d[b+46>>0]|0)<<16|(d[b+47>>0]|0)<<24;c[u>>2]=I;E=I+-1990404162+E+(D&(C^W)^W)|0;E=(E<<22|E>>>10)+D|0;R=(d[b+49>>0]|0)<<8|(d[b+48>>0]|0)|(d[b+50>>0]|0)<<16|(d[b+51>>0]|0)<<24;c[v>>2]=R;W=R+1804603682+W+(E&(D^C)^C)|0;W=(W<<7|W>>>25)+E|0;K=(d[b+53>>0]|0)<<8|(d[b+52>>0]|0)|(d[b+54>>0]|0)<<16|(d[b+55>>0]|0)<<24;c[w>>2]=K;C=K+-40341101+C+(W&(E^D)^D)|0;C=(C<<12|C>>>20)+W|0;T=(d[b+57>>0]|0)<<8|(d[b+56>>0]|0)|(d[b+58>>0]|0)<<16|(d[b+59>>0]|0)<<24;c[x>>2]=T;D=T+-1502002290+D+(C&(W^E)^E)|0;D=(D<<17|D>>>15)+C|0;M=(d[b+61>>0]|0)<<8|(d[b+60>>0]|0)|(d[b+62>>0]|0)<<16|(d[b+63>>0]|0)<<24;c[i>>2]=M;E=M+1236535329+E+(D&(C^W)^W)|0;E=(E<<22|E>>>10)+D|0;W=O+-165796510+W+((E^D)&C^D)|0;W=(W<<5|W>>>27)+E|0;C=L+-1069501632+C+((W^E)&D^E)|0;C=(C<<9|C>>>23)+W|0;D=I+643717713+D+((C^W)&E^W)|0;D=(D<<14|D>>>18)+C|0;E=V+-373897302+E+((D^C)&W^C)|0;E=(E<<20|E>>>12)+D|0;W=S+-701558691+W+((E^D)&C^D)|0;W=(W<<5|W>>>27)+E|0;C=P+38016083+C+((W^E)&D^E)|0;C=(C<<9|C>>>23)+W|0;D=M+-660478335+D+((C^W)&E^W)|0;D=(D<<14|D>>>18)+C|0;E=J+-405537848+E+((D^C)&W^C)|0;E=(E<<20|E>>>12)+D|0;W=G+568446438+W+((E^D)&C^D)|0;W=(W<<5|W>>>27)+E|0;C=T+-1019803690+C+((W^E)&D^E)|0;C=(C<<9|C>>>23)+W|0;D=Q+-187363961+D+((C^W)&E^W)|0;D=(D<<14|D>>>18)+C|0;E=N+1163531501+E+((D^C)&W^C)|0;E=(E<<20|E>>>12)+D|0;W=K+-1444681467+W+((E^D)&C^D)|0;W=(W<<5|W>>>27)+E|0;C=H+-51403784+C+((W^E)&D^E)|0;C=(C<<9|C>>>23)+W|0;D=U+1735328473+D+((C^W)&E^W)|0;D=(D<<14|D>>>18)+C|0;F=D^C;E=R+-1926607734+E+(F&W^C)|0;E=(E<<20|E>>>12)+D|0;F=S+-378558+W+(F^E)|0;F=(F<<4|F>>>28)+E|0;C=N+-2022574463+C+(E^D^F)|0;C=(C<<11|C>>>21)+F|0;D=I+1839030562+D+(F^E^C)|0;D=(D<<16|D>>>16)+C|0;E=T+-35309556+E+(C^F^D)|0;E=(E<<23|E>>>9)+D|0;F=O+-1530992060+F+(D^C^E)|0;F=(F<<4|F>>>28)+E|0;C=J+1272893353+C+(E^D^F)|0;C=(C<<11|C>>>21)+F|0;D=U+-155497632+D+(F^E^C)|0;D=(D<<16|D>>>16)+C|0;E=P+-1094730640+E+(C^F^D)|0;E=(E<<23|E>>>9)+D|0;F=K+681279174+F+(D^C^E)|0;F=(F<<4|F>>>28)+E|0;C=V+-358537222+C+(E^D^F)|0;C=(C<<11|C>>>21)+F|0;D=Q+-722521979+D+(F^E^C)|0;D=(D<<16|D>>>16)+C|0;E=L+76029189+E+(C^F^D)|0;E=(E<<23|E>>>9)+D|0;F=G+-640364487+F+(D^C^E)|0;F=(F<<4|F>>>28)+E|0;C=R+-421815835+C+(E^D^F)|0;C=(C<<11|C>>>21)+F|0;D=M+530742520+D+(F^E^C)|0;D=(D<<16|D>>>16)+C|0;E=H+-995338651+E+(C^F^D)|0;E=(E<<23|E>>>9)+D|0;F=V+-198630844+F+((E|~C)^D)|0;F=(F<<6|F>>>26)+E|0;C=U+1126891415+C+((F|~D)^E)|0;C=(C<<10|C>>>22)+F|0;D=T+-1416354905+D+((C|~E)^F)|0;D=(D<<15|D>>>17)+C|0;E=S+-57434055+E+((D|~F)^C)|0;E=(E<<21|E>>>11)+D|0;F=R+1700485571+F+((E|~C)^D)|0;F=(F<<6|F>>>26)+E|0;C=Q+-1894986606+C+((F|~D)^E)|0;C=(C<<10|C>>>22)+F|0;D=P+-1051523+D+((C|~E)^F)|0;D=(D<<15|D>>>17)+C|0;E=O+-2054922799+E+((D|~F)^C)|0;E=(E<<21|E>>>11)+D|0;F=N+1873313359+F+((E|~C)^D)|0;F=(F<<6|F>>>26)+E|0;C=M+-30611744+C+((F|~D)^E)|0;C=(C<<10|C>>>22)+F|0;D=L+-1560198380+D+((C|~E)^F)|0;D=(D<<15|D>>>17)+C|0;E=K+1309151649+E+((D|~F)^C)|0;E=(E<<21|E>>>11)+D|0;F=J+-145523070+F+((E|~C)^D)|0;F=(F<<6|F>>>26)+E|0;C=I+-1120210379+C+((F|~D)^E)|0;C=(C<<10|C>>>22)+F|0;D=H+718787259+D+((C|~E)^F)|0;D=(D<<15|D>>>17)+C|0;E=G+-343485551+E+((D|~F)^C)|0;a=F+a|0;f=D+f+(E<<21|E>>>11)|0;h=D+h|0;g=C+g|0;b=b+64|0;e=e+-64|0}while((e|0)!=0);c[y>>2]=a;c[z>>2]=f;c[A>>2]=h;c[B>>2]=g;return b|0}function nj(a,b){a=a|0;b=b|0;eb(a|0,b|0)|0;return}function oj(a,b){a=a|0;b=b|0;var d=0,e=0;d=a+356|0;Ae(d);e=a+336|0;c[e>>2]=(c[e>>2]|0)+b;a=a+352|0;c[a>>2]=(c[a>>2]|0)+b;Ce(d);return}function pj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+4|0;g=b+4|0;e=c[d>>2]|0;c[d>>2]=c[g>>2];c[g>>2]=e;g=a+64|0;e=b+64|0;d=c[g>>2]|0;c[g>>2]=c[e>>2];c[e>>2]=d;e=a+300|0;d=b+300|0;g=c[e>>2]|0;c[e>>2]=c[d>>2];c[d>>2]=g;d=a+8|0;g=b+8|0;e=c[d>>2]|0;c[d>>2]=c[g>>2];c[g>>2]=e;g=a+68|0;e=b+68|0;d=c[g>>2]|0;c[g>>2]=c[e>>2];c[e>>2]=d;e=a+304|0;d=b+304|0;g=c[e>>2]|0;c[e>>2]=c[d>>2];c[d>>2]=g;d=a+12|0;g=b+12|0;e=c[d>>2]|0;c[d>>2]=c[g>>2];c[g>>2]=e;g=a+72|0;e=b+72|0;d=c[g>>2]|0;c[g>>2]=c[e>>2];c[e>>2]=d;e=a+308|0;d=b+308|0;g=c[e>>2]|0;c[e>>2]=c[d>>2];c[d>>2]=g;d=a+40|0;g=b+40|0;e=c[d>>2]|0;c[d>>2]=c[g>>2];c[g>>2]=e;g=a+44|0;e=b+44|0;d=c[g>>2]|0;c[g>>2]=c[e>>2];c[e>>2]=d;e=a+312|0;b=b+312|0;a=e;d=c[a>>2]|0;a=c[a+4>>2]|0;g=b;f=c[g+4>>2]|0;c[e>>2]=c[g>>2];c[e+4>>2]=f;c[b>>2]=d;c[b+4>>2]=a;return}function qj(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function rj(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;k=b+420|0;Do(k)|0;if(a[b>>0]|0){Eo(k)|0;return}i=b+8|0;f=c[i>>2]|0;l=(c[b+12>>2]|0)-f|0;g=b+20|0;j=b+24|0;e=c[j>>2]|0;h=e+(c[g>>2]|0)|0;if((((l|0)==0?0:(l<<8)+-1|0)|0)==(h|0)){sj(b+4|0);e=c[j>>2]|0;h=(c[g>>2]|0)+e|0;f=c[i>>2]|0}c[(c[f+(h>>>10<<2)>>2]|0)+((h&1023)<<2)>>2]=d;c[j>>2]=e+1;db(b+448|0)|0;Eo(k)|0;return}function sj(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;s=hc;o=hc=hc+31&-32;hc=hc+32|0;b=a+16|0;d=c[b>>2]|0;if(d>>>0>1023){c[b>>2]=d+-1024;o=a+4|0;n=c[o>>2]|0;q=c[n>>2]|0;n=n+4|0;c[o>>2]=n;p=a+8|0;b=c[p>>2]|0;m=a+12|0;r=c[m>>2]|0;e=r;do if((b|0)==(r|0)){i=n;d=c[a>>2]|0;f=d;if(n>>>0>d>>>0){e=((i-f>>2)+1|0)/-2|0;f=n+(e<<2)|0;d=b-i|0;if(!d)b=f;else{gB(f|0,n|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){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{h=lz(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;l=e;j=h+(f<<2)|0;if((n|0)==(b|0))b=l;else{f=((b+-4-i|0)>>>2)+1|0;d=n;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[m>>2]=j;if(d){nz(d);b=c[p>>2]|0}}while(0);c[b>>2]=q;c[p>>2]=(c[p>>2]|0)+4;hc=s;return}r=a+8|0;b=c[r>>2]|0;q=a+4|0;l=c[q>>2]|0;i=b-l|0;j=i>>2;p=a+12|0;e=c[p>>2]|0;f=c[a>>2]|0;g=e-f|0;m=b;h=e;n=l;d=f;if(j>>>0>=g>>2>>>0){d=(g|0)==0?1:g>>1;c[o+12>>2]=0;c[o+16>>2]=a+12;do if(d)if(d>>>0>1073741823){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{g=lz(d<<2)|0;f=g;break}else{f=0;g=0}while(0);c[o>>2]=f;b=g+(j<<2)|0;m=o+8|0;c[m>>2]=b;k=o+4|0;c[k>>2]=b;l=o+12|0;c[l>>2]=g+(d<<2);h=lz(4096)|0;do if((j|0)==(d|0)){if((i|0)>0){b=b+(((j+1|0)/-2|0)<<2)|0;c[m>>2]=b;c[k>>2]=b;break}d=(i|0)==0?1:i>>1;b=d>>>2;do if(d)if(d>>>0>1073741823){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{e=lz(d<<2)|0;break}else e=0;while(0);b=e+(b<<2)|0;n=b;c[o>>2]=e;c[k>>2]=n;c[m>>2]=n;c[l>>2]=e+(d<<2);if(g)nz(f)}while(0);c[b>>2]=h;e=(c[m>>2]|0)+4|0;c[m>>2]=e;b=c[r>>2]|0;d=c[q>>2]|0;if((b|0)==(d|0))h=m;else{do{b=b+-4|0;uj(o,b);d=c[q>>2]|0}while((b|0)!=(d|0));h=m;e=c[m>>2]|0;b=c[r>>2]|0}f=d;g=c[a>>2]|0;c[a>>2]=c[o>>2];c[o>>2]=g;c[q>>2]=c[k>>2];c[k>>2]=f;c[r>>2]=e;c[h>>2]=b;a=c[p>>2]|0;c[p>>2]=c[l>>2];c[l>>2]=a;if((d|0)!=(b|0))c[m>>2]=b+(~((b+-4-f|0)>>>2)<<2);if(g|0)nz(g);hc=s;return}if((e|0)==(b|0)){c[o>>2]=lz(4096)|0;tj(a,o);m=c[q>>2]|0;n=c[m>>2]|0;m=m+4|0;c[q>>2]=m;b=c[r>>2]|0;o=c[p>>2]|0;e=o;do if((b|0)==(o|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{gB(f|0,m|0,d|0)|0;b=(c[q>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[r>>2]=a;c[q>>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){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{h=lz(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[q>>2]=l;c[r>>2]=b;c[p>>2]=j;if(d){nz(d);b=c[r>>2]|0}}while(0);c[b>>2]=n;c[r>>2]=(c[r>>2]|0)+4;hc=s;return}else{o=lz(4096)|0;do if((m|0)==(h|0)){if(n>>>0>d>>>0){b=((l-f>>2)+1|0)/-2|0;d=n+(b<<2)|0;if(!i)b=d;else{gB(d|0,l|0,i|0)|0;b=(c[q>>2]|0)+(b<<2)|0}a=d+(j<<2)|0;c[r>>2]=a;c[q>>2]=b;b=a;break}b=(g|0)==0?1:g>>1;h=b>>>2;do if(b)if(b>>>0>1073741823){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{g=lz(b<<2)|0;break}else g=0;while(0);j=g;f=g+(h<<2)|0;k=f;i=g+(b<<2)|0;if((n|0)==(m|0))b=k;else{e=((m+-4-l|0)>>>2)+1|0;d=f;b=n;while(1){c[d>>2]=c[b>>2];b=b+4|0;if((b|0)==(m|0))break;else d=d+4|0}b=g+(e+h<<2)|0;d=c[a>>2]|0}c[a>>2]=j;c[q>>2]=k;c[r>>2]=b;c[p>>2]=i;if(d){nz(d);b=c[r>>2]|0}}while(0);c[b>>2]=o;c[r>>2]=(c[r>>2]|0)+4;hc=s;return}}function tj(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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{h=lz(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){nz(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 uj(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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{h=lz(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){nz(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 vj(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a+12>>2]|0;a=c[a+8>>2]|0;e=a;if((d|0)==(a|0)){b=-1;return b|0}d=d-a>>2;a=0;while(1){if((c[c[e+(a<<2)>>2]>>2]|0)==(b|0)){d=5;break}a=a+1|0;if(a>>>0>=d>>>0){a=-1;d=5;break}}if((d|0)==5)return a|0;return 0}function wj(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;o=hc;n=hc=hc+31&-32;hc=hc+18608|0;m=e+4|0;f=c[m>>2]|0;k=f+1348|0;l=f+1352|0;g=c[k>>2]|0;if((c[l>>2]|0)!=(g|0)){i=b+2144|0;j=b+2152|0;h=0;f=g;do{f=vj(i,c[f+(h<<2)>>2]|0)|0;if((f|0)>-1)c[(c[(c[j>>2]|0)+(f<<2)>>2]|0)+100>>2]=0;h=h+1|0;f=c[k>>2]|0}while(h>>>0<(c[l>>2]|0)-f>>2>>>0);f=c[m>>2]|0}l=c[(c[d>>2]|0)+136>>2]|0;if((c[f+20>>2]|0)>>>0>=(c[l+4352>>2]|0)-(c[l+4348>>2]|0)>>2>>>0){n=6;hc=o;return n|0}l=n+18572|0;Cj(l);k=n+18500|0;h=n+18584|0;f=n+38|0;g=f&14;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;if(!g)c[n+2104>>2]=f;else{f=f+(16-g)|0;c[n+2104>>2]=f}hB(f|0,0,2048)|0;f=c[m>>2]|0;c[n+18592>>2]=f;k=c[d>>2]|0;c[n+18588>>2]=k;c[h>>2]=b;c[n+18596>>2]=d;c[n+18600>>2]=e;c[n+4>>2]=c[(c[(c[k+136>>2]|0)+4348>>2]|0)+(c[f+20>>2]<<2)>>2];c[n+18604>>2]=0;Aj(0,n);f=c[e+12>>2]|0;if((f|0)<1)f=17;else{Yg(n+18548|0,c[e+8>>2]|0,f);do if(a[(c[(c[d>>2]|0)+136>>2]|0)+41>>0]|0?a[(c[m>>2]|0)+8>>0]|0:0){j=d+484|0;i=(c[(c[(c[b+2220>>2]|0)+128>>2]|0)+5064>>2]|0)+-1|0;k=d+488|0;f=c[k>>2]|0;g=c[j>>2]|0;h=f-g>>3;if(i>>>0>h>>>0){Dj(j,i-h|0);break}if(i>>>0<h>>>0){g=g+(i<<3)|0;if((g|0)!=(f|0))do{f=f+-8|0;ff(f)}while((f|0)!=(g|0));c[k>>2]=g}}while(0);c[e+124>>2]=1;f=Fj(n)|0;ze(e+44|0,1)}ff(l);n=f;hc=o;return n|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,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=hc;B=hc=hc+31&-32;hc=hc+16|0;C=c[d>>2]|0;A=c[e+4>>2]|0;m=c[C+136>>2]|0;y=c[A+772>>2]|0;l=y+1|0;f=c[C+128>>2]|0;z=c[f+5056>>2]|0;if((c[C+344>>2]|0)!=(0-(c[C+340>>2]|0)|0))M(60545,60315,992,60796);do if(a[A+8>>0]|0){j=d+484|0;g=(c[f+5064>>2]|0)+-1|0;k=d+488|0;f=c[k>>2]|0;h=c[j>>2]|0;i=f-h>>3;if(g>>>0>i>>>0){Dj(j,g-i|0);break}if(g>>>0<i>>>0){g=h+(g<<3)|0;if((g|0)!=(f|0))do{f=f+-8|0;ff(f)}while((f|0)!=(g|0));c[k>>2]=g}}while(0);zj(e,l);f=c[A+20>>2]|0;j=(f|0)/(z|0)|0;a:do if((y|0)>=0){p=e+140|0;q=e+136|0;r=C+112|0;s=m+4348|0;o=A+780|0;t=e+12|0;v=e+8|0;w=e+124|0;x=b+1392|0;if(!y){if((c[p>>2]|0)<=0)M(60600,60620,174,60631);h=c[q>>2]|0;c[h+18592>>2]=A;c[h+18584>>2]=c[r>>2];c[h+18588>>2]=C;g=h+18596|0;c[g>>2]=d;c[h+18600>>2]=e;c[h+4>>2]=c[(c[s>>2]|0)+(f<<2)>>2];Aj(0,h);f=c[t>>2]|0;if((f|0)<=0)break;Yg(h+18548|0,c[v>>2]|0,f);oj(C,1);c[w>>2]=(c[w>>2]|0)+1;i=lz(20)|0;c[i+4>>2]=0;c[i>>2]=12356;a[i+8>>0]=1;c[i+16>>2]=h;c[i+12>>2]=j;c[h+18604>>2]=i;rj(x,i);f=c[g>>2]|0;c[B>>2]=i;g=f+476|0;h=c[g>>2]|0;if(h>>>0<(c[f+480>>2]|0)>>>0){c[h>>2]=i;c[g>>2]=(c[g>>2]|0)+4}else Bj(f+472|0,B);break}g=j;n=0;while(1){b=(n|0)==0;if(b){if((f|0)%(z|0)|0)break a}else{f=g+1|0;g=f;f=u(f,z)|0}if((c[p>>2]|0)<=(n|0))break;j=c[q>>2]|0;k=j+(n*18608|0)|0;c[j+(n*18608|0)+18592>>2]=A;c[j+(n*18608|0)+18584>>2]=c[r>>2];c[j+(n*18608|0)+18588>>2]=C;l=j+(n*18608|0)+18596|0;c[l>>2]=d;c[j+(n*18608|0)+18600>>2]=e;c[j+(n*18608|0)+4>>2]=c[(c[s>>2]|0)+(f<<2)>>2];Aj(0,k);if(b)i=0;else i=c[(c[o>>2]|0)+(n+-1<<2)>>2]|0;if((n|0)==(y|0))h=t;else h=(c[o>>2]|0)+(n<<2)|0;h=c[h>>2]|0;if((i|0)<0)break a;if(!((h|0)>(i|0)?(h|0)<=(c[t>>2]|0):0))break a;Yg(j+(n*18608|0)+18548|0,(c[v>>2]|0)+i|0,h-i|0);oj(C,1);c[w>>2]=(c[w>>2]|0)+1;m=lz(20)|0;c[m+4>>2]=0;c[m>>2]=12356;a[m+8>>0]=b&1;c[m+16>>2]=k;c[m+12>>2]=g;c[j+(n*18608|0)+18604>>2]=m;rj(x,m);h=c[l>>2]|0;c[B>>2]=m;i=h+476|0;j=c[i>>2]|0;if(j>>>0<(c[h+480>>2]|0)>>>0){c[j>>2]=m;c[i>>2]=(c[i>>2]|0)+4}else Bj(h+472|0,B);if((n|0)<(y|0))n=n+1|0;else break a}M(60600,60620,174,60631)}while(0);$i(C);j=d+472|0;k=d+476|0;g=c[k>>2]|0;f=c[j>>2]|0;if((g|0)==(f|0)){d=g;c[k>>2]=d;hc=D;return 0}i=0;do{h=c[f+(i<<2)>>2]|0;if(h){wc[c[(c[h>>2]|0)+4>>2]&255](h);g=c[k>>2]|0;f=c[j>>2]|0}i=i+1|0}while(i>>>0<g-f>>2>>>0);c[k>>2]=f;hc=D;return 0}function yj(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,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=hc;s=hc=hc+31&-32;hc=hc+16|0;D=c[d>>2]|0;E=c[e+4>>2]|0;F=c[D+136>>2]|0;p=c[E+772>>2]|0;q=c[(c[D+128>>2]|0)+5056>>2]|0;if((c[D+344>>2]|0)!=(0-(c[D+340>>2]|0)|0))M(60545,60315,1106,60576);zj(e,p+1|0);f=c[E+20>>2]|0;a:do if((p|0)<0)G=0;else{r=e+140|0;t=F+44|0;v=F+48|0;w=e+136|0;x=D+112|0;y=F+4348|0;z=E+780|0;A=e+12|0;B=e+8|0;C=e+124|0;o=b+1392|0;g=f;b=c[(c[F+4384>>2]|0)+(f<<2)>>2]|0;n=0;while(1){m=(n|0)==0;if(!m){f=b+1|0;b=c[t>>2]|0;if((f|0)>=(u(c[v>>2]|0,b)|0)){G=1007;break a}l=(f|0)/(b|0)|0;g=c[F+4260+(f-(u(l,b)|0)<<2)>>2]|0;g=(u(c[F+4304+(l<<2)>>2]|0,q)|0)+g|0;b=f}if((c[r>>2]|0)<=(n|0))break;i=c[w>>2]|0;j=i+(n*18608|0)|0;c[i+(n*18608|0)+18592>>2]=E;c[i+(n*18608|0)+18584>>2]=c[x>>2];c[i+(n*18608|0)+18588>>2]=D;k=i+(n*18608|0)+18596|0;c[k>>2]=d;c[i+(n*18608|0)+18600>>2]=e;c[i+(n*18608|0)+4>>2]=c[(c[y>>2]|0)+(g<<2)>>2];Aj(0,j);if(m)h=0;else h=c[(c[z>>2]|0)+(n+-1<<2)>>2]|0;if((n|0)==(p|0))f=A;else f=(c[z>>2]|0)+(n<<2)|0;f=c[f>>2]|0;if((h|0)<0){G=17;break a}if(!((f|0)>(h|0)?(f|0)<=(c[A>>2]|0):0)){G=17;break a}Yg(i+(n*18608|0)+18548|0,(c[B>>2]|0)+h|0,f-h|0);oj(D,1);c[C>>2]=(c[C>>2]|0)+1;f=(g|0)/(q|0)|0;h=g-(u(f,q)|0)|0;l=lz(24)|0;c[l+4>>2]=0;c[l>>2]=12248;a[l+8>>0]=m&1;c[l+20>>2]=j;c[l+12>>2]=h;c[l+16>>2]=f;c[i+(n*18608|0)+18604>>2]=l;rj(o,l);f=c[k>>2]|0;c[s>>2]=l;h=f+476|0;i=c[h>>2]|0;if(i>>>0<(c[f+480>>2]|0)>>>0){c[i>>2]=l;c[h>>2]=(c[h>>2]|0)+4}else Bj(f+472|0,s);if((n|0)<(p|0))n=n+1|0;else{G=0;break a}}M(60600,60620,174,60631)}while(0);$i(D);i=d+472|0;j=d+476|0;f=c[j>>2]|0;b=c[i>>2]|0;if((f|0)==(b|0)){d=f;c[j>>2]=d;hc=H;return G|0}h=0;do{g=c[b+(h<<2)>>2]|0;if(g){wc[c[(c[g>>2]|0)+4>>2]&255](g);f=c[j>>2]|0;b=c[i>>2]|0}h=h+1|0}while(h>>>0<f-b>>2>>>0);c[j>>2]=b;hc=H;return G|0}function zj(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;h=a+136|0;if(c[h>>2]|0)M(60749,60315,172,60771);i=b*18608|0;i=mz(b>>>0>230812|i>>>0>4294967291?-1:i+4|0)|0;c[i>>2]=b;i=i+4|0;if(!b){c[h>>2]=i;i=a+140|0;c[i>>2]=b;return}f=i+(b*18608|0)|0;g=i;do{Cj(g+18572|0);k=g+18500|0;j=g+18584|0;d=g+38|0;e=d&15;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;if(!e)c[g+2104>>2]=d;else{d=d+(16-e)|0;c[g+2104>>2]=d}hB(d|0,0,2048)|0;g=g+18608|0}while((g|0)!=(f|0));c[h>>2]=i;k=a+140|0;c[k>>2]=b;return}function Aj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;hB(d+38|0,0,2064)|0;c[d+18524>>2]=-1;c[d+18528>>2]=-1;g=c[d+18588>>2]|0;f=c[g+136>>2]|0;b=c[g+128>>2]|0;e=c[(c[d+18592>>2]|0)+20>>2]|0;if((e|0)<=0)return;f=c[(c[f+4360>>2]|0)+((c[(c[f+4348>>2]|0)+(e<<2)>>2]|0)+-1<<2)>>2]|0;i=c[b+5056>>2]|0;j=(f|0)/(i|0)|0;i=f-(u(j,i)|0)+1|0;f=c[b+5040>>2]|0;i=(i<<f)+-1|0;f=(j+1<<f)+-1|0;j=(c[b+484>>2]|0)+-1|0;h=(c[b+488>>2]|0)+-1|0;e=c[g+172>>2]|0;b=((j|0)<(i|0)?j:i)>>e;e=((h|0)<(f|0)?h:f)>>e;if((b|0)<=-1)M(60650,60687,120,60707);f=c[g+176>>2]|0;if((b|0)>=(f|0))M(60650,60687,120,60707);if((e|0)<=-1)M(60711,60687,121,60707);if((e|0)>=(c[g+180>>2]|0))M(60711,60687,121,60707);c[d+18520>>2]=a[(c[g+164>>2]|0)+(((u(f,e)|0)+b|0)*3|0)+2>>0];return}function Bj(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function Cj(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;return}function Dj(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=a+8|0;f=c[k>>2]|0;l=a+4|0;d=c[l>>2]|0;if(f-d>>3>>>0>=b>>>0){do{Cj(d);d=(c[l>>2]|0)+8|0;c[l>>2]=d;b=b+-1|0}while((b|0)!=0);return}e=c[a>>2]|0;g=d-e>>3;d=g+b|0;if(d>>>0>536870911)Yz(a);j=f-e|0;e=j>>2;e=j>>3>>>0<268435455?(e>>>0<d>>>0?d:e):536870911;do if(e)if(e>>>0>536870911){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{d=lz(e<<3)|0;break}else d=0;while(0);i=d+(g<<3)|0;h=i;j=d+(e<<3)|0;e=h;d=i;while(1){Cj(d);d=e+8|0;b=b+-1|0;if(!b)break;else e=d}g=d;f=c[a>>2]|0;d=c[l>>2]|0;if((d|0)==(f|0)){b=h;e=f;d=f}else{e=h;b=i;while(1){d=d+-8|0;Ej(b+-8|0,d);b=e+-8|0;if((d|0)==(f|0))break;else e=b}e=c[a>>2]|0;d=c[l>>2]|0}c[a>>2]=b;c[l>>2]=g;c[k>>2]=j;b=e;if((d|0)!=(b|0))do{d=d+-8|0;ff(d)}while((d|0)!=(b|0));if(!e)return;nz(e);return}function Ej(a,b){a=a|0;b=b|0;var d=0,e=0;e=hc;d=hc=hc+31&-32;hc=hc+16|0;if(0){c[d>>2]=a;c[d+4>>2]=b;ko(60818,d)|0}d=c[b+4>>2]|0;if(d|0)c[d>>2]=(c[d>>2]|0)+1;c[a+4>>2]=d;c[a>>2]=c[b>>2];hc=e;return}function Fj(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;e=c[b+18588>>2]|0;f=c[e+128>>2]|0;g=c[b+4>>2]|0;d=c[f+5072>>2]|0;if((g|0)<(d|0)){e=e+136|0;d=c[(c[(c[e>>2]|0)+4360>>2]|0)+(g<<2)>>2]|0;g=c[f+5056>>2]|0;m=(d|0)/(g|0)|0;f=m;g=d-(u(m,g)|0)|0}else{g=c[f+5056>>2]|0;m=(d|0)/(g|0)|0;e=e+136|0;f=m;g=d-(u(m,g)|0)|0}c[b>>2]=d;c[b+8>>2]=g;c[b+12>>2]=f;d=c[e>>2]|0;l=b+18592|0;e=c[l>>2]|0;if(!(tf(b)|0)){b=18;return b|0}m=b+18548|0;wf(m);g=d+42|0;h=b+18552|0;i=b+18584|0;j=b+18572|0;k=b+18580|0;d=0;e=(a[e+16>>0]|0)==0;while(1){do if(d|0){f=d+-1|0;o=c[l>>2]|0;n=c[o+780>>2]|0;if(f>>>0<(c[o+784>>2]|0)-n>>2>>>0?((c[h>>2]|0)+-2-(c[m>>2]|0)|0)==(c[n+(f<<2)>>2]|0):0)break;De((c[i>>2]|0)+4|0,1003,1)}while(0);d=d+1|0;if((xf(b,0,e)|0|2|0)==2){d=0;e=16;break}if(a[g>>0]|0){e=c[l>>2]|0;f=c[e+800>>2]|0;if(f>>>0>=3){e=14;break}vf(j,f,c[e+796>>2]|0);a[k>>0]=0;a[k+1>>0]=0;a[k+2>>0]=0;a[k+3>>0]=0}e=0}if((e|0)==14)M(58514,58545,1511,58556);else if((e|0)==16)return d|0;return 0}function Gj(b,c){b=b|0;c=c|0;Vg(c,1);a[b>>0]=Mf(c,6)|0;a[b+1>>0]=Mf(c,6)|0;a[b+2>>0]=(Mf(c,3)|0)+255;return}function Hj(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,o=0,p=0,q=0;o=hc;m=hc=hc+31&-32;hc=hc+16|0;l=m+4|0;k=m+8|0;n=lz(1360)|0;Jk(n);h=Kk(n,d,b,k)|0;c[m>>2]=h;if(!(a[k>>0]|0)){g=c[b+2220>>2]|0;if(g|0)a[g+324>>0]=2;gf(b+548|0,e);g=c[n+1348>>2]|0;if(g|0){c[n+1352>>2]=g;nz(g)}ff(n+1336|0);g=c[n+780>>2]|0;if(g|0){c[n+784>>2]=g;nz(g)}nz(n);n=h;hc=o;return n|0}g=c[b+528>>2]|0;if((g|0)>-1)Lk(n,b,g);j=e+8|0;j=Mk(b,n,m,c[j>>2]|0,c[j+4>>2]|0,f,c[e+16>>2]|0)|0;k=b+2220|0;g=c[k>>2]|0;if(!j){if(g|0)a[g+324>>0]=2;gf(b+548|0,e);g=c[n+1348>>2]|0;if(g|0){c[n+1352>>2]=g;nz(g)}ff(n+1336|0);g=c[n+780>>2]|0;if(g|0){c[n+784>>2]=g;nz(g)}nz(n);n=c[m>>2]|0;hc=o;return n|0}c[l>>2]=n;f=g+52|0;h=g+56|0;i=c[h>>2]|0;c[n>>2]=i-(c[f>>2]|0)>>2;if((c[g+60>>2]|0)==(i|0))Nk(f,l);else{c[i>>2]=n;c[h>>2]=(c[h>>2]|0)+4}Vg(d,1);Nf(d);f=(c[d>>2]|0)-(c[e+20>>2]|0)|0;h=n+772|0;if((c[h>>2]|0)>0){i=n+780|0;g=0;j=c[i>>2]|0;do{q=Ok(e,c[j+(g<<2)>>2]|0,f)|0;j=c[i>>2]|0;p=j+(g<<2)|0;c[p>>2]=(c[p>>2]|0)-q;g=g+1|0}while((g|0)<(c[h>>2]|0))}if(!(a[n+8>>0]|0))g=b+3216|0;else{h=lz(496)|0;Rg(h+8|0);g=h+440|0;f=g+56|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(f|0));c[l>>2]=h;c[h>>2]=c[k>>2];g=b+3216|0;f=c[g>>2]|0;if((f|0)==(c[b+3220>>2]|0))Pk(b+3212|0,l);else{c[f>>2]=h;c[g>>2]=(c[g>>2]|0)+4}}if((c[b+3212>>2]|0)!=(c[g>>2]|0)){i=lz(152)|0;c[i>>2]=0;f=i+4|0;c[f>>2]=0;c[i+32>>2]=0;a[i+36>>0]=0;Qg(i+44|0);c[i+124>>2]=0;c[i+128>>2]=-1;c[i+132>>2]=-1;c[i+136>>2]=0;c[i+144>>2]=b;c[i+40>>2]=0;c[i+140>>2]=0;c[l>>2]=i;c[i>>2]=e;c[f>>2]=n;f=i+8|0;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[f+16>>2]=c[d+16>>2];c[f+20>>2]=c[d+20>>2];a[i+36>>0]=a[b+3224>>0]|0;g=c[(c[g>>2]|0)+-4>>2]|0;f=g+444|0;h=c[f>>2]|0;if((h|0)==(c[g+448>>2]|0))Qk(g+440|0,l);else{c[h>>2]=i;c[f>>2]=(c[f>>2]|0)+4}}c[m>>2]=Xi(b,l)|0;q=0;hc=o;return q|0}function Ij(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=hc;e=hc=hc+31&-32;hc=hc+16|0;d=e;e=e+8|0;i=lz(668)|0;c[i+4>>2]=0;c[i+8>>2]=0;c[i>>2]=12460;h=i+12|0;hB(h|0,0,656)|0;f=e+4|0;c[e>>2]=h;c[f>>2]=i;c[d>>2]=h;c[d+4>>2]=h;zk(e,d);d=Ak(c[e>>2]|0,a+4|0,b)|0;if(!d){b=c[a+520>>2]|0;if((b|0)>-1)Bk(c[e>>2]|0,b);b=c[e>>2]|0;d=c[b>>2]|0;e=c[f>>2]|0;if(e|0){i=e+4|0;c[i>>2]=(c[i>>2]|0)+1}c[a+600+(d<<3)>>2]=b;i=a+600+(d<<3)+4|0;b=c[i>>2]|0;c[i>>2]=e;if((b|0)!=0?(h=b+4|0,i=c[h>>2]|0,c[h>>2]=i+-1,(i|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b);d=0}else d=0}b=c[f>>2]|0;if(!b){hc=g;return d|0}h=b+4|0;i=c[h>>2]|0;c[h>>2]=i+-1;if(i|0){hc=g;return d|0}wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b);hc=g;return d|0}function Jj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=hc;e=hc=hc+31&-32;hc=hc+16|0;d=e;e=e+8|0;i=lz(5180)|0;c[i+4>>2]=0;c[i+8>>2]=0;c[i>>2]=12432;h=i+12|0;sk(h);f=e+4|0;c[e>>2]=h;c[f>>2]=i;c[d>>2]=h;c[d+4>>2]=h;ck(e,d);d=dk(c[e>>2]|0,a+4|0,b)|0;if(!d){b=c[a+516>>2]|0;if((b|0)>-1)ek(c[e>>2]|0,b);b=c[e>>2]|0;d=c[b+472>>2]|0;e=c[f>>2]|0;if(e|0){i=e+4|0;c[i>>2]=(c[i>>2]|0)+1}c[a+728+(d<<3)>>2]=b;i=a+728+(d<<3)+4|0;b=c[i>>2]|0;c[i>>2]=e;if((b|0)!=0?(h=b+4|0,i=c[h>>2]|0,c[h>>2]=i+-1,(i|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b);d=0}else d=0}b=c[f>>2]|0;if(!b){hc=g;return d|0}h=b+4|0;i=c[h>>2]|0;c[h>>2]=i+-1;if(i|0){hc=g;return d|0}wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b);hc=g;return d|0}function Kj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=hc;e=hc=hc+31&-32;hc=hc+16|0;g=e;e=e+8|0;j=lz(4420)|0;c[j+4>>2]=0;c[j+8>>2]=0;c[j>>2]=12404;f=j+12|0;Yj(f);h=e+4|0;c[e>>2]=f;c[h>>2]=j;c[g>>2]=f;c[g+4>>2]=f;Oj(e,g);g=Pj(c[e>>2]|0,d,b)|0;d=c[b+524>>2]|0;if((d|0)>-1)Qj(c[e>>2]|0,d);if(g){d=c[e>>2]|0;e=a[d+8>>0]|0;f=c[h>>2]|0;if(f|0){j=f+4|0;c[j>>2]=(c[j>>2]|0)+1}c[b+856+(e<<3)>>2]=d;j=b+856+(e<<3)+4|0;d=c[j>>2]|0;c[j>>2]=f;if(d|0?(b=d+4|0,j=c[b>>2]|0,c[b>>2]=j+-1,(j|0)==0):0){wc[c[(c[d>>2]|0)+8>>2]&255](d);iz(d)}}e=g?0:1006;d=c[h>>2]|0;if(!d){hc=i;return e|0}h=d+4|0;j=c[h>>2]|0;c[h>>2]=j+-1;if(j|0){hc=i;return e|0}wc[c[(c[d>>2]|0)+8>>2]&255](d);iz(d);hc=i;return e|0}function Lj(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;f=0;do{i=Mf(d,8)|0;f=i+f|0}while((i|0)==255);h=0;do{i=Mf(d,8)|0;h=i+h|0}while((i|0)==255);c[e>>2]=f;c[e+4>>2]=h;if((f|0)!=132){e=0;return e|0}h=Mf(d,8)|0;i=e+8|0;c[i>>2]=h;if(!g){e=1025;return e|0}g=(c[g+476>>2]|0)==0?1:3;f=0;while(1){switch(h|0){case 0:{a[e+12+(f<<4)>>0]=Mf(d,8)|0;a[e+12+(f<<4)+1>>0]=Mf(d,8)|0;a[e+12+(f<<4)+2>>0]=Mf(d,8)|0;a[e+12+(f<<4)+3>>0]=Mf(d,8)|0;a[e+12+(f<<4)+4>>0]=Mf(d,8)|0;a[e+12+(f<<4)+5>>0]=Mf(d,8)|0;a[e+12+(f<<4)+6>>0]=Mf(d,8)|0;a[e+12+(f<<4)+7>>0]=Mf(d,8)|0;a[e+12+(f<<4)+8>>0]=Mf(d,8)|0;a[e+12+(f<<4)+9>>0]=Mf(d,8)|0;a[e+12+(f<<4)+10>>0]=Mf(d,8)|0;a[e+12+(f<<4)+11>>0]=Mf(d,8)|0;a[e+12+(f<<4)+12>>0]=Mf(d,8)|0;a[e+12+(f<<4)+13>>0]=Mf(d,8)|0;a[e+12+(f<<4)+14>>0]=Mf(d,8)|0;a[e+12+(f<<4)+15>>0]=Mf(d,8)|0;break}case 1:{b[e+60+(f<<1)>>1]=Mf(d,16)|0;break}case 2:{c[e+68+(f<<2)>>2]=Mf(d,32)|0;break}default:{}}f=f+1|0;if((f|0)==(g|0)){f=0;break}h=c[i>>2]|0}return f|0}function Mj(a,b){a=a|0;b=b|0;return}function Nj(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;e=(k|0)/80|0;d=e+1|0;if(d>>>0>53687091)Yz(a);l=a+8|0;h=((c[l>>2]|0)-j|0)/80|0;f=h<<1;f=h>>>0<26843545?(f>>>0<d>>>0?d:f):53687091;do if(f)if(f>>>0>53687091){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{d=lz(f*80|0)|0;break}else d=0;while(0);h=d+(e*80|0)|0;g=d+(f*80|0)|0;f=h;d=b;e=f+80|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));d=h+(((k|0)/-80|0)*80|0)|0;if((k|0)>0)fB(d|0,j|0,k|0)|0;c[a>>2]=d;c[i>>2]=h+80;c[l>>2]=g;if(!j)return;nz(j);return}function Oj(a,b){a=a|0;b=b|0;return}function Pj(d,e,f){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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;a[d>>0]=0;B=d+4|0;h=d+13|0;c[B>>2]=0;c[B+4>>2]=0;a[B+8>>0]=0;a[h>>0]=1;j=d+14|0;a[j>>0]=1;l=d+16|0;c[l>>2]=27;m=d+20|0;a[m>>0]=0;n=d+21|0;a[n>>0]=0;o=d+22|0;a[o>>0]=0;k=d+24|0;q=d+44|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;b[k+16>>1]=0;a[k+18>>0]=0;c[q>>2]=1;r=d+48|0;c[r>>2]=1;p=d+52|0;a[p>>0]=1;s=d+53|0;a[s>>0]=1;t=d+54|0;a[t>>0]=1;hB(d+4180|0,0,168)|0;c[d+4352>>2]=c[d+4348>>2];c[d+4364>>2]=c[d+4360>>2];c[d+4376>>2]=c[d+4372>>2];c[d+4388>>2]=c[d+4384>>2];c[d+4400>>2]=c[d+4396>>2];c[d+4168>>2]=0;u=d+55|0;a[u>>0]=0;v=d+56|0;a[v>>0]=0;w=d+57|0;a[w>>0]=0;x=d+60|0;c[x>>2]=0;y=d+64|0;c[y>>2]=0;z=d+68|0;a[z>>0]=0;A=d+4133|0;a[A>>0]=0;C=d+4136|0;c[C>>2]=2;g=d+4140|0;c[g>>2]=0;b[g+4>>1]=0;i=Wg(e)|0;a[d+8>>0]=i;if((i|0)>63|(i|0)==-99999){De(f+4|0,1009,0);C=0;return C|0}D=Wg(e)|0;i=d+9|0;a[i>>0]=D;if((D|0)>63|(D|0)==-99999){De(f+4|0,1010,0);D=0;return D|0}a[d+10>>0]=Mf(e,1)|0;a[d+39>>0]=Mf(e,1)|0;a[g>>0]=Mf(e,3)|0;a[d+11>>0]=Mf(e,1)|0;a[d+12>>0]=Mf(e,1)|0;D=Wg(e)|0;g=D&255;a[h>>0]=g;if((D|0)==-99999){De(f+4|0,1006,0);D=0;return D|0}a[h>>0]=g+1<<24>>24;D=Wg(e)|0;g=D&255;a[j>>0]=g;if((D|0)==-99999){De(f+4|0,1006,0);D=0;return D|0}a[j>>0]=g+1<<24>>24;g=c[f+728+(a[i>>0]<<3)>>2]|0;if(!g){De(f+4|0,1010,0);D=0;return D|0}c[B>>2]=g;g=Xg(e)|0;c[l>>2]=g;if((g|0)==-99999){De(f+4|0,1006,0);D=0;return D|0}c[l>>2]=g+26;a[m>>0]=Mf(e,1)|0;a[n>>0]=Mf(e,1)|0;D=(Mf(e,1)|0)&255;a[o>>0]=D;if(D<<24>>24){D=Wg(e)|0;c[k>>2]=D;if((D|0)==-99999){De(f+4|0,1006,0);D=0;return D|0}}else c[k>>2]=0;D=Xg(e)|0;c[d+28>>2]=D;if((D|0)==-99999){De(f+4|0,1006,0);D=0;return D|0}D=Xg(e)|0;c[d+32>>2]=D;if((D|0)==-99999){De(f+4|0,1006,0);D=0;return D|0}a[d+36>>0]=Mf(e,1)|0;a[d+37>>0]=Mf(e,1)|0;a[d+38>>0]=Mf(e,1)|0;a[d+40>>0]=Mf(e,1)|0;D=d+42|0;a[D>>0]=Mf(e,1)|0;a[d+41>>0]=Mf(e,1)|0;if(!(a[D>>0]|0)){c[q>>2]=1;c[r>>2]=1;a[p>>0]=1;g=0}else{g=Wg(e)|0;c[q>>2]=g;if((g|0)==-99999|(g|0)>9){De(f+4|0,1006,0);D=0;return D|0}c[q>>2]=g+1;g=Wg(e)|0;c[r>>2]=g;if((g|0)==-99999|(g|0)>9){De(f+4|0,1006,0);D=0;return D|0}c[r>>2]=g+1;D=Mf(e,1)|0;a[p>>0]=D;do if(!(D&255)){h=c[B>>2]|0;i=c[h+5056>>2]|0;h=c[h+5064>>2]|0;D=c[q>>2]|0;g=D+-1|0;a:do if((D|0)>1){k=0;while(1){g=Wg(e)|0;j=d+4180+(k<<2)|0;c[j>>2]=g;if((g|0)==-99999)break;g=g+1|0;c[j>>2]=g;i=i-g|0;k=k+1|0;g=(c[q>>2]|0)+-1|0;if((k|0)>=(g|0))break a}De(f+4|0,1006,0);D=0;return D|0}while(0);if((i|0)<1){D=0;return D|0}c[d+4180+(g<<2)>>2]=i;D=c[r>>2]|0;g=D+-1|0;b:do if((D|0)>1){j=0;while(1){g=Wg(e)|0;i=d+4220+(j<<2)|0;c[i>>2]=g;if((g|0)==-99999)break;g=g+1|0;c[i>>2]=g;h=h-g|0;j=j+1|0;g=(c[r>>2]|0)+-1|0;if((j|0)>=(g|0))break b}De(f+4|0,1006,0);D=0;return D|0}while(0);if((h|0)<1){D=0;return D|0}else{c[d+4220+(g<<2)>>2]=h;break}}while(0);g=(Mf(e,1)|0)&255}a[s>>0]=g;c[x>>2]=0;c[y>>2]=0;a[t>>0]=Mf(e,1)|0;D=(Mf(e,1)|0)&255;a[u>>0]=D;do if(D<<24>>24){a[v>>0]=Mf(e,1)|0;D=(Mf(e,1)|0)&255;a[w>>0]=D;if(!(D<<24>>24)){g=Xg(e)|0;c[x>>2]=g;if((g|0)==-99999){De(f+4|0,1006,0);D=0;return D|0}c[x>>2]=g<<1;g=Xg(e)|0;c[y>>2]=g;if((g|0)!=-99999){c[y>>2]=g<<1;break}De(f+4|0,1006,0);D=0;return D|0}}else{a[v>>0]=0;a[w>>0]=0}while(0);D=Mf(e,1)|0;h=D&255;a[z>>0]=h;g=c[B>>2]|0;if(!((D&255|0)==0|(a[g+636>>0]|0)!=0)){De(f+4|0,1006,0);D=0;return D|0}if(h<<24>>24){g=Tj(e,g,d+69|0,1)|0;if(g|0){De(f+4|0,g,0);D=0;return D|0}}else fB(d+69|0,g+638|0,4064)|0;a[A>>0]=Mf(e,1)|0;g=Wg(e)|0;c[C>>2]=g;if((g|0)==-99999){De(f+4|0,1006,0);D=0;return D|0}c[C>>2]=g+2;D=c[B>>2]|0;if((g|0)>((c[D+612>>2]|0)+-2+(c[D+616>>2]|0)|0)){D=0;return D|0}a[d+4141>>0]=Mf(e,1)|0;D=(Mf(e,1)|0)&255;a[d+4142>>0]=D;if((D<<24>>24?(D=d+4143|0,a[D>>0]=Mf(e,1)|0,a[d+4144>>0]=Mf(e,1)|0,a[d+4145>>0]=Mf(e,6)|0,a[D>>0]|0):0)?!(Uj(d+4146|0,e,f,d)|0):0){D=0;return D|0}Vj(d,c[B>>2]|0);a[d>>0]=1;D=1;return D|0}function Qj(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,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;ca=hc;f=hc=hc+31&-32;hc=hc+400|0;W=f+392|0;V=f+384|0;U=f+376|0;T=f+368|0;S=f+360|0;R=f+352|0;Q=f+344|0;P=f+336|0;O=f+328|0;N=f+320|0;M=f+312|0;L=f+304|0;K=f+296|0;J=f+288|0;ba=f+280|0;aa=f+272|0;$=f+264|0;_=f+256|0;Z=f+248|0;Y=f+240|0;X=f+232|0;I=f+224|0;H=f+216|0;G=f+208|0;E=f+200|0;D=f+192|0;C=f+184|0;B=f+176|0;z=f+168|0;x=f+160|0;w=f+152|0;v=f+144|0;u=f+136|0;t=f+128|0;s=f+120|0;r=f+112|0;q=f+104|0;p=f+96|0;o=f+88|0;m=f+80|0;l=f+72|0;k=f+64|0;j=f+56|0;i=f+48|0;h=f+40|0;A=f+32|0;y=f+24|0;n=f+16|0;g=f+8|0;switch(d|0){case 1:{e=48404;break}case 2:{e=48396;break}default:{hc=ca;return}}F=c[e>>2]|0;Rj(F,60833,f);c[g>>2]=a[b+8>>0];Rj(F,60874,g);c[n>>2]=a[b+9>>0];Rj(F,60907,n);c[y>>2]=a[b+10>>0];Rj(F,60940,y);c[A>>2]=a[b+11>>0];Rj(F,60984,A);c[h>>2]=a[b+12>>0];Rj(F,61017,h);c[i>>2]=a[b+13>>0];Rj(F,61050,i);c[j>>2]=a[b+14>>0];Rj(F,61086,j);c[k>>2]=c[b+16>>2];Rj(F,61122,k);c[l>>2]=a[b+20>>0];Rj(F,61155,l);c[m>>2]=a[b+21>>0];Rj(F,61188,m);A=b+22|0;c[o>>2]=a[A>>0];Rj(F,61221,o);if(a[A>>0]|0){c[p>>2]=c[b+24>>2];Rj(F,61254,p)}c[q>>2]=c[b+28>>2];Rj(F,61287,q);c[r>>2]=c[b+32>>2];Rj(F,61322,r);c[s>>2]=a[b+36>>0];Rj(F,61357,s);c[t>>2]=a[b+37>>0];Rj(F,61404,t);c[u>>2]=a[b+38>>0];Rj(F,61439,u);c[v>>2]=a[b+39>>0];Rj(F,61474,v);c[w>>2]=a[b+40>>0];Rj(F,61509,w);A=b+42|0;c[x>>2]=a[A>>0];Rj(F,61544,x);c[z>>2]=a[b+41>>0];Rj(F,61579,z);if(a[A>>0]|0){f=b+44|0;c[B>>2]=c[f>>2];Rj(F,61617,B);g=b+48|0;c[C>>2]=c[g>>2];Rj(F,61643,C);c[D>>2]=a[b+52>>0];Rj(F,61669,D);Rj(F,61695,E);if((c[f>>2]|0)>=0){e=0;while(1){c[I>>2]=c[b+4260+(e<<2)>>2];Rj(F,61742,I);if((e|0)<(c[f>>2]|0))e=e+1|0;else break}}Rj(F,67394,G);Rj(F,61720,H);if((c[g>>2]|0)>=0){e=0;while(1){c[Z>>2]=c[b+4304+(e<<2)>>2];Rj(F,61742,Z);if((e|0)<(c[g>>2]|0))e=e+1|0;else break}}Rj(F,67394,X);c[Y>>2]=a[b+53>>0];Rj(F,61747,Y)}c[_>>2]=a[b+54>>0];Rj(F,61791,_);_=b+55|0;c[$>>2]=a[_>>0];Rj(F,61839,$);if(a[_>>0]|0){c[aa>>2]=a[b+56>>0];Rj(F,61883,aa);c[ba>>2]=a[b+57>>0];Rj(F,61928,ba);c[J>>2]=c[b+60>>2];Rj(F,61968,J);c[K>>2]=c[b+64>>2];Rj(F,61986,K)}c[L>>2]=a[b+68>>0];Rj(F,62004,L);c[M>>2]=a[b+4133>>0];Rj(F,62044,M);c[N>>2]=c[b+4136>>2];Rj(F,62081,N);c[O>>2]=a[b+4140>>0];Rj(F,62118,O);c[P>>2]=a[b+4141>>0];Rj(F,62155,P);c[Q>>2]=a[b+4142>>0];Rj(F,62205,Q);ba=b+4143|0;c[R>>2]=a[ba>>0];Rj(F,62241,R);c[S>>2]=a[b+4144>>0];Rj(F,62277,S);c[T>>2]=a[b+4145>>0];Rj(F,62313,T);c[U>>2]=c[b+4168>>2];Rj(F,62349,U);c[V>>2]=c[b+4172>>2];Rj(F,62385,V);c[W>>2]=c[b+4176>>2];Rj(F,62426,W);if(!(a[ba>>0]|0)){hc=ca;return}Sj(b+4146|0,d);hc=ca;return}function Rj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=hc;g=hc=hc+31&-32;hc=hc+16|0;h=(a[d>>0]|0)==42;f=c[12101]|0;if(!h)Jn(62926,6,1,f)|0;c[g>>2]=e;Cm(b,d+(h&1)|0,g)|0;Qn(f)|0;hc=i;return}function Sj(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;r=hc;g=hc=hc+31&-32;hc=hc+80|0;q=g+72|0;p=g+64|0;o=g+56|0;n=g+48|0;i=g+40|0;l=g+32|0;k=g+24|0;j=g+16|0;h=g+8|0;switch(e|0){case 1:{e=48404;break}case 2:{e=48396;break}default:{hc=r;return}}f=c[e>>2]|0;Rj(f,62467,g);c[h>>2]=d[b>>0];Rj(f,62510,h);c[j>>2]=d[b+1>>0];Rj(f,62556,j);j=b+2|0;c[k>>2]=d[j>>0];Rj(f,62602,k);if(a[j>>0]|0?(c[l>>2]=d[b+3>>0],Rj(f,62648,l),m=b+4|0,c[i>>2]=d[m>>0],Rj(f,62694,i),a[m>>0]|0):0){e=0;do{l=a[b+5+e>>0]|0;c[n>>2]=e;c[n+4>>2]=l;Rj(f,62740,n);l=a[b+11+e>>0]|0;c[o>>2]=e;c[o+4>>2]=l;Rj(f,62787,o);e=e+1|0}while(e>>>0<(d[m>>0]|0)>>>0)}c[p>>2]=d[b+17>>0];Rj(f,62834,p);c[q>>2]=d[b+18>>0];Rj(f,62880,q);hc=r;return}function Tj(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;u=hc;o=hc=hc+31&-32;hc=hc+6240|0;n=o+6144|0;t=0;a:while(1){p=(t|0)==3;q=p?2:6;r=(t|0)==0;s=r?16:64;l=t>>>0>1;m=(t|0)!=3;k=0;do{j=o+(k<<10)|0;h=p&(k|0)==1;do if(!(((Mf(b,1)|0)&255)<<24>>24)){e=Wg(b)|0;if((e|0)==-99999|(k|0)<(e|0)){i=30;break a}g=n+(t*24|0)+(k<<2)|0;c[g>>2]=16;if(e|0){if(!(m|(e|0)==1)){i=12;break a}h=k-e|0;fB(j|0,o+(h<<10)|0,s|0)|0;h=c[n+(t*24|0)+(h<<2)>>2]|0;c[g>>2]=h;i=20;break}if(r){c[j>>2]=c[940];c[j+4>>2]=c[941];c[j+8>>2]=c[942];c[j+12>>2]=c[943];i=21;break}if(k>>>0<3^h){e=j;g=3776;h=e+64|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(h|0));h=16;i=20;break}else{e=j;g=3840;h=e+64|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while((e|0)<(h|0));h=16;i=20;break}}else{if(l){e=Xg(b)|0;if((e+7|0)>>>0>254){i=30;break a}h=e+8|0;c[n+(t*24|0)+(k<<2)>>2]=h;e=h}else{e=8;h=16}i=0;while(1){g=Xg(b)|0;if((g+128|0)>>>0>255){i=30;break a}e=(e+256+g|0)%256|0;a[o+(k<<10)+i>>0]=e;i=i+1|0;if(i>>>0>=s>>>0){i=20;break}}}while(0);b:do if((i|0)==20){i=0;switch(t&2147483647|0){case 0:{i=21;break b}case 1:{g=qg(3,0)|0;e=0;do{a[((d[g+(e<<1)+1>>0]|0)<<3)+(d[g+(e<<1)>>0]|0)+(f+96+(k<<6))>>0]=a[o+(k<<10)+e>>0]|0;e=e+1|0}while((e|0)!=64);break}case 2:{g=qg(3,0)|0;e=0;do{j=g+(e<<1)|0;v=g+(e<<1)+1|0;w=a[o+(k<<10)+e>>0]|0;a[((d[v>>0]|0)<<5)+((d[j>>0]|0)<<1)+(f+480+(k<<8))>>0]=w;a[((d[j>>0]|0)<<1|1)+((d[v>>0]|0)<<5)+(f+480+(k<<8))>>0]=w;a[((d[v>>0]|0)<<5|16)+((d[j>>0]|0)<<1)+(f+480+(k<<8))>>0]=w;a[((d[v>>0]|0)<<5|16)+((d[j>>0]|0)<<1|1)+(f+480+(k<<8))>>0]=w;e=e+1|0}while((e|0)!=64);a[f+480+(k<<8)>>0]=h;break b}case 3:{w=f+2016+(k<<10)|0;Xj(w,j,3);a[w>>0]=h;break b}default:break b}}while(0);if((i|0)==21)Xj(f+(k<<4)|0,j,0);k=k+1|0}while(k>>>0<q>>>0);t=t+1|0;if(t>>>0>=4){e=0;i=31;break}}if((i|0)==12)M(62982,63019,910,63028);else if((i|0)==30){w=8;hc=u;return w|0}else if((i|0)==31){hc=u;return e|0}return 0}function Uj(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;j=c[f+728+(a[g+9>>0]<<3)>>2]|0;if(a[g+21>>0]|0)a[b>>0]=(Wg(e)|0)+2;i=(Mf(e,1)|0)!=0;a[b+1>>0]=i&1;h=j+5012|0;if(!((c[h>>2]|0)==3|i^1))De(f+4|0,1006,0);k=(Mf(e,1)|0)!=0;i=b+2|0;g=k&1;a[i>>0]=g;if(!((c[h>>2]|0)!=0|k^1)){De(f+4|0,1006,0);g=a[i>>0]|0}a:do if(g<<24>>24){g=Wg(e)|0;if((g|0)!=-99999?(g|0)<=(c[j+616>>2]|0):0){a[b+3>>0]=g;g=Wg(e)|0;if((g|0)==-99999|(g|0)>5){De(f+4|0,1006,0);k=0;return k|0}k=g+1|0;i=b+4|0;a[i>>0]=k;if(!(k&255))break;h=0;while(1){g=Xg(e)|0;if((g+12|0)>>>0>24){g=16;break}a[b+5+h>>0]=g;g=Xg(e)|0;if((g+12|0)>>>0>24){g=18;break}a[b+11+h>>0]=g;h=h+1|0;if(h>>>0>=(d[i>>0]|0)>>>0)break a}if((g|0)==16){De(f+4|0,1006,0);k=0;return k|0}else if((g|0)==18){De(f+4|0,1006,0);k=0;return k|0}}De(f+4|0,1006,0);k=0;return k|0}while(0);g=Wg(e)|0;if((g|0)!=-99999?(k=c[j+4996>>2]|0,(g|0)<=(((k|0)<10?0:k+-10|0)|0)):0){a[b+17>>0]=g;g=Wg(e)|0;if((g|0)!=-99999?(k=c[j+5004>>2]|0,(g|0)<=(((k|0)<10?0:k+-10|0)|0)):0){a[b+18>>0]=g;k=1;return k|0}De(f+4|0,1006,0);k=0;return k|0}De(f+4|0,1006,0);k=0;return k|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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=hc;B=e+5040|0;z=c[B>>2]|0;c[b+4168>>2]=z-(c[b+24>>2]|0);c[b+4172>>2]=z-(d[b+4149>>0]|0);c[b+4176>>2]=d[b+4146>>0];z=b+44|0;j=c[z>>2]|0;if(a[b+52>>0]|0){h=hc;hc=hc+((1*((j<<2)+4|0)|0)+15&-16)|0;if((j|0)>=0){g=c[e+5056>>2]|0;f=0;while(1){c[h+(f<<2)>>2]=(u(g,f)|0)/(j|0)|0;if((f|0)==(j|0))break;else f=f+1|0}if((j|0)>0){f=0;g=c[h>>2]|0;do{A=f;f=f+1|0;y=g;g=c[h+(f<<2)>>2]|0;c[b+4180+(A<<2)>>2]=g-y}while((f|0)!=(j|0))}}h=c[b+48>>2]|0;i=hc;hc=hc+((1*((h<<2)+4|0)|0)+15&-16)|0;if((h|0)>=0){g=c[e+5064>>2]|0;f=0;while(1){c[i+(f<<2)>>2]=(u(g,f)|0)/(h|0)|0;if((f|0)==(h|0))break;else f=f+1|0}if((h|0)>0){f=0;g=c[i>>2]|0;do{A=f;f=f+1|0;y=g;g=c[i+(f<<2)>>2]|0;c[b+4220+(A<<2)>>2]=g-y}while((f|0)!=(h|0))}}}c[b+4260>>2]=0;if((j|0)>0){f=0;g=0;do{g=(c[b+4180+(f<<2)>>2]|0)+g|0;f=f+1|0;c[b+4260+(f<<2)>>2]=g}while((f|0)<(j|0))}c[b+4304>>2]=0;x=b+48|0;h=c[x>>2]|0;if((h|0)>0){f=0;g=0;do{g=(c[b+4220+(f<<2)>>2]|0)+g|0;f=f+1|0;c[b+4304+(f<<2)>>2]=g}while((f|0)<(h|0))}A=b+4348|0;r=e+5072|0;f=c[r>>2]|0;g=b+4352|0;h=c[A>>2]|0;i=(c[g>>2]|0)-h>>2;if(f>>>0<=i>>>0){if(f>>>0<i>>>0)c[g>>2]=h+(f<<2)}else{Wj(A,f-i|0);f=c[r>>2]|0}q=b+4360|0;g=b+4364|0;h=c[q>>2]|0;i=(c[g>>2]|0)-h>>2;if(f>>>0<=i>>>0){if(f>>>0<i>>>0)c[g>>2]=h+(f<<2)}else{Wj(q,f-i|0);f=c[r>>2]|0}w=b+4372|0;g=b+4376|0;h=c[w>>2]|0;i=(c[g>>2]|0)-h>>2;if(f>>>0<=i>>>0){if(f>>>0<i>>>0)c[g>>2]=h+(f<<2)}else{Wj(w,f-i|0);f=c[r>>2]|0}v=b+4384|0;g=b+4388|0;h=c[v>>2]|0;i=(c[g>>2]|0)-h>>2;if(f>>>0<=i>>>0){if(f>>>0<i>>>0)c[g>>2]=h+(f<<2)}else Wj(v,f-i|0);y=b+4396|0;f=c[e+5096>>2]|0;g=b+4400|0;h=c[y>>2]|0;i=(c[g>>2]|0)-h>>2;if(f>>>0<=i>>>0){if(f>>>0<i>>>0)c[g>>2]=h+(f<<2)}else Wj(y,f-i|0);a:do if((c[r>>2]|0)>0){m=e+5056|0;n=c[A>>2]|0;l=0;while(1){p=c[m>>2]|0;o=(l|0)/(p|0)|0;p=l-(u(o,p)|0)|0;h=c[z>>2]|0;if((h|0)>0){g=0;f=-1;do{f=(p|0)<(c[b+4260+(g<<2)>>2]|0)?f:g;g=g+1|0}while((g|0)<(h|0))}else f=-1;i=c[x>>2]|0;if((i|0)>0){h=0;g=-1;do{g=(o|0)<(c[b+4304+(h<<2)>>2]|0)?g:h;h=h+1|0}while((h|0)<(i|0))}else g=-1;k=n+(l<<2)|0;c[k>>2]=0;if((f|0)>0){j=b+4220+(g<<2)|0;i=0;h=0;do{h=h+(u(c[b+4180+(i<<2)>>2]|0,c[j>>2]|0)|0)|0;c[k>>2]=h;i=i+1|0}while((i|0)!=(f|0))}else h=0;if((g|0)>0){i=0;do{h=h+(u(c[b+4220+(i<<2)>>2]|0,c[m>>2]|0)|0)|0;c[k>>2]=h;i=i+1|0}while((i|0)!=(g|0))}if((g|f|0)<=-1)break;t=h+(u(o-(c[b+4304+(g<<2)>>2]|0)|0,c[b+4180+(f<<2)>>2]|0)|0)|0;c[k>>2]=t;t=p-(c[b+4260+(f<<2)>>2]|0)+t|0;c[k>>2]=t;c[(c[q>>2]|0)+(t<<2)>>2]=l;l=l+1|0;if((l|0)>=(c[r>>2]|0))break a}M(62933,62954,620,62963)}while(0);f=c[x>>2]|0;if((f|0)>0){t=e+5056|0;i=0;h=0;g=c[z>>2]|0;do if((g|0)>0){s=b+4304+(h<<2)|0;h=h+1|0;r=b+4304+(h<<2)|0;j=0;f=c[r>>2]|0;do{k=c[s>>2]|0;if((k|0)<(f|0)){q=b+4260+(j<<2)|0;j=j+1|0;p=b+4260+(j<<2)|0;g=c[p>>2]|0;do{l=c[q>>2]|0;if((l|0)<(g|0)){m=c[A>>2]|0;n=c[w>>2]|0;o=c[v>>2]|0;f=l;do{c[n+(c[m+((u(c[t>>2]|0,k)|0)+f<<2)>>2]<<2)>>2]=i;c[o+((u(c[t>>2]|0,k)|0)+f<<2)>>2]=i;f=f+1|0;g=c[p>>2]|0}while((f|0)<(g|0));f=c[r>>2]|0}k=k+1|0}while((k|0)<(f|0));g=c[z>>2]|0}else j=j+1|0;i=i+1|0}while((j|0)<(g|0));f=c[x>>2]|0}else h=h+1|0;while((h|0)<(f|0))}n=e+5092|0;f=c[n>>2]|0;if((f|0)<=0){hc=C;return}o=e+5088|0;p=e+5100|0;m=e+5056|0;l=0;g=c[o>>2]|0;do{if((g|0)>0){j=c[A>>2]|0;k=c[y>>2]|0;i=0;do{f=c[p>>2]|0;e=c[B>>2]|0;c[k+((u(g,l)|0)+i<<2)>>2]=c[j+((u(c[m>>2]|0,l<<f>>e)|0)+(i<<f>>e)<<2)>>2]<<(e-f<<1);f=c[B>>2]|0;g=c[p>>2]|0;if((f|0)>(g|0)){h=f-g|0;g=0;f=0;do{e=1<<g;f=((e&l|0)==0?0:e<<1<<g)+f+((e&i|0)==0?0:e<<g)|0;g=g+1|0}while((g|0)<(h|0))}else f=0;g=k+((u(c[o>>2]|0,l)|0)+i<<2)|0;c[g>>2]=(c[g>>2]|0)+f;i=i+1|0;g=c[o>>2]|0}while((i|0)<(g|0));f=c[n>>2]|0}l=l+1|0}while((l|0)<(f|0));hc=C;return}function Wj(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=a+8|0;e=c[k>>2]|0;l=a+4|0;d=c[l>>2]|0;if(e-d>>2>>>0>=b>>>0){hB(d|0,0,b<<2|0)|0;c[l>>2]=d+(b<<2);return}j=c[a>>2]|0;i=d-j|0;h=i>>2;d=h+b|0;if(d>>>0>1073741823)Yz(a);f=e-j|0;g=f>>1;g=f>>2>>>0<536870911?(g>>>0<d>>>0?d:g):1073741823;do if(g)if(g>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(g<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(h<<2)|0;hB(d|0,0,b<<2|0)|0;if((i|0)>0)fB(f|0,j|0,i|0)|0;c[a>>2]=e;c[l>>2]=d+(b<<2);c[k>>2]=e+(g<<2);if(!j)return;nz(j);return}function Xj(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0;switch(e|0){case 0:{f=qg(2,0)|0;a[b+(((d[f+1>>0]|0)<<2)+(d[f>>0]|0))>>0]=a[c>>0]|0;a[b+(((d[f+3>>0]|0)<<2)+(d[f+2>>0]|0))>>0]=a[c+1>>0]|0;a[b+(((d[f+5>>0]|0)<<2)+(d[f+4>>0]|0))>>0]=a[c+2>>0]|0;a[b+(((d[f+7>>0]|0)<<2)+(d[f+6>>0]|0))>>0]=a[c+3>>0]|0;a[b+(((d[f+9>>0]|0)<<2)+(d[f+8>>0]|0))>>0]=a[c+4>>0]|0;a[b+(((d[f+11>>0]|0)<<2)+(d[f+10>>0]|0))>>0]=a[c+5>>0]|0;a[b+(((d[f+13>>0]|0)<<2)+(d[f+12>>0]|0))>>0]=a[c+6>>0]|0;a[b+(((d[f+15>>0]|0)<<2)+(d[f+14>>0]|0))>>0]=a[c+7>>0]|0;a[b+(((d[f+17>>0]|0)<<2)+(d[f+16>>0]|0))>>0]=a[c+8>>0]|0;a[b+(((d[f+19>>0]|0)<<2)+(d[f+18>>0]|0))>>0]=a[c+9>>0]|0;a[b+(((d[f+21>>0]|0)<<2)+(d[f+20>>0]|0))>>0]=a[c+10>>0]|0;a[b+(((d[f+23>>0]|0)<<2)+(d[f+22>>0]|0))>>0]=a[c+11>>0]|0;a[b+(((d[f+25>>0]|0)<<2)+(d[f+24>>0]|0))>>0]=a[c+12>>0]|0;a[b+(((d[f+27>>0]|0)<<2)+(d[f+26>>0]|0))>>0]=a[c+13>>0]|0;a[b+(((d[f+29>>0]|0)<<2)+(d[f+28>>0]|0))>>0]=a[c+14>>0]|0;a[b+(((d[f+31>>0]|0)<<2)+(d[f+30>>0]|0))>>0]=a[c+15>>0]|0;return}case 1:{f=qg(3,0)|0;e=0;do{a[b+(((d[f+(e<<1)+1>>0]|0)<<3)+(d[f+(e<<1)>>0]|0))>>0]=a[c+e>>0]|0;e=e+1|0}while((e|0)!=64);return}case 2:{f=qg(3,0)|0;e=0;do{h=f+(e<<1)|0;g=f+(e<<1)+1|0;i=c+e|0;a[b+(((d[h>>0]|0)<<1)+((d[g>>0]|0)<<5))>>0]=a[i>>0]|0;a[b+(((d[h>>0]|0)<<1|1)+((d[g>>0]|0)<<5))>>0]=a[i>>0]|0;a[b+(((d[h>>0]|0)<<1)+((d[g>>0]|0)<<5|16))>>0]=a[i>>0]|0;a[b+(((d[h>>0]|0)<<1|1)+((d[g>>0]|0)<<5|16))>>0]=a[i>>0]|0;e=e+1|0}while((e|0)!=64);return}case 3:{f=qg(3,0)|0;e=0;do{h=f+(e<<1)|0;i=f+(e<<1)+1|0;g=c+e|0;a[b+(((d[h>>0]|0)<<2)+((d[i>>0]|0)<<7))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|1)+((d[i>>0]|0)<<7))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|2)+((d[i>>0]|0)<<7))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|3)+((d[i>>0]|0)<<7))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2)+((d[i>>0]|0)<<7|32))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|1)+((d[i>>0]|0)<<7|32))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|2)+((d[i>>0]|0)<<7|32))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|3)+((d[i>>0]|0)<<7|32))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2)+((d[i>>0]|0)<<7|64))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|1)+((d[i>>0]|0)<<7|64))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|2)+((d[i>>0]|0)<<7|64))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|3)+((d[i>>0]|0)<<7|64))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2)+((d[i>>0]|0)<<7|96))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|1)+((d[i>>0]|0)<<7|96))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|2)+((d[i>>0]|0)<<7|96))>>0]=a[g>>0]|0;a[b+(((d[h>>0]|0)<<2|3)+((d[i>>0]|0)<<7|96))>>0]=a[g>>0]|0;e=e+1|0}while((e|0)!=64);return}default:M(69335,63019,847,63046)}}function Yj(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;a[d+4146>>0]=2;g=d+4147|0;a[d+4163>>0]=0;a[d+4164>>0]=0;a[g>>0]=0;a[g+1>>0]=0;a[g+2>>0]=0;a[g+3>>0]=0;g=d+4352|0;h=d+4364|0;i=d+4376|0;j=d+4388|0;e=d+4400|0;a[d>>0]=0;k=d+4|0;f=d+13|0;c[k>>2]=0;c[k+4>>2]=0;a[k+8>>0]=0;k=d+4348|0;l=k+60|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(l|0));a[f>>0]=1;a[d+14>>0]=1;c[d+16>>2]=27;a[d+20>>0]=0;a[d+21>>0]=0;a[d+22>>0]=0;l=d+24|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;b[l+16>>1]=0;a[l+18>>0]=0;c[d+44>>2]=1;c[d+48>>2]=1;a[d+52>>0]=1;a[d+53>>0]=1;a[d+54>>0]=1;hB(d+4180|0,0,168)|0;c[g>>2]=0;c[h>>2]=0;c[i>>2]=0;c[j>>2]=0;c[e>>2]=0;c[d+4168>>2]=0;a[d+55>>0]=0;a[d+56>>0]=0;a[d+57>>0]=0;c[d+60>>2]=0;c[d+64>>2]=0;a[d+68>>0]=0;a[d+4133>>0]=0;c[d+4136>>2]=2;l=d+4140|0;c[l>>2]=0;b[l+4>>1]=0;return}function Zj(a){a=a|0;c[a>>2]=12404;bk(a+12|0);gz(a);return}function _j(a){a=a|0;c[a>>2]=12404;bk(a+12|0);gz(a);nz(a);return}function $j(a){a=a|0;bk(a+12|0);return}function ak(a){a=a|0;nz(a);return}function bk(a){a=a|0;var b=0;b=c[a+4396>>2]|0;if(b|0){c[a+4400>>2]=b;nz(b)}b=c[a+4384>>2]|0;if(b|0){c[a+4388>>2]=b;nz(b)}b=c[a+4372>>2]|0;if(b|0){c[a+4376>>2]=b;nz(b)}b=c[a+4360>>2]|0;if(b|0){c[a+4364>>2]=b;nz(b)}b=c[a+4348>>2]|0;if(!b)return;c[a+4352>>2]=b;nz(b);return}function ck(a,b){a=a|0;b=b|0;return}function dk(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;a[b+1>>0]=Mf(e,4)|0;l=(Mf(e,3)|0)+1|0;j=b+2|0;a[j>>0]=l;if((l<<24|0)>117440512){b=8;return b|0}a[b+3>>0]=Mf(e,1)|0;kk(b+4|0,e,a[j>>0]|0);f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}c[b+472>>2]=f;if((f|0)>15){b=8;return b|0}f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}g=b+476|0;c[g>>2]=f;if((f|0)==3){h=(Mf(e,1)|0)&255;f=c[g>>2]|0}else h=0;a[b+480>>0]=h;if(f>>>0>3){De(d,1019,0);b=8;return b|0}f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}g=b+484|0;c[g>>2]=f;h=Wg(e)|0;if((h|0)==-99999){De(d,8,0);b=8;return b|0}c[b+488>>2]=h;f=c[g>>2]|0;if((h|0)==0|(f|0)==0){b=8;return b|0}if((h|0)>7e4|(f|0)>7e4){b=8;return b|0}l=(Mf(e,1)|0)&255;a[b+492>>0]=l;do if(!(l<<24>>24)){l=b+496|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0}else{f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}c[b+496>>2]=f;f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}c[b+500>>2]=f;f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}c[b+504>>2]=f;f=Wg(e)|0;if((f|0)!=-99999){c[b+508>>2]=f;break}De(d,8,0);b=8;return b|0}while(0);f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}g=b+512|0;c[g>>2]=f+8;f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}c[b+516>>2]=f+8;if((f|0)>8|(c[g>>2]|0)>16){De(d,1005,0);b=8;return b|0}f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}k=f+4|0;l=b+520|0;c[l>>2]=k;c[b+5032>>2]=1<<k;k=(Mf(e,1)|0)&255;i=b+524|0;a[i>>0]=k;g=a[j>>0]|0;f=g<<24>>24;if(k<<24>>24)if(g<<24>>24>0){f=0;k=39}else k=48;else{f=f+-1|0;k=39}do if((k|0)==39){while(1){g=Wg(e)|0;if((g|0)==-99999|(g|0)>15){k=41;break}c[b+528+(f<<2)>>2]=g+1;g=Wg(e)|0;if((g|0)==-99999){k=43;break}h=b+556+(f<<2)|0;c[h>>2]=g;g=Wg(e)|0;if((g|0)==-99999){k=45;break}c[b+584+(f<<2)>>2]=g;c[b+5128+(f<<2)>>2]=g+-1+(c[h>>2]|0);f=f+1|0;g=a[j>>0]|0;h=g<<24>>24;if((f|0)>=(h|0)){k=47;break}}if((k|0)==41){De(d,8,0);b=8;return b|0}else if((k|0)==43){De(d,8,0);b=8;return b|0}else if((k|0)==45){De(d,8,0);b=8;return b|0}else if((k|0)==47)if(!(a[i>>0]|0))break;else{f=h;k=48;break}}while(0);if((k|0)==48){j=f+-1|0;if(g<<24>>24>=8)M(67594,63019,315,68983);if((f|0)>1){g=b+528+(j<<2)|0;h=b+556+(j<<2)|0;i=b+584+(j<<2)|0;f=0;do{c[b+528+(f<<2)>>2]=c[g>>2];c[b+556+(f<<2)>>2]=c[h>>2];c[b+584+(f<<2)>>2]=c[i>>2];f=f+1|0}while((f|0)!=(j|0))}}f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}i=b+612|0;c[i>>2]=f+3;f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}j=b+616|0;c[j>>2]=f;f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}g=b+620|0;c[g>>2]=f+2;f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}h=b+624|0;c[h>>2]=f;f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}c[b+628>>2]=f;f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}c[b+632>>2]=f;f=c[i>>2]|0;if((f|0)>6){b=8;return b|0}if(((c[j>>2]|0)+f|0)>6){b=8;return b|0}f=c[g>>2]|0;if((f|0)>5){b=8;return b|0}if(((c[h>>2]|0)+f|0)>5){b=8;return b|0}j=(Mf(e,1)|0)&255;a[b+636>>0]=j;do if(j<<24>>24){j=(Mf(e,1)|0)&255;a[b+637>>0]=j;f=b+638|0;if(!(j<<24>>24)){lk(f);break}f=Tj(e,0,f,0)|0;if(!f)break;return f|0}while(0);a[b+4702>>0]=Mf(e,1)|0;a[b+4703>>0]=Mf(e,1)|0;j=(Mf(e,1)|0)&255;a[b+4704>>0]=j;do if(!(j<<24>>24)){a[b+4705>>0]=0;a[b+4706>>0]=0;c[b+4708>>2]=0;c[b+4712>>2]=0;f=0}else{a[b+4705>>0]=(Mf(e,4)|0)+1;a[b+4706>>0]=(Mf(e,4)|0)+1;f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}c[b+4708>>2]=f+3;f=Wg(e)|0;if((f|0)!=-99999){c[b+4712>>2]=f;f=(Mf(e,1)|0)&255;break}De(d,8,0);b=8;return b|0}while(0);a[b+4716>>0]=f;i=Wg(e)|0;if((i|0)==-99999){De(d,8,0);b=8;return b|0}if(i>>>0>64){De(d,1014,0);b=8;return b|0}j=b+4720|0;f=b+4724|0;g=c[j>>2]|0;h=((c[f>>2]|0)-g|0)/100|0;if(i>>>0<=h>>>0){if(i>>>0<h>>>0)c[f>>2]=g+(i*100|0);if((i|0)>0)k=89}else{mk(j,i-h|0);k=89}a:do if((k|0)==89){f=0;while(1){if(!(nk(d,b,e,(c[j>>2]|0)+(f*100|0)|0,f,j,0)|0)){f=1005;break}f=f+1|0;if((f|0)>=(i|0))break a}return f|0}while(0);k=(Mf(e,1)|0)&255;a[b+4732>>0]=k;do if(!(k<<24>>24))c[b+4736>>2]=0;else{f=Wg(e)|0;if((f|0)==-99999){De(d,8,0);b=8;return b|0}g=b+4736|0;c[g>>2]=f;if((f|0)>32){b=8;return b|0}if((f|0)<=0)break;f=0;do{c[b+4740+(f<<2)>>2]=Mf(e,c[l>>2]|0)|0;a[b+4868+f>>0]=Mf(e,1)|0;f=f+1|0}while((f|0)<(c[g>>2]|0))}while(0);a[b+4900>>0]=Mf(e,1)|0;a[b+4901>>0]=Mf(e,1)|0;l=(Mf(e,1)|0)&255;a[b+4902>>0]=l;if(l<<24>>24)ok(b+4904|0,d,e,b)|0;d=(Mf(e,1)|0)&255;a[b+4980>>0]=d;do if(!(d<<24>>24))a[b+4981>>0]=0;else{d=b+4981|0;a[d>>0]=Mf(e,1)|0;a[b+4982>>0]=Mf(e,1)|0;a[b+4983>>0]=Mf(e,6)|0;if(!(a[d>>0]|0))break;pk(b+4984|0,0,e)|0}while(0);f=qk(b,0)|0;if(f|0){b=f;return b|0}a[b>>0]=1;b=0;return b|0}function ek(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,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;pa=hc;f=hc=hc+31&-32;hc=hc+496|0;oa=f+480|0;na=f+472|0;ma=f+464|0;la=f+456|0;ka=f+448|0;ja=f+440|0;ia=f+432|0;ha=f+424|0;ga=f+416|0;fa=f+408|0;ea=f+400|0;da=f+392|0;ca=f+384|0;ba=f+376|0;aa=f+368|0;$=f+360|0;_=f+344|0;X=f+336|0;W=f+328|0;V=f+320|0;U=f+312|0;J=f+304|0;I=f+296|0;H=f+288|0;G=f+280|0;T=f+272|0;S=f+264|0;R=f+256|0;Q=f+248|0;P=f+240|0;O=f+232|0;C=f+224|0;B=f+216|0;A=f+208|0;z=f+200|0;N=f+192|0;M=f+184|0;L=f+176|0;K=f+168|0;F=f+160|0;E=f+152|0;D=f+144|0;x=f+136|0;w=f+128|0;v=f+120|0;u=f+112|0;t=f+104|0;s=f+96|0;r=f+88|0;q=f+80|0;p=f+72|0;o=f+64|0;n=f+56|0;m=f+48|0;l=f+40|0;j=f+32|0;i=f+24|0;h=f+16|0;g=f+8|0;switch(d|0){case 1:{e=48404;break}case 2:{e=48396;break}default:{hc=pa;return}}Y=c[e>>2]|0;Rj(Y,63137,f);c[g>>2]=a[b+1>>0];Rj(Y,63178,g);k=b+2|0;c[h>>2]=a[k>>0];Rj(Y,63208,h);c[i>>2]=a[b+3>>0];Rj(Y,63238,i);fk(b+4|0,a[k>>0]|0,Y);c[j>>2]=c[b+472>>2];Rj(Y,63273,j);e=b+476|0;f=c[e>>2]|0;switch(f|0){case 0:{g=63317;break}case 1:{g=63328;break}case 2:{g=63334;break}default:g=(f|0)==3?63303:63309}c[l>>2]=f;c[l+4>>2]=g;Rj(Y,63340,l);if((c[e>>2]|0)==3){c[m>>2]=a[b+480>>0];Rj(Y,63375,m)}c[n>>2]=c[b+484>>2];Rj(Y,63408,n);c[o>>2]=c[b+488>>2];Rj(Y,63441,o);o=b+492|0;c[p>>2]=a[o>>0];Rj(Y,63474,p);if(a[o>>0]|0){c[q>>2]=c[b+496>>2];Rj(Y,63507,q);c[r>>2]=c[b+500>>2];Rj(Y,63535,r);c[s>>2]=c[b+504>>2];Rj(Y,63563,s);c[t>>2]=c[b+508>>2];Rj(Y,63591,t)}c[u>>2]=c[b+512>>2];Rj(Y,63619,u);c[v>>2]=c[b+516>>2];Rj(Y,63642,v);c[w>>2]=c[b+520>>2];Rj(Y,63665,w);w=b+524|0;c[x>>2]=a[w>>0];Rj(Y,63698,x);e=a[k>>0]|0;if(a[w>>0]|0){if(e<<24>>24>0){e=0;y=14}}else{e=(e<<24>>24)+-1|0;y=14}if((y|0)==14)do{c[z>>2]=e;Rj(Y,64028,z);c[A>>2]=c[b+528+(e<<2)>>2];Rj(Y,64038,A);c[B>>2]=c[b+556+(e<<2)>>2];Rj(Y,64077,B);c[C>>2]=c[b+584+(e<<2)>>2];Rj(Y,64116,C);e=e+1|0}while((e|0)<(a[k>>0]|0));k=b+612|0;c[D>>2]=c[k>>2];Rj(Y,63745,D);j=b+616|0;c[E>>2]=c[j>>2];Rj(Y,63783,E);i=b+620|0;c[F>>2]=c[i>>2];Rj(Y,63830,F);h=b+624|0;c[K>>2]=c[h>>2];Rj(Y,63868,K);c[L>>2]=c[b+628>>2];Rj(Y,63913,L);c[M>>2]=c[b+632>>2];Rj(Y,63955,M);M=b+636|0;c[N>>2]=a[M>>0];Rj(Y,63997,N);if(a[M>>0]|0?(N=b+637|0,c[O>>2]=a[N>>0],Rj(Y,64155,O),a[N>>0]|0):0)Rj(Y,64196,P);c[Q>>2]=a[b+4702>>0];Rj(Y,64240,Q);c[R>>2]=a[b+4703>>0];Rj(Y,64282,R);R=b+4704|0;c[S>>2]=a[R>>0];Rj(Y,64324,S);if(a[R>>0]|0){c[T>>2]=a[b+4705>>0];Rj(Y,64366,T);c[G>>2]=a[b+4706>>0];Rj(Y,64402,G);c[H>>2]=c[b+4708>>2];Rj(Y,64438,H);c[I>>2]=c[b+4712>>2];Rj(Y,64480,I);c[J>>2]=a[b+4716>>0];Rj(Y,64531,J)}f=b+4720|0;g=b+4724|0;c[U>>2]=((c[g>>2]|0)-(c[f>>2]|0)|0)/100|0;Rj(Y,64567,U);if((c[g>>2]|0)!=(c[f>>2]|0)){e=0;do{c[W>>2]=e;Rj(Y,69874,W);gk((c[f>>2]|0)+(e*100|0)|0,16,Y);e=e+1|0}while(e>>>0<(((c[g>>2]|0)-(c[f>>2]|0)|0)/100|0)>>>0)}W=b+4732|0;c[V>>2]=a[W>>0];Rj(Y,64601,V);if(a[W>>0]|0?(Z=b+4736|0,c[X>>2]=c[Z>>2],Rj(Y,64639,X),(c[Z>>2]|0)>0):0){e=0;do{W=c[b+4740+(e<<2)>>2]|0;X=a[b+4868+e>>0]|0;c[_>>2]=e;c[_+4>>2]=W;c[_+8>>2]=X;Rj(Y,64672,_);e=e+1|0}while((e|0)<(c[Z>>2]|0))}c[$>>2]=a[b+4900>>0];Rj(Y,64741,$);c[aa>>2]=a[b+4901>>0];Rj(Y,64782,aa);e=b+4902|0;c[ba>>2]=a[e>>0];Rj(Y,64823,ba);c[ca>>2]=a[b+4980>>0];Rj(Y,64864,ca);ca=b+4981|0;c[da>>2]=a[ca>>0];Rj(Y,64900,da);c[ea>>2]=a[b+4982>>0];Rj(Y,64936,ea);c[fa>>2]=a[b+4983>>0];Rj(Y,64972,fa);c[ga>>2]=c[b+5048>>2];Rj(Y,65008,ga);c[ha>>2]=c[b+5044>>2];Rj(Y,65027,ha);c[ia>>2]=1<<(c[j>>2]|0)+(c[k>>2]|0);Rj(Y,65046,ia);c[ja>>2]=1<<c[i>>2];Rj(Y,65065,ja);c[ka>>2]=1<<(c[h>>2]|0)+(c[i>>2]|0);Rj(Y,65084,ka);c[la>>2]=c[b+5056>>2];Rj(Y,65103,la);c[ma>>2]=c[b+5064>>2];Rj(Y,65133,ma);c[na>>2]=c[b+5016>>2];Rj(Y,65163,na);c[oa>>2]=c[b+5020>>2];Rj(Y,65193,oa);if(a[ca>>0]|0)hk(b+4984|0,d);if(!(a[e>>0]|0)){hc=pa;return}ik(b+4904|0,d);hc=pa;return}function fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=hc;f=hc=hc+31&-32;hc=hc+16|0;jk(a,1,d);e=b+-1|0;if((b|0)<=1){hc=g;return}b=0;do{c[f>>2]=b;Rj(d,67160,f);jk(a+52+(b*52|0)|0,0,d);b=b+1|0}while((b|0)!=(e|0));hc=g;return}function gk(d,e,f){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;p=hc;l=hc=hc+31&-32;hc=hc+32|0;o=l+16|0;n=l+8|0;g=e<<1;m=hc;hc=hc+((1*(g+2|0)|0)+15&-16)|0;g=g|1;a[m+g>>0]=0;if((g|0)>0)hB(m|0,46,g|0)|0;a[m+e>>0]=124;g=a[d+96>>0]|0;if(g<<24>>24){k=0-e|0;h=g&255;do{i=h;h=h+-1|0;g=b[d+(h<<1)>>1]|0;j=(a[d+64+h>>0]|0)==0;do if((g|0)>=(k|0)){g=m+(g+e)|0;if(j){a[g>>0]=111;break}else{a[g>>0]=88;break}}else{c[l>>2]=g;c[l+4>>2]=j?111:88;Rj(f,67148,l)}while(0)}while((i|0)>1)}g=a[d+97>>0]|0;if(!(g<<24>>24)){c[n>>2]=m;Rj(f,67155,n);hc=p;return}h=g&255;do{i=h;h=h+-1|0;g=b[d+32+(h<<1)>>1]|0;j=(a[d+80+h>>0]|0)==0;do if((g|0)<=(e|0)){g=m+(g+e)|0;if(j){a[g>>0]=111;break}else{a[g>>0]=88;break}}else{c[o>>2]=g;c[o+4>>2]=j?111:88;Rj(f,67148,o)}while(0)}while((i|0)>1);c[n>>2]=m;Rj(f,67155,n);hc=p;return}function hk(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,o=0;o=hc;e=hc=hc+31&-32;hc=hc+80|0;k=e+72|0;j=e+64|0;i=e+56|0;h=e+48|0;g=e+40|0;n=e+32|0;m=e+24|0;l=e+16|0;f=e+8|0;switch(b|0){case 1:{b=48404;break}case 2:{b=48396;break}default:{hc=o;return}}b=c[b>>2]|0;Rj(b,66677,e);c[f>>2]=d[a>>0];Rj(b,66734,f);c[l>>2]=d[a+1>>0];Rj(b,66780,l);c[m>>2]=d[a+2>>0];Rj(b,66826,m);c[n>>2]=d[a+3>>0];Rj(b,66872,n);c[g>>2]=d[a+4>>0];Rj(b,66918,g);c[h>>2]=d[a+5>>0];Rj(b,66964,h);c[i>>2]=d[a+6>>0];Rj(b,67010,i);c[j>>2]=d[a+7>>0];Rj(b,67056,j);c[k>>2]=d[a+8>>0];Rj(b,67102,k);hc=o;return}function ik(b,f){b=b|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,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=hc;h=hc=hc+31&-32;hc=hc+304|0;o=h+288|0;n=h+280|0;m=h+272|0;R=h+264|0;Q=h+256|0;P=h+248|0;O=h+240|0;N=h+232|0;M=h+224|0;L=h+216|0;K=h+208|0;J=h+200|0;I=h+192|0;H=h+184|0;G=h+176|0;F=h+168|0;E=h+160|0;D=h+152|0;C=h+144|0;B=h+136|0;A=h+128|0;z=h+120|0;y=h+112|0;x=h+104|0;w=h+96|0;v=h+88|0;u=h+80|0;t=h+72|0;s=h+64|0;r=h+56|0;q=h+48|0;p=h+40|0;j=h+32|0;l=h+24|0;k=h+16|0;i=h+8|0;switch(f|0){case 1:{f=48404;break}case 2:{f=48396;break}default:{hc=S;return}}g=c[f>>2]|0;Rj(g,65223,h);h=e[b+4>>1]|0;c[i>>2]=e[b+2>>1];c[i+4>>2]=h;Rj(g,65264,i);c[k>>2]=d[b+6>>0];Rj(g,65300,k);c[l>>2]=d[b+7>>0];Rj(g,65333,l);l=b+8|0;c[j>>2]=d[l>>0];Rj(g,65366,j);if(a[l>>0]|0){switch(c[b+12>>2]|0){case 0:{f=65433;break}case 1:{f=65429;break}case 2:{f=65424;break}case 3:{f=65418;break}case 4:{f=65414;break}default:f=65402}c[p>>2]=f;Rj(g,65443,p);c[q>>2]=d[b+16>>0];Rj(g,65479,q);c[r>>2]=d[b+17>>0];Rj(g,65515,r);c[s>>2]=d[b+18>>0];Rj(g,65555,s);c[t>>2]=d[b+19>>0];Rj(g,65591,t);c[u>>2]=d[b+20>>0];Rj(g,65627,u)}u=b+21|0;c[v>>2]=d[u>>0];Rj(g,65663,v);if(a[u>>0]|0){c[w>>2]=d[b+22>>0];Rj(g,65697,w);c[x>>2]=d[b+23>>0];Rj(g,65740,x)}c[y>>2]=d[b+24>>0];Rj(g,65783,y);c[z>>2]=d[b+25>>0];Rj(g,65819,z);c[A>>2]=d[b+26>>0];Rj(g,65855,A);c[B>>2]=d[b+27>>0];Rj(g,65891,B);c[C>>2]=c[b+28>>2];Rj(g,65927,C);c[D>>2]=c[b+32>>2];Rj(g,65963,D);c[E>>2]=c[b+36>>2];Rj(g,65999,E);c[F>>2]=c[b+40>>2];Rj(g,66035,F);F=b+44|0;c[G>>2]=d[F>>0];Rj(g,66071,G);if(a[F>>0]|0){c[H>>2]=c[b+48>>2];Rj(g,66107,H);c[I>>2]=c[b+52>>2];Rj(g,66143,I)}c[J>>2]=d[b+56>>0];Rj(g,66179,J);c[K>>2]=c[b+60>>2];Rj(g,66221,K);c[L>>2]=d[b+64>>0];Rj(g,66263,L);L=b+65|0;c[M>>2]=d[L>>0];Rj(g,66301,M);if(!(a[L>>0]|0)){hc=S;return}c[N>>2]=d[b+66>>0];Rj(g,66342,N);c[O>>2]=d[b+67>>0];Rj(g,66383,O);c[P>>2]=d[b+68>>0];Rj(g,66431,P);c[Q>>2]=e[b+70>>1];Rj(g,66472,Q);c[R>>2]=d[b+72>>0];Rj(g,66513,R);c[m>>2]=d[b+73>>0];Rj(g,66554,m);c[n>>2]=d[b+74>>0];Rj(g,66595,n);c[o>>2]=d[b+75>>0];Rj(g,66636,o);hc=S;return}function jk(b,d,e){b=b|0;d=d|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;t=hc;f=hc=hc+31&-32;hc=hc+112|0;s=f+88|0;r=f+80|0;q=f+72|0;p=f+64|0;o=f+56|0;n=f+48|0;m=f+40|0;l=f+32|0;j=f+24|0;k=f+16|0;h=f+8|0;i=d?67193:67201;if(a[b>>0]|0){d=a[b+1>>0]|0;c[f>>2]=i;c[f+4>>2]=d;Rj(e,67211,f);f=a[b+2>>0]|0;c[h>>2]=i;c[h+4>>2]=f;Rj(e,67240,h);switch(c[b+4>>2]|0){case 1:{d=67325;break}case 2:{d=67318;break}case 3:{d=67301;break}case 4:{d=67279;break}default:d=67269}c[k>>2]=i;c[k+4>>2]=d;Rj(e,67330,k);c[j>>2]=i;Rj(e,67359,j);d=0;do{if(d|0)Rj(e,67550,q);c[r>>2]=a[b+8+d>>0];Rj(e,67553,r);d=d+1|0}while((d|0)!=32);Rj(e,67394,l);r=a[b+40>>0]|0;c[m>>2]=i;c[m+4>>2]=r;Rj(e,67397,m);r=a[b+41>>0]|0;c[n>>2]=i;c[n+4>>2]=r;Rj(e,67434,n);r=a[b+42>>0]|0;c[o>>2]=i;c[o+4>>2]=r;Rj(e,67470,o);r=a[b+43>>0]|0;c[p>>2]=i;c[p+4>>2]=r;Rj(e,67510,p)}if(!(a[b+44>>0]|0)){hc=t;return}r=c[b+48>>2]|0;c[s>>2]=i;c[s+4>>2]=r;g[s+8>>3]=+(r|0)/30.0;Rj(e,67557,s);hc=t;return}function kk(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;a[b>>0]=1;a[b+44>>0]=1;rk(b,c);g=d+-1|0;f=(d|0)>1;if(!f)return;e=0;do{a[b+52+(e*52|0)>>0]=Mf(c,1)|0;a[b+52+(e*52|0)+44>>0]=Mf(c,1)|0;e=e+1|0}while((e|0)!=(g|0));if((d+-2|0)>>>0<7){e=g;while(1){Vg(c,2);if((e|0)<7)e=e+1|0;else break}}if(!f)return;e=0;do{rk(b+52+(e*52|0)|0,c);e=e+1|0}while((e|0)!=(g|0));return}function lk(b){b=b|0;var c=0,e=0,f=0,g=0,h=0;Xj(b,3760,0);Xj(b+16|0,3760,0);Xj(b+32|0,3760,0);Xj(b+48|0,3760,0);Xj(b+64|0,3760,0);Xj(b+80|0,3760,0);e=qg(3,0)|0;c=0;do{a[((d[e+(c<<1)+1>>0]|0)<<3)+(d[e+(c<<1)>>0]|0)+(b+96)>>0]=a[3776+c>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{a[((d[e+(c<<1)+1>>0]|0)<<3)+(d[e+(c<<1)>>0]|0)+(b+288)>>0]=a[3840+c>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{a[((d[e+(c<<1)+1>>0]|0)<<3)+(d[e+(c<<1)>>0]|0)+(b+160)>>0]=a[3776+c>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{a[((d[e+(c<<1)+1>>0]|0)<<3)+(d[e+(c<<1)>>0]|0)+(b+352)>>0]=a[3840+c>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{a[((d[e+(c<<1)+1>>0]|0)<<3)+(d[e+(c<<1)>>0]|0)+(b+224)>>0]=a[3776+c>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{a[((d[e+(c<<1)+1>>0]|0)<<3)+(d[e+(c<<1)>>0]|0)+(b+416)>>0]=a[3840+c>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{f=e+(c<<1)|0;g=e+(c<<1)+1|0;h=3776+c|0;a[((d[g>>0]|0)<<5)+((d[f>>0]|0)<<1)+(b+480)>>0]=a[h>>0]|0;a[((d[f>>0]|0)<<1|1)+((d[g>>0]|0)<<5)+(b+480)>>0]=a[h>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[f>>0]|0)<<1)+(b+480)>>0]=a[h>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[f>>0]|0)<<1|1)+(b+480)>>0]=a[h>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{h=e+(c<<1)|0;g=e+(c<<1)+1|0;f=3840+c|0;a[((d[g>>0]|0)<<5)+((d[h>>0]|0)<<1)+(b+1248)>>0]=a[f>>0]|0;a[((d[h>>0]|0)<<1|1)+((d[g>>0]|0)<<5)+(b+1248)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1)+(b+1248)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1|1)+(b+1248)>>0]=a[f>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{h=e+(c<<1)|0;g=e+(c<<1)+1|0;f=3776+c|0;a[((d[g>>0]|0)<<5)+((d[h>>0]|0)<<1)+(b+736)>>0]=a[f>>0]|0;a[((d[h>>0]|0)<<1|1)+((d[g>>0]|0)<<5)+(b+736)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1)+(b+736)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1|1)+(b+736)>>0]=a[f>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{h=e+(c<<1)|0;g=e+(c<<1)+1|0;f=3840+c|0;a[((d[g>>0]|0)<<5)+((d[h>>0]|0)<<1)+(b+1504)>>0]=a[f>>0]|0;a[((d[h>>0]|0)<<1|1)+((d[g>>0]|0)<<5)+(b+1504)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1)+(b+1504)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1|1)+(b+1504)>>0]=a[f>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{h=e+(c<<1)|0;g=e+(c<<1)+1|0;f=3776+c|0;a[((d[g>>0]|0)<<5)+((d[h>>0]|0)<<1)+(b+992)>>0]=a[f>>0]|0;a[((d[h>>0]|0)<<1|1)+((d[g>>0]|0)<<5)+(b+992)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1)+(b+992)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1|1)+(b+992)>>0]=a[f>>0]|0;c=c+1|0}while((c|0)!=64);e=qg(3,0)|0;c=0;do{h=e+(c<<1)|0;g=e+(c<<1)+1|0;f=3840+c|0;a[((d[g>>0]|0)<<5)+((d[h>>0]|0)<<1)+(b+1760)>>0]=a[f>>0]|0;a[((d[h>>0]|0)<<1|1)+((d[g>>0]|0)<<5)+(b+1760)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1)+(b+1760)>>0]=a[f>>0]|0;a[((d[g>>0]|0)<<5|16)+((d[h>>0]|0)<<1|1)+(b+1760)>>0]=a[f>>0]|0;c=c+1|0}while((c|0)!=64);Xj(b+2016|0,3776,3);Xj(b+3040|0,3840,3);return}function mk(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;f=c[k>>2]|0;l=a+4|0;e=c[l>>2]|0;if(((f-e|0)/100|0)>>>0>=d>>>0){do{f=e+100|0;do{b[e>>1]=0;e=e+2|0}while((e|0)<(f|0));e=(c[l>>2]|0)+100|0;c[l>>2]=e;d=d+-1|0}while((d|0)!=0);return}j=c[a>>2]|0;h=e-j|0;e=(h|0)/100|0;i=e+d|0;if(i>>>0>42949672)Yz(a);f=(f-j|0)/100|0;g=f<<1;g=f>>>0<21474836?(g>>>0<i>>>0?i:g):42949672;do if(g)if(g>>>0>42949672){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(g*100|0)|0;break}else f=0;while(0);e=f+(e*100|0)|0;hB(e|0,0,d*100|0)|0;e=e+(((h|0)/-100|0)*100|0)|0;if((h|0)>0)fB(e|0,j|0,h|0)|0;c[a>>2]=e;c[l>>2]=f+(i*100|0);c[k>>2]=f+(g*100|0);if(!j)return;nz(j);return}function nk(e,f,g,h,i,j,k){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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=hc;if((i|0)!=0?((Mf(g,1)|0)&255)<<24>>24!=0:0){do if(k){k=Wg(g)|0;if((k|0)!=-99999&(k|0)<(i|0)){k=k+1|0;break}else{h=0;hc=E;return h|0}}else k=1;while(0);B=i-k|0;if((B|0)<=-1)M(67892,67900,129,67912);n=Mf(g,1)|0;k=Wg(g)|0;if((k|0)==-99999){h=0;hc=E;return h|0}o=k+1|0;l=~k;y=d[(c[j>>2]|0)+(B*100|0)+98>>0]|0;m=y+1|0;z=hc;hc=hc+((1*m|0)+15&-16)|0;A=hc;hc=hc+((1*m|0)+15&-16)|0;k=0;do{x=(Mf(g,1)|0)&255;a[z+k>>0]=x;if(!(x<<24>>24))i=(Mf(g,1)|0)&255;else i=1;a[A+k>>0]=i;k=k+1|0}while((k|0)!=(m|0));v=(n|0)==0?o:l;i=c[j>>2]|0;p=a[i+(B*100|0)+96>>0]|0;w=p&255;k=a[i+(B*100|0)+97>>0]|0;x=k&255;s=k<<24>>24==0;a:do if(!s){o=j+4|0;n=(k&255)<17;if(B>>>0>=(((c[o>>2]|0)-i|0)/100|0)>>>0)M(67940,67900,174,67912);m=x;k=0;while(1){l=m;m=m+-1|0;if(!n){D=18;break}i=v+(b[i+(B*100|0)+32+(m<<1)>>1]|0)|0;if((i|0)<0?(r=m+w|0,(a[A+r>>0]|0)!=0):0){if((k|0)>15){t=0;D=81;break}b[h+(k<<1)>>1]=i;a[h+64+k>>0]=a[z+r>>0]|0;k=k+1|0}if((l|0)<=1){q=k;break a}i=c[j>>2]|0;if(B>>>0>=(((c[o>>2]|0)-i|0)/100|0)>>>0){D=16;break}}if((D|0)==16)M(67940,67900,174,67912);else if((D|0)==18)M(67972,67900,175,67912);else if((D|0)==81){hc=E;return t|0}}else q=0;while(0);do if((v|0)<0?(a[A+y>>0]|0)!=0:0)if((q|0)>15){h=0;hc=E;return h|0}else{b[h+(q<<1)>>1]=v;a[h+64+q>>0]=a[z+y>>0]|0;k=q+1|0;break}else k=q;while(0);m=p<<24>>24==0;b:do if(!m){l=0;while(1){i=v+(b[(c[j>>2]|0)+(B*100|0)+(l<<1)>>1]|0)|0;if((i|0)<0?(a[A+l>>0]|0)!=0:0){if((k|0)>15){t=0;D=81;break}b[h+(k<<1)>>1]=i;a[h+64+k>>0]=a[z+l>>0]|0;u=k+1|0}else u=k;l=l+1|0;if(l>>>0>=w>>>0)break;else k=u}if((D|0)==81){hc=E;return t|0}o=h+96|0;a[o>>0]=u;if(m)k=0;else{l=w;k=0;while(1){m=l;l=l+-1|0;i=v+(b[(c[j>>2]|0)+(B*100|0)+(l<<1)>>1]|0)|0;if((i|0)>0?(a[A+l>>0]|0)!=0:0){if((k|0)>15){t=0;break}b[h+32+(k<<1)>>1]=i;a[h+80+k>>0]=a[z+l>>0]|0;k=k+1|0}if((m|0)<=1)break b}hc=E;return t|0}}else{o=h+96|0;a[o>>0]=k;k=0}while(0);do if((v|0)>0?(a[A+y>>0]|0)!=0:0)if((k|0)>15){h=0;hc=E;return h|0}else{b[h+32+(k<<1)>>1]=v;a[h+80+k>>0]=a[z+y>>0]|0;k=k+1|0;break}while(0);c:do if(!s){l=0;while(1){i=v+(b[(c[j>>2]|0)+(B*100|0)+32+(l<<1)>>1]|0)|0;if((i|0)>0?(C=l+w|0,(a[A+C>>0]|0)!=0):0){if((k|0)>15){t=0;break}b[h+32+(k<<1)>>1]=i;a[h+80+k>>0]=a[z+C>>0]|0;k=k+1|0}l=l+1|0;if(l>>>0>=x>>>0)break c}hc=E;return t|0}while(0);a[h+97>>0]=k}else D=56;d:do if((D|0)==56){n=Wg(g)|0;p=Wg(g)|0;if((n|0)==-99999|(p|0)==-99999){De(e,1018,0);h=0;hc=E;return h|0}if((p+n|0)>(c[f+528+((a[f+2>>0]|0)+-1<<2)>>2]|0)){h=h+96|0;b[h>>1]=0;b[h+2>>1]=0>>>16;De(e,1018,0);h=0;hc=E;return h|0}if((n|0)>16|(p|0)>16){De(e,1018,0);h=0;hc=E;return h|0}o=h+96|0;a[o>>0]=n;a[h+97>>0]=p;e:do if((n|0)>0){k=0;i=0;while(1){l=Wg(g)|0;if((l|0)==-99999){t=0;break}f=(Mf(g,1)|0)&255;m=h+(k<<1)|0;b[m>>1]=i+65535-l;a[h+64+k>>0]=f;k=k+1|0;if((k|0)>=(n|0))break e;else i=b[m>>1]|0}hc=E;return t|0}while(0);if((p|0)>0){k=0;i=0;while(1){l=Wg(g)|0;if((l|0)==-99999){t=0;break}f=(Mf(g,1)|0)&255;m=h+32+(k<<1)|0;b[m>>1]=i+1+l;a[h+80+k>>0]=f;k=k+1|0;if((k|0)>=(p|0))break d;else i=b[m>>1]|0}hc=E;return t|0}}while(0);p=h+99|0;a[p>>0]=0;g=a[o>>0]|0;n=g&255;if(!(g<<24>>24))k=0;else{l=0;i=0;while(1){k=i+1<<24>>24;if(!(a[h+64+l>>0]|0))k=i;else a[p>>0]=k;l=l+1|0;if((l|0)==(n|0))break;else i=k}}g=a[h+97>>0]|0;m=g&255;if(g<<24>>24){l=0;do{i=k+1<<24>>24;if(a[h+80+l>>0]|0){a[p>>0]=i;k=i}l=l+1|0}while((l|0)!=(m|0))}a[h+98>>0]=m+n;h=1;hc=E;return h|0}function ok(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;k=(Mf(f,1)|0)!=0;a[d>>0]=k&1;do if(k){g=Mf(f,8)|0;if((g|0)<18){b[d+2>>1]=b[3936+(g<<2)>>1]|0;g=b[3936+(g<<2)+2>>1]|0;break}if((g|0)==255){b[d+2>>1]=Mf(f,16)|0;g=(Mf(f,16)|0)&65535;break}else{b[d+2>>1]=0;g=0;break}}else{b[d+2>>1]=0;g=0}while(0);b[d+4>>1]=g;k=(Mf(f,1)|0)!=0;a[d+6>>0]=k&1;if(k)a[d+7>>0]=(Mf(f,1)|0)!=0&1;g=d+12|0;c[g>>2]=5;h=d+16|0;a[h>>0]=0;i=d+18|0;a[i>>0]=2;j=d+19|0;a[j>>0]=2;k=d+20|0;a[k>>0]=2;m=(Mf(f,1)|0)!=0;a[d+8>>0]=m&1;if(m?(m=Mf(f,3)|0,c[g>>2]=(m|0)<5?m:5,a[h>>0]=(Mf(f,1)|0)!=0&1,m=(Mf(f,1)|0)!=0,a[d+17>>0]=m&1,m):0){g=Mf(f,8)|0;m=g&255;a[i>>0]=m;switch(m<<24>>24){case 3:case 0:{l=14;break}default:if((g&255)>>>0>10)l=14}if((l|0)==14)a[i>>0]=2;g=Mf(f,8)|0;m=g&255;a[j>>0]=m;switch(m<<24>>24){case 3:case 0:{l=17;break}default:if((g&254)>>>0>17)l=17}if((l|0)==17)a[j>>0]=2;m=Mf(f,8)|0;a[k>>0]=((m&255)+-1|0)>>>0>9?2:m&255}m=(Mf(f,1)|0)!=0;a[d+21>>0]=m&1;do if(m){g=Wg(f)|0;if((g|0)==-99999){De(e,8,0);m=8;return m|0}a[d+22>>0]=g;g=Wg(f)|0;if((g|0)!=-99999){g=g&255;break}De(e,8,0);m=8;return m|0}else{a[d+22>>0]=0;g=0}while(0);a[d+23>>0]=g;a[d+24>>0]=(Mf(f,1)|0)!=0&1;a[d+25>>0]=(Mf(f,1)|0)!=0&1;a[d+26>>0]=(Mf(f,1)|0)!=0&1;m=(Mf(f,1)|0)!=0;a[d+27>>0]=m&1;do if(m){g=Wg(f)|0;if((g|0)==-99999){De(e,8,0);m=8;return m|0}c[d+28>>2]=g;g=Wg(f)|0;if((g|0)==-99999){De(e,8,0);m=8;return m|0}c[d+32>>2]=g;g=Wg(f)|0;if((g|0)==-99999){De(e,8,0);m=8;return m|0}c[d+36>>2]=g;g=Wg(f)|0;if((g|0)!=-99999){c[d+40>>2]=g;break}De(e,8,0);m=8;return m|0}else{m=d+28|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0}while(0);m=(Mf(f,1)|0)!=0;a[d+44>>0]=m&1;if(m){c[d+48>>2]=Mf(f,32)|0;c[d+52>>2]=Mf(f,32)|0}a[d+56>>0]=(Mf(f,1)|0)!=0&1;g=Wg(f)|0;if((g|0)==-99999){De(e,8,0);m=8;return m|0}c[d+60>>2]=g+1;m=(Mf(f,1)|0)!=0;a[d+64>>0]=m&1;if(m){m=502;return m|0}m=(Mf(f,1)|0)!=0;a[d+65>>0]=m&1;if(!m){a[d+66>>0]=0;a[d+67>>0]=1;a[d+68>>0]=0;b[d+70>>1]=0;a[d+72>>0]=2;a[d+73>>0]=1;a[d+74>>0]=15;a[d+75>>0]=15;m=0;return m|0}a[d+66>>0]=(Mf(f,1)|0)!=0&1;a[d+67>>0]=(Mf(f,1)|0)!=0&1;a[d+68>>0]=(Mf(f,1)|0)!=0&1;g=Wg(f)|0;if((g|0)==-99999){De(e,8,0);m=8;return m|0}h=d+70|0;b[h>>1]=g;if(g&61440|0){De(e,8,0);b[h>>1]=0}g=Wg(f)|0;if((g|0)==-99999){De(e,8,0);m=8;return m|0}h=d+72|0;a[h>>0]=g;if((g&255)>>>0>16){De(e,8,0);a[h>>0]=2}g=Wg(f)|0;if((g|0)==-99999){De(e,8,0);m=8;return m|0}h=d+73|0;a[h>>0]=g;if((g&255)>>>0>16){De(e,8,0);a[h>>0]=1}g=Wg(f)|0;if((g|0)==-99999){De(e,8,0);m=8;return m|0}h=d+74|0;a[h>>0]=g;if(g&240|0){De(e,8,0);a[h>>0]=15}h=Wg(f)|0;if((h|0)==-99999){De(e,8,0);m=8;return m|0}g=d+75|0;a[g>>0]=h;if(!(h&240)){m=0;return m|0}De(e,8,0);a[g>>0]=15;m=0;return m|0}function pk(b,c,d){b=b|0;c=c|0;d=d|0;a[b>>0]=Mf(d,1)|0;a[b+1>>0]=Mf(d,1)|0;a[b+2>>0]=Mf(d,1)|0;a[b+3>>0]=Mf(d,1)|0;a[b+4>>0]=Mf(d,1)|0;a[b+5>>0]=Mf(d,1)|0;a[b+6>>0]=Mf(d,1)|0;a[b+7>>0]=Mf(d,1)|0;a[b+8>>0]=Mf(d,1)|0;return 0}function qk(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,v=0,w=0;k=c[b+476>>2]|0;h=c[3904+(k<<2)>>2]|0;c[b+5016>>2]=h;e=c[3920+(k<<2)>>2]|0;c[b+5020>>2]=e;l=(a[b+480>>0]|0)==0;p=l?k:0;c[b+5012>>2]=p;p=(p|0)==0;c[b+5024>>2]=p?1:h;c[b+5028>>2]=p?1:e;p=c[b+512>>2]|0;c[b+4996>>2]=p;c[b+5e3>>2]=(p*6|0)+-48;q=c[b+516>>2]|0;c[b+5004>>2]=q;c[b+5008>>2]=(q*6|0)+-48;r=c[b+612>>2]|0;c[b+5036>>2]=r;s=(c[b+616>>2]|0)+r|0;c[b+5040>>2]=s;t=1<<r;c[b+5044>>2]=t;g=1<<s;c[b+5048>>2]=g;v=c[b+484>>2]|0;n=v+-1|0;j=(n+t|0)/(t|0)|0;c[b+5052>>2]=j;n=(n+g|0)/(g|0)|0;c[b+5056>>2]=n;w=c[b+488>>2]|0;o=w+-1|0;i=(o+t|0)/(t|0)|0;c[b+5060>>2]=i;o=(o+g|0)/(g|0)|0;c[b+5064>>2]=o;c[b+5068>>2]=u(i,j)|0;c[b+5072>>2]=u(o,n)|0;c[b+5076>>2]=u(w,v)|0;if((k|0)==0|l^1){f=0;e=0}else{f=(g|0)/(e|0)|0;e=(g|0)/(h|0)|0}c[b+5080>>2]=e;c[b+5084>>2]=f;k=c[b+620>>2]|0;c[b+5100>>2]=k;l=(c[b+624>>2]|0)+k|0;c[b+5104>>2]=l;i=b+628|0;e=c[i>>2]|0;j=s-k|0;do if((e|0)>(j|0)){if(d){c[i>>2]=j;e=j;break}Jn(67600,70,1,c[12099]|0)|0;w=8;return w|0}while(0);h=b+632|0;f=c[h>>2]|0;do if((f|0)<=(j|0)){if(d){g=f;m=12}}else{if(d){c[h>>2]=j;g=j;m=12;break}Jn(67671,70,1,c[12099]|0)|0;w=8;return w|0}while(0);if((m|0)==12){f=s-l|0;if((e|0)<(f|0))c[i>>2]=f;if((g|0)<(f|0))c[h>>2]=f}m=r+-1|0;c[b+5108>>2]=m;m=s-m|0;c[b+5112>>2]=n<<m;c[b+5116>>2]=o<<m;m=c[b+4708>>2]|0;c[b+5120>>2]=m;c[b+5124>>2]=(c[b+4712>>2]|0)+m;n=n<<j;c[b+5088>>2]=n;o=o<<j;c[b+5092>>2]=o;c[b+5096>>2]=u(n,o)|0;if(!(a[b+4990>>0]|0)){e=q+248&255;f=p+248&255;g=128;h=128}else{e=0;f=0;g=1<<q+-1;h=1<<p+-1}a[b+5156>>0]=f;a[b+5157>>0]=e;c[b+5160>>2]=h;c[b+5164>>2]=g;if(((v|0)%(t|0)|0|0)==0?((w|0)%(t|0)|0|0)==0:0){if((k|0)>(r|0)){Jn(67767,19,1,c[12099]|0)|0;w=8;return w|0}if((l|0)>(((s|0)<5?s:5)|0)){Jn(67787,30,1,c[12099]|0)|0;w=8;return w|0}if((p+-8|0)>>>0>8){Jn(67818,36,1,c[12099]|0)|0;w=8;return w|0}if((q+-8|0)>>>0>8){Jn(67855,36,1,c[12099]|0)|0;w=8;return w|0}else{a[b>>0]=1;w=0;return w|0}}Jn(67742,24,1,c[12099]|0)|0;w=8;return w|0}function rk(b,d){b=b|0;d=d|0;if(a[b>>0]|0){a[b+1>>0]=Mf(d,2)|0;a[b+2>>0]=Mf(d,1)|0;c[b+4>>2]=Mf(d,5)|0;a[b+8>>0]=Mf(d,1)|0;a[b+9>>0]=Mf(d,1)|0;a[b+10>>0]=Mf(d,1)|0;a[b+11>>0]=Mf(d,1)|0;a[b+12>>0]=Mf(d,1)|0;a[b+13>>0]=Mf(d,1)|0;a[b+14>>0]=Mf(d,1)|0;a[b+15>>0]=Mf(d,1)|0;a[b+16>>0]=Mf(d,1)|0;a[b+17>>0]=Mf(d,1)|0;a[b+18>>0]=Mf(d,1)|0;a[b+19>>0]=Mf(d,1)|0;a[b+20>>0]=Mf(d,1)|0;a[b+21>>0]=Mf(d,1)|0;a[b+22>>0]=Mf(d,1)|0;a[b+23>>0]=Mf(d,1)|0;a[b+24>>0]=Mf(d,1)|0;a[b+25>>0]=Mf(d,1)|0;a[b+26>>0]=Mf(d,1)|0;a[b+27>>0]=Mf(d,1)|0;a[b+28>>0]=Mf(d,1)|0;a[b+29>>0]=Mf(d,1)|0;a[b+30>>0]=Mf(d,1)|0;a[b+31>>0]=Mf(d,1)|0;a[b+32>>0]=Mf(d,1)|0;a[b+33>>0]=Mf(d,1)|0;a[b+34>>0]=Mf(d,1)|0;a[b+35>>0]=Mf(d,1)|0;a[b+36>>0]=Mf(d,1)|0;a[b+37>>0]=Mf(d,1)|0;a[b+38>>0]=Mf(d,1)|0;a[b+39>>0]=Mf(d,1)|0;a[b+40>>0]=Mf(d,1)|0;a[b+41>>0]=Mf(d,1)|0;a[b+42>>0]=Mf(d,1)|0;a[b+43>>0]=Mf(d,1)|0;Vg(d,44)}if(!(a[b+44>>0]|0))return;c[b+48>>2]=Mf(d,8)|0;return}function sk(b){b=b|0;var d=0,e=0;c[b+4720>>2]=0;c[b+4724>>2]=0;c[b+4728>>2]=0;tk(b+4904|0);d=b+4984|0;e=d+9|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(e|0));a[b>>0]=0;return}function tk(d){d=d|0;var e=0,f=0,g=0;a[d>>0]=0;e=d+2|0;b[e>>1]=0;b[e+2>>1]=0;b[e+4>>1]=0;a[e+6>>0]=0;c[d+12>>2]=5;a[d+16>>0]=0;a[d+17>>0]=0;a[d+18>>0]=2;a[d+19>>0]=2;a[d+20>>0]=2;c[d+48>>2]=0;c[d+52>>2]=0;a[d+56>>0]=0;e=d+60|0;f=d+21|0;g=f+24|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(g|0));c[e>>2]=1;a[d+64>>0]=0;a[d+65>>0]=0;a[d+66>>0]=0;a[d+67>>0]=1;a[d+68>>0]=0;b[d+70>>1]=0;a[d+72>>0]=2;a[d+73>>0]=1;a[d+74>>0]=15;a[d+75>>0]=15;return}function uk(a){a=a|0;c[a>>2]=12432;yk(a+12|0);gz(a);return}function vk(a){a=a|0;c[a>>2]=12432;yk(a+12|0);gz(a);nz(a);return}function wk(a){a=a|0;yk(a+12|0);return}function xk(a){a=a|0;nz(a);return}function yk(a){a=a|0;var b=0;b=c[a+4720>>2]|0;if(!b)return;c[a+4724>>2]=b;nz(b);return}function zk(a,b){a=a|0;b=b|0;return}function Ak(d,e,f){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=Mf(f,4)|0;c[d>>2]=s;if((s|0)>15){f=8;return f|0}Vg(f,2);s=Mf(f,6)|0;c[d+4>>2]=s+1;if((s|0)>62){f=8;return f|0}s=Mf(f,3)|0;j=d+8|0;c[j>>2]=s+1;if((s|0)>6){f=8;return f|0}c[d+12>>2]=Mf(f,1)|0;Vg(f,16);kk(d+16|0,f,c[j>>2]|0);s=Mf(f,1)|0;k=d+484|0;c[k>>2]=s;g=c[j>>2]|0;if(s){if((g|0)>0){l=0;h=7}}else{l=g+-1|0;h=7}do if((h|0)==7){g=l;while(1){s=d+488+(g*12|0)|0;c[s>>2]=Wg(f)|0;h=d+488+(g*12|0)+4|0;c[h>>2]=Wg(f)|0;i=Wg(f)|0;c[d+488+(g*12|0)+8>>2]=i;if((c[s>>2]|0)==-99999){g=8;h=70;break}g=g+1|0;if((i|0)==-99999|(c[h>>2]|0)==-99999){g=8;h=70;break}if((g|0)>=(c[j>>2]|0)){h=11;break}}if((h|0)==11){if(c[k>>2]|0)break;if((l|0)>=8)M(68934,68974,144,68983);if((l|0)<=0)break;h=d+488+(l*12|0)|0;i=d+488+(l*12|0)+4|0;j=d+488+(l*12|0)+8|0;g=0;do{c[d+488+(g*12|0)>>2]=c[h>>2];c[d+488+(g*12|0)+4>>2]=c[i>>2];c[d+488+(g*12|0)+8>>2]=c[j>>2];g=g+1|0}while((g|0)!=(l|0))}else if((h|0)==70)return g|0}while(0);r=d+584|0;a[r>>0]=Mf(f,6)|0;j=Wg(f)|0;s=d+588|0;c[s>>2]=j;j=j+1|0;if(j>>>0>1023){De(e,8,0);f=8;return f|0}c[s>>2]=j;q=d+592|0;k=d+596|0;g=c[k>>2]|0;i=c[q>>2]|0;h=(g-i|0)/12|0;if(j>>>0<=h>>>0){if(j>>>0<h>>>0){j=i+(j*12|0)|0;if((j|0)!=(g|0))do{h=g;g=g+-12|0;i=c[g>>2]|0;if(i|0){c[h+-8>>2]=i;nz(i)}}while((g|0)!=(j|0));c[k>>2]=j}}else Ck(q,j-h|0);if((c[s>>2]|0)>1){g=1;i=a[r>>0]|0;do{j=c[q>>2]|0;o=j+(g*12|0)|0;k=i&255;l=k+1|0;p=j+(g*12|0)+4|0;h=c[p>>2]|0;e=c[o>>2]|0;m=h-e|0;n=e;a:do if(m>>>0>k>>>0){if(l>>>0<m>>>0)c[p>>2]=n+l}else{i=l-m|0;k=j+(g*12|0)+8|0;j=c[k>>2]|0;if((j-h|0)>>>0>=i>>>0)while(1){a[h>>0]=0;h=(c[p>>2]|0)+1|0;c[p>>2]=h;i=i+-1|0;if(!i)break a}h=j-e|0;j=h<<1;j=h>>>0<1073741823?(j>>>0<l>>>0?l:j):2147483647;if(!j)h=0;else h=lz(j)|0;hB(h+m|0,0,i|0)|0;if((m|0)>0)fB(h|0,n|0,m|0)|0;c[o>>2]=h;c[p>>2]=h+l;c[k>>2]=h+j;if(e|0)nz(n)}while(0);h=0;while(1){i=(Mf(f,1)|0)&255;a[(c[(c[q>>2]|0)+(g*12|0)>>2]|0)+h>>0]=i;i=a[r>>0]|0;if(h>>>0<(i&255)>>>0)h=h+1|0;else break}g=g+1|0}while((g|0)<(c[s>>2]|0))}s=(Mf(f,1)|0)&255;a[d+604>>0]=s;if(s<<24>>24?(c[d+608>>2]=Mf(f,32)|0,c[d+612>>2]=Mf(f,32)|0,s=(Mf(f,1)|0)&255,a[d+616>>0]=s,s<<24>>24):0){c[d+620>>2]=(Wg(f)|0)+1;g=Wg(f)|0;p=d+624|0;c[p>>2]=g;if((g|0)>1023)M(76276,68974,189,68983);q=d+628|0;h=d+632|0;i=c[q>>2]|0;j=(c[h>>2]|0)-i>>1;if(g>>>0<=j>>>0)if(g>>>0<j>>>0){c[h>>2]=i+(g<<1);e=g}else e=g;else{Dk(q,g-j|0);e=c[p>>2]|0}j=d+640|0;o=d+644|0;g=c[o>>2]|0;k=c[j>>2]|0;l=g-k|0;m=k;b:do if(e>>>0>l>>>0){h=e-l|0;n=d+648|0;i=c[n>>2]|0;if((i-g|0)>>>0>=h>>>0)while(1){a[g>>0]=0;g=(c[o>>2]|0)+1|0;c[o>>2]=g;h=h+-1|0;if(!h)break b}if((e|0)<0)Yz(j);s=i-k|0;i=s<<1;i=s>>>0<1073741823?(i>>>0<e>>>0?e:i):2147483647;if(!i)g=0;else g=lz(i)|0;hB(g+l|0,0,h|0)|0;if((l|0)>0)fB(g|0,m|0,l|0)|0;c[j>>2]=g;c[o>>2]=g+e;c[n>>2]=g+i;if(k|0)nz(m)}else if(e>>>0<l>>>0)c[o>>2]=m+e;while(0);if((c[p>>2]|0)>0){f=(Wg(f)|0)&65535;b[c[q>>2]>>1]=f;f=0;return f|0}}a[d+652>>0]=Mf(f,1)|0;f=0;return f|0}function Bk(b,f){b=b|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,C=0,D=0,E=0,F=0;F=hc;g=hc=hc+31&-32;hc=hc+208|0;E=g+192|0;D=g+184|0;C=g+176|0;B=g+168|0;A=g+160|0;z=g+152|0;y=g+144|0;x=g+128|0;w=g+120|0;u=g+112|0;t=g+104|0;p=g+96|0;o=g+88|0;n=g+80|0;s=g+72|0;r=g+64|0;q=g+56|0;m=g+48|0;l=g+40|0;k=g+32|0;j=g+24|0;i=g+16|0;h=g+8|0;switch(f|0){case 1:{f=48404;break}case 2:{f=48396;break}default:{hc=F;return}}v=c[f>>2]|0;Rj(v,68072,g);c[h>>2]=c[b>>2];Rj(v,68113,h);c[i>>2]=c[b+4>>2];Rj(v,68157,i);h=b+8|0;c[j>>2]=c[h>>2];Rj(v,68201,j);c[k>>2]=c[b+12>>2];Rj(v,68245,k);k=c[h>>2]|0;jk(b+16|0,1,v);g=k+-1|0;if((k|0)>1){f=0;do{c[l>>2]=f;Rj(v,67160,l);jk(b+68+(f*52|0)|0,0,v);f=f+1|0}while((f|0)!=(g|0))}l=b+484|0;c[m>>2]=c[l>>2];Rj(v,68289,m);if(c[l>>2]|0){if((c[h>>2]|0)>0){f=0;do{p=c[b+488+(f*12|0)>>2]|0;c[q>>2]=f;c[q+4>>2]=p;Rj(v,68336,q);c[r>>2]=c[b+488+(f*12|0)+4>>2];Rj(v,68378,r);c[s>>2]=c[b+488+(f*12|0)+8>>2];Rj(v,68419,s);f=f+1|0}while((f|0)<(c[h>>2]|0))}}else{c[n>>2]=c[b+488>>2];Rj(v,68460,n);c[o>>2]=c[b+492>>2];Rj(v,68505,o);c[p>>2]=c[b+496>>2];Rj(v,68550,p)}j=b+584|0;c[t>>2]=d[j>>0];Rj(v,68595,t);i=b+588|0;c[u>>2]=c[i>>2];Rj(v,68620,u);if((c[i>>2]|0)>1){h=b+592|0;g=1;do{f=0;while(1){u=a[(c[(c[h>>2]|0)+(g*12|0)>>2]|0)+f>>0]|0;c[x>>2]=g;c[x+4>>2]=f;c[x+8>>2]=u;Rj(v,68680,x);if(f>>>0<(d[j>>0]|0)>>>0)f=f+1|0;else break}g=g+1|0}while((g|0)<(c[i>>2]|0))}x=b+604|0;c[w>>2]=a[x>>0];Rj(v,68645,w);if((a[x>>0]|0?(c[y>>2]=c[b+608>>2],Rj(v,68717,y),c[z>>2]=c[b+612>>2],Rj(v,68745,z),z=b+616|0,c[A>>2]=a[z>>0],Rj(v,68773,A),a[z>>0]|0):0)?(c[B>>2]=c[b+620>>2],Rj(v,68815,B),B=b+624|0,c[C>>2]=c[B>>2],Rj(v,68848,C),(c[B>>2]|0)>0):0){E=e[c[b+628>>2]>>1]|0;c[D>>2]=0;c[D+4>>2]=E;Rj(v,68881,D);hc=F;return}c[E>>2]=a[b+652>>0];Rj(v,68909,E);hc=F;return}function Ck(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=hc;i=hc=hc+31&-32;hc=hc+32|0;h=c[a+8>>2]|0;d=a+4|0;e=c[d>>2]|0;if(((h-e|0)/12|0)>>>0>=b>>>0){hB(e|0,0,b*12|0)|0;c[d>>2]=e+(b*12|0);hc=j;return}f=c[a>>2]|0;g=(e-f|0)/12|0;d=g+b|0;if(d>>>0>357913941)Yz(a);h=(h-f|0)/12|0;e=h<<1;e=h>>>0<178956970?(e>>>0<d>>>0?d:e):357913941;c[i+12>>2]=0;c[i+16>>2]=a+8;do if(e)if(e>>>0>357913941){j=N(8)|0;rz(j,68988);c[j>>2]=52024;S(j|0,11744,126)}else{d=lz(e*12|0)|0;break}else d=0;while(0);c[i>>2]=d;f=d+(g*12|0)|0;h=i+8|0;g=i+4|0;c[g>>2]=f;c[i+12>>2]=d+(e*12|0);hB(f|0,0,b*12|0)|0;c[h>>2]=f+(b*12|0);Ek(a,i);g=c[g>>2]|0;d=c[h>>2]|0;if((d|0)!=(g|0))do{e=d+-12|0;c[h>>2]=e;f=c[e>>2]|0;if(!f)d=e;else{c[d+-8>>2]=f;nz(f);d=c[h>>2]|0}}while((d|0)!=(g|0));d=c[i>>2]|0;if(d|0)nz(d);hc=j;return}function Dk(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=a+8|0;e=c[k>>2]|0;l=a+4|0;d=c[l>>2]|0;if(e-d>>1>>>0>=b>>>0){hB(d|0,0,b<<1|0)|0;c[l>>2]=d+(b<<1);return}j=c[a>>2]|0;i=d-j|0;h=i>>1;d=h+b|0;if((d|0)<0)Yz(a);g=e-j|0;g=g>>1>>>0<1073741823?(g>>>0<d>>>0?d:g):2147483647;do if(g)if((g|0)<0){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(g<<1)|0;e=f;break}else{e=0;f=0}while(0);d=e+(h<<1)|0;hB(d|0,0,b<<1|0)|0;if((i|0)>0)fB(f|0,j|0,i|0)|0;c[a>>2]=e;c[l>>2]=d+(b<<1);c[k>>2]=e+(g<<1);if(!j)return;nz(j);return}function Ek(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;k=c[a>>2]|0;n=a+4|0;d=c[n>>2]|0;q=b+4|0;do if((d|0)!=(k|0)){h=c[q>>2]|0;while(1){f=h+-12|0;c[f>>2]=0;i=h+-8|0;c[i>>2]=0;c[h+-4>>2]=0;g=d+-8|0;d=d+-12|0;e=(c[g>>2]|0)-(c[d>>2]|0)|0;if(e|0){if((e|0)<0){d=6;break}j=lz(e)|0;c[i>>2]=j;c[f>>2]=j;c[h+-4>>2]=j+e;f=c[d>>2]|0;e=(c[g>>2]|0)-f|0;if((e|0)>0){fB(j|0,f|0,e|0)|0;c[i>>2]=j+e}}h=(c[q>>2]|0)+-12|0;c[q>>2]=h;if((d|0)==(k|0)){d=10;break}}if((d|0)==6)Yz(f);else if((d|0)==10){l=q;m=a;o=h;p=c[a>>2]|0;break}}else{l=q;m=a;o=c[q>>2]|0;p=k}while(0);c[m>>2]=o;c[l>>2]=p;o=b+8|0;q=c[n>>2]|0;c[n>>2]=c[o>>2];c[o>>2]=q;o=a+8|0;q=b+12|0;p=c[o>>2]|0;c[o>>2]=c[q>>2];c[q>>2]=p;c[b>>2]=c[l>>2];return}function Fk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;c[a>>2]=12460;b=c[a+652>>2]|0;if(b|0){c[a+656>>2]=b;nz(b)}b=c[a+640>>2]|0;if(b|0){c[a+644>>2]=b;nz(b)}f=a+604|0;g=c[f>>2]|0;if(!g){gz(a);return}h=a+608|0;b=c[h>>2]|0;if((b|0)==(g|0))b=g;else{do{d=b;b=b+-12|0;e=c[b>>2]|0;if(e|0){c[d+-8>>2]=e;nz(e)}}while((b|0)!=(g|0));b=c[f>>2]|0}c[h>>2]=g;nz(b);gz(a);return}function Gk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;c[a>>2]=12460;b=c[a+652>>2]|0;if(b|0){c[a+656>>2]=b;nz(b)}b=c[a+640>>2]|0;if(b|0){c[a+644>>2]=b;nz(b)}f=a+604|0;g=c[f>>2]|0;if(!g){gz(a);nz(a);return}h=a+608|0;b=c[h>>2]|0;if((b|0)==(g|0))b=g;else{do{d=b;b=b+-12|0;e=c[b>>2]|0;if(e|0){c[d+-8>>2]=e;nz(e)}}while((b|0)!=(g|0));b=c[f>>2]|0}c[h>>2]=g;nz(b);gz(a);nz(a);return}function Hk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=c[a+652>>2]|0;if(b|0){c[a+656>>2]=b;nz(b)}b=c[a+640>>2]|0;if(b|0){c[a+644>>2]=b;nz(b)}e=a+604|0;g=c[e>>2]|0;if(!g)return;f=a+608|0;b=c[f>>2]|0;if((b|0)==(g|0))b=g;else{do{a=b;b=b+-12|0;d=c[b>>2]|0;if(d|0){c[a+-8>>2]=d;nz(d)}}while((b|0)!=(g|0));b=c[e>>2]|0}c[f>>2]=g;nz(b);return}function Ik(a){a=a|0;nz(a);return}function Jk(a){a=a|0;c[a+780>>2]=0;c[a+784>>2]=0;c[a+788>>2]=0;Cj(a+1336|0);c[a+1348>>2]=0;c[a+1352>>2]=0;c[a+1356>>2]=0;nl(a);return}function Kk(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,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;a[h>>0]=0;l=e+12|0;c[l>>2]=0;q=e+16|0;a[q>>0]=0;E=e+20|0;v=e+32|0;c[v>>2]=0;w=e+36|0;a[w>>0]=0;i=e+38|0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;c[E>>2]=0;c[E+4>>2]=0;b[E+8>>1]=0;ll(i);x=e+140|0;z=e+380|0;M=e+740|0;A=e+760|0;c[A>>2]=0;B=e+764|0;c[B>>2]=0;C=e+768|0;a[C>>0]=0;H=e+772|0;c[H>>2]=0;I=e+776|0;c[I>>2]=0;J=e+780|0;hB(x|0,0,237)|0;hB(z|0,0,358)|0;c[M>>2]=0;c[M+4>>2]=0;c[M+8>>2]=0;c[M+12>>2]=0;b[M+16>>1]=0;a[M+18>>0]=0;F=e+784|0;c[F>>2]=c[J>>2];L=e+792|0;k=e+816|0;c[L>>2]=0;c[L+4>>2]=0;c[L+8>>2]=0;c[L+12>>2]=0;c[L+16>>2]=0;c[L+20>>2]=0;ll(k);y=e+916|0;n=e+1348|0;hB(y|0,0,420)|0;c[e+1352>>2]=c[n>>2];o=e+1344|0;a[o>>0]=0;a[q>>0]=0;p=e+8|0;a[p>>0]=Mf(f,1)|0;if(a[g+3210>>0]|0)a[e+9>>0]=Mf(f,1)|0;j=Wg(f)|0;c[l>>2]=j;if((j|0)>64|(j|0)==-99999){De(g+4|0,1009,0);h=0;return h|0}j=c[g+856+(j<<3)>>2]|0;if(!j){De(g+4|0,1009,0);h=0;return h|0}K=e+4|0;c[K>>2]=j;D=c[j+4>>2]|0;if(!(a[D>>0]|0)){De(g+4|0,1010,0);a[h>>0]=0;h=0;return h|0}if(!(a[p>>0]|0)){if(!(a[j+10>>0]|0))j=0;else j=(Mf(f,1)|0)&255;a[q>>0]=j;m=D+5072|0;l=c[m>>2]|0;j=0;while(1)if((1<<j|0)<(l|0))j=j+1|0;else break;l=Mf(f,j)|0;if(!(a[q>>0]|0))j=0;else{if(!l){a[h>>0]=0;De(g+4|0,1021,0);h=0;return h|0}j=c[g+2224>>2]|0;if(!j){h=16;return h|0}fB(e|0,j|0,780)|0;if((j|0)==(e|0)){o=e+1336|0;yf(o,o)|0}else{gl(J,c[j+780>>2]|0,c[j+784>>2]|0);fB(L|0,j+792|0,544)|0;yf(e+1336|0,j+1336|0)|0;a[o>>0]=a[j+1344>>0]|0;gl(n,c[j+1348>>2]|0,c[j+1352>>2]|0)}a[p>>0]=0;a[q>>0]=1;j=1}c[E>>2]=l;if((l|0)>=0){r=m;s=l;t=j;G=24}}else{a[q>>0]=0;c[E>>2]=0;r=D+5072|0;s=0;t=0;G=24}if((G|0)==24?(s|0)<(c[r>>2]|0):0){if(!(t<<24>>24)){if((a[(c[K>>2]|0)+4140>>0]|0)>0){j=0;do{Vg(f,1);j=j+1|0}while((j|0)<(a[(c[K>>2]|0)+4140>>0]|0))}t=Wg(f)|0;q=e+24|0;c[q>>2]=t;if((t|0)>2|(t|0)==-99999){De(g+4|0,1007,0);a[h>>0]=0;h=0;return h|0}if(!(a[(c[K>>2]|0)+39>>0]|0))j=1;else j=(Mf(f,1)|0)&255;a[e+28>>0]=j;if((a[D+480>>0]|0)==1)a[e+29>>0]=Mf(f,2)|0;c[v>>2]=0;a[w>>0]=0;do if(((a[g+3208>>0]|0)+-19&255)>=2){p=D+520|0;c[v>>2]=Mf(f,c[p>>2]|0)|0;v=(Mf(f,1)|0)&255;a[w>>0]=v;do if(!(v<<24>>24)){j=D+4720|0;x=D+4724|0;nk(g+4|0,D,f,i,((c[x>>2]|0)-(c[j>>2]|0)|0)/100|0,j,1)|0;c[e+812>>2]=((c[x>>2]|0)-(c[j>>2]|0)|0)/100|0;j=k+100|0;do{b[k>>1]=b[i>>1]|0;k=k+2|0;i=i+2|0}while((k|0)<(j|0))}else{l=D+4720|0;n=D+4724|0;m=c[l>>2]|0;i=((c[n>>2]|0)-m|0)/100|0;j=0;while(1)if((1<<j|0)<(i|0))j=j+1|0;else break;if(!j)j=0;else{j=Mf(f,j)|0;i=c[l>>2]|0;m=i;i=((c[n>>2]|0)-i|0)/100|0}c[x>>2]=j;if((j|0)<(i|0)){c[e+812>>2]=j;i=m+(j*100|0)|0;j=k+100|0;do{b[k>>1]=b[i>>1]|0;k=k+2|0;i=i+2|0}while((k|0)<(j|0));break}De(g+4|0,1015,0);h=8;return h|0}while(0);a:do if(!(a[D+4732>>0]|0)){c[e+144>>2]=0;c[e+148>>2]=0;i=0}else{m=D+4736|0;do if((c[m>>2]|0)>0){x=Wg(f)|0;c[e+144>>2]=x;if((x|0)==-99999)i=8;else break;return i|0}else c[e+144>>2]=0;while(0);i=Wg(f)|0;n=e+148|0;c[n>>2]=i;if((i|0)==-99999){h=8;return h|0}o=e+144|0;j=c[o>>2]|0;i=j+i|0;if((i+(d[e+912>>0]|0)+(d[e+913>>0]|0)|0)>(c[D+528+((a[D+2>>0]|0)+-1<<2)>>2]|0)){De(g+4|0,1018,0);a[h>>0]=0;h=0;return h|0}if((i|0)<=0){i=0;break}i=0;l=0;while(1){if((l|0)<(j|0)){k=c[m>>2]|0;j=0;while(1)if((1<<j|0)<(k|0))j=j+1|0;else break;k=Mf(f,j)|0;j=e+152+l|0;a[j>>0]=k;k=k&255;if((k|0)>=(c[m>>2]|0))break;c[g+2228+(l<<2)>>2]=c[D+4740+(k<<2)>>2];j=(d[j>>0]|0)+(D+4868)|0}else{x=e+168+(l<<2)|0;c[x>>2]=Mf(f,c[p>>2]|0)|0;j=e+232+l|0;a[j>>0]=Mf(f,1)|0;c[g+2228+(l<<2)>>2]=c[x>>2]}x=a[j>>0]|0;c[g+2292+(l<<2)>>2]=x<<24>>24;i=i+(x<<24>>24!=0&1)|0;x=(Mf(f,1)|0)&255;a[e+248+l>>0]=x;if(x<<24>>24){j=Wg(f)|0;c[e+264+(l<<2)>>2]=j;if((j|0)==-99999){i=8;G=193;break}}else{c[e+264+(l<<2)>>2]=0;j=0}do if(l){if((l|0)==(c[o>>2]|0))break;j=(c[g+2356+(l+-1<<2)>>2]|0)+j|0}while(0);c[g+2356+(l<<2)>>2]=j;l=l+1|0;j=c[o>>2]|0;if((l|0)>=((c[n>>2]|0)+j|0))break a}if((G|0)==193)return i|0;De(g+4|0,1023,0);a[h>>0]=0;h=0;return h|0}while(0);if(!(a[D+4900>>0]|0)){a[e+328>>0]=0;break}else{a[e+328>>0]=Mf(f,1)|0;break}}else{c[v>>2]=0;c[e+144>>2]=0;c[e+148>>2]=0;i=0}while(0);if(a[D+4703>>0]|0){a[e+329>>0]=Mf(f,1)|0;if(!(c[D+5012>>2]|0))j=0;else j=(Mf(f,1)|0)&255}else{a[e+329>>0]=0;j=0}a[e+330>>0]=j;k=e+332|0;c[k>>2]=0;l=e+336|0;c[l>>2]=0;do if((c[q>>2]|0)>>>0<2){x=(Mf(f,1)|0)&255;a[e+331>>0]=x;do if(!(x<<24>>24)){x=c[K>>2]|0;j=a[x+13>>0]|0;c[k>>2]=j;c[l>>2]=a[x+14>>0]}else{j=Wg(f)|0;c[k>>2]=j;if((j|0)==-99999){De(g+4|0,1007,0);h=8;return h|0}j=j+1|0;c[k>>2]=j;if(c[q>>2]|0)break;j=Wg(f)|0;c[l>>2]=j;if((j|0)!=-99999){c[l>>2]=j+1;j=c[k>>2]|0;break}De(g+4|0,1007,0);h=8;return h|0}while(0);if((j|0)>16){h=8;return h|0}if((c[l>>2]|0)>16){h=8;return h|0}i=i+(d[e+915>>0]|0)|0;c[y>>2]=i;do if((i|0)>1?(a[(c[K>>2]|0)+4133>>0]|0)!=0:0){j=0;while(1)if((1<<j|0)<(i|0))j=j+1|0;else break;y=(Mf(f,1)|0)&255;a[e+340>>0]=y;do if(y<<24>>24){if((c[k>>2]|0)<=0)break;i=0;do{a[e+342+i>>0]=Mf(f,j)|0;i=i+1|0}while((i|0)<(c[k>>2]|0))}while(0);if(c[q>>2]|0){a[e+341>>0]=0;break}G=(Mf(f,1)|0)&255;a[e+341>>0]=G;if(!(G<<24>>24)){G=103;break}if((c[l>>2]|0)<=0){G=103;break}i=0;do{a[e+358+i>>0]=Mf(f,j)|0;i=i+1|0}while((i|0)<(c[l>>2]|0));G=103}else{a[e+340>>0]=0;a[e+341>>0]=0;G=103}while(0);do if((G|0)==103){if(c[q>>2]|0)break;a[e+374>>0]=Mf(f,1)|0}while(0);if(!(a[(c[K>>2]|0)+12>>0]|0))i=0;else i=(Mf(f,1)|0)&255;a[e+375>>0]=i;do if(a[e+328>>0]|0){do if(!(c[q>>2]|0)){i=(Mf(f,1)|0)&255;j=e+376|0;a[j>>0]=i;if(i<<24>>24){G=111;break}if((c[l>>2]|0)>1){i=j;G=113}else{i=0;G=116}}else{j=e+376|0;a[j>>0]=1;i=1;G=111}while(0);if((G|0)==111)if((c[k>>2]|0)>1){i=j;G=113}else G=116;do if((G|0)==113){j=Wg(f)|0;c[z>>2]=j;if((j|0)!=-99999){i=a[i>>0]|0;break}De(g+4|0,1007,0);h=8;return h|0}else if((G|0)==116){c[z>>2]=0;j=0}while(0);if(!(i<<24>>24)){if((j|0)<(c[l>>2]|0))break}else if((j|0)<(c[k>>2]|0))break;De(g+4|0,8,0);h=8;return h|0}while(0);i=c[K>>2]|0;if((a[i+37>>0]|0)!=0?(c[q>>2]|0)==1:0)G=125;else G=123;do if((G|0)==123){if(!(a[i+38>>0]|0))break;if(!(c[q>>2]|0))G=125}while(0);do if((G|0)==125){if(ml(f,e,g)|0)break;De(g+4|0,8,0);h=8;return h|0}while(0);i=Wg(f)|0;c[M>>2]=i;if((i|0)!=-99999){c[e+808>>2]=5-i;break}De(g+4|0,1007,0);h=8;return h|0}while(0);z=Xg(f)|0;c[e+744>>2]=z;if((z|0)==-99999){De(g+4|0,1007,0);h=8;return h|0}i=c[K>>2]|0;do if(!(a[i+36>>0]|0)){c[e+748>>2]=0;c[e+752>>2]=0}else{z=Xg(f)|0;c[e+748>>2]=z;if((z|0)==-99999){De(g+4|0,1007,0);h=8;return h|0}z=Xg(f)|0;c[e+752>>2]=z;if((z|0)!=-99999){i=c[K>>2]|0;break}De(g+4|0,1007,0);h=8;return h|0}while(0);if(a[i+4148>>0]|0){a[e+756>>0]=Mf(f,1)|0;i=c[K>>2]|0}if(!(a[i+56>>0]|0))j=0;else{j=(Mf(f,1)|0)&255;i=c[K>>2]|0}a[e+757>>0]=j;c[A>>2]=c[i+60>>2];c[B>>2]=c[i+64>>2];do if(!(j<<24>>24))a[e+758>>0]=a[i+57>>0]|0;else{z=(Mf(f,1)|0)&255;a[e+758>>0]=z;if(z<<24>>24)break;i=Xg(f)|0;c[A>>2]=i;if((i|0)==-99999){De(g+4|0,1007,0);h=8;return h|0}c[A>>2]=i<<1;i=Xg(f)|0;c[B>>2]=i;if((i|0)!=-99999){c[B>>2]=i<<1;break}De(g+4|0,1007,0);h=8;return h|0}while(0);i=a[(c[K>>2]|0)+54>>0]|0;b:do if(i<<24>>24){do if(!(a[e+329>>0]|0)){if(a[e+330>>0]|0)break;if(a[e+758>>0]|0)break b}while(0);i=(Mf(f,1)|0)&255}while(0);a[C>>0]=i}C=c[K>>2]|0;if((a[C+42>>0]|0)==0?(a[C+41>>0]|0)==0:0)c[H>>2]=0;else G=159;c:do if((G|0)==159){i=Wg(f)|0;c[H>>2]=i;if((i|0)==-99999){De(g+4|0,1007,0);h=8;return h|0}j=c[K>>2]|0;if(a[j+41>>0]|0?(((c[E>>2]|0)/(c[D+5056>>2]|0)|0)+i|0)>=(c[D+5064>>2]|0):0){De(g+4|0,1007,0);h=8;return h|0}if(a[j+42>>0]|0?(i|0)>(u(c[j+48>>2]|0,c[j+44>>2]|0)|0):0){De(g+4|0,1007,0);h=8;return h|0}j=c[J>>2]|0;k=(c[F>>2]|0)-j>>2;if(i>>>0<=k>>>0){if(i>>>0<k>>>0)c[F>>2]=j+(i<<2)}else{Wj(J,i-k|0);i=c[H>>2]|0}if((i|0)>0){i=Wg(f)|0;c[I>>2]=i;if((i|0)==-99999){De(g+4|0,1007,0);h=8;return h|0}j=i+1|0;c[I>>2]=j;if((i|0)>31){h=8;return h|0}if((c[H>>2]|0)>0){i=0;while(1){j=(Mf(f,j)|0)+1|0;k=c[J>>2]|0;l=k+(i<<2)|0;c[l>>2]=j;if(i|0)c[l>>2]=(c[k+(i+-1<<2)>>2]|0)+j;i=i+1|0;if((i|0)>=(c[H>>2]|0))break c;j=c[I>>2]|0}}}}while(0);if(a[(c[K>>2]|0)+4141>>0]|0){i=Wg(f)|0;c[L>>2]=i;if((i|0)==-99999|(i|0)>1e3){De(g+4|0,1007,0);h=8;return h|0}if((i|0)>0){i=0;do{Mf(f,8)|0;i=i+1|0}while((i|0)<(c[L>>2]|0))}}c[e+796>>2]=(c[e+744>>2]|0)+(c[(c[K>>2]|0)+16>>2]|0);switch(c[e+24>>2]|0){case 2:{i=0;G=191;break}case 1:{i=(a[e+375>>0]|0)+1|0;G=191;break}case 0:{i=2-(a[e+375>>0]|0)|0;G=191;break}default:{}}if((G|0)==191)c[e+800>>2]=i;c[e+808>>2]=5-(c[M>>2]|0);a[h>>0]=1;h=0;return h|0}De(g+4|0,1020,0);h=8;return h|0}function Lk(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,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,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;pa=hc;h=hc=hc+31&-32;hc=hc+544|0;fa=h+520|0;ea=h+504|0;da=h+488|0;ca=h+472|0;ba=h+456|0;aa=h+440|0;oa=h+432|0;na=h+424|0;ma=h+416|0;ka=h+408|0;ja=h+400|0;ia=h+392|0;ha=h+384|0;ga=h+376|0;$=h+368|0;_=h+360|0;Z=h+352|0;Y=h+344|0;T=h+328|0;S=h+312|0;R=h+296|0;Q=h+280|0;V=h+264|0;U=h+248|0;P=h+240|0;O=h+232|0;N=h+224|0;L=h+216|0;K=h+208|0;J=h+200|0;I=h+192|0;G=h+184|0;F=h+176|0;D=h+168|0;C=h+160|0;B=h+152|0;A=h+144|0;z=h+136|0;y=h+128|0;x=h+120|0;w=h+112|0;v=h+104|0;u=h+96|0;t=h+88|0;s=h+80|0;r=h+72|0;q=h+64|0;p=h+56|0;o=h+48|0;k=h+40|0;n=h+32|0;m=h+24|0;l=h+16|0;j=h+8|0;switch(g|0){case 1:{g=48404;break}case 2:{g=48396;break}default:{hc=pa;return}}la=c[g>>2]|0;i=e+12|0;X=c[f+856+(c[i>>2]<<3)>>2]|0;if(!(a[X>>0]|0))M(69347,58545,1281,69361);E=c[f+728+(a[X+9>>0]<<3)>>2]|0;if(!(a[E>>0]|0))M(69387,58545,1284,69361);Rj(la,69401,h);h=e+8|0;c[j>>2]=a[h>>0];Rj(la,69444,j);g=f+3208|0;if((a[g>>0]&-8)<<24>>24==16){c[l>>2]=a[e+9>>0];Rj(la,69487,l)}c[m>>2]=c[i>>2];Rj(la,69530,m);if(!(a[h>>0]|0)){c[n>>2]=a[e+16>>0];Rj(la,69573,n);c[k>>2]=c[e+20>>2];Rj(la,69616,k)}f=e+24|0;n=c[f>>2]|0;c[o>>2]=(n|0)==0?66:(n|0)==1?80:73;Rj(la,69659,o);if(a[X+39>>0]|0){c[p>>2]=a[e+28>>0];Rj(la,69702,p)}if((a[E+480>>0]|0)==1){c[q>>2]=a[e+29>>0];Rj(la,69745,q)}c[r>>2]=c[e+32>>2];Rj(la,69788,r);if(((a[g>>0]|0)+-19&255)>=2){r=e+36|0;c[s>>2]=a[r>>0];Rj(la,69831,s);g=E+4720|0;h=(c[E+4724>>2]|0)-(c[g>>2]|0)|0;if(a[r>>0]|0){if((h|0)>100){t=e+140|0;c[u>>2]=c[t>>2];Rj(la,69895,u);gk((c[g>>2]|0)+((c[t>>2]|0)*100|0)|0,16,la)}}else{c[t>>2]=(h|0)/100|0;Rj(la,69874,t);gk(e+38|0,16,la)}if(a[E+4732>>0]|0){if((c[E+4736>>2]|0)>0){c[v>>2]=c[e+144>>2];Rj(la,69938,v)}c[w>>2]=c[e+148>>2];Rj(la,69985,w)}if(a[E+4900>>0]|0){c[x>>2]=a[e+328>>0];Rj(la,70032,x)}}if(a[E+4703>>0]|0){c[y>>2]=a[e+329>>0];Rj(la,70070,y);c[z>>2]=a[e+330>>0];Rj(la,70108,z)}if((c[f>>2]|0)>>>0<2){g=e+331|0;c[A>>2]=a[g>>0];Rj(la,70146,A);h=e+332|0;A=(a[g>>0]|0)==0?70185:100142;c[B>>2]=c[h>>2];c[B+4>>2]=A;Rj(la,70196,B);if(!(c[f>>2]|0)){B=(a[g>>0]|0)==0?70185:100142;c[C>>2]=c[e+336>>2];c[C+4>>2]=B;Rj(la,70236,C)}if(a[X+4133>>0]|0?(c[e+916>>2]|0)>1:0){C=e+340|0;c[D>>2]=a[C>>0];Rj(la,70276,D);if(a[C>>0]|0?(c[h>>2]|0)>0:0){g=0;do{D=d[e+342+g>>0]|0;c[F>>2]=g;c[F+4>>2]=D;Rj(la,70316,F);g=g+1|0}while((g|0)<(c[h>>2]|0))}F=e+341|0;c[G>>2]=a[F>>0];Rj(la,70326,G);if(a[F>>0]|0?(H=e+336|0,(c[H>>2]|0)>0):0){g=0;do{G=d[e+358+g>>0]|0;c[I>>2]=g;c[I+4>>2]=G;Rj(la,70316,I);g=g+1|0}while((g|0)<(c[H>>2]|0))}}if(!(c[f>>2]|0)){c[J>>2]=a[e+374>>0];Rj(la,70366,J)}c[K>>2]=a[e+375>>0];Rj(la,70403,K);if(a[e+328>>0]|0){c[L>>2]=a[e+376>>0];Rj(la,70440,L);c[N>>2]=c[e+380>>2];Rj(la,70477,N)}if((a[X+37>>0]|0)!=0?(c[f>>2]|0)==1:0)g=49;else g=47;if(((g|0)==47?a[X+38>>0]|0:0)?(c[f>>2]|0)==0:0)g=49;if((g|0)==49){c[O>>2]=d[e+384>>0];Rj(la,70514,O);if(c[E+476>>2]|0){c[P>>2]=d[e+385>>0];Rj(la,70551,P)}i=e+336|0;h=c[h>>2]|0;if((h|0)>0){g=0;do{P=b[e+450+(g<<1)>>1]|0;c[U>>2]=0;c[U+4>>2]=g;c[U+8>>2]=P;Rj(la,70588,U);P=a[e+514+g>>0]|0;c[V>>2]=0;c[V+4>>2]=g;c[V+8>>2]=P;Rj(la,70625,V);P=b[e+546+(g<<2)>>1]|0;c[Q>>2]=0;c[Q+4>>2]=g;c[Q+8>>2]=0;c[Q+12>>2]=P;Rj(la,70662,Q);P=a[e+674+(g<<1)>>0]|0;c[R>>2]=0;c[R+4>>2]=g;c[R+8>>2]=0;c[R+12>>2]=P;Rj(la,70700,R);P=b[e+546+(g<<2)+2>>1]|0;c[S>>2]=0;c[S+4>>2]=g;c[S+8>>2]=1;c[S+12>>2]=P;Rj(la,70662,S);P=a[e+674+(g<<1)+1>>0]|0;c[T>>2]=0;c[T+4>>2]=g;c[T+8>>2]=1;c[T+12>>2]=P;Rj(la,70700,T);g=g+1|0}while((g|0)!=(h|0))}if((c[f>>2]|0)==0?(W=c[i>>2]|0,(W|0)>0):0){g=0;do{V=b[e+482+(g<<1)>>1]|0;c[aa>>2]=1;c[aa+4>>2]=g;c[aa+8>>2]=V;Rj(la,70588,aa);V=a[e+530+g>>0]|0;c[ba>>2]=1;c[ba+4>>2]=g;c[ba+8>>2]=V;Rj(la,70625,ba);V=b[e+610+(g<<2)>>1]|0;c[ca>>2]=1;c[ca+4>>2]=g;c[ca+8>>2]=0;c[ca+12>>2]=V;Rj(la,70662,ca);V=a[e+706+(g<<1)>>0]|0;c[da>>2]=1;c[da+4>>2]=g;c[da+8>>2]=0;c[da+12>>2]=V;Rj(la,70700,da);V=b[e+610+(g<<2)+2>>1]|0;c[ea>>2]=1;c[ea+4>>2]=g;c[ea+8>>2]=1;c[ea+12>>2]=V;Rj(la,70662,ea);V=a[e+706+(g<<1)+1>>0]|0;c[fa>>2]=1;c[fa+4>>2]=g;c[fa+8>>2]=1;c[fa+12>>2]=V;Rj(la,70700,fa);g=g+1|0}while((g|0)!=(W|0))}}c[Y>>2]=c[e+740>>2];Rj(la,70738,Y)}c[Z>>2]=c[e+744>>2];Rj(la,70775,Z);if(a[X+36>>0]|0){c[_>>2]=c[e+748>>2];Rj(la,70804,_);c[$>>2]=c[e+752>>2];Rj(la,70833,$)}h=e+757|0;if(a[X+56>>0]|0){c[ga>>2]=a[h>>0];Rj(la,70862,ga)}g=e+758|0;ga=(a[h>>0]|0)==0?70900:70911;c[ha>>2]=a[g>>0];c[ha+4>>2]=ga;Rj(la,70922,ha);if(a[h>>0]|0?(a[g>>0]|0)==0:0){c[ia>>2]=c[e+760>>2];Rj(la,70969,ia);c[ja>>2]=c[e+764>>2];Rj(la,70994,ja)}do if(a[X+54>>0]|0){if(((a[e+329>>0]|0)==0?(a[e+330>>0]|0)==0:0)?a[g>>0]|0:0)break;c[ka>>2]=a[e+768>>0];Rj(la,71019,ka)}while(0);if((a[X+42>>0]|0)==0?(a[X+41>>0]|0)==0:0){hc=pa;return}i=e+772|0;c[ma>>2]=c[i>>2];Rj(la,71070,ma);if((c[i>>2]|0)<=0){hc=pa;return}c[na>>2]=c[e+776>>2];Rj(la,71103,na);if((c[i>>2]|0)<=0){hc=pa;return}h=e+780|0;g=0;do{na=c[(c[h>>2]|0)+(g<<2)>>2]|0;c[oa>>2]=g;c[oa+4>>2]=na;Rj(la,71136,oa);g=g+1|0}while((g|0)<(c[i>>2]|0));hc=pa;return}
function Fg(a,e,f,g,h,i,j,k,l,m,n){a=a|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;m=m|0;n=n|0;var o=0;if((g+f|0)>(n|0)&(((g+e|0)<=(m|0)|(e|0)>(m|0)|(f|0)>(n|0))^1)){if((j<<1|0)==(g|0)?!((j+e|0)<=(m|0)|((l|0)!=1|(k<<1|0)!=(g|0)|(k+f|0)>(n|0))):0)return 0}else{if((n|m|0)<0)return 0;k=c[a+128>>2]|0;if((c[k+484>>2]|0)<=(m|0))return 0;if((c[k+488>>2]|0)<=(n|0))return 0;l=c[a+136>>2]|0;j=c[k+5100>>2]|0;g=c[k+5088>>2]|0;e=(u(n>>j,g)|0)+(m>>j)|0;f=c[l+4396>>2]|0;if((c[f+(e<<2)>>2]|0)>(c[f+((u(i>>j,g)|0)+(h>>j)<<2)>>2]|0))return 0;g=c[k+5040>>2]|0;j=h>>g;e=i>>g;f=m>>g;g=n>>g;i=c[a+156>>2]|0;o=(u(i,e)|0)+j|0;h=c[a+144>>2]|0;if((b[h+(o*24|0)>>1]|0)!=(b[h+(((u(i,g)|0)+f|0)*24|0)>>1]|0))return 0;o=c[k+5056>>2]|0;h=(u(o,e)|0)+j|0;i=c[l+4384>>2]|0;if((c[i+(h<<2)>>2]|0)!=(c[i+((u(o,g)|0)+f<<2)>>2]|0))return 0}e=c[a+172>>2]|0;g=m>>e;e=n>>e;if((g|0)<=-1)M(60650,59433,120,60707);f=c[a+176>>2]|0;if((g|0)>=(f|0))M(60650,59433,120,60707);if((e|0)<=-1)M(60711,59433,121,60707);if((e|0)<(c[a+180>>2]|0)){o=(c[a+164>>2]|0)+(((u(f,e)|0)+g|0)*3|0)|0;return ((d[o>>0]|d[o+1>>0]<<8)&768)!=0|0}else M(60711,59433,121,60707);return 0}function Gg(e,f,g,h,i,j,k,l,m,n,o,p,q){e=e|0;f=f|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;p=p|0;q=q|0;var r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;G=c[(c[f+136>>2]|0)+4136>>2]|0;t=c[e>>2]|0;e=c[t+172>>2]|0;l=g>>e;e=h>>e;if((l|0)<=-1)M(60650,60687,120,60707);s=c[t+176>>2]|0;if((l|0)>=(s|0))M(60650,60687,120,60707);if((e|0)<=-1)M(60711,60687,121,60707);if((e|0)>=(c[t+180>>2]|0))M(60711,60687,121,60707);v=(c[t+164>>2]|0)+(((u(s,e)|0)+l|0)*3|0)|0;v=((d[v>>0]|d[v+1>>0]<<8)&65535)>>>3;D=j+-1|0;z=n+k|0;l=z+-1|0;x=j>>G;E=(x|0)==(D>>G|0);if(E?(k>>G|0)==(l>>G|0):0){H=0;r=0}else C=9;a:do if((C|0)==9){if((o|0)==1)switch(v&7){case 2:case 6:case 7:{H=0;r=0;break a}default:{}}if(Fg(f,g,h,i,j,k,m,n,o,D,l)|0){B=c[t+192>>2]|0;s=D>>B;l=l>>B;if((s|0)<=-1)M(60650,60687,120,60707);e=c[t+196>>2]|0;if((s|0)>=(e|0))M(60650,60687,120,60707);if((l|0)<=-1)M(60711,60687,121,60707);if((l|0)<(c[t+200>>2]|0)){H=(c[t+184>>2]|0)+(((u(e,l)|0)+s|0)*12|0)|0;b[p>>1]=b[H>>1]|0;b[p+2>>1]=b[H+2>>1]|0;b[p+4>>1]=b[H+4>>1]|0;b[p+6>>1]=b[H+6>>1]|0;b[p+8>>1]=b[H+8>>1]|0;b[p+10>>1]=b[H+10>>1]|0;H=1;r=1;break}else M(60711,60687,121,60707)}else{H=0;r=0}}while(0);if((r|0)>=(q|0)){p=r;return p|0}w=m+j|0;l=w+-1|0;B=k+-1|0;if((x|0)==(l>>G|0)?(k>>G|0)==(B>>G|0):0){v=0;y=0}else C=22;b:do if((C|0)==22){if((o|0)==1)switch(v&7){case 1:case 4:case 5:{v=0;y=0;break b}default:{}}if(Fg(f,g,h,i,j,k,m,n,o,l,B)|0){e=c[f+192>>2]|0;l=l>>e;e=B>>e;if((l|0)<=-1)M(60650,60687,120,60707);s=c[f+196>>2]|0;if((l|0)>=(s|0))M(60650,60687,120,60707);if((e|0)<=-1)M(60711,60687,121,60707);if((e|0)>=(c[f+200>>2]|0))M(60711,60687,121,60707);t=c[f+184>>2]|0;s=(u(s,e)|0)+l|0;l=t+(s*12|0)|0;do if(H?(y=a[p>>0]|0,y<<24>>24==(a[l>>0]|0)):0){if(y<<24>>24){if((b[p+4>>1]|0)!=(b[t+(s*12|0)+4>>1]|0))break;if((b[p+6>>1]|0)!=(b[t+(s*12|0)+6>>1]|0))break;if((a[p+2>>0]|0)!=(a[t+(s*12|0)+2>>0]|0))break}e=a[p+1>>0]|0;if(e<<24>>24==(a[t+(s*12|0)+1>>0]|0)){if(!(e<<24>>24)){v=1;y=0;break b}if((b[p+8>>1]|0)!=(b[t+(s*12|0)+8>>1]|0))break;if((b[p+10>>1]|0)!=(b[t+(s*12|0)+10>>1]|0))break;if((a[p+3>>0]|0)==(a[t+(s*12|0)+3>>0]|0)){v=1;y=0;break b}}}while(0);v=p+(r*12|0)|0;b[v>>1]=b[l>>1]|0;b[v+2>>1]=b[l+2>>1]|0;b[v+4>>1]=b[l+4>>1]|0;b[v+6>>1]=b[l+6>>1]|0;b[v+8>>1]=b[l+8>>1]|0;b[v+10>>1]=b[l+10>>1]|0;v=1;y=r;r=r+1|0}else{v=0;y=0}}while(0);if((r|0)>=(q|0)){p=r;return p|0}if(!((x|0)==(w>>G|0)?(k>>G|0)==(B>>G|0):0))C=47;c:do if((C|0)==47)if(Fg(f,g,h,i,j,k,m,n,o,w,B)|0){e=c[f+192>>2]|0;l=w>>e;e=B>>e;if((l|0)<=-1)M(60650,60687,120,60707);s=c[f+196>>2]|0;if((l|0)>=(s|0))M(60650,60687,120,60707);if((e|0)<=-1)M(60711,60687,121,60707);if((e|0)>=(c[f+200>>2]|0))M(60711,60687,121,60707);t=c[f+184>>2]|0;s=(u(s,e)|0)+l|0;l=t+(s*12|0)|0;do if(v?(A=a[p+(y*12|0)>>0]|0,A<<24>>24==(a[l>>0]|0)):0){if(A<<24>>24){if((b[p+(y*12|0)+4>>1]|0)!=(b[t+(s*12|0)+4>>1]|0))break;if((b[p+(y*12|0)+6>>1]|0)!=(b[t+(s*12|0)+6>>1]|0))break;if((a[p+(y*12|0)+2>>0]|0)!=(a[t+(s*12|0)+2>>0]|0))break}e=a[p+(y*12|0)+1>>0]|0;if(e<<24>>24==(a[t+(s*12|0)+1>>0]|0)){if(!(e<<24>>24))break c;if((b[p+(y*12|0)+8>>1]|0)!=(b[t+(s*12|0)+8>>1]|0))break;if((b[p+(y*12|0)+10>>1]|0)!=(b[t+(s*12|0)+10>>1]|0))break;if((a[p+(y*12|0)+3>>0]|0)==(a[t+(s*12|0)+3>>0]|0))break c}}while(0);A=p+(r*12|0)|0;b[A>>1]=b[l>>1]|0;b[A+2>>1]=b[l+2>>1]|0;b[A+4>>1]=b[l+4>>1]|0;b[A+6>>1]=b[l+6>>1]|0;b[A+8>>1]=b[l+8>>1]|0;b[A+10>>1]=b[l+10>>1]|0;r=r+1|0}while(0);if((r|0)>=(q|0)){p=r;return p|0}if(!(E?(k>>G|0)==(z>>G|0):0))C=70;d:do if((C|0)==70)if(Fg(f,g,h,i,j,k,m,n,o,D,z)|0){l=c[f+192>>2]|0;s=D>>l;l=z>>l;if((s|0)<=-1)M(60650,60687,120,60707);e=c[f+196>>2]|0;if((s|0)>=(e|0))M(60650,60687,120,60707);if((l|0)<=-1)M(60711,60687,121,60707);if((l|0)>=(c[f+200>>2]|0))M(60711,60687,121,60707);t=c[f+184>>2]|0;s=(u(e,l)|0)+s|0;l=t+(s*12|0)|0;do if(H?(F=a[p>>0]|0,F<<24>>24==(a[l>>0]|0)):0){if(F<<24>>24){if((b[p+4>>1]|0)!=(b[t+(s*12|0)+4>>1]|0))break;if((b[p+6>>1]|0)!=(b[t+(s*12|0)+6>>1]|0))break;if((a[p+2>>0]|0)!=(a[t+(s*12|0)+2>>0]|0))break}e=a[p+1>>0]|0;if(e<<24>>24!=(a[t+(s*12|0)+1>>0]|0))break;if(!(e<<24>>24))break d;if((b[p+8>>1]|0)!=(b[t+(s*12|0)+8>>1]|0))break;if((b[p+10>>1]|0)!=(b[t+(s*12|0)+10>>1]|0))break;if((a[p+3>>0]|0)==(a[t+(s*12|0)+3>>0]|0))break d}while(0);F=p+(r*12|0)|0;b[F>>1]=b[l>>1]|0;b[F+2>>1]=b[l+2>>1]|0;b[F+4>>1]=b[l+4>>1]|0;b[F+6>>1]=b[l+6>>1]|0;b[F+8>>1]=b[l+8>>1]|0;b[F+10>>1]=b[l+10>>1]|0;r=r+1|0}while(0);if((r|0)>=(q|0)|(r|0)==4){p=r;return p|0}if(E?(k>>G|0)==(B>>G|0):0){p=r;return p|0}if(!(Fg(f,g,h,i,j,k,m,n,o,D,B)|0)){p=r;return p|0}l=c[f+192>>2]|0;s=D>>l;l=B>>l;if((s|0)<=-1)M(60650,60687,120,60707);e=c[f+196>>2]|0;if((s|0)>=(e|0))M(60650,60687,120,60707);if((l|0)<=-1)M(60711,60687,121,60707);if((l|0)>=(c[f+200>>2]|0))M(60711,60687,121,60707);t=c[f+184>>2]|0;s=(u(e,l)|0)+s|0;l=t+(s*12|0)|0;do if(v){e=a[p+(y*12|0)>>0]|0;if(e<<24>>24!=(a[l>>0]|0))break;if(e<<24>>24){if((b[p+(y*12|0)+4>>1]|0)!=(b[t+(s*12|0)+4>>1]|0))break;if((b[p+(y*12|0)+6>>1]|0)!=(b[t+(s*12|0)+6>>1]|0))break;if((a[p+(y*12|0)+2>>0]|0)!=(a[t+(s*12|0)+2>>0]|0))break}e=a[p+(y*12|0)+1>>0]|0;if(e<<24>>24!=(a[t+(s*12|0)+1>>0]|0))break;if(!(e<<24>>24)){p=r;return p|0}if((b[p+(y*12|0)+8>>1]|0)!=(b[t+(s*12|0)+8>>1]|0))break;if((b[p+(y*12|0)+10>>1]|0)!=(b[t+(s*12|0)+10>>1]|0))break;if((a[p+(y*12|0)+3>>0]|0)!=(a[t+(s*12|0)+3>>0]|0))break;return r|0}while(0);do if(H){e=a[p>>0]|0;if(e<<24>>24!=(a[l>>0]|0))break;if(e<<24>>24){if((b[p+4>>1]|0)!=(b[t+(s*12|0)+4>>1]|0))break;if((b[p+6>>1]|0)!=(b[t+(s*12|0)+6>>1]|0))break;if((a[p+2>>0]|0)!=(a[t+(s*12|0)+2>>0]|0))break}e=a[p+1>>0]|0;if(e<<24>>24!=(a[t+(s*12|0)+1>>0]|0))break;if(!(e<<24>>24)){p=r;return p|0}if((b[p+8>>1]|0)!=(b[t+(s*12|0)+8>>1]|0))break;if((b[p+10>>1]|0)!=(b[t+(s*12|0)+10>>1]|0))break;if((a[p+3>>0]|0)!=(a[t+(s*12|0)+3>>0]|0))break;return r|0}while(0);p=p+(r*12|0)|0;b[p>>1]=b[l>>1]|0;b[p+2>>1]=b[l+2>>1]|0;b[p+4>>1]=b[l+4>>1]|0;b[p+6>>1]=b[l+6>>1]|0;b[p+8>>1]=b[l+8>>1]|0;b[p+10>>1]=b[l+10>>1]|0;p=r+1|0;return p|0}function Hg(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,p=0,q=0,r=0,s=0,t=0;s=c[h>>2]|0;if(!((s|0)>1&(s|0)<(i|0)))return;t=u(s+-1|0,s)|0;n=0;o=0;p=1;while(1){j=g+(o*12|0)|0;if(!(a[j>>0]|0))q=0;else q=mc[c[(c[d>>2]|0)+8>>2]&31](d,c[f+920+(a[g+(o*12|0)+2>>0]<<2)>>2]|0)|0;k=g+(p*12|0)+1|0;if(!(a[k>>0]|0))r=0;else r=mc[c[(c[d>>2]|0)+8>>2]&31](d,c[f+984+(a[g+(p*12|0)+3>>0]<<2)>>2]|0)|0;l=a[j>>0]|0;m=l<<24>>24==0;if(!((q|0)!=0|m)){j=18;break}j=a[k>>0]|0;k=j<<24>>24==0;if(!((r|0)!=0|k)){j=18;break}do if(!(m|k)){if(((c[q+96>>2]|0)==(c[r+96>>2]|0)?(b[g+(o*12|0)+4>>1]|0)==(b[g+(p*12|0)+8>>1]|0):0)?(b[g+(o*12|0)+6>>1]|0)==(b[g+(p*12|0)+10>>1]|0):0)break;r=c[h>>2]|0;a[g+(r*12|0)+2>>0]=a[g+(o*12|0)+2>>0]|0;a[g+(r*12|0)+3>>0]=a[g+(p*12|0)+3>>0]|0;a[g+(r*12|0)>>0]=l;a[g+(r*12|0)+1>>0]=j;o=g+(o*12|0)+4|0;q=g+(r*12|0)+4|0;o=e[o>>1]|e[o+2>>1]<<16;b[q>>1]=o;b[q+2>>1]=o>>>16;q=g+(p*12|0)+8|0;r=g+(r*12|0)+8|0;q=e[q>>1]|e[q+2>>1]<<16;b[r>>1]=q;b[r+2>>1]=q>>>16;c[h>>2]=(c[h>>2]|0)+1}while(0);n=n+1|0;if((n|0)==(t|0)){j=18;break}if((c[h>>2]|0)==(i|0)){j=18;break}o=c[1152+(n<<2)>>2]|0;p=c[1200+(n<<2)>>2]|0;if(!((o|0)<(s|0)&(p|0)<(s|0))){j=4;break}}if((j|0)==4)M(76276,59218,1402,59443);else if((j|0)==18)return}function Ig(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if(!(a[b+42>>0]|0))return (e|d|0)==0|0;h=c[b+44>>2]|0;if((h|0)<=0){e=0;return e|0}f=0;while(1){if((c[b+4260+(f<<2)>>2]|0)==(d|0))break;f=f+1|0;if((f|0)>=(h|0)){g=0;i=11;break}}if((i|0)==11)return g|0;d=c[b+48>>2]|0;if((d|0)<=0){e=0;return e|0}f=0;while(1){if((c[b+4304+(f<<2)>>2]|0)==(e|0)){g=1;i=11;break}f=f+1|0;if((f|0)>=(d|0)){g=0;i=11;break}}if((i|0)==11)return g|0;return 0}function Jg(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;if((g|f|0)<0){k=0;return k|0}k=c[a+128>>2]|0;if((c[k+484>>2]|0)<=(f|0)){k=0;return k|0}if((c[k+488>>2]|0)<=(g|0)){k=0;return k|0}j=c[a+136>>2]|0;i=c[k+5100>>2]|0;h=c[k+5088>>2]|0;m=(u(g>>i,h)|0)+(f>>i)|0;l=c[j+4396>>2]|0;if((c[l+(m<<2)>>2]|0)>(c[l+((u(e>>i,h)|0)+(d>>i)<<2)>>2]|0)){m=0;return m|0}m=c[k+5040>>2]|0;i=d>>m;h=e>>m;e=f>>m;d=g>>m;m=c[a+156>>2]|0;g=(u(m,h)|0)+i|0;l=c[a+144>>2]|0;if((b[l+(g*24|0)>>1]|0)!=(b[l+(((u(m,d)|0)+e|0)*24|0)>>1]|0)){m=0;return m|0}m=c[k+5056>>2]|0;k=(u(m,h)|0)+i|0;l=c[j+4384>>2]|0;m=(c[l+(k<<2)>>2]|0)==(c[l+((u(m,d)|0)+e<<2)>>2]|0);return m|0}function Kg(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;do if((d|0)>0){h=d+-1|0;j=(e|0)<51?e:51;j=(j|0)>0?j:0;k=c[1248+(h*12|0)>>2]|0;f=b+5|0;k=(k<<3&120)+-16+((u(((k>>4)*5|0)+-45|0,j)|0)>>4)|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;g=(k|0)>63;k=g?k+64|0:63-k|0;g=(k&255)<<1&255|g&1;if((k&127)>>>0>=63){i=g;k=f;a[k>>0]=i;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;k=c[1248+(h*12|0)+4>>2]|0;f=b+6|0;k=(k<<3&120)+-16+((u(((k>>4)*5|0)+-45|0,j)|0)>>4)|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;g=(k|0)>63;k=g?k+64|0:63-k|0;g=(k&255)<<1&255|g&1;if((k&127)>>>0>=63){i=g;k=f;a[k>>0]=i;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;k=c[1248+(h*12|0)+8>>2]|0;f=b+7|0;k=(k<<3&120)+-16+((u(((k>>4)*5|0)+-45|0,j)|0)>>4)|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;g=(k|0)>63;k=g?k+64|0:63-k|0;g=(k&255)<<1&255|g&1;if((k&127)>>>0>=63){i=g;k=f;a[k>>0]=i;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;k=c[12340+(h<<2)>>2]|0;g=b+149|0;k=(k<<3&120)+-16+((u(((k>>4)*5|0)+-45|0,j)|0)>>4)|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;f=(k|0)>63;k=f?k+64|0:63-k|0;f=(k&255)<<1&255|f&1;if((k&127)>>>0>=63){a[g>>0]=f;M(59587,58605,210,59608)}hB(g|0,f|0,1)|0;k=c[12264+(h<<2)>>2]|0;f=b+147|0;k=(k<<3&120)+-16+((u(((k>>4)*5|0)+-45|0,j)|0)>>4)|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;g=(k|0)>63;k=g?k+64|0:63-k|0;g=(k&255)<<1&255|g&1;if((k&127)>>>0>=63){a[f>>0]=g;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;k=c[12272+(h<<2)>>2]|0;g=b+148|0;k=(k<<3&120)+-16+((u(((k>>4)*5|0)+-45|0,j)|0)>>4)|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;f=(k|0)>63;k=f?k+64|0:63-k|0;f=(k&255)<<1&255|f&1;if((k&127)>>>0>=63){a[g>>0]=f;M(59587,58605,210,59608)}hB(g|0,f|0,1)|0;f=b+156|0;k=((u(j,-20)|0)>>4)+104|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;g=(k|0)>63;k=g?k+64|0:63-k|0;g=(k&255)<<1&255|g&1;if((k&127)>>>0>=63){i=g;k=f;a[k>>0]=i;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;f=b+157|0;k=((u(j,-25)|0)>>4)+104|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;i=(k|0)>63;k=i?k+64|0:63-k|0;i=(k&255)<<1&255|i&1;if((k&127)>>>0>=63){h=i;k=f;a[k>>0]=h;M(59587,58605,210,59608)}hB(f|0,i|0,1)|0;f=b+158|0;k=((u(j,-30)|0)>>4)+104|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;g=(k|0)>63;k=g?k+64|0:63-k|0;g=(k&255)<<1&255|g&1;if((k&127)>>>0>=63){h=g;k=f;a[k>>0]=h;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;f=b+159|0;k=((u(j,-40)|0)>>4)+104|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;g=(k|0)>63;k=g?k+64|0:63-k|0;g=(k&255)<<1&255|g&1;if((k&127)>>>0>=63){h=g;k=f;a[k>>0]=h;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;hB(b+160|0,g|0,1)|0;a[b+154>>0]=14;a[b+155>>0]=14;h=2672+(((d|0)==1?0:2)<<2)|0;k=c[h>>2]|0;f=b+150|0;k=(k<<3&120)+-16+((u(((k>>4)*5|0)+-45|0,j)|0)>>4)|0;k=(k|0)<126?k:126;k=(k|0)>1?k:1;g=(k|0)>63;k=g?k+64|0:63-k|0;g=(k&255)<<1&255|g&1;if((k&127)>>>0>=63){m=g;k=f;a[k>>0]=m;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+4>>2]|0;f=b+151|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,j)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){k=g;m=f;a[m>>0]=k;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;g=b+152|0;m=((j*5|0)>>>4)+48|0;m=m>>>0<126?m:126;m=(m|0)>1?m:1;f=(m|0)>63;m=f?m+64|0:63-m|0;f=(m&255)<<1&255|f&1;if((m&127)>>>0>=63){a[g>>0]=f;M(59587,58605,210,59608)}hB(g|0,f|0,1)|0;hB(b+153|0,i|0,1)|0;g=b+143|0;m=((u(j,-5)|0)>>4)+72|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;f=(m|0)>63;m=f?m+64|0:63-m|0;f=(m&255)<<1&255|f&1;if((m&127)>>>0<63){hB(g|0,f|0,4)|0;break}else{a[g>>0]=f;M(59587,58605,210,59608)}}while(0);k=(e|0)<51?e:51;k=(k|0)>0?k:0;m=c[1280+(d*12|0)>>2]|0;f=b+2|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[1280+(d*12|0)+4>>2]|0;f=b+3|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[1280+(d*12|0)+8>>2]|0;f=b+4|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;h=2624+(((d|0)==2?5:d)<<2)|0;m=c[h>>2]|0;f=b+8|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+4>>2]|0;f=b+9|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+8>>2]|0;f=b+10|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+12>>2]|0;f=b+11|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[12328+(d<<2)>>2]|0;g=b+12|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;f=(m|0)>63;m=f?m+64|0:63-m|0;f=(m&255)<<1&255|f&1;if((m&127)>>>0>=63){a[g>>0]=f;M(59587,58605,210,59608)}hB(g|0,f|0,1)|0;m=c[12280+(d<<2)>>2]|0;f=b+13|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){a[f>>0]=g;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;f=1328+(((d|0)==0?0:2)<<2)|0;m=c[f>>2]|0;g=b+14|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;h=(m|0)>63;m=h?m+64|0:63-m|0;h=(m&255)<<1&255|h&1;if((m&127)>>>0>=63){e=h;m=g;a[m>>0]=e;M(59587,58605,210,59608)}hB(g|0,h|0,1)|0;m=c[f+4>>2]|0;f=b+15|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;e=d<<2;h=2576+(e<<2)|0;m=c[h>>2]|0;f=b+16|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){j=g;m=f;a[m>>0]=j;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+4>>2]|0;f=b+17|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){j=g;m=f;a[m>>0]=j;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+8>>2]|0;f=b+18|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){j=g;m=f;a[m>>0]=j;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+12>>2]|0;g=b+19|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;f=(m|0)>63;m=f?m+64|0:63-m|0;f=(m&255)<<1&255|f&1;if((m&127)>>>0>=63){j=f;m=g;a[m>>0]=j;M(59587,58605,210,59608)}hB(g|0,f|0,1)|0;h=2528+(d*3<<2)|0;m=c[h>>2]|0;f=b+20|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){j=g;m=f;a[m>>0]=j;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+4>>2]|0;f=b+21|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){j=g;m=f;a[m>>0]=j;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+8>>2]|0;f=b+22|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){j=g;m=f;a[m>>0]=j;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;h=b+25|0;j=2304+(d*18<<2)|0;f=0;do{m=c[j+(f<<2)>>2]|0;g=h+f|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;i=(m|0)>63;m=i?m+64|0:63-m|0;i=(m&255)<<1&255|i&1;if((m&127)>>>0>=63){l=35;break}hB(g|0,i|0,1)|0;f=f+1|0}while(f>>>0<18);if((l|0)==35){a[g>>0]=i;M(59587,58605,210,59608)}g=b+43|0;f=0;do{m=c[j+(f<<2)>>2]|0;h=g+f|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;i=(m|0)>63;m=i?m+64|0:63-m|0;i=(m&255)<<1&255|i&1;if((m&127)>>>0>=63){l=39;break}hB(h|0,i|0,1)|0;f=f+1|0}while(f>>>0<18);if((l|0)==39){a[h>>0]=i;M(59587,58605,210,59608)}h=1344+(e<<2)|0;m=c[h>>2]|0;f=b+61|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+4>>2]|0;f=b+62|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+8>>2]|0;f=b+63|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+12>>2]|0;f=b+64|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;h=b+65|0;f=0;do{m=c[1392+(d*168|0)+(f<<2)>>2]|0;g=h+f|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;i=(m|0)>63;m=i?m+64|0:63-m|0;i=(m&255)<<1&255|i&1;if((m&127)>>>0>=63){l=45;break}hB(g|0,i|0,1)|0;f=f+1|0}while(f>>>0<42);if((l|0)==45){a[g>>0]=i;M(59587,58605,210,59608)}m=c[1904+(d<<3)>>2]|0;f=b+107|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[1904+(d<<3)+4>>2]|0;f=b+108|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){e=g;m=f;a[m>>0]=e;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;i=b+109|0;g=2016+(d*24<<2)|0;f=0;do{m=c[g+(f<<2)>>2]|0;h=i+f|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;j=(m|0)>63;m=j?m+64|0:63-m|0;j=(m&255)<<1&255|j&1;if((m&127)>>>0>=63){l=51;break}hB(h|0,j|0,1)|0;f=f+1|0}while(f>>>0<24);if((l|0)==51){a[h>>0]=j;M(59587,58605,210,59608)}h=1936+(d*6<<2)|0;m=c[h>>2]|0;f=b+133|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){l=g;m=f;a[m>>0]=l;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+4>>2]|0;f=b+134|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){l=g;m=f;a[m>>0]=l;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+8>>2]|0;f=b+135|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){l=g;m=f;a[m>>0]=l;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+12>>2]|0;f=b+136|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){l=g;m=f;a[m>>0]=l;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+16>>2]|0;f=b+137|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){l=g;m=f;a[m>>0]=l;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[h+20>>2]|0;f=b+138|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){l=g;m=f;a[m>>0]=l;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;m=c[12316+(d<<2)>>2]|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;f=(m|0)>63;m=f?m+64|0:63-m|0;f=(m&255)<<1&255|f&1;if((m&127)>>>0>=63){a[b>>0]=f;M(59587,58605,210,59608)}hB(b|0,f|0,1)|0;m=c[12292+(d<<2)>>2]|0;f=b+1|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;g=(m|0)>63;m=g?m+64|0:63-m|0;g=(m&255)<<1&255|g&1;if((m&127)>>>0>=63){a[f>>0]=g;M(59587,58605,210,59608)}hB(f|0,g|0,1)|0;a[b+139>>0]=1;a[b+140>>0]=1;g=b+141|0;m=((u(k,-5)|0)>>4)+72|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;f=(m|0)>63;m=f?m+64|0:63-m|0;f=(m&255)<<1&255|f&1;if((m&127)>>>0>=63){a[g>>0]=f;M(59587,58605,210,59608)}hB(g|0,f|0,1)|0;hB(b+142|0,f|0,1)|0;m=c[12304+(d<<2)>>2]|0;g=b+161|0;m=(m<<3&120)+-16+((u(((m>>4)*5|0)+-45|0,k)|0)>>4)|0;m=(m|0)<126?m:126;m=(m|0)>1?m:1;f=(m|0)>63;m=f?m+64|0:63-m|0;f=(m&255)<<1&255|f&1;if((m&127)>>>0<63){hB(g|0,f|0,1)|0;m=b+162|0;d=m;a[d>>0]=1;a[d+1>>0]=1;a[d+2>>0]=1;a[d+3>>0]=1;m=m+4|0;a[m>>0]=1;a[m+1>>0]=1;a[m+2>>0]=1;a[m+3>>0]=1;m=b+170|0;a[m>>0]=1;a[m+1>>0]=1;a[b+23>>0]=1;a[b+24>>0]=1;return}else{a[g>>0]=f;M(59587,58605,210,59608)}}function Lg(a){a=a|0;nz(a);return}function Mg(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;o=c[b+16>>2]|0;e=o+18588|0;p=c[e>>2]|0;k=c[p+128>>2]|0;n=k+5056|0;l=c[n>>2]|0;q=b+4|0;c[q>>2]=1;qe(p,b);e=c[e>>2]|0;f=c[e+128>>2]|0;g=c[o+4>>2]|0;h=c[f+5072>>2]|0;if((g|0)<(h|0)){j=c[(c[(c[e+136>>2]|0)+4360>>2]|0)+(g<<2)>>2]|0;e=c[f+5056>>2]|0;f=(j|0)/(e|0)|0;g=f;e=j-(u(f,e)|0)|0;f=j}else{e=c[f+5056>>2]|0;f=(h|0)/(e|0)|0;g=f;e=h-(u(f,e)|0)|0;f=h}c[o>>2]=f;i=o+8|0;c[i>>2]=e;h=o+12|0;c[h>>2]=g;j=(f|0)/(l|0)|0;e=b+8|0;if(a[e>>0]|0?!(tf(o)|0):0){if((l|0)>0){f=p+332|0;e=u(j,l)|0;d=0;do{ze((c[f>>2]|0)+((d+e|0)*80|0)|0,1);d=d+1|0}while((d|0)!=(l|0))}c[q>>2]=3;uf((c[o+18600>>2]|0)+44|0,1);ye(p,b);return}wf(o+18548|0);if(!(a[e>>0]|0))e=0;else e=(a[(c[o+18592>>2]|0)+16>>0]|0)==0;xf(o,1,e)|0;a:do if((c[h>>2]|0)==(j|0)?(m=c[n>>2]|0,d=c[i>>2]|0,(d|0)<(m|0)):0){h=k+5064|0;f=u(j,l)|0;g=p+332|0;e=m;while(1){if((d|0)<(e|0)?(j|0)<(c[h>>2]|0):0)ze((c[g>>2]|0)+((d+f|0)*80|0)|0,1);d=d+1|0;if((d|0)==(m|0))break a;e=c[n>>2]|0}}while(0);c[q>>2]=3;uf((c[o+18600>>2]|0)+44|0,1);ye(p,b);return}function Ng(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=hc;e=hc=hc+31&-32;hc=hc+112|0;g=e+104|0;c[g>>2]=c[d+12>>2];zm(e,59650,g)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=tn(e)|0;if(d>>>0>4294967279)tz(b);if(d>>>0<11){a[b+11>>0]=d;if(!d){g=b;g=g+d|0;a[g>>0]=0;hc=f;return}}else{h=d+16&-16;g=lz(h)|0;c[b>>2]=g;c[b+8>>2]=h|-2147483648;c[b+4>>2]=d;b=g}fB(b|0,e|0,d|0)|0;h=b;h=h+d|0;a[h>>0]=0;hc=f;return}function Og(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;o=hc;m=hc=hc+31&-32;hc=hc+16|0;n=c[b>>2]|0;if(!n){n=0;hc=o;return n|0}i=d;j=f-i|0;l=g+12|0;k=c[l>>2]|0;j=(k|0)>(j|0)?k-j|0:0;k=e;g=k-i|0;if((g|0)>0?(nc[c[(c[n>>2]|0)+48>>2]&31](n,d,g)|0)!=(g|0):0){c[b>>2]=0;n=0;hc=o;return n|0}do if((j|0)>0){c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;if(j>>>0<11){d=m+11|0;a[d>>0]=j;g=m;i=m}else{d=j+16&-16;g=lz(d)|0;c[m>>2]=g;c[m+8>>2]=d|-2147483648;c[m+4>>2]=j;d=m+11|0;i=m}hB(g|0,h|0,j|0)|0;a[g+j>>0]=0;if((nc[c[(c[n>>2]|0)+48>>2]&31](n,(a[d>>0]|0)<0?c[i>>2]|0:m,j)|0)==(j|0)){if((a[d>>0]|0)<0)nz(c[i>>2]|0);break}c[b>>2]=0;if((a[d>>0]|0)<0)nz(c[i>>2]|0);n=0;hc=o;return n|0}while(0);f=f-k|0;if((f|0)>0?(nc[c[(c[n>>2]|0)+48>>2]&31](n,e,f)|0)!=(f|0):0){c[b>>2]=0;n=0;hc=o;return n|0}c[l>>2]=0;hc=o;return n|0}function Pg(b,d,e,f,g,h,i,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=hc;C=hc=hc+31&-32;hc=hc+48|0;p=c[g>>2]|0;o=(p|0)==0;if(h)if(o)M(71186,58112,240,59683);else F=5;else if(!o)F=5;if((F|0)==5){q=c[g+4>>2]|0;if(q|0){o=q+4|0;c[o>>2]=(c[o>>2]|0)+1}c[b+128>>2]=p;p=b+132|0;o=c[p>>2]|0;c[p>>2]=q;if(o|0?(p=o+4|0,q=c[p>>2]|0,c[p>>2]=q+-1,(q|0)==0):0){wc[c[(c[o>>2]|0)+8>>2]&255](o);iz(o)}}Ve(b);o=c[24496]|0;c[24496]=o+1;c[b>>2]=o;c[b+108>>2]=2147483647;c[b+112>>2]=i;c[b+116>>2]=j;c[b+20>>2]=f;c[b+24>>2]=d;c[b+28>>2]=e;o=b+32|0;c[o>>2]=d;p=b+36|0;c[p>>2]=e;c[b+296>>2]=m;m=b+288|0;c[m>>2]=k;c[m+4>>2]=l;switch(f|0){case 2:{c[C>>2]=3;t=(d+1|0)/2|0;c[o>>2]=t;r=1;s=2;w=2;y=1;v=e;break}case 1:{c[C>>2]=2;t=(d+1|0)/2|0;c[o>>2]=t;v=(e+1|0)/2|0;c[p>>2]=v;r=2;s=2;w=2;y=2;break}case 3:{c[C>>2]=4;r=1;s=1;w=1;y=1;t=d;v=e;break}case 0:{c[C>>2]=1;c[o>>2]=0;c[p>>2]=0;r=1;s=1;w=1;y=1;t=0;v=0;break}default:M(69335,58112,276,59683)}a[b+50>>0]=s;a[b+51>>0]=r;r=c[g>>2]|0;o=(r|0)==0;do if(!o){if((c[r+5016>>2]|0)!=(w|0))M(59695,58112,315,59683);if((c[r+5020>>2]|0)==(y|0)){c[C+4>>2]=d;c[C+8>>2]=e;c[C+12>>2]=16;x=c[r+500>>2]|0;D=c[r+496>>2]|0;z=c[r+508>>2]|0;E=c[r+504>>2]|0;break}else M(59723,58112,316,59683)}else{c[C+4>>2]=d;c[C+8>>2]=e;c[C+12>>2]=16;x=0;D=0;z=0;E=0}while(0);q=x+D|0;d=d-(u(q,w)|0)|0;c[b+76>>2]=d;s=z+E|0;e=e-(u(s,y)|0)|0;c[b+80>>2]=e;c[b+84>>2]=t-q;c[b+88>>2]=v-s;s=u(D,w)|0;c[C+16>>2]=s;c[C+20>>2]=u(x,w)|0;q=u(E,y)|0;c[C+24>>2]=q;c[C+28>>2]=u(z,y)|0;c[C+32>>2]=d;c[C+36>>2]=e;if(o){p=8;o=8}else{p=c[r+4996>>2]&255;o=c[r+5004>>2]|0}a[b+48>>0]=p;z=o&255;a[b+49>>0]=z;a[b+16>>0]=(p&255)>8&1;p=(z&255)>8&1;a[b+17>>0]=p;a[b+18>>0]=p;p=(i|0)==0;if(p)o=0;else o=c[i+544>>2]|0;do if(!j)if(p|n^1)F=34;else{F=i+536|0;B=c[F>>2]|0;F=c[F+4>>2]|0;A=b+312|0;c[A>>2]=B;c[A+4>>2]=F;A=o;F=35}else{o=c[j+3708>>2]|0;if(n){j=c[j+3712>>2]|0;c[b+320>>2]=j;p=b+312|0;if(!j){F=12208;B=c[F>>2]|0;F=c[F+4>>2]|0;A=p;c[A>>2]=B;c[A+4>>2]=F;A=o;F=35;break}else{c[p>>2]=0;c[b+316>>2]=0;break}}else F=34}while(0);if((F|0)==34){j=12208;B=c[j>>2]|0;j=c[j+4>>2]|0;A=b+312|0;c[A>>2]=B;c[A+4>>2]=j;A=o;F=35}if(((F|0)==35?B|0:0)?(i=(oc[B&7](i,C,b,A)|0)==0,c[b+64>>2]=(c[b+4>>2]|0)+s+(u(c[b+40>>2]|0,q)|0),E=u(c[b+44>>2]|0,E)|0,c[b+68>>2]=(c[b+8>>2]|0)+D+E,c[b+72>>2]=(c[b+12>>2]|0)+D+E,i):0){F=7;hc=G;return F|0}do if(h){f=c[g>>2]|0;s=c[f+5112>>2]|0;m=c[f+5116>>2]|0;f=c[f+5108>>2]|0;q=u(m,s)|0;r=b+208|0;p=b+204|0;o=c[p>>2]|0;do if((q|0)!=(c[r>>2]|0)){vo(o);o=uo(q)|0;c[p>>2]=o;if(!o){c[r>>2]=0;k=0;break}else{c[r>>2]=q;F=42;break}}else F=42;while(0);if((F|0)==42){c[b+216>>2]=s;c[b+220>>2]=m;c[b+212>>2]=f;k=(o|0)!=0}f=c[g>>2]|0;s=c[f+5112>>2]|0;m=c[f+5116>>2]|0;f=c[f+5108>>2]|0;q=u(m,s)|0;r=b+228|0;p=b+224|0;o=c[p>>2]|0;do if((q|0)!=(c[r>>2]|0)){vo(o);o=uo(q)|0;c[p>>2]=o;if(!o){c[r>>2]=0;o=0;break}else{c[r>>2]=q;F=47;break}}else F=47;while(0);if((F|0)==47){c[b+236>>2]=s;c[b+240>>2]=m;c[b+232>>2]=f;o=(o|0)!=0}k=k&o;p=b+164|0;f=c[g>>2]|0;s=c[f+5052>>2]|0;m=c[f+5060>>2]|0;f=c[f+5036>>2]|0;q=u(m,s)|0;r=b+168|0;do if((q|0)!=(c[r>>2]|0)){vo(c[p>>2]|0);o=uo(q*3|0)|0;c[p>>2]=o;if(!o){c[r>>2]=0;o=0;break}else{c[r>>2]=q;F=53;break}}else{o=c[p>>2]|0;F=53}while(0);if((F|0)==53){c[b+176>>2]=s;c[b+180>>2]=m;c[b+172>>2]=f;o=(o|0)!=0}f=k&o;p=c[g>>2]|0;m=(c[p+5036>>2]|0)+-2|0;s=c[p+5052>>2]<<m;m=c[p+5060>>2]<<m;p=b+184|0;q=u(m,s)|0;r=b+188|0;do if((q|0)!=(c[r>>2]|0)){vo(c[p>>2]|0);o=uo(q*12|0)|0;c[p>>2]=o;if(!o){c[r>>2]=0;o=0;break}else{c[r>>2]=q;F=59;break}}else{o=c[p>>2]|0;F=59}while(0);if((F|0)==59){c[b+196>>2]=s;c[b+200>>2]=m;c[b+192>>2]=2;o=(o|0)!=0}k=f&o;f=c[g>>2]|0;s=c[f+5088>>2]|0;m=c[f+5092>>2]|0;f=c[f+5100>>2]|0;q=u(m,s)|0;r=b+248|0;p=b+244|0;o=c[p>>2]|0;do if((q|0)!=(c[r>>2]|0)){vo(o);o=uo(q)|0;c[p>>2]=o;if(!o){c[r>>2]=0;o=0;break}else{c[r>>2]=q;F=64;break}}else F=64;while(0);if((F|0)==64){c[b+256>>2]=s;c[b+260>>2]=m;c[b+252>>2]=f;o=(o|0)!=0}f=k&o;m=c[g>>2]|0;s=((c[m+484>>2]|0)+3|0)/4|0;m=((c[m+488>>2]|0)+3|0)/4|0;q=u(m,s)|0;r=b+268|0;p=b+264|0;o=c[p>>2]|0;do if((q|0)!=(c[r>>2]|0)){vo(o);o=uo(q)|0;c[p>>2]=o;if(!o){c[r>>2]=0;o=0;break}else{c[r>>2]=q;F=69;break}}else F=69;while(0);if((F|0)==69){c[b+276>>2]=s;c[b+280>>2]=m;c[b+272>>2]=2;o=(o|0)!=0}l=f&o;f=b+144|0;k=b+148|0;p=c[k>>2]|0;o=c[g>>2]|0;if((p|0)==(c[o+5072>>2]|0)){if(l)break;else o=7;hc=G;return o|0}d=b+332|0;q=c[d>>2]|0;if(!q)q=p;else{p=q+-4|0;o=c[p>>2]|0;if(o|0){o=q+(o*80|0)|0;do{o=o+-80|0;ef(o)}while((o|0)!=(q|0))}oz(p);o=c[g>>2]|0;q=c[k>>2]|0}s=c[o+5056>>2]|0;m=c[o+5064>>2]|0;r=c[o+5040>>2]|0;p=u(m,s)|0;do if((p|0)!=(q|0)){vo(c[f>>2]|0);o=uo(p*24|0)|0;c[f>>2]=o;if(!o){c[k>>2]=0;o=0;p=0;break}else{c[k>>2]=p;F=81;break}}else{o=c[f>>2]|0;p=q;F=81}while(0);if((F|0)==81){c[b+156>>2]=s;c[b+160>>2]=m;c[b+152>>2]=r;o=(o|0)!=0}q=l&o;r=p*80|0;r=mz(p>>>0>53687091|r>>>0>4294967291?-1:r+4|0)|0;c[r>>2]=p;r=r+4|0;if(p|0){o=r+(p*80|0)|0;p=r;do{Qg(p);p=p+80|0}while((p|0)!=(o|0))}c[d>>2]=r;if(!q){F=7;hc=G;return F|0}}while(0);F=0;hc=G;return F|0}function Qg(a){a=a|0;c[a>>2]=0;Co(a+4|0,0)|0;cb(a+32|0,0)|0;return}function Rg(b){b=b|0;var d=0;c[b+52>>2]=0;c[b+56>>2]=0;c[b+60>>2]=0;a[b+326>>0]=0;a[b+327>>0]=0;a[b+328>>0]=0;hB(b+120|0,0,164)|0;c[b>>2]=-1;c[b+108>>2]=0;c[b+112>>2]=0;c[b+116>>2]=0;c[b+320>>2]=0;d=b+4|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;d=b+64|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[b+28>>2]=0;c[b+24>>2]=0;d=b+288|0;c[b+332>>2]=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;a[b+324>>0]=2;c[b+92>>2]=-1;c[b+96>>2]=-1;c[b+100>>2]=0;a[b+104>>0]=0;d=b+336|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;Sg(b+356|0);Tg(b+384|0);return}function Sg(a){a=a|0;Co(a,0)|0;return}function Tg(a){a=a|0;cb(a|0,0)|0;return}function Ug(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;c[a>>2]=b;j=a+4|0;c[j>>2]=e;k=a+8|0;l=k;c[l>>2]=0;c[l+4>>2]=0;l=a+16|0;c[l>>2]=0;if(!e){k=0;c[l>>2]=k;return}f=b+1|0;c[a>>2]=f;g=d[b>>0]|0;i=e+-1|0;c[j>>2]=i;g=eB(g|0,0,56)|0;h=y()|0;m=k;c[m>>2]=g;c[m+4>>2]=h;if(!i){m=8;c[l>>2]=m;return}i=b+2|0;c[a>>2]=i;f=d[f>>0]|0;m=e+-2|0;c[j>>2]=m;f=eB(f|0,0,48)|0;f=g|f;g=h|(y()|0);h=k;c[h>>2]=f;c[h+4>>2]=g;if(!m){m=16;c[l>>2]=m;return}h=b+3|0;c[a>>2]=h;i=d[i>>0]|0;m=e+-3|0;c[j>>2]=m;i=eB(i|0,0,40)|0;i=f|i;f=g|(y()|0);g=k;c[g>>2]=i;c[g+4>>2]=f;if(!m){m=24;c[l>>2]=m;return}g=b+4|0;c[a>>2]=g;h=d[h>>0]|0;m=e+-4|0;c[j>>2]=m;f=f|h;h=k;c[h>>2]=i;c[h+4>>2]=f;if(!m){m=32;c[l>>2]=m;return}h=b+5|0;c[a>>2]=h;g=d[g>>0]|0;m=e+-5|0;c[j>>2]=m;g=eB(g|0,0,24)|0;g=i|g;f=f|(y()|0);i=k;c[i>>2]=g;c[i+4>>2]=f;if(!m){m=40;c[l>>2]=m;return}i=b+6|0;c[a>>2]=i;h=d[h>>0]|0;m=e+-6|0;c[j>>2]=m;h=eB(h|0,0,16)|0;g=g|h;f=f|(y()|0);h=k;c[h>>2]=g;c[h+4>>2]=f;if(!m){m=48;c[l>>2]=m;return}h=b+7|0;c[a>>2]=h;i=d[i>>0]|0;m=e+-7|0;c[j>>2]=m;i=eB(i|0,0,8)|0;g=g|i;f=f|(y()|0);i=k;c[i>>2]=g;c[i+4>>2]=f;if(!m){m=56;c[l>>2]=m;return}c[a>>2]=b+8;b=d[h>>0]|0;c[j>>2]=e+-8;m=k;c[m>>2]=g|b;c[m+4>>2]=f;m=64;c[l>>2]=m;return}function Vg(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;j=a+16|0;e=c[j>>2]|0;if((e|0)<(b|0)){e=64-e|0;h=a+4|0;a:do if((e|0)>7){i=a+8|0;g=c[h>>2]|0;while(1){if(!g)break a;m=c[a>>2]|0;c[a>>2]=m+1;m=d[m>>0]|0;g=g+-1|0;c[h>>2]=g;f=e+-8|0;m=eB(m|0,0,f|0)|0;l=y()|0;n=i;l=c[n+4>>2]|l;k=i;c[k>>2]=c[n>>2]|m;c[k+4>>2]=l;if((e|0)<=15){e=f;break}else e=f}}while(0);e=64-e|0;c[j>>2]=e}n=a+8|0;l=n;l=eB(c[l>>2]|0,c[l+4>>2]|0,b|0)|0;m=y()|0;c[n>>2]=l;c[n+4>>2]=m;c[j>>2]=e-b;return}function Wg(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+16|0;i=a+4|0;l=a+8|0;j=0;b=c[k>>2]|0;while(1){if((b|0)<1){b=64-b|0;a:do if((b|0)>7){f=c[i>>2]|0;while(1){if(!f)break a;n=c[a>>2]|0;c[a>>2]=n+1;n=d[n>>0]|0;f=f+-1|0;c[i>>2]=f;e=b+-8|0;n=eB(n|0,0,e|0)|0;m=y()|0;o=l;m=c[o+4>>2]|m;g=l;c[g>>2]=c[o>>2]|n;c[g+4>>2]=m;if((b|0)<=15){b=e;break}else b=e}}while(0);g=64-b|0;c[k>>2]=g}else g=b;n=l;o=c[n>>2]|0;n=c[n+4>>2]|0;f=eB(o|0,n|0,1)|0;e=y()|0;b=l;c[b>>2]=f;c[b+4>>2]=e;b=g+-1|0;c[k>>2]=b;if(!((n|0)>-1|(n|0)==-1&o>>>0>4294967295))break;if(j>>>0>19){b=-99999;h=21;break}j=j+1|0}if((h|0)==21)return b|0;if(!j){o=0;return o|0}if((g|0)<=(j|0)){b=65-g|0;b:do if((b|0)>7){h=c[i>>2]|0;while(1){if(!h)break b;o=c[a>>2]|0;c[a>>2]=o+1;o=d[o>>0]|0;h=h+-1|0;c[i>>2]=h;g=b+-8|0;o=eB(o|0,0,g|0)|0;f=f|o;e=e|(y()|0);o=l;c[o>>2]=f;c[o+4>>2]=e;if((b|0)<=15){b=g;break}else b=g}}while(0);b=64-b|0;c[k>>2]=b}o=dB(f|0,e|0,64-j|0)|0;y()|0;i=eB(f|0,e|0,j|0)|0;m=y()|0;n=l;c[n>>2]=i;c[n+4>>2]=m;c[k>>2]=b-j;b=(1<<j)+o|0;if((b|0)<=1)M(59768,59753,146,59776);o=b+-1|0;return o|0}function Xg(a){a=a|0;a=Wg(a)|0;a:do if((a|0)<0){switch(a|0){case -99999:break;default:break a}a=-99999;return a|0}else{switch(a|0){case 0:break;default:break a}return a|0}while(0);a=(((a&1|0)==0?0-a|0:a+1|0)|0)/2|0;return a|0}function Yg(a,b,d){a=a|0;b=b|0;d=d|0;if((d|0)>-1){c[a>>2]=b;c[a+4>>2]=b;c[a+8>>2]=b+d;return}else M(59785,58069,138,59797)}function Zg(){var b=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;j=1;do{h=c[1088+(j<<2)>>2]|0;k=1<<j;b=0;e=0;while(1){i=b&255;f=0;g=e;while(1){a[h+(g<<1)>>0]=f;a[h+(g<<1)+1>>0]=i;f=f+1|0;if((f|0)==(k|0))break;else g=g+1|0}b=b+1|0;if((b|0)==(k|0))break;else e=e+k|0}h=c[1056+(j<<2)>>2]|0;b=0;e=0;while(1){i=b&255;f=0;g=e;while(1){a[h+(g<<1)>>0]=i;a[h+(g<<1)+1>>0]=f;f=f+1|0;if((f|0)==(k|0))break;else g=g+1|0}b=b+1|0;if((b|0)==(k|0))break;else e=e+k|0}h=c[1120+(j<<2)>>2]|0;i=k<<j;e=0;b=0;do if((e|0)>-1){g=0;f=e;while(1){if((f|0)<(k|0)&(g|0)<(k|0)){a[h+(b<<1)>>0]=g;a[h+(b<<1)+1>>0]=f;b=b+1|0}e=g+1|0;if((f|0)>0){g=e;f=f+-1|0}else break}}else e=0;while((b|0)<(i|0));j=j+1|0}while((j|0)!=6);k=2;do{l=1<<k;p=k+-2|0;m=(1<<p<<p)+-1|0;n=1120+(p<<2)|0;o=1088+(p<<2)|0;p=1056+(p<<2)|0;t=0;do{q=c[976+(t*24|0)+(k<<2)>>2]|0;s=(t&2147483647|0)==2;j=0;do{r=j<<k;switch(t&2147483647|0){case 0:{g=c[n>>2]|0;f=0;do{e=16;b=m;do{i=(e|0)==0;b=b+(i<<31>>31)|0;e=i?15:e+-1|0}while(!((((d[g+(b<<1)>>0]|0)<<2)+(d[85488+(e<<1)>>0]|0)|0)==(f|0)?(((d[g+(b<<1)+1>>0]|0)<<2)+(d[85488+(e<<1)+1>>0]|0)|0)==(j|0):0));i=f+r|0;a[q+(i<<1)>>0]=b;a[q+(i<<1)+1>>0]=e;f=f+1|0}while((f|0)<(l|0));break}case 1:{g=c[o>>2]|0;f=0;do{e=16;b=m;do{i=(e|0)==0;b=b+(i<<31>>31)|0;e=i?15:e+-1|0}while(!((((d[g+(b<<1)>>0]|0)<<2)+(d[88208+(e<<1)>>0]|0)|0)==(f|0)?(((d[g+(b<<1)+1>>0]|0)<<2)+(d[88208+(e<<1)+1>>0]|0)|0)==(j|0):0));i=f+r|0;a[q+(i<<1)>>0]=b;a[q+(i<<1)+1>>0]=e;f=f+1|0}while((f|0)<(l|0));break}default:{h=0;do{i=h+r|0;if(s){f=90928;g=c[p>>2]|0}else{f=0;g=0}e=16;b=m;do{u=(e|0)==0;b=b+(u<<31>>31)|0;e=u?15:e+-1|0}while(!((((d[g+(b<<1)>>0]|0)<<2)+(d[f+(e<<1)>>0]|0)|0)==(h|0)?(((d[g+(b<<1)+1>>0]|0)<<2)+(d[f+(e<<1)+1>>0]|0)|0)==(j|0):0));a[q+(i<<1)>>0]=b;a[q+(i<<1)+1>>0]=e;h=h+1|0}while((h|0)<(l|0))}}j=j+1|0}while((j|0)<(l|0));t=t+1|0}while((t|0)!=3);k=k+1|0}while((k|0)!=6);return}function _g(){var b=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;b=uo(11296)|0;if(!b){w=0;return w|0}hB(b|0,-1,11296)|0;c[19268]=b;c[19269]=b;c[19270]=b;c[19271]=b;c[19272]=b;c[19273]=b;c[19274]=b;c[19275]=b;r=b+16|0;c[19276]=r;c[19277]=r;c[19278]=r;c[19279]=r;c[19280]=r;c[19281]=r;c[19282]=r;c[19283]=r;c[19284]=b+32;c[19285]=b+96;c[19286]=b+160;c[19287]=b+224;c[19288]=b+288;c[19289]=b+352;c[19290]=b+416;c[19291]=b+480;c[19292]=b+544;c[19293]=b+608;c[19294]=b+672;c[19295]=b+736;c[19296]=b+800;c[19297]=b+864;c[19298]=b+928;c[19299]=b+992;r=b+1056|0;c[19300]=r;c[19304]=r;r=b+1312|0;c[19301]=r;c[19305]=r;r=b+1568|0;c[19302]=r;c[19306]=r;r=b+1824|0;c[19303]=r;c[19307]=r;r=b+2080|0;c[19308]=r;c[19312]=r;r=b+2336|0;c[19309]=r;c[19313]=r;r=b+2592|0;c[19310]=r;c[19314]=r;r=b+2848|0;c[19311]=r;c[19315]=r;r=b+3104|0;c[19316]=r;c[19320]=r;r=b+4128|0;c[19317]=r;c[19321]=r;r=b+5152|0;c[19318]=r;c[19322]=r;r=b+6176|0;c[19319]=r;c[19323]=r;r=b+7200|0;c[19324]=r;c[19328]=r;r=b+8224|0;c[19325]=r;c[19329]=r;r=b+9248|0;c[19326]=r;c[19330]=r;r=b+10272|0;c[19327]=r;c[19331]=r;r=2;a:while(1){s=1<<r;t=(r|0)==2;u=r+-2|0;v=(r|0)==3;q=0;do{w=(q|0)==0;p=0;do{m=77072+(u<<6)+(q<<5)+(p<<2)|0;n=(p&2147483647|0)==0;l=0;do{g=l<<2;o=l<<r;j=0-l|0;h=l&3;i=(h|0)==0?2:(h|0)==1&1;k=0-(l>>>2)|0;b:do if(t){e=0;do{b=d[2688+(e+g)>>0]|0;b=w?b:b+27|0;f=(c[m>>2]|0)+(e+o)|0;k=a[f>>0]|0;if(!(k<<24>>24==-1|(b|0)==(k&255|0))){e=39;break a}a[f>>0]=b;e=e+1|0}while((e|0)<(s|0))}else{if(n){f=0;while(1){do if((f|0)!=(j|0)){b=(f&3)+h|0;b=b>>>0>2?0:(b|0)==0?2:1;if(w){b=(f>>>2|0)==(k|0)?b:b+3|0;if(v){b=b+9|0;break}else{b=b+21|0;break}}else if(v){b=b+9|0;break}else{b=b|12;break}}else b=0;while(0);b=w?b:b+27|0;e=(c[m>>2]|0)+(f+o)|0;i=a[e>>0]|0;if(!(i<<24>>24==-1|(b|0)==(i&255|0))){e=39;break a}a[e>>0]=b;f=f+1|0;if((f|0)>=(s|0))break b}}f=0;do{do if((f|0)!=(j|0)){e=f>>>2;b=f&3;switch(p&2147483647|0){case 2:{b=(b|0)==0?2:(b|0)==1&1;break}case 1:{b=i;break}default:b=2}if(w){b=(e|0)==(k|0)?b:b+3|0;if(v){b=b+9|0;break}else{b=b+21|0;break}}else if(v){b=b+9|0;break}else{b=b+12|0;break}}else b=0;while(0);b=w?b:b+27|0;e=(c[m>>2]|0)+(f+o)|0;h=a[e>>0]|0;if(!(h<<24>>24==-1|(b|0)==(h&255|0))){e=39;break a}a[e>>0]=b;f=f+1|0}while((f|0)<(s|0))}while(0);l=l+1|0}while((l|0)<(s|0));p=p+1|0}while(p>>>0<4);p=0;do{m=77072+(u<<6)+(q<<5)+16+(p<<2)|0;n=(p&2147483647|0)==0;l=0;do{g=l<<2;o=l<<r;j=0-l|0;h=l&3;i=(h|0)==0?2:(h|0)==1&1;k=0-(l>>>2)|0;c:do if(t){e=0;do{b=d[2688+(e+g)>>0]|0;b=w?b:b+27|0;f=(c[m>>2]|0)+(e+o)|0;k=a[f>>0]|0;if(!(k<<24>>24==-1|(b|0)==(k&255|0))){e=39;break a}a[f>>0]=b;e=e+1|0}while((e|0)<(s|0))}else{if(n){f=0;while(1){do if((f|0)!=(j|0)){b=(f&3)+h|0;b=b>>>0>2?0:(b|0)==0?2:1;if(w){b=(f>>>2|0)==(k|0)?b:b+3|0;if(v){b=b+15|0;break}else{b=b+21|0;break}}else if(v){b=b+9|0;break}else{b=b|12;break}}else b=0;while(0);b=w?b:b+27|0;e=(c[m>>2]|0)+(f+o)|0;i=a[e>>0]|0;if(!(i<<24>>24==-1|(b|0)==(i&255|0))){e=39;break a}a[e>>0]=b;f=f+1|0;if((f|0)>=(s|0))break c}}f=0;do{do if((f|0)!=(j|0)){e=f>>>2;b=f&3;switch(p&2147483647|0){case 2:{b=(b|0)==0?2:(b|0)==1&1;break}case 1:{b=i;break}default:b=2}if(w){b=(e|0)==(k|0)?b:b+3|0;if(v){b=b+15|0;break}else{b=b+21|0;break}}else if(v){b=b+9|0;break}else{b=b+12|0;break}}else b=0;while(0);b=w?b:b+27|0;e=(c[m>>2]|0)+(f+o)|0;h=a[e>>0]|0;if(!(h<<24>>24==-1|(b|0)==(h&255|0))){e=39;break a}a[e>>0]=b;f=f+1|0}while((f|0)<(s|0))}while(0);l=l+1|0}while((l|0)<(s|0));p=p+1|0}while(p>>>0<4);q=q+1|0}while(q>>>0<2);r=r+1|0;if(r>>>0>=6){b=1;e=41;break}}if((e|0)==39)M(59816,58545,2105,59892);else if((e|0)==41)return b|0;return 0}function $g(){vo(c[19268]|0);c[19268]=0;return}function ah(){var a=0;a=c[24497]|0;c[24497]=a+1;if((a|0)<=0?(Zg(),!(_g()|0)):0){c[24497]=(c[24497]|0)-1;a=0;return a|0}a=lz(3228)|0;bh(a);return a|0}function bh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c[b+84>>2]=0;c[b+168>>2]=0;c[b>>2]=12380;ch(b+172|0);c[b>>2]=12192;eh(b+548|0);k=b+1372|0;e=b+1376|0;f=b+1380|0;g=b+1384|0;h=b+1388|0;l=b+1396|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[l+20>>2]=0;hB(b+600|0,0,792)|0;dh(b+2144|0);c[b+3212>>2]=0;c[b+3216>>2]=0;c[b+3220>>2]=0;a[b+512>>0]=0;a[b+513>>0]=1;a[b+514>>0]=0;a[b+532>>0]=0;a[b+533>>0]=0;l=b+516|0;c[l>>2]=-1;c[l+4>>2]=-1;c[l+8>>2]=-1;c[l+12>>2]=-1;l=12208;j=c[l+4>>2]|0;d=b+536|0;c[d>>2]=c[l>>2];c[d+4>>2]=j;c[b+544>>2]=0;c[b+1368>>2]=0;d=c[k>>2]|0;c[k>>2]=0;if(d|0?(k=d+4|0,l=c[k>>2]|0,c[k>>2]=l+-1,(l|0)==0):0){wc[c[(c[d>>2]|0)+8>>2]&255](d);iz(d)}c[e>>2]=0;d=c[f>>2]|0;c[f>>2]=0;if(d|0?(k=d+4|0,l=c[k>>2]|0,c[k>>2]=l+-1,(l|0)==0):0){wc[c[(c[d>>2]|0)+8>>2]&255](d);iz(d)}c[g>>2]=0;d=c[h>>2]|0;c[h>>2]=0;if(d|0?(k=d+4|0,l=c[k>>2]|0,c[k>>2]=l+-1,(l|0)==0):0){wc[c[(c[d>>2]|0)+8>>2]&255](d);iz(d)}c[b+1888>>2]=0;k=b+1892|0;c[k>>2]=6;c[b+1896>>2]=100;c[b+1900>>2]=6;c[b+1908>>2]=6;c[b+1904>>2]=100;d=c[b+1376>>2]|0;if(!d){d=c[b+1368>>2]|0;if(!d)d=6;else{d=c[d+8>>2]|0;i=14}}else{d=a[d+2>>0]|0;i=14}if((i|0)==14)if((d|0)>0)d=d+-1|0;else{l=b+2200|0;b=b+2204|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[l+20>>2]=0;a[b>>0]=1;c[l>>2]=-1;return}j=d+1|0;while(1){i=d*100|0;f=(i|0)/(j|0)|0;i=(i+100|0)/(j|0)|0;if((i|0)>=(f|0)){g=i-f|0;h=c[k>>2]|0;e=f;while(1){l=(d|0)>(h|0);d=l?h:d;a[b+1912+(e<<1)>>0]=d;a[b+1912+(e<<1)+1>>0]=l?100:(((e-f|0)*100|0)/(g|0)|0)&255;if((e|0)<(i|0))e=e+1|0;else break}}c[b+2116+(d<<2)>>2]=i;if((d|0)>0)d=d+-1|0;else break}l=b+2200|0;b=b+2204|0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[l+20>>2]=0;a[b>>0]=1;c[l>>2]=-1;return}function ch(a){a=a|0;c[a>>2]=1;c[a+4>>2]=8;c[a+8>>2]=1;c[a+12>>2]=1;c[a+16>>2]=1;c[a+20>>2]=2;c[a+24>>2]=1;c[a+28>>2]=1;c[a+32>>2]=2;c[a+36>>2]=2;c[a+40>>2]=2;c[a+44>>2]=2;c[a+48>>2]=3;c[a+52>>2]=4;c[a+56>>2]=5;c[a+60>>2]=6;c[a+64>>2]=7;c[a+68>>2]=8;c[a+72>>2]=9;c[a+76>>2]=10;c[a+80>>2]=11;c[a+84>>2]=12;c[a+88>>2]=13;c[a+92>>2]=14;c[a+96>>2]=15;c[a+100>>2]=16;c[a+104>>2]=17;c[a+108>>2]=18;c[a+112>>2]=3;c[a+116>>2]=4;c[a+120>>2]=4;c[a+124>>2]=4;c[a+128>>2]=2;c[a+132>>2]=3;c[a+136>>2]=4;c[a+140>>2]=5;c[a+144>>2]=6;c[a+148>>2]=7;c[a+152>>2]=8;c[a+156>>2]=9;c[a+160>>2]=10;c[a+164>>2]=11;c[a+168>>2]=12;c[a+172>>2]=13;c[a+176>>2]=14;c[a+180>>2]=15;c[a+184>>2]=16;c[a+188>>2]=17;c[a+204>>2]=8;c[a+212>>2]=8;c[a+208>>2]=9;c[a+192>>2]=9;c[a+200>>2]=10;c[a+196>>2]=11;c[a+216>>2]=12;c[a+220>>2]=13;c[a+224>>2]=14;c[a+228>>2]=15;c[a+232>>2]=16;c[a+236>>2]=10;c[a+240>>2]=11;c[a+244>>2]=12;c[a+248>>2]=13;c[a+252>>2]=14;c[a+256>>2]=15;c[a+260>>2]=59;c[a+284>>2]=4;c[a+288>>2]=5;c[a+296>>2]=6;c[a+292>>2]=7;c[a+300>>2]=8;c[a+264>>2]=16;c[a+268>>2]=17;c[a+272>>2]=18;c[a+276>>2]=19;c[a+280>>2]=20;c[a+304>>2]=17;c[a+308>>2]=18;c[a+312>>2]=19;c[a+316>>2]=20;c[a+320>>2]=21;c[a+324>>2]=22;c[a+328>>2]=23;c[a+332>>2]=24;c[a+336>>2]=25;return}function dh(a){a=a|0;var b=0,d=0;b=a+8|0;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a>>2]=30;c[a+4>>2]=30;return}function eh(b){b=b|0;var d=0;a[b>>0]=0;a[b+1>>0]=0;b=b+4|0;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));return}function fh(c,d,e,f,g,h,i){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;if(h&1|0)M(60108,60025,105,60278);if(!((i|0)>0&(h|0)>0))return;m=0;do{l=u(m,g)|0;j=c+(u(m,d)|0)|0;k=f+(l<<1)|0;l=e+(l<<1)|0;n=0;while(1){o=(b[k>>1]|0)+(b[l>>1]|0)|0;a[j>>0]=(o|0)<-64?0:(o|0)>32703?-1:(o+64|0)>>>7&255;o=(b[k+2>>1]|0)+(b[l+2>>1]|0)|0;a[j+1>>0]=(o|0)<-64?0:(o|0)>32703?-1:(o+64|0)>>>7&255;n=n+2|0;if((n|0)>=(h|0))break;else{j=j+2|0;k=k+4|0;l=l+4|0}}m=m+1|0}while((m|0)!=(i|0));return}function gh(c,d,e,f,g,h){c=c|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;if(g&1|0)M(60108,60025,40,60247);if(!((h|0)>0&(g|0)>0))return;k=0;do{i=c+(u(k,d)|0)|0;j=e+((u(k,f)|0)<<1)|0;l=0;while(1){m=b[j>>1]|0;a[i>>0]=m<<16>>16<-32?0:m<<16>>16>16351?-1:((m&65535)+32|0)>>>6&255;m=b[j+2>>1]|0;a[i+1>>0]=m<<16>>16<-32?0:m<<16>>16>16351?-1:((m&65535)+32|0)>>>6&255;l=l+2|0;if((l|0)>=(g|0))break;else{i=i+2|0;j=j+4|0}}k=k+1|0}while((k|0)!=(h|0));return}function hh(c,d,e,f,g,h,i,j,k){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0;if((k|0)<=0)M(60015,60025,60,60218);p=1<<k+-1;if(!((h|0)>0&(g|0)>0))return;n=0;do{l=c+(u(n,d)|0)|0;m=e+((u(n,f)|0)<<1)|0;o=0;while(1){q=((u(b[m>>1]|0,i)|0)+p>>k)+j|0;q=(q|0)<255?q:255;a[l>>0]=(q|0)>0?q:0;o=o+1|0;if((o|0)==(g|0))break;else{l=l+1|0;m=m+2|0}}n=n+1|0}while((n|0)!=(h|0));return}function ih(c,d,e,f,g,h,i,j,k,l,m,n){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0;if((n|0)<=0)M(60015,60025,80,60187);r=k+1+m<<n;if((i|0)<=0)return;q=n+1|0;if((h|0)<=0)return;o=0;do{n=u(o,g)|0;m=c+(u(o,d)|0)|0;k=f+(n<<1)|0;n=e+(n<<1)|0;p=0;while(1){s=u(b[n>>1]|0,j)|0;s=s+r+(u(b[k>>1]|0,l)|0)>>q;s=(s|0)<255?s:255;a[m>>0]=(s|0)>0?s:0;p=p+1|0;if((p|0)==(h|0))break;else{m=m+1|0;k=k+2|0;n=n+2|0}}o=o+1|0}while((o|0)!=(i|0));return}function jh(a,c,d,e,f,g,h,i){a=a|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,q=0,r=0;q=15-i|0;p=1<<q+-1;if(g&1|0)M(60108,60025,238,60153);if((h|0)<=0)return;n=1<<i;o=n+65535|0;if((g|0)<=0)return;l=0;do{k=u(l,f)|0;i=a+((u(l,c)|0)<<1)|0;j=e+(k<<1)|0;k=d+(k<<1)|0;m=0;while(1){r=p+(b[k>>1]|0)+(b[j>>1]|0)>>q;b[i>>1]=(r|0)<0?0:((r|0)<(n|0)?r:o)&65535;r=p+(b[k+2>>1]|0)+(b[j+2>>1]|0)>>q;b[i+2>>1]=(r|0)<0?0:((r|0)<(n|0)?r:o)&65535;m=m+2|0;if((m|0)>=(g|0))break;else{i=i+4|0;j=j+4|0;k=k+4|0}}l=l+1|0}while((l|0)!=(h|0));return}function kh(a,c,d,e,f,g,h){a=a|0;c=c|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=14-h|0;n=(o|0)>0?1<<o+-1:0;if(f&1|0)M(60108,60025,172,60121);if((g|0)<=0)return;l=1<<h;m=l+65535|0;if((f|0)<=0)return;j=0;do{h=a+((u(j,c)|0)<<1)|0;i=d+((u(j,e)|0)<<1)|0;k=0;while(1){p=n+(b[i>>1]|0)>>o;b[h>>1]=(p|0)<0?0:((p|0)<(l|0)?p:m)&65535;p=n+(b[i+2>>1]|0)>>o;b[h+2>>1]=(p|0)<0?0:((p|0)<(l|0)?p:m)&65535;k=k+2|0;if((k|0)>=(f|0))break;else{h=h+4|0;i=i+4|0}}j=j+1|0}while((j|0)!=(g|0));return}function lh(a,c,d,e,f,g,h,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((j|0)<=0)M(60015,60025,193,60078);q=1<<j+-1;if((g|0)<=0)return;o=1<<k;p=o+65535|0;if((f|0)<=0)return;m=0;do{k=a+((u(m,c)|0)<<1)|0;l=d+((u(m,e)|0)<<1)|0;n=0;while(1){r=((u(b[l>>1]|0,h)|0)+q>>j)+i|0;b[k>>1]=(r|0)<0?0:((r|0)<(o|0)?r:p)&65535;n=n+1|0;if((n|0)==(f|0))break;else{k=k+2|0;l=l+2|0}}m=m+1|0}while((m|0)!=(g|0));return}function mh(a,c,d,e,f,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0;if((m|0)<=0)M(60015,60025,213,60046);s=j+1+l<<m;if((h|0)<=0)return;r=m+1|0;p=1<<n;q=p+65535|0;if((g|0)<=0)return;n=0;do{m=u(n,f)|0;l=a+((u(n,c)|0)<<1)|0;j=e+(m<<1)|0;m=d+(m<<1)|0;o=0;while(1){t=u(b[m>>1]|0,i)|0;t=t+s+(u(b[j>>1]|0,k)|0)>>r;b[l>>1]=(t|0)<0?0:((t|0)<(p|0)?t:q)&65535;o=o+1|0;if((o|0)==(g|0))break;else{l=l+2|0;j=j+2|0;m=m+2|0}}n=n+1|0}while((n|0)!=(h|0));return}function nh(a,c,e,f,g,h,i,j,k){a=a|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;if(!((h|0)>0&(g|0)>0))return;k=0;do{i=e+(u(k,f)|0)|0;j=a+((u(k,c)|0)<<1)|0;l=0;while(1){b[j>>1]=(d[i>>0]|0)<<6;l=l+1|0;if((l|0)==(g|0))break;else{i=i+1|0;j=j+2|0}}k=k+1|0}while((k|0)!=(h|0));return}function oh(a,c,e,f,g,h,i,j,k,l){a=a|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,v=0;t=hc;p=l+-8|0;r=h+3|0;q=u(g<<1,r)|0;s=hc;hc=hc+((1*q|0)+15&-16)|0;if((h|0)>-3){q=(g|0)>0;o=-1;while(1){a:do if(q){k=o+1|0;n=0;l=e+((u(o,f)|0)+-1)|0;while(1){switch(i|0){case 0:{l=l+1|0;m=d[l>>0]|0;break}case 1:{v=l+1|0;m=(u(d[l>>0]|0,-2)|0)+((d[v>>0]|0)*58|0)+((d[l+2>>0]|0)*10|0)-(d[l+3>>0]<<1)>>p&65535;l=v;break}case 2:{v=l+1|0;m=(u(d[l>>0]|0,-4)|0)+((d[v>>0]|0)*54|0)+(d[l+2>>0]<<4)-(d[l+3>>0]<<1)>>p&65535;l=v;break}case 3:{v=l+1|0;m=(u(d[l>>0]|0,-6)|0)+((d[v>>0]|0)*46|0)+((d[l+2>>0]|0)*28|0)-(d[l+3>>0]<<2)>>p&65535;l=v;break}case 4:{v=l+1|0;m=(u(d[l>>0]|0,-4)|0)-(d[l+3>>0]<<2)+(((d[l+2>>0]|0)+(d[v>>0]|0)|0)*36|0)>>p&65535;l=v;break}case 5:{v=l+1|0;m=(u(d[l>>0]|0,-4)|0)+((d[v>>0]|0)*28|0)+((d[l+2>>0]|0)*46|0)+(u(d[l+3>>0]|0,-6)|0)>>p&65535;l=v;break}case 6:{v=l+1|0;m=(u(d[l>>0]|0,-2)|0)+(d[v>>0]<<4)+((d[l+2>>0]|0)*54|0)-(d[l+3>>0]<<2)>>p&65535;l=v;break}default:{v=l+1|0;m=(u(d[l>>0]|0,-2)|0)+((d[v>>0]|0)*10|0)+((d[l+2>>0]|0)*58|0)-(d[l+3>>0]<<1)>>p&65535;l=v}}b[s+(k+(u(n,r)|0)<<1)>>1]=m;n=n+1|0;if((n|0)==(g|0))break a}}else k=o+1|0;while(0);if((o|0)>(h|0))break;else o=k}}o=(i|0)==0?p:6;if((g|0)<=0){hc=t;return}p=(h|0)>0;n=0;do{b:do if(p){m=0;k=s+((u(n,r)|0)<<1)|0;while(1){switch(j|0){case 0:{k=k+2|0;l=b[k>>1]|0;break}case 1:{v=k+2|0;l=(u(b[k>>1]|0,-2)|0)+((b[v>>1]|0)*58|0)+((b[k+4>>1]|0)*10|0)-(b[k+6>>1]<<1)>>o&65535;k=v;break}case 2:{v=k+2|0;l=(u(b[k>>1]|0,-4)|0)+((b[v>>1]|0)*54|0)+(b[k+4>>1]<<4)-(b[k+6>>1]<<1)>>o&65535;k=v;break}case 3:{v=k+2|0;l=(u(b[k>>1]|0,-6)|0)+((b[v>>1]|0)*46|0)+((b[k+4>>1]|0)*28|0)-(b[k+6>>1]<<2)>>o&65535;k=v;break}case 4:{v=k+2|0;l=(u(b[k>>1]|0,-4)|0)-(b[k+6>>1]<<2)+(((b[k+4>>1]|0)+(b[v>>1]|0)|0)*36|0)>>o&65535;k=v;break}case 5:{v=k+2|0;l=(u(b[k>>1]|0,-4)|0)+((b[v>>1]|0)*28|0)+((b[k+4>>1]|0)*46|0)+(u(b[k+6>>1]|0,-6)|0)>>o&65535;k=v;break}case 6:{v=k+2|0;l=(u(b[k>>1]|0,-2)|0)+(b[v>>1]<<4)+((b[k+4>>1]|0)*54|0)-(b[k+6>>1]<<2)>>o&65535;k=v;break}default:{v=k+2|0;l=(u(b[k>>1]|0,-2)|0)+((b[v>>1]|0)*10|0)+((b[k+4>>1]|0)*58|0)-(b[k+6>>1]<<1)>>o&65535;k=v}}b[a+((u(m,c)|0)+n<<1)>>1]=l;m=m+1|0;if((m|0)==(h|0))break b}}while(0);n=n+1|0}while((n|0)!=(g|0));hc=t;return}function ph(a,c,e,f,g,h,i){a=a|0;c=c|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;if(!((h|0)>0&(g|0)>0))return;l=0;do{i=e+(u(l,f)|0)|0;j=a+((u(l,c)|0)<<1)|0;k=0;while(1){o=(d[i+1>>0]|0)<<6&65535;n=(d[i+2>>0]|0)<<6&65535;m=(d[i+3>>0]|0)<<6&65535;b[j>>1]=(d[i>>0]|0)<<6;b[j+2>>1]=o;b[j+4>>1]=n;b[j+6>>1]=m;k=k+4|0;if((k|0)>=(g|0))break;else{i=i+4|0;j=j+8|0}}l=l+1|0}while((l|0)!=(h|0));return}function qh(a,c,f,g,h,i,j){a=a|0;c=c|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;o=i+3|0;p=i+6|0;if((o|0)>-3){if((h|0)<=0)return;k=-3;do{l=0;m=j+(k+3<<1)|0;n=f+(u(k,g)|0)|0;while(1){b[m>>1]=d[n>>0]|0;l=l+1|0;if((l|0)==(h|0))break;else{m=m+(p<<1)|0;n=n+1|0}}k=k+1|0}while((k|0)!=(o|0))}if(!((h|0)>0&(i|0)>0))return;n=0;do{k=0;l=a+(n<<1)|0;m=j+((u(n,p)|0)<<1)|0;while(1){o=m;m=m+2|0;g=(b[m>>1]<<2)-(b[o>>1]|0)+(u(b[o+4>>1]|0,-10)|0)|0;g=g+((b[o+6>>1]|0)*58|0)+((b[o+8>>1]|0)*17|0)+(u(b[o+10>>1]|0,-5)|0)|0;b[l>>1]=g+(e[o+12>>1]|0);k=k+1|0;if((k|0)==(i|0))break;else l=l+(c<<1)|0}n=n+1|0}while((n|0)!=(h|0));return}function rh(a,c,f,g,h,i,j){a=a|0;c=c|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;o=i+4|0;p=i+7|0;if((o|0)>-3){if((h|0)<=0)return;k=-3;do{l=0;m=j+(k+3<<1)|0;n=f+(u(k,g)|0)|0;while(1){b[m>>1]=d[n>>0]|0;l=l+1|0;if((l|0)==(h|0))break;else{m=m+(p<<1)|0;n=n+1|0}}k=k+1|0}while((k|0)!=(o|0))}if(!((h|0)>0&(i|0)>0))return;n=0;do{k=0;l=a+(n<<1)|0;m=j+((u(n,p)|0)<<1)|0;while(1){o=m;m=m+2|0;b[l>>1]=(b[m>>1]<<2)-(b[o>>1]|0)+(((b[o+8>>1]|0)+(b[o+6>>1]|0)|0)*40|0)+(b[o+12>>1]<<2)-(e[o+14>>1]|0)+(u((b[o+10>>1]|0)+(b[o+4>>1]|0)|0,-11)|0);k=k+1|0;if((k|0)==(i|0))break;else l=l+(c<<1)|0}n=n+1|0}while((n|0)!=(h|0));return}function sh(a,c,f,g,h,i,j){a=a|0;c=c|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;o=i+4|0;p=i+6|0;if((o|0)>-2){if((h|0)<=0)return;k=-2;do{l=0;m=j+(k+2<<1)|0;n=f+(u(k,g)|0)|0;while(1){b[m>>1]=d[n>>0]|0;l=l+1|0;if((l|0)==(h|0))break;else{m=m+(p<<1)|0;n=n+1|0}}k=k+1|0}while((k|0)!=(o|0))}if(!((h|0)>0&(i|0)>0))return;n=0;do{k=0;l=a+(n<<1)|0;m=j+((u(n,p)|0)<<1)|0;while(1){o=m;m=m+2|0;g=(u(b[m>>1]|0,-5)|0)+(b[o>>1]|0)|0;g=g+((b[o+4>>1]|0)*17|0)+((b[o+6>>1]|0)*58|0)+(u(b[o+8>>1]|0,-10)|0)|0;b[l>>1]=g+(b[o+10>>1]<<2)-(e[o+12>>1]|0);k=k+1|0;if((k|0)==(i|0))break;else l=l+(c<<1)|0}n=n+1|0}while((n|0)!=(h|0));return}function th(a,c,e,f,g,h,i){a=a|0;c=c|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;if(!((g|0)>0&(h|0)>0))return;m=0;do{j=0;k=i+(m<<1)|0;l=e+(u(m,f)|0)+-3|0;while(1){n=l;l=l+1|0;o=((d[l>>0]|0)<<2)-(d[n>>0]|0)+(u(d[n+2>>0]|0,-10)|0)|0;o=o+((d[n+3>>0]|0)*58|0)+((d[n+4>>0]|0)*17|0)+(u(d[n+5>>0]|0,-5)|0)|0;b[k>>1]=o+(d[n+6>>0]|0);j=j+1|0;if((j|0)==(g|0))break;else k=k+(h<<1)|0}m=m+1|0}while((m|0)!=(h|0));m=0;do{j=0;k=a+(m<<1)|0;l=i+((u(m,h)|0)<<1)|0;while(1){b[k>>1]=b[l>>1]|0;j=j+1|0;if((j|0)==(h|0))break;else{k=k+(c<<1)|0;l=l+2|0}}m=m+1|0}while((m|0)!=(g|0));return}function uh(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;Mi(a,b,c,d,e,f,g,1,1,8);return}function vh(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;Mi(a,b,c,d,e,f,g,1,2,8);return}function wh(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;Mi(a,b,c,d,e,f,g,1,3,8);return}function xh(a,c,e,f,g,h,i){a=a|0;c=c|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;if(!((g|0)>0&(h|0)>0))return;m=0;do{j=0;k=i+(m<<1)|0;l=e+(u(m,f)|0)+-3|0;while(1){n=l;l=l+1|0;b[k>>1]=((d[l>>0]|0)<<2)-(d[n>>0]|0)+(((d[n+4>>0]|0)+(d[n+3>>0]|0)|0)*40|0)+((d[n+6>>0]|0)<<2)-(d[n+7>>0]|0)+(u((d[n+5>>0]|0)+(d[n+2>>0]|0)|0,-11)|0);j=j+1|0;if((j|0)==(g|0))break;else k=k+(h<<1)|0}m=m+1|0}while((m|0)!=(h|0));m=0;do{j=0;k=a+(m<<1)|0;l=i+((u(m,h)|0)<<1)|0;while(1){b[k>>1]=b[l>>1]|0;j=j+1|0;if((j|0)==(h|0))break;else{k=k+(c<<1)|0;l=l+2|0}}m=m+1|0}while((m|0)!=(g|0));return}function yh(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;Mi(a,b,c,d,e,f,g,2,1,8);return}function zh(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;Mi(a,b,c,d,e,f,g,2,2,8);return}function Ah(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;Mi(a,b,c,d,e,f,g,2,3,8);return}function Bh(a,c,e,f,g,h,i){a=a|0;c=c|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;if(!((g|0)>0&(h|0)>0))return;m=0;do{j=0;k=i+(m<<1)|0;l=e+(u(m,f)|0)+-2|0;while(1){n=l;l=l+1|0;o=(u(d[l>>0]|0,-5)|0)+(d[n>>0]|0)|0;o=o+((d[n+2>>0]|0)*17|0)+((d[n+3>>0]|0)*58|0)+(u(d[n+4>>0]|0,-10)|0)|0;b[k>>1]=o+((d[n+5>>0]|0)<<2)-(d[n+6>>0]|0);j=j+1|0;if((j|0)==(g|0))break;else k=k+(h<<1)|0}m=m+1|0}while((m|0)!=(h|0));m=0;do{j=0;k=a+(m<<1)|0;l=i+((u(m,h)|0)<<1)|0;while(1){b[k>>1]=b[l>>1]|0;j=j+1|0;if((j|0)==(h|0))break;else{k=k+(c<<1)|0;l=l+2|0}}m=m+1|0}while((m|0)!=(g|0));return}function Ch(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;Mi(a,b,c,d,e,f,g,3,1,8);return}function Dh(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;Mi(a,b,c,d,e,f,g,3,2,8);return}function Eh(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;Mi(a,b,c,d,e,f,g,3,3,8);return}function Fh(a,c,d,f,g,h,i,j,k,l){a=a|0;c=c|0;d=d|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;m=14-l|0;if(!((h|0)>0&(g|0)>0))return;k=0;do{i=d+((u(k,f)|0)<<1)|0;j=a+((u(k,c)|0)<<1)|0;l=0;while(1){b[j>>1]=(e[i>>1]|0)<<m;l=l+1|0;if((l|0)==(g|0))break;else{i=i+2|0;j=j+2|0}}k=k+1|0}while((k|0)!=(h|0));return}function Gh(a,c,d,f,g,h,i,j,k,l){a=a|0;c=c|0;d=d|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,v=0;t=hc;p=l+-8|0;r=h+3|0;q=u(g<<1,r)|0;s=hc;hc=hc+((1*q|0)+15&-16)|0;if((h|0)>-3){q=(g|0)>0;o=-1;while(1){a:do if(q){k=o+1|0;n=0;l=d+((u(o,f)|0)+-1<<1)|0;while(1){switch(i|0){case 0:{l=l+2|0;m=b[l>>1]|0;break}case 1:{v=l+2|0;m=(u(e[l>>1]|0,-2)|0)+((e[v>>1]|0)*58|0)+((e[l+4>>1]|0)*10|0)-(e[l+6>>1]<<1)>>p&65535;l=v;break}case 2:{v=l+2|0;m=(u(e[l>>1]|0,-4)|0)+((e[v>>1]|0)*54|0)+(e[l+4>>1]<<4)-(e[l+6>>1]<<1)>>p&65535;l=v;break}case 3:{v=l+2|0;m=(u(e[l>>1]|0,-6)|0)+((e[v>>1]|0)*46|0)+((e[l+4>>1]|0)*28|0)-(e[l+6>>1]<<2)>>p&65535;l=v;break}case 4:{v=l+2|0;m=(u(e[l>>1]|0,-4)|0)-(e[l+6>>1]<<2)+(((e[l+4>>1]|0)+(e[v>>1]|0)|0)*36|0)>>p&65535;l=v;break}case 5:{v=l+2|0;m=(u(e[l>>1]|0,-4)|0)+((e[v>>1]|0)*28|0)+((e[l+4>>1]|0)*46|0)+(u(e[l+6>>1]|0,-6)|0)>>p&65535;l=v;break}case 6:{v=l+2|0;m=(u(e[l>>1]|0,-2)|0)+(e[v>>1]<<4)+((e[l+4>>1]|0)*54|0)-(e[l+6>>1]<<2)>>p&65535;l=v;break}default:{v=l+2|0;m=(u(e[l>>1]|0,-2)|0)+((e[v>>1]|0)*10|0)+((e[l+4>>1]|0)*58|0)-(e[l+6>>1]<<1)>>p&65535;l=v}}b[s+(k+(u(n,r)|0)<<1)>>1]=m;n=n+1|0;if((n|0)==(g|0))break a}}else k=o+1|0;while(0);if((o|0)>(h|0))break;else o=k}}o=(i|0)==0?p:6;if((g|0)<=0){hc=t;return}p=(h|0)>0;n=0;do{b:do if(p){m=0;k=s+((u(n,r)|0)<<1)|0;while(1){switch(j|0){case 0:{k=k+2|0;l=b[k>>1]|0;break}case 1:{v=k+2|0;l=(u(b[k>>1]|0,-2)|0)+((b[v>>1]|0)*58|0)+((b[k+4>>1]|0)*10|0)-(b[k+6>>1]<<1)>>o&65535;k=v;break}case 2:{v=k+2|0;l=(u(b[k>>1]|0,-4)|0)+((b[v>>1]|0)*54|0)+(b[k+4>>1]<<4)-(b[k+6>>1]<<1)>>o&65535;k=v;break}case 3:{v=k+2|0;l=(u(b[k>>1]|0,-6)|0)+((b[v>>1]|0)*46|0)+((b[k+4>>1]|0)*28|0)-(b[k+6>>1]<<2)>>o&65535;k=v;break}case 4:{v=k+2|0;l=(u(b[k>>1]|0,-4)|0)-(b[k+6>>1]<<2)+(((b[k+4>>1]|0)+(b[v>>1]|0)|0)*36|0)>>o&65535;k=v;break}case 5:{v=k+2|0;l=(u(b[k>>1]|0,-4)|0)+((b[v>>1]|0)*28|0)+((b[k+4>>1]|0)*46|0)+(u(b[k+6>>1]|0,-6)|0)>>o&65535;k=v;break}case 6:{v=k+2|0;l=(u(b[k>>1]|0,-2)|0)+(b[v>>1]<<4)+((b[k+4>>1]|0)*54|0)-(b[k+6>>1]<<2)>>o&65535;k=v;break}default:{v=k+2|0;l=(u(b[k>>1]|0,-2)|0)+((b[v>>1]|0)*10|0)+((b[k+4>>1]|0)*58|0)-(b[k+6>>1]<<1)>>o&65535;k=v}}b[a+((u(m,c)|0)+n<<1)>>1]=l;m=m+1|0;if((m|0)==(h|0))break b}}while(0);n=n+1|0}while((n|0)!=(g|0));hc=t;return}function Hh(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;m=14-j|0;if(!((h|0)>0&(g|0)>0))return;k=0;do{i=a+((u(k,c)|0)<<1)|0;j=d+((u(k,f)|0)<<1)|0;l=0;while(1){b[i>>1]=(e[j>>1]|0)<<m;l=l+1|0;if((l|0)==(g|0))break;else{i=i+2|0;j=j+2|0}}k=k+1|0}while((k|0)!=(h|0));return}function Ih(a,c,d,e,f,g,h,i){a=a|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;m=g+3|0;o=g+6|0;n=i+-8|0;if((m|0)>-3){if((f|0)<=0)return;i=-3;do{j=0;k=h+(i+3<<1)|0;l=d+((u(i,e)|0)<<1)|0;while(1){b[k>>1]=b[l>>1]|0;j=j+1|0;if((j|0)==(f|0))break;else{k=k+(o<<1)|0;l=l+2|0}}i=i+1|0}while((i|0)!=(m|0))}if(!((f|0)>0&(g|0)>0))return;l=0;do{i=0;j=a+(l<<1)|0;k=h+((u(l,o)|0)<<1)|0;while(1){m=k;k=k+2|0;e=(b[k>>1]<<2)-(b[m>>1]|0)+(u(b[m+4>>1]|0,-10)|0)|0;e=e+((b[m+6>>1]|0)*58|0)+((b[m+8>>1]|0)*17|0)+(u(b[m+10>>1]|0,-5)|0)|0;b[j>>1]=e+(b[m+12>>1]|0)>>n;i=i+1|0;if((i|0)==(g|0))break;else j=j+(c<<1)|0}l=l+1|0}while((l|0)!=(f|0));return}function Jh(a,c,d,e,f,g,h,i){a=a|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;m=g+4|0;o=g+7|0;n=i+-8|0;if((m|0)>-3){if((f|0)<=0)return;i=-3;do{j=0;k=h+(i+3<<1)|0;l=d+((u(i,e)|0)<<1)|0;while(1){b[k>>1]=b[l>>1]|0;j=j+1|0;if((j|0)==(f|0))break;else{k=k+(o<<1)|0;l=l+2|0}}i=i+1|0}while((i|0)!=(m|0))}if(!((f|0)>0&(g|0)>0))return;l=0;do{i=0;j=a+(l<<1)|0;k=h+((u(l,o)|0)<<1)|0;while(1){m=k;k=k+2|0;b[j>>1]=(b[k>>1]<<2)-(b[m>>1]|0)+(((b[m+8>>1]|0)+(b[m+6>>1]|0)|0)*40|0)+(b[m+12>>1]<<2)-(b[m+14>>1]|0)+(u((b[m+10>>1]|0)+(b[m+4>>1]|0)|0,-11)|0)>>n;i=i+1|0;if((i|0)==(g|0))break;else j=j+(c<<1)|0}l=l+1|0}while((l|0)!=(f|0));return}function Kh(a,c,d,e,f,g,h,i){a=a|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;m=g+4|0;o=g+6|0;n=i+-8|0;if((m|0)>-2){if((f|0)<=0)return;i=-2;do{j=0;k=h+(i+2<<1)|0;l=d+((u(i,e)|0)<<1)|0;while(1){b[k>>1]=b[l>>1]|0;j=j+1|0;if((j|0)==(f|0))break;else{k=k+(o<<1)|0;l=l+2|0}}i=i+1|0}while((i|0)!=(m|0))}if(!((f|0)>0&(g|0)>0))return;l=0;do{i=0;j=a+(l<<1)|0;k=h+((u(l,o)|0)<<1)|0;while(1){m=k;k=k+2|0;e=(u(b[k>>1]|0,-5)|0)+(b[m>>1]|0)|0;e=e+((b[m+4>>1]|0)*17|0)+((b[m+6>>1]|0)*58|0)+(u(b[m+8>>1]|0,-10)|0)|0;b[j>>1]=e+(b[m+10>>1]<<2)-(b[m+12>>1]|0)>>n;i=i+1|0;if((i|0)==(g|0))break;else j=j+(c<<1)|0}l=l+1|0}while((l|0)!=(f|0));return}function Lh(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|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;n=j+-8|0;if(!((g|0)>0&(h|0)>0))return;m=0;do{j=0;k=i+(m<<1)|0;l=d+((u(m,f)|0)<<1)+-6|0;while(1){o=l;l=l+2|0;p=((e[l>>1]|0)<<2)-(e[o>>1]|0)+(u(e[o+4>>1]|0,-10)|0)|0;p=p+((e[o+6>>1]|0)*58|0)+((e[o+8>>1]|0)*17|0)+(u(e[o+10>>1]|0,-5)|0)|0;b[k>>1]=p+(e[o+12>>1]|0)>>n;j=j+1|0;if((j|0)==(g|0))break;else k=k+(h<<1)|0}m=m+1|0}while((m|0)!=(h|0));m=0;do{j=0;k=a+(m<<1)|0;l=i+((u(m,h)|0)<<1)|0;while(1){b[k>>1]=b[l>>1]|0;j=j+1|0;if((j|0)==(h|0))break;else{k=k+(c<<1)|0;l=l+2|0}}m=m+1|0}while((m|0)!=(g|0));return}function Mh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Li(a,b,c,d,e,f,g,1,1,h);return}function Nh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Li(a,b,c,d,e,f,g,1,2,h);return}function Oh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Li(a,b,c,d,e,f,g,1,3,h);return}function Ph(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|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;n=j+-8|0;if(!((g|0)>0&(h|0)>0))return;m=0;do{j=0;k=i+(m<<1)|0;l=d+((u(m,f)|0)<<1)+-6|0;while(1){o=l;l=l+2|0;b[k>>1]=((e[l>>1]|0)<<2)-(e[o>>1]|0)+(((e[o+8>>1]|0)+(e[o+6>>1]|0)|0)*40|0)+((e[o+12>>1]|0)<<2)-(e[o+14>>1]|0)+(u((e[o+10>>1]|0)+(e[o+4>>1]|0)|0,-11)|0)>>n;j=j+1|0;if((j|0)==(g|0))break;else k=k+(h<<1)|0}m=m+1|0}while((m|0)!=(h|0));m=0;do{j=0;k=a+(m<<1)|0;l=i+((u(m,h)|0)<<1)|0;while(1){b[k>>1]=b[l>>1]|0;j=j+1|0;if((j|0)==(h|0))break;else{k=k+(c<<1)|0;l=l+2|0}}m=m+1|0}while((m|0)!=(g|0));return}function Qh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Li(a,b,c,d,e,f,g,2,1,h);return}function Rh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Li(a,b,c,d,e,f,g,2,2,h);return}function Sh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Li(a,b,c,d,e,f,g,2,3,h);return}function Th(a,c,d,f,g,h,i,j){a=a|0;c=c|0;d=d|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;n=j+-8|0;if(!((g|0)>0&(h|0)>0))return;m=0;do{j=0;k=i+(m<<1)|0;l=d+((u(m,f)|0)<<1)+-4|0;while(1){o=l;l=l+2|0;p=(u(e[l>>1]|0,-5)|0)+(e[o>>1]|0)|0;p=p+((e[o+4>>1]|0)*17|0)+((e[o+6>>1]|0)*58|0)+(u(e[o+8>>1]|0,-10)|0)|0;b[k>>1]=p+((e[o+10>>1]|0)<<2)-(e[o+12>>1]|0)>>n;j=j+1|0;if((j|0)==(g|0))break;else k=k+(h<<1)|0}m=m+1|0}while((m|0)!=(h|0));m=0;do{j=0;k=a+(m<<1)|0;l=i+((u(m,h)|0)<<1)|0;while(1){b[k>>1]=b[l>>1]|0;j=j+1|0;if((j|0)==(h|0))break;else{k=k+(c<<1)|0;l=l+2|0}}m=m+1|0}while((m|0)!=(g|0));return}function Uh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Li(a,b,c,d,e,f,g,3,1,h);return}function Vh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Li(a,b,c,d,e,f,g,3,2,h);return}function Wh(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;Li(a,b,c,d,e,f,g,3,3,h);return}function Xh(a,b,c){a=a|0;b=b|0;c=c|0;M(69335,59944,51,59989)}function Yh(c,e,f,g){c=c|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;k=f+5|0;l=1<<f;if((f|0)==31)return;j=0;do{m=j<<f;n=u(j,g)|0;h=0;i=0;do{i=((b[e+(h+m<<1)>>1]<<k)+2048>>12)+i|0;o=c+(h+n)|0;p=i+(d[o>>0]|0)|0;p=(p|0)<255?p:255;a[o>>0]=(p|0)>0?p:0;h=h+1|0}while((h|0)<(l|0));j=j+1|0}while((j|0)<(l|0));return}function Zh(c,e,f,g){c=c|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;k=f+5|0;l=1<<f;if((f|0)==31)return;j=0;do{h=0;i=0;do{i=((b[e+((h<<f)+j<<1)>>1]<<k)+2048>>12)+i|0;m=c+((u(h,g)|0)+j)|0;n=i+(d[m>>0]|0)|0;n=(n|0)<255?n:255;a[m>>0]=(n|0)>0?n:0;h=h+1|0}while((h|0)<(l|0));j=j+1|0}while((j|0)<(l|0));return}function _h(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if((e|0)<=0)return;g=0;do{h=u(g,e)|0;f=0;do{i=f+h|0;c[a+(i<<2)>>2]=b[d+(i<<1)>>1];f=f+1|0}while((f|0)!=(e|0));g=g+1|0}while((g|0)!=(e|0));return}function $h(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;if((e|0)<=0)return;g=0;do{i=u(g,e)|0;f=0;h=0;do{j=h+i|0;f=f+(b[d+(j<<1)>>1]|0)|0;c[a+(j<<2)>>2]=f;h=h+1|0}while((h|0)!=(e|0));g=g+1|0}while((g|0)!=(e|0));return}function ai(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if((e|0)<=0)return;g=0;do{f=0;h=0;do{i=(u(h,e)|0)+g|0;f=f+(b[d+(i<<1)>>1]|0)|0;c[a+(i<<2)>>2]=f;h=h+1|0}while((h|0)!=(e|0));g=g+1|0}while((g|0)!=(e|0));return}function bi(c,e,f){c=c|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;i=hc;h=hc=hc+31&-32;hc=hc+32|0;g=b[e>>1]|0;j=b[e+8>>1]|0;l=j*74|0;k=b[e+16>>1]|0;m=b[e+24>>1]|0;n=(m*55|0)+((k*84|0)+(l+(g*29|0)))|0;b[h>>1]=(n|0)<-4194368?-32768:(n|0)>4194239?32767:(n+64|0)>>>7&65535;l=(u(m,-84)|0)+((u(k,-29)|0)+(l+(g*55|0)))|0;b[h+8>>1]=(l|0)<-4194368?-32768:(l|0)>4194239?32767:(l+64|0)>>>7&65535;l=(m*74|0)+((u(k,-74)|0)+(g*74|0))|0;b[h+16>>1]=(l|0)<-4194368?-32768:(l|0)>4194239?32767:(l+64|0)>>>7&65535;g=(u(m,-29)|0)+((k*55|0)+((u(j,-74)|0)+(g*84|0)))|0;b[h+24>>1]=(g|0)<-4194368?-32768:(g|0)>4194239?32767:(g+64|0)>>>7&65535;g=b[e+2>>1]|0;j=b[e+10>>1]|0;k=j*74|0;m=b[e+18>>1]|0;l=b[e+26>>1]|0;n=(l*55|0)+((m*84|0)+(k+(g*29|0)))|0;b[h+2>>1]=(n|0)<-4194368?-32768:(n|0)>4194239?32767:(n+64|0)>>>7&65535;k=(u(l,-84)|0)+((u(m,-29)|0)+(k+(g*55|0)))|0;b[h+10>>1]=(k|0)<-4194368?-32768:(k|0)>4194239?32767:(k+64|0)>>>7&65535;k=(l*74|0)+((u(m,-74)|0)+(g*74|0))|0;b[h+18>>1]=(k|0)<-4194368?-32768:(k|0)>4194239?32767:(k+64|0)>>>7&65535;g=(u(l,-29)|0)+((m*55|0)+((u(j,-74)|0)+(g*84|0)))|0;b[h+26>>1]=(g|0)<-4194368?-32768:(g|0)>4194239?32767:(g+64|0)>>>7&65535;g=b[e+4>>1]|0;j=b[e+12>>1]|0;m=j*74|0;l=b[e+20>>1]|0;k=b[e+28>>1]|0;n=(k*55|0)+((l*84|0)+(m+(g*29|0)))|0;b[h+4>>1]=(n|0)<-4194368?-32768:(n|0)>4194239?32767:(n+64|0)>>>7&65535;m=(u(k,-84)|0)+((u(l,-29)|0)+(m+(g*55|0)))|0;b[h+12>>1]=(m|0)<-4194368?-32768:(m|0)>4194239?32767:(m+64|0)>>>7&65535;m=(k*74|0)+((u(l,-74)|0)+(g*74|0))|0;b[h+20>>1]=(m|0)<-4194368?-32768:(m|0)>4194239?32767:(m+64|0)>>>7&65535;g=(u(k,-29)|0)+((l*55|0)+((u(j,-74)|0)+(g*84|0)))|0;b[h+28>>1]=(g|0)<-4194368?-32768:(g|0)>4194239?32767:(g+64|0)>>>7&65535;g=b[e+6>>1]|0;j=b[e+14>>1]|0;l=j*74|0;k=b[e+22>>1]|0;e=b[e+30>>1]|0;m=(e*55|0)+((k*84|0)+(l+(g*29|0)))|0;b[h+6>>1]=(m|0)<-4194368?-32768:(m|0)>4194239?32767:(m+64|0)>>>7&65535;l=(u(e,-84)|0)+((u(k,-29)|0)+(l+(g*55|0)))|0;b[h+14>>1]=(l|0)<-4194368?-32768:(l|0)>4194239?32767:(l+64|0)>>>7&65535;l=(e*74|0)+((u(k,-74)|0)+(g*74|0))|0;b[h+22>>1]=(l|0)<-4194368?-32768:(l|0)>4194239?32767:(l+64|0)>>>7&65535;g=(u(e,-29)|0)+((k*55|0)+((u(j,-74)|0)+(g*84|0)))|0;b[h+30>>1]=(g|0)<-4194368?-32768:(g|0)>4194239?32767:(g+64|0)>>>7&65535;if((f|0)==1){e=0;g=a[c+2>>0]|0;do{n=u(e,f)|0;m=b[h+(e<<3)>>1]|0;l=b[h+(e<<3)+2>>1]|0;p=l*74|0;k=b[h+(e<<3)+4>>1]|0;j=b[h+(e<<3)+6>>1]|0;q=(j*55|0)+((k*84|0)+(p+(m*29|0)))|0;o=c+n|0;q=((q|0)<-134219776?-32768:(q|0)>134215679?32767:q+2048>>12)+(d[o>>0]|0)|0;q=(q|0)<255?q:255;a[o>>0]=(q|0)>0?q:0;p=(u(j,-84)|0)+((u(k,-29)|0)+(p+(m*55|0)))|0;o=c+(n+1)|0;p=((p|0)<-134219776?-32768:(p|0)>134215679?32767:p+2048>>12)+(d[o>>0]|0)|0;p=(p|0)<255?p:255;a[o>>0]=(p|0)>0?p:0;o=(j*74|0)+((u(k,-74)|0)+(m*74|0))|0;o=((o|0)<-134219776?-32768:(o|0)>134215679?32767:o+2048>>12)+(g&255)|0;o=(o|0)<255?o:255;a[c+(n+2)>>0]=(o|0)>0?o:0;m=(u(j,-29)|0)+((k*55|0)+((u(l,-74)|0)+(m*84|0)))|0;n=c+(n+3)|0;m=((m|0)<-134219776?-32768:(m|0)>134215679?32767:m+2048>>12)+(d[n>>0]|0)|0;m=(m|0)<255?m:255;g=((m|0)>0?m:0)&255;a[n>>0]=g;e=e+1|0}while((e|0)!=4);hc=i;return}else{e=0;do{q=u(e,f)|0;p=b[h+(e<<3)>>1]|0;o=b[h+(e<<3)+2>>1]|0;l=o*74|0;n=b[h+(e<<3)+4>>1]|0;m=b[h+(e<<3)+6>>1]|0;j=(m*55|0)+((n*84|0)+(l+(p*29|0)))|0;k=c+q|0;j=((j|0)<-134219776?-32768:(j|0)>134215679?32767:j+2048>>12)+(d[k>>0]|0)|0;j=(j|0)<255?j:255;a[k>>0]=(j|0)>0?j:0;l=(u(m,-84)|0)+((u(n,-29)|0)+(l+(p*55|0)))|0;k=c+(q+1)|0;l=((l|0)<-134219776?-32768:(l|0)>134215679?32767:l+2048>>12)+(d[k>>0]|0)|0;l=(l|0)<255?l:255;a[k>>0]=(l|0)>0?l:0;k=(m*74|0)+((u(n,-74)|0)+(p*74|0))|0;l=c+(q+2)|0;k=((k|0)<-134219776?-32768:(k|0)>134215679?32767:k+2048>>12)+(d[l>>0]|0)|0;k=(k|0)<255?k:255;a[l>>0]=(k|0)>0?k:0;p=(u(m,-29)|0)+((n*55|0)+((u(o,-74)|0)+(p*84|0)))|0;q=c+(q+3)|0;p=((p|0)<-134219776?-32768:(p|0)>134215679?32767:p+2048>>12)+(d[q>>0]|0)|0;p=(p|0)<255?p:255;a[q>>0]=(p|0)>0?p:0;e=e+1|0}while((e|0)!=4);hc=i;return}}function ci(a,b,c){a=a|0;b=b|0;c=c|0;Ki(a,c,4,b,8);return}function di(a,b,c){a=a|0;b=b|0;c=c|0;Ki(a,c,8,b,8);return}function ei(a,b,c){a=a|0;b=b|0;c=c|0;Ki(a,c,16,b,8);return}function fi(a,b,c){a=a|0;b=b|0;c=c|0;Ki(a,c,32,b,8);return}function gi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;M(69335,59944,68,59962)}function hi(a,c,d,f){a=a|0;c=c|0;d=d|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;l=hc;j=hc=hc+31&-32;hc=hc+32|0;k=20-f|0;i=b[c>>1]|0;g=b[c+8>>1]|0;m=g*74|0;h=b[c+16>>1]|0;n=b[c+24>>1]|0;o=(n*55|0)+((h*84|0)+(m+(i*29|0)))|0;b[j>>1]=(o|0)<-4194368?-32768:(o|0)>4194239?32767:(o+64|0)>>>7&65535;m=(u(n,-84)|0)+((u(h,-29)|0)+(m+(i*55|0)))|0;b[j+8>>1]=(m|0)<-4194368?-32768:(m|0)>4194239?32767:(m+64|0)>>>7&65535;m=(n*74|0)+((u(h,-74)|0)+(i*74|0))|0;b[j+16>>1]=(m|0)<-4194368?-32768:(m|0)>4194239?32767:(m+64|0)>>>7&65535;i=(u(n,-29)|0)+((h*55|0)+((u(g,-74)|0)+(i*84|0)))|0;b[j+24>>1]=(i|0)<-4194368?-32768:(i|0)>4194239?32767:(i+64|0)>>>7&65535;i=b[c+2>>1]|0;g=b[c+10>>1]|0;h=g*74|0;n=b[c+18>>1]|0;m=b[c+26>>1]|0;o=(m*55|0)+((n*84|0)+(h+(i*29|0)))|0;b[j+2>>1]=(o|0)<-4194368?-32768:(o|0)>4194239?32767:(o+64|0)>>>7&65535;h=(u(m,-84)|0)+((u(n,-29)|0)+(h+(i*55|0)))|0;b[j+10>>1]=(h|0)<-4194368?-32768:(h|0)>4194239?32767:(h+64|0)>>>7&65535;h=(m*74|0)+((u(n,-74)|0)+(i*74|0))|0;b[j+18>>1]=(h|0)<-4194368?-32768:(h|0)>4194239?32767:(h+64|0)>>>7&65535;i=(u(m,-29)|0)+((n*55|0)+((u(g,-74)|0)+(i*84|0)))|0;b[j+26>>1]=(i|0)<-4194368?-32768:(i|0)>4194239?32767:(i+64|0)>>>7&65535;i=b[c+4>>1]|0;g=b[c+12>>1]|0;n=g*74|0;m=b[c+20>>1]|0;h=b[c+28>>1]|0;o=(h*55|0)+((m*84|0)+(n+(i*29|0)))|0;b[j+4>>1]=(o|0)<-4194368?-32768:(o|0)>4194239?32767:(o+64|0)>>>7&65535;n=(u(h,-84)|0)+((u(m,-29)|0)+(n+(i*55|0)))|0;b[j+12>>1]=(n|0)<-4194368?-32768:(n|0)>4194239?32767:(n+64|0)>>>7&65535;n=(h*74|0)+((u(m,-74)|0)+(i*74|0))|0;b[j+20>>1]=(n|0)<-4194368?-32768:(n|0)>4194239?32767:(n+64|0)>>>7&65535;i=(u(h,-29)|0)+((m*55|0)+((u(g,-74)|0)+(i*84|0)))|0;b[j+28>>1]=(i|0)<-4194368?-32768:(i|0)>4194239?32767:(i+64|0)>>>7&65535;i=b[c+6>>1]|0;g=b[c+14>>1]|0;m=g*74|0;h=b[c+22>>1]|0;c=b[c+30>>1]|0;n=(c*55|0)+((h*84|0)+(m+(i*29|0)))|0;b[j+6>>1]=(n|0)<-4194368?-32768:(n|0)>4194239?32767:(n+64|0)>>>7&65535;m=(u(c,-84)|0)+((u(h,-29)|0)+(m+(i*55|0)))|0;b[j+14>>1]=(m|0)<-4194368?-32768:(m|0)>4194239?32767:(m+64|0)>>>7&65535;m=(c*74|0)+((u(h,-74)|0)+(i*74|0))|0;b[j+22>>1]=(m|0)<-4194368?-32768:(m|0)>4194239?32767:(m+64|0)>>>7&65535;i=(u(c,-29)|0)+((h*55|0)+((u(g,-74)|0)+(i*84|0)))|0;b[j+30>>1]=(i|0)<-4194368?-32768:(i|0)>4194239?32767:(i+64|0)>>>7&65535;i=1<<k+-1;g=1<<f;h=g+65535|0;if((d|0)==1){c=0;f=b[a+4>>1]|0;do{o=u(c,d)|0;n=b[j+(c<<3)>>1]|0;m=b[j+(c<<3)+2>>1]|0;s=m*74|0;p=b[j+(c<<3)+4>>1]|0;q=b[j+(c<<3)+6>>1]|0;t=(q*55|0)+((p*84|0)+(s+(n*29|0)))+i>>k;t=(t|0)<32767?t:32767;r=a+(o<<1)|0;t=((t|0)>-32768?t:-32768)+(e[r>>1]|0)|0;b[r>>1]=(t|0)<0?0:((t|0)<(g|0)?t:h)&65535;s=(u(q,-84)|0)+((u(p,-29)|0)+(s+(n*55|0)))+i>>k;s=(s|0)<32767?s:32767;r=a+(o+1<<1)|0;s=((s|0)>-32768?s:-32768)+(e[r>>1]|0)|0;b[r>>1]=(s|0)<0?0:((s|0)<(g|0)?s:h)&65535;r=(q*74|0)+((u(p,-74)|0)+(n*74|0))+i>>k;r=(r|0)<32767?r:32767;r=((r|0)>-32768?r:-32768)+(f&65535)|0;b[a+(o+2<<1)>>1]=(r|0)<0?0:((r|0)<(g|0)?r:h)&65535;n=(u(q,-29)|0)+((p*55|0)+((u(m,-74)|0)+(n*84|0)))+i>>k;n=(n|0)<32767?n:32767;o=a+(o+3<<1)|0;n=((n|0)>-32768?n:-32768)+(e[o>>1]|0)|0;f=(n|0)<0?0:((n|0)<(g|0)?n:h)&65535;b[o>>1]=f;c=c+1|0}while((c|0)!=4);hc=l;return}else{c=0;do{t=u(c,d)|0;s=b[j+(c<<3)>>1]|0;r=b[j+(c<<3)+2>>1]|0;o=r*74|0;q=b[j+(c<<3)+4>>1]|0;p=b[j+(c<<3)+6>>1]|0;m=(p*55|0)+((q*84|0)+(o+(s*29|0)))+i>>k;m=(m|0)<32767?m:32767;n=a+(t<<1)|0;m=((m|0)>-32768?m:-32768)+(e[n>>1]|0)|0;b[n>>1]=(m|0)<0?0:((m|0)<(g|0)?m:h)&65535;o=(u(p,-84)|0)+((u(q,-29)|0)+(o+(s*55|0)))+i>>k;o=(o|0)<32767?o:32767;n=a+(t+1<<1)|0;o=((o|0)>-32768?o:-32768)+(e[n>>1]|0)|0;b[n>>1]=(o|0)<0?0:((o|0)<(g|0)?o:h)&65535;n=(p*74|0)+((u(q,-74)|0)+(s*74|0))+i>>k;n=(n|0)<32767?n:32767;o=a+(t+2<<1)|0;n=((n|0)>-32768?n:-32768)+(e[o>>1]|0)|0;b[o>>1]=(n|0)<0?0:((n|0)<(g|0)?n:h)&65535;s=(u(p,-29)|0)+((q*55|0)+((u(r,-74)|0)+(s*84|0)))+i>>k;s=(s|0)<32767?s:32767;t=a+(t+3<<1)|0;s=((s|0)>-32768?s:-32768)+(e[t>>1]|0)|0;b[t>>1]=(s|0)<0?0:((s|0)<(g|0)?s:h)&65535;c=c+1|0}while((c|0)!=4);hc=l;return}}function ii(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ji(a,c,4,b,d);return}function ji(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ji(a,c,8,b,d);return}function ki(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ji(a,c,16,b,d);return}function li(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ji(a,c,32,b,d);return}function mi(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=(c|0)/2|0;if((c|0)<=1)return;g=c+-1|0;d=0;do{h=u(d,c)|0;i=g+(u(g-d|0,c)|0)|0;e=0;do{l=a+(e+h<<1)|0;j=a+(i-e<<1)|0;k=b[l>>1]|0;b[l>>1]=b[j>>1]|0;b[j>>1]=k;e=e+1|0}while((e|0)!=(c|0));d=d+1|0}while((d|0)!=(f|0));return}function ni(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;if((g|0)<=0)return;j=1<<h;k=j+255|0;h=0;do{l=u(h,e)|0;m=u(h,g)|0;i=0;do{n=b+(i+l)|0;o=(c[f+(i+m<<2)>>2]|0)+(d[n>>0]|0)|0;a[n>>0]=(o|0)<0?0:((o|0)<(j|0)?o:k)&255;i=i+1|0}while((i|0)!=(g|0));h=h+1|0}while((h|0)!=(g|0));return}function oi(a,d,f,g,h){a=a|0;d=d|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;if((g|0)<=0)return;j=1<<h;k=j+65535|0;h=0;do{l=u(h,d)|0;m=u(h,g)|0;i=0;do{n=a+(i+l<<1)|0;o=(c[f+(i+m<<2)>>2]|0)+(e[n>>1]|0)|0;b[n>>1]=(o|0)<0?0:((o|0)<(j|0)?o:k)&65535;i=i+1|0}while((i|0)!=(g|0));h=h+1|0}while((h|0)!=(g|0));return}function pi(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;k=1<<g+-1;if((e|0)<=0)return;j=0;do{l=u(j,e)|0;h=0;i=0;do{m=h+l|0;i=((b[d+(m<<1)>>1]<<f)+k>>g)+i|0;c[a+(m<<2)>>2]=i;h=h+1|0}while((h|0)!=(e|0));j=j+1|0}while((j|0)!=(e|0));return}function qi(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;k=1<<g+-1;if((e|0)<=0)return;j=0;do{h=0;i=0;do{l=(u(h,e)|0)+j|0;i=((b[d+(l<<1)>>1]<<f)+k>>g)+i|0;c[a+(l<<2)>>2]=i;h=h+1|0}while((h|0)!=(e|0));j=j+1|0}while((j|0)!=(e|0));return}function ri(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;j=1<<g+-1;if((e|0)<=0)return;i=0;do{k=u(i,e)|0;h=0;do{l=h+k|0;c[a+(l<<2)>>2]=(b[d+(l<<1)>>1]<<f)+j>>g;h=h+1|0}while((h|0)!=(e|0));i=i+1|0}while((i|0)!=(e|0));return}function si(a,d,e,f){a=a|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;g=hc;j=hc=hc+31&-32;hc=hc+32|0;h=1<<f;f=h+65535|0;k=0-h|0;i=b[d>>1]|0;l=b[d+8>>1]|0;n=l*74|0;m=b[d+16>>1]|0;o=b[d+24>>1]|0;p=(o*55|0)+((m*84|0)+(n+(i*29|0)))+64>>7;b[j>>1]=(p|0)<(k|0)?k:(p|0)<(h|0)?p:f;n=(u(o,-84)|0)+((u(m,-29)|0)+(n+(i*55|0)))+64>>7;b[j+8>>1]=(n|0)<(k|0)?k:(n|0)<(h|0)?n:f;n=(o*74|0)+((u(m,-74)|0)+(i*74|0))+64>>7;b[j+16>>1]=(n|0)<(k|0)?k:(n|0)<(h|0)?n:f;i=(u(o,-29)|0)+((m*55|0)+((u(l,-74)|0)+(i*84|0)))+64>>7;b[j+24>>1]=(i|0)<(k|0)?k:(i|0)<(h|0)?i:f;i=b[d+2>>1]|0;l=b[d+10>>1]|0;m=l*74|0;o=b[d+18>>1]|0;n=b[d+26>>1]|0;p=(n*55|0)+((o*84|0)+(m+(i*29|0)))+64>>7;b[j+2>>1]=(p|0)<(k|0)?k:(p|0)<(h|0)?p:f;m=(u(n,-84)|0)+((u(o,-29)|0)+(m+(i*55|0)))+64>>7;b[j+10>>1]=(m|0)<(k|0)?k:(m|0)<(h|0)?m:f;m=(n*74|0)+((u(o,-74)|0)+(i*74|0))+64>>7;b[j+18>>1]=(m|0)<(k|0)?k:(m|0)<(h|0)?m:f;i=(u(n,-29)|0)+((o*55|0)+((u(l,-74)|0)+(i*84|0)))+64>>7;b[j+26>>1]=(i|0)<(k|0)?k:(i|0)<(h|0)?i:f;i=b[d+4>>1]|0;l=b[d+12>>1]|0;o=l*74|0;n=b[d+20>>1]|0;m=b[d+28>>1]|0;p=(m*55|0)+((n*84|0)+(o+(i*29|0)))+64>>7;b[j+4>>1]=(p|0)<(k|0)?k:(p|0)<(h|0)?p:f;o=(u(m,-84)|0)+((u(n,-29)|0)+(o+(i*55|0)))+64>>7;b[j+12>>1]=(o|0)<(k|0)?k:(o|0)<(h|0)?o:f;o=(m*74|0)+((u(n,-74)|0)+(i*74|0))+64>>7;b[j+20>>1]=(o|0)<(k|0)?k:(o|0)<(h|0)?o:f;i=(u(m,-29)|0)+((n*55|0)+((u(l,-74)|0)+(i*84|0)))+64>>7;b[j+28>>1]=(i|0)<(k|0)?k:(i|0)<(h|0)?i:f;i=b[d+6>>1]|0;l=b[d+14>>1]|0;n=l*74|0;m=b[d+22>>1]|0;d=b[d+30>>1]|0;o=(d*55|0)+((m*84|0)+(n+(i*29|0)))+64>>7;b[j+6>>1]=(o|0)<(k|0)?k:(o|0)<(h|0)?o:f;n=(u(d,-84)|0)+((u(m,-29)|0)+(n+(i*55|0)))+64>>7;b[j+14>>1]=(n|0)<(k|0)?k:(n|0)<(h|0)?n:f;n=(d*74|0)+((u(m,-74)|0)+(i*74|0))+64>>7;b[j+22>>1]=(n|0)<(k|0)?k:(n|0)<(h|0)?n:f;d=(u(d,-29)|0)+((m*55|0)+((u(l,-74)|0)+(i*84|0)))+64>>7;b[j+30>>1]=(d|0)<(k|0)?k:(d|0)<(h|0)?d:f;f=1<<e+-1;d=b[j>>1]|0;h=b[j+2>>1]|0;k=h*74|0;i=b[j+4>>1]|0;l=b[j+6>>1]|0;c[a>>2]=(l*55|0)+((i*84|0)+(k+(d*29|0)))+f>>e;c[a+4>>2]=(u(l,-84)|0)+((u(i,-29)|0)+(k+(d*55|0)))+f>>e;c[a+8>>2]=(l*74|0)+((u(i,-74)|0)+(d*74|0))+f>>e;c[a+12>>2]=(u(l,-29)|0)+((i*55|0)+((u(h,-74)|0)+(d*84|0)))+f>>e;d=b[j+8>>1]|0;h=b[j+10>>1]|0;i=h*74|0;l=b[j+12>>1]|0;k=b[j+14>>1]|0;c[a+16>>2]=(k*55|0)+((l*84|0)+(i+(d*29|0)))+f>>e;c[a+20>>2]=(u(k,-84)|0)+((u(l,-29)|0)+(i+(d*55|0)))+f>>e;c[a+24>>2]=(k*74|0)+((u(l,-74)|0)+(d*74|0))+f>>e;c[a+28>>2]=(u(k,-29)|0)+((l*55|0)+((u(h,-74)|0)+(d*84|0)))+f>>e;d=b[j+16>>1]|0;h=b[j+18>>1]|0;l=h*74|0;k=b[j+20>>1]|0;i=b[j+22>>1]|0;c[a+32>>2]=(i*55|0)+((k*84|0)+(l+(d*29|0)))+f>>e;c[a+36>>2]=(u(i,-84)|0)+((u(k,-29)|0)+(l+(d*55|0)))+f>>e;c[a+40>>2]=(i*74|0)+((u(k,-74)|0)+(d*74|0))+f>>e;c[a+44>>2]=(u(i,-29)|0)+((k*55|0)+((u(h,-74)|0)+(d*84|0)))+f>>e;d=b[j+24>>1]|0;h=b[j+26>>1]|0;k=h*74|0;i=b[j+28>>1]|0;j=b[j+30>>1]|0;c[a+48>>2]=(j*55|0)+((i*84|0)+(k+(d*29|0)))+f>>e;c[a+52>>2]=(u(j,-84)|0)+((u(i,-29)|0)+(k+(d*55|0)))+f>>e;c[a+56>>2]=(j*74|0)+((u(i,-74)|0)+(d*74|0))+f>>e;c[a+60>>2]=(u(j,-29)|0)+((i*55|0)+((u(h,-74)|0)+(d*84|0)))+f>>e;hc=g;return}function ti(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ii(a,4,b,c,d);return}function ui(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ii(a,8,b,c,d);return}function vi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ii(a,16,b,c,d);return}function wi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ii(a,32,b,c,d);return}function xi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=hc;g=hc=hc+31&-32;hc=hc+32|0;i=d<<1;j=d*3|0;h=b[c>>1]|0;f=b[c+(d<<1)>>1]|0;k=b[c+(i<<1)>>1]|0;l=k*74|0;m=b[c+(j<<1)>>1]|0;n=(m*84|0)+(l+((f*55|0)+(h*29|0)))+1>>1;n=(n|0)<32767?n:32767;b[g>>1]=(n|0)>-32768?n:-32768;n=(u(m,-74)|0)+((f+h|0)*74|0)>>1;n=(n|0)<32767?n:32767;b[g+8>>1]=(n|0)>-32768?n:-32768;k=(m*55|0)+((u(k,-74)|0)+((u(f,-29)|0)+(h*84|0)))+1>>1;k=(k|0)<32767?k:32767;b[g+16>>1]=(k|0)>-32768?k:-32768;h=(u(m,-29)|0)+(l+((u(f,-84)|0)+(h*55|0)))+1>>1;h=(h|0)<32767?h:32767;b[g+24>>1]=(h|0)>-32768?h:-32768;h=b[c+2>>1]|0;f=b[c+(d+1<<1)>>1]|0;l=b[c+((i|1)<<1)>>1]|0;m=l*74|0;k=b[c+(j+1<<1)>>1]|0;n=(k*84|0)+(m+((f*55|0)+(h*29|0)))+1>>1;n=(n|0)<32767?n:32767;b[g+2>>1]=(n|0)>-32768?n:-32768;n=(u(k,-74)|0)+((f+h|0)*74|0)>>1;n=(n|0)<32767?n:32767;b[g+10>>1]=(n|0)>-32768?n:-32768;l=(k*55|0)+((u(l,-74)|0)+((u(f,-29)|0)+(h*84|0)))+1>>1;l=(l|0)<32767?l:32767;b[g+18>>1]=(l|0)>-32768?l:-32768;h=(u(k,-29)|0)+(m+((u(f,-84)|0)+(h*55|0)))+1>>1;h=(h|0)<32767?h:32767;b[g+26>>1]=(h|0)>-32768?h:-32768;h=b[c+4>>1]|0;f=b[c+(d+2<<1)>>1]|0;m=b[c+(i+2<<1)>>1]|0;k=m*74|0;l=b[c+(j+2<<1)>>1]|0;n=(l*84|0)+(k+((f*55|0)+(h*29|0)))+1>>1;n=(n|0)<32767?n:32767;b[g+4>>1]=(n|0)>-32768?n:-32768;n=(u(l,-74)|0)+((f+h|0)*74|0)>>1;n=(n|0)<32767?n:32767;b[g+12>>1]=(n|0)>-32768?n:-32768;m=(l*55|0)+((u(m,-74)|0)+((u(f,-29)|0)+(h*84|0)))+1>>1;m=(m|0)<32767?m:32767;b[g+20>>1]=(m|0)>-32768?m:-32768;h=(u(l,-29)|0)+(k+((u(f,-84)|0)+(h*55|0)))+1>>1;h=(h|0)<32767?h:32767;b[g+28>>1]=(h|0)>-32768?h:-32768;h=b[c+6>>1]|0;d=b[c+(d+3<<1)>>1]|0;i=b[c+(i+3<<1)>>1]|0;f=i*74|0;c=b[c+(j+3<<1)>>1]|0;j=(c*84|0)+(f+((d*55|0)+(h*29|0)))+1>>1;j=(j|0)<32767?j:32767;b[g+6>>1]=(j|0)>-32768?j:-32768;j=(u(c,-74)|0)+((d+h|0)*74|0)>>1;j=(j|0)<32767?j:32767;b[g+14>>1]=(j|0)>-32768?j:-32768;i=(c*55|0)+((u(i,-74)|0)+((u(d,-29)|0)+(h*84|0)))+1>>1;i=(i|0)<32767?i:32767;b[g+22>>1]=(i|0)>-32768?i:-32768;d=(u(c,-29)|0)+(f+((u(d,-84)|0)+(h*55|0)))+1>>1;d=(d|0)<32767?d:32767;b[g+30>>1]=(d|0)>-32768?d:-32768;d=b[g>>1]|0;c=b[g+2>>1]|0;h=b[g+4>>1]|0;f=h*74|0;i=b[g+6>>1]|0;b[a>>1]=((i*84|0)+(f+((c*55|0)+(d*29|0)))+128|0)>>>8;b[a+2>>1]=((u(i,-74)|0)+((c+d|0)*74|0)+128|0)>>>8;b[a+4>>1]=((i*55|0)+((u(h,-74)|0)+((u(c,-29)|0)+(d*84|0)))+128|0)>>>8;b[a+6>>1]=((u(i,-29)|0)+(f+((u(c,-84)|0)+(d*55|0)))+128|0)>>>8;d=b[g+8>>1]|0;c=b[g+10>>1]|0;f=b[g+12>>1]|0;i=f*74|0;h=b[g+14>>1]|0;b[a+8>>1]=((h*84|0)+(i+((c*55|0)+(d*29|0)))+128|0)>>>8;b[a+10>>1]=((u(h,-74)|0)+((c+d|0)*74|0)+128|0)>>>8;b[a+12>>1]=((h*55|0)+((u(f,-74)|0)+((u(c,-29)|0)+(d*84|0)))+128|0)>>>8;b[a+14>>1]=((u(h,-29)|0)+(i+((u(c,-84)|0)+(d*55|0)))+128|0)>>>8;d=b[g+16>>1]|0;c=b[g+18>>1]|0;i=b[g+20>>1]|0;h=i*74|0;f=b[g+22>>1]|0;b[a+16>>1]=((f*84|0)+(h+((c*55|0)+(d*29|0)))+128|0)>>>8;b[a+18>>1]=((u(f,-74)|0)+((c+d|0)*74|0)+128|0)>>>8;b[a+20>>1]=((f*55|0)+((u(i,-74)|0)+((u(c,-29)|0)+(d*84|0)))+128|0)>>>8;b[a+22>>1]=((u(f,-29)|0)+(h+((u(c,-84)|0)+(d*55|0)))+128|0)>>>8;d=b[g+24>>1]|0;c=b[g+26>>1]|0;h=b[g+28>>1]|0;f=h*74|0;g=b[g+30>>1]|0;b[a+24>>1]=((g*84|0)+(f+((c*55|0)+(d*29|0)))+128|0)>>>8;b[a+26>>1]=((u(g,-74)|0)+((c+d|0)*74|0)+128|0)>>>8;b[a+28>>1]=((g*55|0)+((u(h,-74)|0)+((u(c,-29)|0)+(d*84|0)))+128|0)>>>8;b[a+30>>1]=((u(g,-29)|0)+(f+((u(c,-84)|0)+(d*55|0)))+128|0)>>>8;hc=e;return}function yi(a,b,c){a=a|0;b=b|0;c=c|0;Hi(a,4,b,c);return}function zi(a,b,c){a=a|0;b=b|0;c=c|0;Hi(a,8,b,c);return}function Ai(a,b,c){a=a|0;b=b|0;c=c|0;Hi(a,16,b,c);return}function Bi(a,b,c){a=a|0;b=b|0;c=c|0;Hi(a,32,b,c);return}function Ci(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=hc;s=hc=hc+31&-32;hc=hc+32|0;g=b[c>>1]|0;i=b[c+4>>1]|0;k=b[c+2>>1]|0;f=b[c+6>>1]|0;u=i+g<<16>>16;j=f+k<<16>>16;b[s>>1]=j+u;o=s+2|0;b[o>>1]=u-j;i=g-i<<16>>16;f=k-f<<16>>16;k=s+4|0;b[k>>1]=f+i;g=s+6|0;b[g>>1]=i-f;f=b[c+(d<<1)>>1]|0;i=b[c+(d+2<<1)>>1]|0;j=b[c+(d+1<<1)>>1]|0;u=b[c+(d+3<<1)>>1]|0;h=i+f<<16>>16;v=u+j<<16>>16;r=s+8|0;b[r>>1]=v+h;n=s+10|0;b[n>>1]=h-v;i=f-i<<16>>16;u=j-u<<16>>16;j=s+12|0;b[j>>1]=u+i;f=s+14|0;b[f>>1]=i-u;u=d<<1;i=b[c+(u<<1)>>1]|0;v=b[c+(u+2<<1)>>1]|0;h=b[c+((u|1)<<1)>>1]|0;u=b[c+(u+3<<1)>>1]|0;t=v+i<<16>>16;l=u+h<<16>>16;p=l+t|0;b[s+16>>1]=p;l=t-l|0;b[s+18>>1]=l;v=i-v<<16>>16;u=h-u<<16>>16;h=s+20|0;b[h>>1]=u+v;i=s+22|0;b[i>>1]=v-u;u=d*3|0;v=b[c+(u<<1)>>1]|0;t=b[c+(u+2<<1)>>1]|0;d=b[c+(u+1<<1)>>1]|0;u=b[c+(u+3<<1)>>1]|0;c=t+v<<16>>16;m=u+d<<16>>16;q=m+c|0;b[s+24>>1]=q;m=c-m|0;b[s+26>>1]=m;t=v-t<<16>>16;u=d-u<<16>>16;c=u+t|0;b[s+28>>1]=c;d=s+30|0;b[d>>1]=t-u;s=b[s>>1]|0;p=p<<16>>16;r=b[r>>1]|0;q=q<<16>>16;u=p+s<<16>>16;t=q+r<<16>>16;b[a>>1]=t+u;b[a+8>>1]=u-t;p=s-p<<16>>16;q=r-q<<16>>16;b[a+16>>1]=q+p;b[a+24>>1]=p-q;o=b[o>>1]|0;l=l<<16>>16;n=b[n>>1]|0;m=m<<16>>16;q=l+o<<16>>16;p=m+n<<16>>16;b[a+2>>1]=p+q;b[a+10>>1]=q-p;l=o-l<<16>>16;m=n-m<<16>>16;b[a+18>>1]=m+l;b[a+26>>1]=l-m;k=b[k>>1]|0;h=b[h>>1]|0;j=b[j>>1]|0;c=c<<16>>16;m=h+k<<16>>16;l=c+j<<16>>16;b[a+4>>1]=l+m;b[a+12>>1]=m-l;h=k-h<<16>>16;c=j-c<<16>>16;b[a+20>>1]=c+h;b[a+28>>1]=h-c;g=b[g>>1]|0;c=b[i>>1]|0;f=b[f>>1]|0;d=b[d>>1]|0;i=c+g<<16>>16;h=d+f<<16>>16;b[a+6>>1]=h+i;b[a+14>>1]=i-h;c=g-c<<16>>16;d=f-d<<16>>16;b[a+22>>1]=d+c;b[a+30>>1]=c-d;hc=e;return}function Di(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;g=hc;f=hc=hc+31&-32;hc=hc+128|0;e=0;do{i=u(e,d)|0;s=b[c+(i<<1)>>1]|0;l=b[c+(i+4<<1)>>1]|0;q=b[c+(i+1<<1)>>1]|0;k=b[c+(i+5<<1)>>1]|0;h=b[c+(i+2<<1)>>1]|0;j=b[c+(i+6<<1)>>1]|0;r=b[c+(i+3<<1)>>1]|0;i=b[c+(i+7<<1)>>1]|0;p=l+s<<16>>16;m=j+h<<16>>16;o=k+q<<16>>16;n=i+r<<16>>16;l=s-l<<16>>16;j=h-j<<16>>16;k=q-k<<16>>16;i=r-i<<16>>16;r=m+p<<16>>16;q=n+o<<16>>16;h=e<<3;b[f+(h<<1)>>1]=q+r;b[f+((h|1)<<1)>>1]=r-q;m=p-m<<16>>16;n=o-n<<16>>16;b[f+((h|2)<<1)>>1]=n+m;b[f+((h|3)<<1)>>1]=m-n;n=j+l<<16>>16;m=i+k<<16>>16;b[f+((h|4)<<1)>>1]=m+n;b[f+((h|5)<<1)>>1]=n-m;j=l-j<<16>>16;i=k-i<<16>>16;b[f+((h|6)<<1)>>1]=i+j;b[f+((h|7)<<1)>>1]=j-i;e=e+1|0}while((e|0)!=8);e=0;do{y=b[f+(e<<1)>>1]|0;j=e+32|0;n=b[f+(j<<1)>>1]|0;t=e+8|0;v=b[f+(t<<1)>>1]|0;m=e+40|0;o=b[f+(m<<1)>>1]|0;h=e+16|0;x=b[f+(h<<1)>>1]|0;p=e+48|0;q=b[f+(p<<1)>>1]|0;k=e+24|0;w=b[f+(k<<1)>>1]|0;s=e+56|0;r=b[f+(s<<1)>>1]|0;c=n+y<<16>>16;i=q+x<<16>>16;d=o+v<<16>>16;l=r+w<<16>>16;n=y-n<<16>>16;q=x-q<<16>>16;o=v-o<<16>>16;r=w-r<<16>>16;w=i+c<<16>>16;v=l+d<<16>>16;b[a+(e<<1)>>1]=v+w;b[a+(t<<1)>>1]=w-v;i=c-i<<16>>16;l=d-l<<16>>16;b[a+(h<<1)>>1]=l+i;b[a+(k<<1)>>1]=i-l;k=q+n<<16>>16;l=r+o<<16>>16;b[a+(j<<1)>>1]=l+k;b[a+(m<<1)>>1]=k-l;q=n-q<<16>>16;r=o-r<<16>>16;b[a+(p<<1)>>1]=r+q;b[a+(s<<1)>>1]=q-r;e=e+1|0}while((e|0)!=8);hc=g;return}function Ei(a,b,c){a=a|0;b=b|0;c=c|0;Gi(a,16,b,c);return}function Fi(a,b,c){a=a|0;b=b|0;c=c|0;Gi(a,32,b,c);return}function Gi(a,c,d,f){a=a|0;c=c|0;d=d|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,v=0,w=0,x=0,y=0,z=0,A=0;w=hc;g=hc=hc+31&-32;hc=hc+2176|0;v=g+128|0;t=(c|0)>0;if(!t){hc=w;return}p=c>>>1;q=(c|0)==1;r=c>>>2;s=(c|0)>7;o=0;j=g;l=g+64|0;while(1){h=u(o,f)|0;if(!q){i=l;g=0;do{k=d+(g+h<<1)|0;n=g+p|0;m=d+(n+h<<1)|0;b[i+(g<<1)>>1]=(e[m>>1]|0)+(e[k>>1]|0);b[i+(n<<1)>>1]=(e[k>>1]|0)-(e[m>>1]|0);g=g+1|0}while(g>>>0<p>>>0)}a:do if(s){m=r;n=p;k=j;j=l;while(1){i=j;l=k;if((m|0)<=0)break a;h=0;do{g=0;do{A=g+h|0;z=i+(A<<1)|0;x=A+m|0;y=i+(x<<1)|0;b[l+(A<<1)>>1]=(e[y>>1]|0)+(e[z>>1]|0);b[l+(x<<1)>>1]=(e[z>>1]|0)-(e[y>>1]|0);g=g+1|0}while((g|0)!=(m|0));h=h+n|0}while((h|0)<(c|0));if((m|0)>3){A=j;m=m>>1;n=n>>1;j=k;k=A}else break}}else k=l;while(0);h=k;i=u(o,c)|0;g=0;do{y=h+(g<<1)|0;A=g|1;z=h+(A<<1)|0;b[v+(g+i<<1)>>1]=(e[z>>1]|0)+(e[y>>1]|0);b[v+(A+i<<1)>>1]=(e[y>>1]|0)-(e[z>>1]|0);g=g+2|0}while((g|0)<(c|0));o=o+1|0;if((o|0)==(c|0))break;else l=k}if(!t){hc=w;return}p=c>>>1;q=(c|0)==1;r=c>>>2;s=(c|0)>7;o=0;while(1){if(!q){h=k;g=0;do{y=v+((u(g,c)|0)+o<<1)|0;A=g+p|0;z=v+((u(A,c)|0)+o<<1)|0;b[h+(g<<1)>>1]=(e[z>>1]|0)+(e[y>>1]|0);b[h+(A<<1)>>1]=(e[y>>1]|0)-(e[z>>1]|0);g=g+1|0}while(g>>>0<p>>>0)}b:do if(s){m=r;n=p;i=j;j=k;while(1){k=j;l=i;if((m|0)<=0)break b;h=0;do{g=0;do{x=g+h|0;y=k+(x<<1)|0;A=x+m|0;z=k+(A<<1)|0;b[l+(x<<1)>>1]=(e[z>>1]|0)+(e[y>>1]|0);b[l+(A<<1)>>1]=(e[y>>1]|0)-(e[z>>1]|0);g=g+1|0}while((g|0)!=(m|0));h=h+n|0}while((h|0)<(c|0));if((m|0)>3){A=j;m=m>>1;n=n>>1;j=i;i=A}else break}}else i=k;while(0);h=i;g=0;do{y=h+(g<<1)|0;A=g|1;z=h+(A<<1)|0;b[a+((u(g,c)|0)+o<<1)>>1]=(e[z>>1]|0)+(e[y>>1]|0);b[a+((u(A,c)|0)+o<<1)>>1]=(e[y>>1]|0)-(e[z>>1]|0);g=g+2|0}while((g|0)<(c|0));o=o+1|0;if((o|0)==(c|0))break;else k=i}hc=w;return}function Hi(c,d,e,f){c=c|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=hc;r=hc=hc+31&-32;hc=hc+2048|0;if((d|0)>1){g=d;k=0;while(1)if(g>>>0>3){g=g>>>1;k=k+1|0}else break;g=d;h=0;while(1)if(g>>>0>3){g=g>>>1;h=h+1|0}else break;l=h+7|0;i=1<<k+-1;j=64<<h;g=d;h=0;while(1)if(g>>>0>3){g=g>>>1;h=h+1|0}else break;q=4-h|0;p=j;o=l}else{q=5;i=0;k=-1;p=32;o=6}m=(d|0)>0;if(!m){hc=s;return}g=0;do{l=0;do{n=l<<q;h=0;j=0;do{j=(u(b[e+((u(h,f)|0)+g<<1)>>1]|0,a[2704+(n<<5)+h>>0]|0)|0)+j|0;h=h+1|0}while((h|0)!=(d|0));b[r+((u(l,d)|0)+g<<1)>>1]=j+i>>k;l=l+1|0}while((l|0)!=(d|0));g=g+1|0}while((g|0)!=(d|0));if(!m){hc=s;return}j=0;do{l=u(j,d)|0;i=0;do{k=i<<q;g=0;h=0;do{h=(u(b[r+(g+l<<1)>>1]|0,a[2704+(k<<5)+g>>0]|0)|0)+h|0;g=g+1|0}while((g|0)!=(d|0));b[c+(i+l<<1)>>1]=h+p>>o;i=i+1|0}while((i|0)!=(d|0));j=j+1|0}while((j|0)!=(d|0));hc=s;return}function Ii(d,e,f,g,h){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,q=0,r=0,s=0,t=0,v=0;v=hc;t=hc=hc+31&-32;hc=hc+2048|0;if((e|0)>1){i=e;j=0;while(1)if(i>>>0>3){i=i>>>1;j=j+1|0}else break;r=4-j|0}else r=5;s=1<<g+-1;n=1<<h;o=n+65535|0;p=0-n|0;q=(e|0)>0;if(!q){hc=v;return}m=(h|0)==31?p&65535:0;l=0;do{j=e;while(1){i=j+-1|0;if(b[f+((u(i,e)|0)+l<<1)>>1]|0){i=j;break}if((j|0)>1)j=i;else break}if((i|0)>0){k=0;do{j=0;h=0;do{h=(u(b[f+((u(j,e)|0)+l<<1)>>1]|0,a[2704+(j<<r<<5)+k>>0]|0)|0)+h|0;j=j+1|0}while((j|0)!=(i|0));h=h+64>>7;b[t+((u(k,e)|0)+l<<1)>>1]=(h|0)<(p|0)?p:(h|0)<(n|0)?h:o;k=k+1|0}while((k|0)!=(e|0))}else{i=0;do{b[t+((u(i,e)|0)+l<<1)>>1]=m;i=i+1|0}while((i|0)!=(e|0))}l=l+1|0}while((l|0)!=(e|0));if(!q){hc=v;return}m=s>>g;l=0;do{n=u(l,e)|0;j=e;while(1){i=j+-1|0;if(b[t+(i+n<<1)>>1]|0){i=j;break}if((j|0)>1)j=i;else break}if((i|0)>0){k=0;do{j=0;h=0;do{h=(u(b[t+(j+n<<1)>>1]|0,a[2704+(j<<r<<5)+k>>0]|0)|0)+h|0;j=j+1|0}while((j|0)!=(i|0));c[d+(k+n<<2)>>2]=h+s>>g;k=k+1|0}while((k|0)!=(e|0))}else{i=0;do{c[d+(i+n<<2)>>2]=m;i=i+1|0}while((i|0)!=(e|0))}l=l+1|0}while((l|0)!=(e|0));hc=v;return}function Ji(c,d,f,g,h){c=c|0;d=d|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,v=0;v=hc;r=hc=hc+31&-32;hc=hc+2048|0;s=20-h|0;t=1<<s+-1;if((f|0)>1){i=f;j=0;while(1)if(i>>>0>3){i=i>>>1;j=j+1|0}else break;q=4-j|0}else q=5;n=(f|0)>0;if(!n){hc=v;return}m=0;do{j=f;while(1){i=j+-1|0;if(b[g+((u(i,f)|0)+m<<1)>>1]|0){i=j;break}if((j|0)>1)j=i;else break}if((i|0)>0){l=0;do{j=0;k=0;do{k=(u(b[g+((u(j,f)|0)+m<<1)>>1]|0,a[2704+(j<<q<<5)+l>>0]|0)|0)+k|0;j=j+1|0}while((j|0)!=(i|0));b[r+((u(l,f)|0)+m<<1)>>1]=(k|0)<-4194368?-32768:(k|0)>4194239?32767:(k+64|0)>>>7&65535;l=l+1|0}while((l|0)!=(f|0))}else{i=0;do{b[r+((u(i,f)|0)+m<<1)>>1]=0;i=i+1|0}while((i|0)!=(f|0))}m=m+1|0}while((m|0)!=(f|0));if(!n){hc=v;return}h=1<<h;o=h+65535|0;p=t>>s;g=0;do{n=u(g,f)|0;j=f;while(1){i=j+-1|0;if(b[r+(i+n<<1)>>1]|0){i=j;break}if((j|0)>1)j=i;else break}m=u(g,d)|0;if((i|0)>0){l=0;do{j=0;k=0;do{k=(u(b[r+(j+n<<1)>>1]|0,a[2704+(j<<q<<5)+l>>0]|0)|0)+k|0;j=j+1|0}while((j|0)!=(i|0));j=c+(l+m<<1)|0;k=(k+t>>s)+(e[j>>1]|0)|0;b[j>>1]=(k|0)<0?0:((k|0)<(h|0)?k:o)&65535;l=l+1|0}while((l|0)!=(f|0))}else{i=0;do{n=c+(i+m<<1)|0;l=p+(e[n>>1]|0)|0;b[n>>1]=(l|0)<0?0:((l|0)<(h|0)?l:o)&65535;i=i+1|0}while((i|0)!=(f|0))}g=g+1|0}while((g|0)!=(f|0));hc=v;return}function Ki(c,e,f,g,h){c=c|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,v=0;v=hc;r=hc=hc+31&-32;hc=hc+2048|0;s=20-h|0;t=1<<s+-1;if((f|0)>1){i=f;j=0;while(1)if(i>>>0>3){i=i>>>1;j=j+1|0}else break;q=4-j|0}else q=5;n=(f|0)>0;if(!n){hc=v;return}m=0;do{j=f;while(1){i=j+-1|0;if(b[g+((u(i,f)|0)+m<<1)>>1]|0){i=j;break}if((j|0)>1)j=i;else break}if((i|0)>0){l=0;do{j=0;k=0;do{k=(u(b[g+((u(j,f)|0)+m<<1)>>1]|0,a[2704+(j<<q<<5)+l>>0]|0)|0)+k|0;j=j+1|0}while((j|0)!=(i|0));b[r+((u(l,f)|0)+m<<1)>>1]=(k|0)<-4194368?-32768:(k|0)>4194239?32767:(k+64|0)>>>7&65535;l=l+1|0}while((l|0)!=(f|0))}else{i=0;do{b[r+((u(i,f)|0)+m<<1)>>1]=0;i=i+1|0}while((i|0)!=(f|0))}m=m+1|0}while((m|0)!=(f|0));if(!n){hc=v;return}h=1<<h;o=h+255|0;p=t>>s;g=0;do{n=u(g,f)|0;j=f;while(1){i=j+-1|0;if(b[r+(i+n<<1)>>1]|0){i=j;break}if((j|0)>1)j=i;else break}m=u(g,e)|0;if((i|0)>0){l=0;do{j=0;k=0;do{k=(u(b[r+(j+n<<1)>>1]|0,a[2704+(j<<q<<5)+l>>0]|0)|0)+k|0;j=j+1|0}while((j|0)!=(i|0));j=c+(l+m)|0;k=(k+t>>s)+(d[j>>0]|0)|0;a[j>>0]=(k|0)<0?0:((k|0)<(h|0)?k:o)&255;l=l+1|0}while((l|0)!=(f|0))}else{i=0;do{n=c+(i+m)|0;l=p+(d[n>>0]|0)|0;a[n>>0]=(l|0)<0?0:((l|0)<(h|0)?l:o)&255;i=i+1|0}while((i|0)!=(f|0))}g=g+1|0}while((g|0)!=(f|0));hc=v;return}function Li(a,d,f,g,h,i,j,k,l,m){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;n=c[3728+(k<<2)>>2]|0;w=c[3728+(l<<2)>>2]|0;x=(c[3744+(l<<2)>>2]|0)+i|0;y=x+w|0;v=m+-8|0;switch(k|0){case 0:{m=0-w|0;if((x|0)>(m|0)?(r=0-n|0,(h|0)>0):0)do{n=0;o=j+(m+w<<1)|0;p=f+((u(m,g)|0)<<1)+(r<<1)|0;while(1){b[o>>1]=b[p>>1]|0;n=n+1|0;if((n|0)==(h|0))break;else{o=o+(y<<1)|0;p=p+2|0}}m=m+1|0}while((m|0)!=(x|0));break}case 1:{m=0-w|0;if((x|0)>(m|0)?(s=0-n|0,(h|0)>0):0)do{n=0;o=j+(m+w<<1)|0;p=f+((u(m,g)|0)<<1)+(s<<1)|0;while(1){t=p;p=p+2|0;r=(e[p>>1]<<2)-(e[t>>1]|0)+(u(e[t+4>>1]|0,-10)|0)|0;r=r+((e[t+6>>1]|0)*58|0)+((e[t+8>>1]|0)*17|0)+(u(e[t+10>>1]|0,-5)|0)|0;b[o>>1]=r+(e[t+12>>1]|0)>>v;n=n+1|0;if((n|0)==(h|0))break;else o=o+(y<<1)|0}m=m+1|0}while((m|0)!=(x|0));break}case 2:{m=0-w|0;if((x|0)>(m|0)?(t=0-n|0,(h|0)>0):0)do{n=0;o=j+(m+w<<1)|0;p=f+((u(m,g)|0)<<1)+(t<<1)|0;while(1){s=p;p=p+2|0;b[o>>1]=(e[p>>1]<<2)-(e[s>>1]|0)+(((e[s+8>>1]|0)+(e[s+6>>1]|0)|0)*40|0)+(e[s+12>>1]<<2)-(e[s+14>>1]|0)+(u((e[s+10>>1]|0)+(e[s+4>>1]|0)|0,-11)|0)>>v;n=n+1|0;if((n|0)==(h|0))break;else o=o+(y<<1)|0}m=m+1|0}while((m|0)!=(x|0));break}case 3:{m=0-w|0;if((x|0)>(m|0)?(q=0-n|0,(h|0)>0):0)do{n=0;o=j+(m+w<<1)|0;p=f+((u(m,g)|0)<<1)+(q<<1)|0;while(1){t=p;p=p+2|0;s=(u(e[p>>1]|0,-5)|0)+(e[t>>1]|0)|0;s=s+((e[t+4>>1]|0)*17|0)+((e[t+6>>1]|0)*58|0)+(u(e[t+8>>1]|0,-10)|0)|0;b[o>>1]=s+(e[t+10>>1]<<2)-(e[t+12>>1]|0)>>v;n=n+1|0;if((n|0)==(h|0))break;else o=o+(y<<1)|0}m=m+1|0}while((m|0)!=(x|0));break}default:{}}q=(k|0)==0?v:6;switch(l|0){case 0:{if(!((h|0)>0&(i|0)>0))return;p=0;do{m=0;n=a+(p<<1)|0;o=j+((u(p,y)|0)<<1)|0;while(1){b[n>>1]=b[o>>1]|0;m=m+1|0;if((m|0)==(i|0))break;else{n=n+(d<<1)|0;o=o+2|0}}p=p+1|0}while((p|0)!=(h|0));return}case 1:{if(!((h|0)>0&(i|0)>0))return;p=0;do{m=0;n=a+(p<<1)|0;o=j+((u(p,y)|0)<<1)|0;while(1){l=o;o=o+2|0;k=(b[o>>1]<<2)-(b[l>>1]|0)+(u(b[l+4>>1]|0,-10)|0)|0;k=k+((b[l+6>>1]|0)*58|0)+((b[l+8>>1]|0)*17|0)+(u(b[l+10>>1]|0,-5)|0)|0;b[n>>1]=k+(b[l+12>>1]|0)>>q;m=m+1|0;if((m|0)==(i|0))break;else n=n+(d<<1)|0}p=p+1|0}while((p|0)!=(h|0));return}case 2:{if(!((h|0)>0&(i|0)>0))return;p=0;do{m=0;n=a+(p<<1)|0;o=j+((u(p,y)|0)<<1)|0;while(1){l=o;o=o+2|0;b[n>>1]=(b[o>>1]<<2)-(b[l>>1]|0)+(((b[l+8>>1]|0)+(b[l+6>>1]|0)|0)*40|0)+(b[l+12>>1]<<2)-(b[l+14>>1]|0)+(u((b[l+10>>1]|0)+(b[l+4>>1]|0)|0,-11)|0)>>q;m=m+1|0;if((m|0)==(i|0))break;else n=n+(d<<1)|0}p=p+1|0}while((p|0)!=(h|0));return}case 3:{if(!((h|0)>0&(i|0)>0))return;p=0;do{m=0;n=a+(p<<1)|0;o=j+((u(p,y)|0)<<1)|0;while(1){l=o;o=o+2|0;k=(u(b[o>>1]|0,-5)|0)+(b[l>>1]|0)|0;k=k+((b[l+4>>1]|0)*17|0)+((b[l+6>>1]|0)*58|0)+(u(b[l+8>>1]|0,-10)|0)|0;b[n>>1]=k+(b[l+10>>1]<<2)-(b[l+12>>1]|0)>>q;m=m+1|0;if((m|0)==(i|0))break;else n=n+(d<<1)|0}p=p+1|0}while((p|0)!=(h|0));return}default:return}}function Mi(a,e,f,g,h,i,j,k,l,m){a=a|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;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0;n=c[3728+(k<<2)>>2]|0;w=c[3728+(l<<2)>>2]|0;x=(c[3744+(l<<2)>>2]|0)+i|0;y=x+w|0;v=m+-8|0;switch(k|0){case 0:{m=0-w|0;if((x|0)>(m|0)?(r=0-n|0,(h|0)>0):0)do{n=0;o=j+(m+w<<1)|0;p=f+(u(m,g)|0)+r|0;while(1){b[o>>1]=d[p>>0]|0;n=n+1|0;if((n|0)==(h|0))break;else{o=o+(y<<1)|0;p=p+1|0}}m=m+1|0}while((m|0)!=(x|0));break}case 1:{m=0-w|0;if((x|0)>(m|0)?(s=0-n|0,(h|0)>0):0)do{n=0;o=j+(m+w<<1)|0;p=f+(u(m,g)|0)+s|0;while(1){t=p;p=p+1|0;r=(d[p>>0]<<2)-(d[t>>0]|0)+(u(d[t+2>>0]|0,-10)|0)|0;r=r+((d[t+3>>0]|0)*58|0)+((d[t+4>>0]|0)*17|0)+(u(d[t+5>>0]|0,-5)|0)|0;b[o>>1]=r+(d[t+6>>0]|0)>>v;n=n+1|0;if((n|0)==(h|0))break;else o=o+(y<<1)|0}m=m+1|0}while((m|0)!=(x|0));break}case 2:{m=0-w|0;if((x|0)>(m|0)?(t=0-n|0,(h|0)>0):0)do{n=0;o=j+(m+w<<1)|0;p=f+(u(m,g)|0)+t|0;while(1){s=p;p=p+1|0;b[o>>1]=(d[p>>0]<<2)-(d[s>>0]|0)+(((d[s+4>>0]|0)+(d[s+3>>0]|0)|0)*40|0)+(d[s+6>>0]<<2)-(d[s+7>>0]|0)+(u((d[s+5>>0]|0)+(d[s+2>>0]|0)|0,-11)|0)>>v;n=n+1|0;if((n|0)==(h|0))break;else o=o+(y<<1)|0}m=m+1|0}while((m|0)!=(x|0));break}case 3:{m=0-w|0;if((x|0)>(m|0)?(q=0-n|0,(h|0)>0):0)do{n=0;o=j+(m+w<<1)|0;p=f+(u(m,g)|0)+q|0;while(1){t=p;p=p+1|0;s=(u(d[p>>0]|0,-5)|0)+(d[t>>0]|0)|0;s=s+((d[t+2>>0]|0)*17|0)+((d[t+3>>0]|0)*58|0)+(u(d[t+4>>0]|0,-10)|0)|0;b[o>>1]=s+(d[t+5>>0]<<2)-(d[t+6>>0]|0)>>v;n=n+1|0;if((n|0)==(h|0))break;else o=o+(y<<1)|0}m=m+1|0}while((m|0)!=(x|0));break}default:{}}q=(k|0)==0?v:6;switch(l|0){case 0:{if(!((h|0)>0&(i|0)>0))return;p=0;do{m=0;n=a+(p<<1)|0;o=j+((u(p,y)|0)<<1)|0;while(1){b[n>>1]=b[o>>1]|0;m=m+1|0;if((m|0)==(i|0))break;else{n=n+(e<<1)|0;o=o+2|0}}p=p+1|0}while((p|0)!=(h|0));return}case 1:{if(!((h|0)>0&(i|0)>0))return;p=0;do{m=0;n=a+(p<<1)|0;o=j+((u(p,y)|0)<<1)|0;while(1){l=o;o=o+2|0;k=(b[o>>1]<<2)-(b[l>>1]|0)+(u(b[l+4>>1]|0,-10)|0)|0;k=k+((b[l+6>>1]|0)*58|0)+((b[l+8>>1]|0)*17|0)+(u(b[l+10>>1]|0,-5)|0)|0;b[n>>1]=k+(b[l+12>>1]|0)>>q;m=m+1|0;if((m|0)==(i|0))break;else n=n+(e<<1)|0}p=p+1|0}while((p|0)!=(h|0));return}case 2:{if(!((h|0)>0&(i|0)>0))return;p=0;do{m=0;n=a+(p<<1)|0;o=j+((u(p,y)|0)<<1)|0;while(1){l=o;o=o+2|0;b[n>>1]=(b[o>>1]<<2)-(b[l>>1]|0)+(((b[l+8>>1]|0)+(b[l+6>>1]|0)|0)*40|0)+(b[l+12>>1]<<2)-(b[l+14>>1]|0)+(u((b[l+10>>1]|0)+(b[l+4>>1]|0)|0,-11)|0)>>q;m=m+1|0;if((m|0)==(i|0))break;else n=n+(e<<1)|0}p=p+1|0}while((p|0)!=(h|0));return}case 3:{if(!((h|0)>0&(i|0)>0))return;p=0;do{m=0;n=a+(p<<1)|0;o=j+((u(p,y)|0)<<1)|0;while(1){l=o;o=o+2|0;k=(u(b[o>>1]|0,-5)|0)+(b[l>>1]|0)|0;k=k+((b[l+4>>1]|0)*17|0)+((b[l+6>>1]|0)*58|0)+(u(b[l+8>>1]|0,-10)|0)|0;b[n>>1]=k+(b[l+10>>1]<<2)-(b[l+12>>1]|0)>>q;m=m+1|0;if((m|0)==(i|0))break;else n=n+(e<<1)|0}p=p+1|0}while((p|0)!=(h|0));return}default:return}}function Ni(a){a=a|0;return}function Oi(a){a=a|0;ab()}function Pi(a){a=a|0;Qi(a);if(a|0)wc[c[(c[a>>2]|0)+4>>2]&255](a);a=c[24497]|0;c[24497]=a-1;if((a|0)<1){c[24497]=(c[24497]|0)+1;a=12;return a|0}if((a|0)!=1){a=0;return a|0}$g();a=0;return a|0}function Qi(a){a=a|0;if((c[a+1888>>2]|0)<=0)return;Ri(a+1392|0);return}function Ri(b){b=b|0;var d=0,e=0,f=0,g=0;e=b+420|0;Do(e)|0;a[b>>0]=1;Eo(e)|0;f=b+448|0;iB(f|0)|0;g=b+156|0;if((c[g>>2]|0)<=0){Fo(e)|0;bb(f|0)|0;return}d=0;do{fb(c[b+28+(d<<2)>>2]|0,0)|0;d=d+1|0}while((d|0)<(c[g>>2]|0));Fo(e)|0;bb(f|0)|0;return}function Si(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;l=hc;j=hc=hc+31&-32;hc=hc+16|0;f=b+548|0;g=b+580|0;h=(c[g>>2]|0)==0;i=a[f>>0]|0;do if(h){if(i<<24>>24==0?(a[b+549>>0]|0)==0:0){k=8;break}if((c[b+3212>>2]|0)==(c[b+3216>>2]|0)){Ti(b+2144|0)|0;if(!d){k=0;hc=l;return k|0}c[d>>2]=c[b+2196>>2];k=0;hc=l;return k|0}else k=7}else k=7;while(0);if((k|0)==7?i<<24>>24==0:0)k=8;if((k|0)==8?!((a[b+549>>0]|0)!=0|h^1):0){if(!d){k=13;hc=l;return k|0}c[d>>2]=1;k=13;hc=l;return k|0}if(!(Ui(b+2144|0,0)|0)){if(!d){k=9;hc=l;return k|0}c[d>>2]=1;k=9;hc=l;return k|0}a[j>>0]=0;do if(c[g>>2]|0){f=Vi(f)|0;if(!f)M(60311,60315,1317,60327);else{e=Wi(b,f)|0;a[j>>0]=1;k=23;break}}else{if(a[b+549>>0]|0?(c[b+3212>>2]|0)==(c[b+3216>>2]|0):0){if(!d){e=13;break}c[d>>2]=1;e=13;break}e=Xi(b,j)|0;k=23}while(0);if((k|0)==23)if(d)c[d>>2]=(e|0)==0&(a[j>>0]&1)!=0&1;k=e;hc=l;return k|0}function Ti(a){a=a|0;var b=0,d=0;b=a+20|0;d=a+24|0;if((c[b>>2]|0)==(c[d>>2]|0)){d=0;return d|0}do ej(a);while((c[b>>2]|0)!=(c[d>>2]|0));a=1;return a|0}function Ui(b,d){b=b|0;d=d|0;var e=0,f=0;if(d){f=1;return f|0}e=c[b+8>>2]|0;d=(c[b+12>>2]|0)-e|0;f=d>>2;if(f>>>0<(c[b>>2]|0)>>>0){f=1;return f|0}if(!d){f=0;return f|0}d=0;while(1){b=c[e+(d<<2)>>2]|0;if((a[b+104>>0]|0)==0?(c[b+100>>2]|0)==0:0){d=1;b=8;break}d=d+1|0;if(d>>>0>=f>>>0){d=0;b=8;break}}if((b|0)==8)return d|0;return 0}function Vi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;b=a+32|0;e=c[b>>2]|0;if(!e){h=0;return h|0}f=a+16|0;g=c[f>>2]|0;h=a+28|0;i=c[h>>2]|0;d=c[(c[g+(i>>>10<<2)>>2]|0)+((i&1023)<<2)>>2]|0;c[b>>2]=e+-1;e=i+1|0;c[h>>2]=e;if(e>>>0>2047){nz(c[g>>2]|0);c[f>>2]=(c[f>>2]|0)+4;c[h>>2]=(c[h>>2]|0)+-1024}i=a+36|0;c[i>>2]=(c[i>>2]|0)-(c[d+24>>2]|0);i=d;return i|0}function Wi(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=hc;h=hc=hc+31&-32;hc=hc+112|0;j=h+24|0;i=h;h=h+104|0;Ug(i,c[e+20>>2]|0,c[e+24>>2]|0);a[h>>0]=0;k=h+1|0;a[k>>0]=0;f=h+2|0;a[f>>0]=0;Gj(h,i);g=a[h>>0]|0;a[b+3208>>0]=g;a[b+3209>>0]=(g+-19&255)<2&1;a[b+3210>>0]=(g&-8)<<24>>24==16&1;if(a[k>>0]|0){gf(b+548|0,e);e=0;hc=l;return e|0}if((c[b+1908>>2]|0)<(d[f>>0]|0)){gf(b+548|0,e);e=0;hc=l;return e|0}if((g&255)<32){e=Hj(b,i,e,h)|0;hc=l;return e|0}switch(g<<24>>24){case 32:{k=Ij(b,i)|0;gf(b+548|0,e);e=k;hc=l;return e|0}case 33:{k=Jj(b,i)|0;gf(b+548|0,e);e=k;hc=l;return e|0}case 34:{k=Kj(b,i)|0;gf(b+548|0,e);e=k;hc=l;return e|0}case 40:case 39:{g=g<<24>>24==40;k=Lj(i,j,g,c[b+1376>>2]|0)|0;do if(!k){f=c[b+3216>>2]|0;if(!((c[b+3212>>2]|0)==(f|0)|g^1)){f=c[f+-4>>2]|0;i=f+456|0;g=c[i>>2]|0;if((g|0)==(c[f+460>>2]|0)){Nj(f+452|0,j);break}else{f=j;h=g+80|0;do{c[g>>2]=c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(h|0));c[i>>2]=(c[i>>2]|0)+80;break}}}else{f=b+84|0;g=c[f>>2]|0;if((g|0)==20){c[b+80>>2]=1001;break}else{c[f>>2]=g+1;c[b+4+(g<<2)>>2]=k;break}}while(0);gf(b+548|0,e);e=k;hc=l;return e|0}case 36:{a[b+2207>>0]=1;gf(b+548|0,e);e=0;hc=l;return e|0}default:{gf(b+548|0,e);e=0;hc=l;return e|0}}return 0}function Xi(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;q=hc;n=hc=hc+31&-32;hc=hc+16|0;a[d>>0]=0;o=b+3212|0;f=c[o>>2]|0;p=b+3216|0;l=c[p>>2]|0;g=l;e=f;if((f|0)==(l|0)){p=0;hc=q;return p|0}k=c[f>>2]|0;h=c[k+444>>2]|0;i=c[k+440>>2]|0;l=i;a:do if((h|0)!=(i|0)){i=h-i>>2;h=0;while(1){j=c[l+(h<<2)>>2]|0;h=h+1|0;if(!(c[j+40>>2]|0))break;if(h>>>0>=i>>>0)break a}if(j){if(a[j+36>>0]|0)Ti(b+2144|0)|0;a[d>>0]=1;e=Yi(b,k,j)|0;if(!e){f=c[o>>2]|0;g=c[p>>2]|0;e=f;break}else{p=e;hc=q;return p|0}}}while(0);e=g-e|0;if(e>>2>>>0>1){k=c[f>>2]|0;l=c[k+444>>2]|0;if((l|0)!=(c[k+440>>2]|0)?(c[(c[l+-4>>2]|0)+40>>2]|0)==0:0)m=14}else m=14;if((m|0)==14){if(!e){p=0;hc=q;return p|0}l=c[f>>2]|0;m=c[l+444>>2]|0;if((m|0)!=(c[l+440>>2]|0)?(c[(c[m+-4>>2]|0)+40>>2]|0)==0:0){p=0;hc=q;return p|0}if((c[b+580>>2]|0)!=(((c[b+556>>2]|0)!=0)<<31>>31|0)){p=0;hc=q;return p|0}if((a[b+548>>0]|0)==0?(a[b+549>>0]|0)==0:0){p=0;hc=q;return p|0}}i=c[f>>2]|0;a[d>>0]=1;e=c[i>>2]|0;g=e+148|0;if((c[g>>2]|0)>0){f=e+332|0;e=0;do{ze((c[f>>2]|0)+(e*80|0)|0,1);e=e+1|0}while((e|0)<(c[g>>2]|0));h=c[i>>2]|0}else h=e;g=h+112|0;e=c[g>>2]|0;f=(a[e+532>>0]|0)==0;if(!(c[(c[(c[b+2220>>2]|0)+112>>2]|0)+1888>>2]|0)){if(f){aj(h);e=c[g>>2]|0}if(!(a[e+533>>0]|0))bj(h)}else{if(f){Zi(i);f=3;e=c[g>>2]|0}else f=1;if(!(a[e+533>>0]|0))_i(i,f)|0;$i(h)}g=i+452|0;h=i+456|0;e=c[g>>2]|0;b:do if((c[h>>2]|0)==(e|0))h=0;else{f=0;while(1){e=cj(e+(f*80|0)|0,c[i>>2]|0)|0;f=f+1|0;if(e|0){h=e;break b}e=c[g>>2]|0;if(f>>>0>=(((c[h>>2]|0)-e|0)/80|0)>>>0){h=0;break}}}while(0);e=c[i>>2]|0;if(e|0){do if(a[e+104>>0]|0){if(a[e+324>>0]|0?a[b+514>>0]|0:0)break;c[n>>2]=e;f=b+2168|0;g=c[f>>2]|0;if((g|0)==(c[b+2172>>2]|0))dj(b+2164|0,n);else{c[g>>2]=e;c[f>>2]=(c[f>>2]|0)+4}}while(0);e=c[e+120>>2]|0;if(!e)e=0;else e=c[e+488+(((c[e+8>>2]|0)+-1|0)*12|0)+4>>2]|0;if(((c[b+2168>>2]|0)-(c[b+2164>>2]|0)>>2|0)>(e|0))ej(b+2144|0)}Ne(i);nz(i);e=c[p>>2]|0;f=c[o>>2]|0;if(e-f>>2>>>0>1){g=1;do{e=f;c[e+(g+-1<<2)>>2]=c[e+(g<<2)>>2];g=g+1|0;e=c[p>>2]|0;f=c[o>>2]|0}while(g>>>0<e-f>>2>>>0)}c[p>>2]=e+-4;p=h;hc=q;return p|0}function Yi(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,r=0,s=0,t=0,u=0,v=0;v=e+4|0;l=c[v>>2]|0;k=l+1348|0;l=l+1352|0;g=c[k>>2]|0;if((c[l>>2]|0)!=(g|0)){i=b+2144|0;j=b+2152|0;h=0;do{g=vj(i,c[g+(h<<2)>>2]|0)|0;if((g|0)>-1)c[(c[(c[j>>2]|0)+(g<<2)>>2]|0)+100>>2]=0;h=h+1|0;g=c[k>>2]|0}while(h>>>0<(c[l>>2]|0)-g>>2>>>0)}k=c[d>>2]|0;p=c[k+136>>2]|0;s=e+40|0;c[s>>2]=1;j=c[k+112>>2]|0;i=(c[j+1888>>2]|0)>0;q=a[p+41>>0]|0;l=i&q<<24>>24!=0;p=a[p+42>>0]|0;o=p<<24>>24!=0;r=i&o;a:do if(i&(p|q)<<24>>24==0){h=j+168|0;i=c[h>>2]|0;if((i|0)>0){g=0;do{if((c[j+88+(g<<2)>>2]|0)==1e3)break a;g=g+1|0}while((g|0)<(i|0));if((i|0)<20)u=12}else u=12;if((u|0)==12){c[h>>2]=i+1;c[j+88+(i<<2)>>2]=1e3}g=j+84|0;h=c[g>>2]|0;if((h|0)==20){c[j+80>>2]=1001;break}else{c[g>>2]=h+1;c[j+4+(h<<2)>>2]=1e3;break}}while(0);p=d+440|0;q=d+444|0;i=c[q>>2]|0;h=c[p>>2]|0;if((i|0)!=(h|0))if((c[h>>2]|0)==(e|0)?(m=c[(c[v>>2]|0)+20>>2]|0,(m|0)>0):0){h=k+332|0;g=0;do{ze((c[h>>2]|0)+(g*80|0)|0,1);g=g+1|0}while((g|0)!=(m|0));g=c[q>>2]|0;h=c[p>>2]|0}else g=i;else{g=i;h=i}i=g-h|0;j=i>>2;b:do if(j>>>0>1){g=1;while(1){if((c[h+(g<<2)>>2]|0)==(e|0))break;g=g+1|0;if(g>>>0>=j>>>0)break b}k=c[h+(g+-1<<2)>>2]|0;if(k|0?!((i|0)==4?1:(c[k+40>>2]|0)!=2):0){i=j+-1|0;g=0;while(1){m=g;g=g+1|0;if((c[h+(m<<2)>>2]|0)==(k|0))break;if(g>>>0>=i>>>0)break b}g=c[h+(g<<2)>>2]|0;if(g|0?(f=c[(c[k+4>>2]|0)+20>>2]|0,n=g+4|0,(f|0)<(c[(c[n>>2]|0)+20>>2]|0)):0)do{g=c[d>>2]|0;if((f|0)>=(c[g+148>>2]|0))break b;ze((c[g+332>>2]|0)+(f*80|0)|0,1);f=f+1|0}while((f|0)<(c[(c[n>>2]|0)+20>>2]|0))}}while(0);if(!(l|r)){i=wj(b,d,e)|0;c[s>>2]=2;h=c[p>>2]|0;f=(c[q>>2]|0)-h|0;if((f|0)==4){d=i;return d|0}g=(f>>2)+-1|0;f=0;while(1){n=f;f=f+1|0;if((c[h+(n<<2)>>2]|0)==(e|0))break;if(f>>>0>=g>>>0){t=i;u=68;break}}if((u|0)==68)return t|0;f=c[h+(f<<2)>>2]|0;if(!f){d=i;return d|0}g=c[(c[v>>2]|0)+20>>2]|0;h=f+4|0;if((g|0)>=(c[(c[h>>2]|0)+20>>2]|0)){d=i;return d|0}f=g;while(1){g=c[d>>2]|0;if((f|0)>=(c[g+148>>2]|0)){t=i;u=68;break}ze((c[g+332>>2]|0)+(f*80|0)|0,1);f=f+1|0;if((f|0)>=(c[(c[h>>2]|0)+20>>2]|0)){t=i;u=68;break}}if((u|0)==68)return t|0}if(l&o){d=1006;return d|0}if(l){xj(b,d,e)|0;c[s>>2]=2;h=c[p>>2]|0;f=(c[q>>2]|0)-h|0;if((f|0)==4){d=0;return d|0}g=(f>>2)+-1|0;f=0;while(1){o=f;f=f+1|0;if((c[h+(o<<2)>>2]|0)==(e|0))break;if(f>>>0>=g>>>0){t=0;u=68;break}}if((u|0)==68)return t|0;f=c[h+(f<<2)>>2]|0;if(!f){d=0;return d|0}g=c[(c[v>>2]|0)+20>>2]|0;h=f+4|0;if((g|0)>=(c[(c[h>>2]|0)+20>>2]|0)){d=0;return d|0}f=g;while(1){g=c[d>>2]|0;if((f|0)>=(c[g+148>>2]|0)){t=0;u=68;break}ze((c[g+332>>2]|0)+(f*80|0)|0,1);f=f+1|0;if((f|0)>=(c[(c[h>>2]|0)+20>>2]|0)){t=0;u=68;break}}if((u|0)==68)return t|0}if(!r)M(76276,60315,974,60518);i=yj(b,d,e)|0;c[s>>2]=2;h=c[p>>2]|0;f=(c[q>>2]|0)-h|0;if((f|0)==4){d=i;return d|0}g=(f>>2)+-1|0;f=0;while(1){b=f;f=f+1|0;if((c[h+(b<<2)>>2]|0)==(e|0))break;if(f>>>0>=g>>>0){t=i;u=68;break}}if((u|0)==68)return t|0;g=c[h+(f<<2)>>2]|0;if(!g){d=i;return d|0}f=c[(c[v>>2]|0)+20>>2]|0;h=g+4|0;if((f|0)>=(c[(c[h>>2]|0)+20>>2]|0)){d=i;return d|0}while(1){g=c[d>>2]|0;if((f|0)>=(c[g+148>>2]|0)){t=i;u=68;break}ze((c[g+332>>2]|0)+(f*80|0)|0,1);f=f+1|0;if((f|0)>=(c[(c[h>>2]|0)+20>>2]|0)){t=i;u=68;break}}if((u|0)==68)return t|0;return 0}function Zi(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;m=hc;h=hc=hc+31&-32;hc=hc+16|0;k=c[b>>2]|0;g=c[k+112>>2]|0;l=k+128|0;oj(k,c[(c[l>>2]|0)+5064>>2]<<1);i=b+476|0;j=b+480|0;f=b+472|0;g=g+1392|0;if((c[(c[l>>2]|0)+5064>>2]|0)<=0){hc=m;return}e=0;do{b=lz(20)|0;c[b+4>>2]=0;c[b>>2]=12168;c[b+8>>2]=k;c[b+12>>2]=e;a[b+16>>0]=1;c[h>>2]=b;d=c[i>>2]|0;if((d|0)==(c[j>>2]|0))qj(f,h);else{c[d>>2]=b;c[i>>2]=(c[i>>2]|0)+4}rj(g,b);e=e+1|0;b=c[(c[l>>2]|0)+5064>>2]|0}while((e|0)<(b|0));if((b|0)<=0){hc=m;return}b=0;do{d=lz(20)|0;c[d+4>>2]=0;c[d>>2]=12168;c[d+8>>2]=k;c[d+12>>2]=b;a[d+16>>0]=0;c[h>>2]=d;e=c[i>>2]|0;if((e|0)==(c[j>>2]|0))qj(f,h);else{c[e>>2]=d;c[i>>2]=(c[i>>2]|0)+4}rj(g,d);b=b+1|0}while((b|0)<(c[(c[l>>2]|0)+5064>>2]|0));hc=m;return}function _i(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;q=hc;o=hc=hc+31&-32;hc=hc+16|0;i=o+8|0;p=c[b>>2]|0;l=c[p+128>>2]|0;if(!(a[l+4703>>0]|0)){p=0;hc=q;return p|0}k=p+112|0;m=c[k>>2]|0;n=b+8|0;f=c[p+24>>2]|0;g=c[p+28>>2]|0;h=c[p+20>>2]|0;c[i>>2]=l;j=i+4|0;e=c[p+132>>2]|0;c[j>>2]=e;if(!e)e=m;else{e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[k>>2]|0}r=p+288|0;f=Pg(n,f,g,h,i,0,e,c[p+116>>2]|0,c[r>>2]|0,c[r+4>>2]|0,c[p+296>>2]|0,1)|0;e=c[j>>2]|0;if(e|0?(j=e+4|0,r=c[j>>2]|0,c[j>>2]=r+-1,(r|0)==0):0){wc[c[(c[e>>2]|0)+8>>2]&255](e);iz(e)}if(f|0){De((c[k>>2]|0)+4|0,1024,0);r=0;hc=q;return r|0}j=c[l+5064>>2]|0;oj(p,j);if((j|0)>0){k=b+476|0;l=b+480|0;i=b+472|0;f=m+1392|0;e=0;do{g=lz(28)|0;c[g+4>>2]=0;c[g>>2]=12224;c[g+16>>2]=p;c[g+20>>2]=n;c[g+12>>2]=p;c[g+8>>2]=e;c[g+24>>2]=d;c[o>>2]=g;h=c[k>>2]|0;if((h|0)==(c[l>>2]|0))qj(i,o);else{c[h>>2]=g;c[k>>2]=(c[k>>2]|0)+4}rj(f,g);e=e+1|0}while((e|0)!=(j|0))}$i(p);pj(p,n);r=1;hc=q;return r|0}function $i(a){a=a|0;var b=0,d=0,e=0;b=a+356|0;Ae(b);d=a+348|0;e=a+352|0;if((c[d>>2]|0)==(c[e>>2]|0)){Ce(b);return}a=a+384|0;do nj(a,b);while((c[d>>2]|0)!=(c[e>>2]|0));Ce(b);return}function aj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=a+128|0;if((c[(c[g>>2]|0)+5064>>2]|0)<=0)return;b=0;d=0;do{b=b|(se(a,d)|0);d=d+1|0}while((d|0)<(c[(c[g>>2]|0)+5064>>2]|0));if(!b)return;f=a+280|0;h=a+276|0;te(a,1,0,c[f>>2]|0,0,c[h>>2]|0);b=c[f>>2]|0;d=c[h>>2]|0;if((c[(c[g>>2]|0)+4996>>2]|0)>8)ue(a,1,0,b,0,d);else ve(a,1,0,b,0,d);b=c[g>>2]|0;do if(c[b+5012>>2]|0){d=c[f>>2]|0;e=c[h>>2]|0;if((c[b+5004>>2]|0)>8){we(a,1,0,d,0,e);break}else{xe(a,1,0,d,0,e);break}}while(0);te(a,0,0,c[f>>2]|0,0,c[h>>2]|0);b=c[f>>2]|0;d=c[h>>2]|0;if((c[(c[g>>2]|0)+4996>>2]|0)>8)ue(a,0,0,b,0,d);else ve(a,0,0,b,0,d);e=c[g>>2]|0;if(!(c[e+5012>>2]|0))return;d=c[f>>2]|0;b=c[h>>2]|0;if((c[e+5004>>2]|0)>8){we(a,0,0,d,0,b);return}else{xe(a,0,0,d,0,b);return}}
function Ul(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;d=hc;e=hc=hc+31&-32;hc=hc+144|0;n=(c[a>>2]|0)+2048>>12;l=(c[a+4>>2]|0)+2048>>12;j=u(l,-3784)|0;h=(c[a+8>>2]|0)+2048>>12;i=j+(n*2493|0)+(u(h,-535)|0)|0;g=(c[a+12>>2]|0)+2048>>12;k=(c[a+16>>2]|0)+2048>>12;f=u(k,-1567)|0;m=(c[a+20>>2]|0)+2048>>12;i=i+(g*4061|0)+f+(u(m,-3250)|0)|0;c[e>>2]=i;c[e+20>>2]=0-i;i=(l*1567|0)+(u(n,-3250)|0)+(h*4061|0)+(g*535|0)+(u(k,-3784)|0)+(u(m,-2493)|0)|0;c[e+24>>2]=i;c[e+44>>2]=i;i=j+(n*1567|0)+(h*3784|0)+(u(g,-1567)|0)+f+(m*3784|0)|0;c[e+4>>2]=i;c[e+16>>2]=0-i;l=u(l,-1567)|0;k=k*3784|0;i=l+(u(n,-3784)|0)+(h*1567|0)+(g*3784|0)+k+(m*1567|0)|0;c[e+28>>2]=i;c[e+40>>2]=i;k=l+(n*535|0)+(h*2493|0)+(u(g,-3250)|0)+k+(u(m,-4061)|0)|0;c[e+8>>2]=k;c[e+12>>2]=0-k;m=j+(u(n,-4061)|0)+(u(h,-3250)|0)+(u(g,-2493)|0)+f+(u(m,-535)|0)|0;c[e+32>>2]=m;c[e+36>>2]=m;m=(c[a+24>>2]|0)+2048>>12;f=(c[a+28>>2]|0)+2048>>12;g=u(f,-3784)|0;h=(c[a+32>>2]|0)+2048>>12;n=g+(m*2493|0)+(u(h,-535)|0)|0;j=(c[a+36>>2]|0)+2048>>12;k=(c[a+40>>2]|0)+2048>>12;l=u(k,-1567)|0;i=(c[a+44>>2]|0)+2048>>12;n=n+(j*4061|0)+l+(u(i,-3250)|0)|0;c[e+48>>2]=n;c[e+68>>2]=0-n;n=(f*1567|0)+(u(m,-3250)|0)+(h*4061|0)+(j*535|0)+(u(k,-3784)|0)+(u(i,-2493)|0)|0;c[e+72>>2]=n;c[e+92>>2]=n;n=g+(m*1567|0)+(h*3784|0)+(u(j,-1567)|0)+l+(i*3784|0)|0;c[e+52>>2]=n;c[e+64>>2]=0-n;f=u(f,-1567)|0;k=k*3784|0;n=f+(u(m,-3784)|0)+(h*1567|0)+(j*3784|0)+k+(i*1567|0)|0;c[e+76>>2]=n;c[e+88>>2]=n;k=f+(m*535|0)+(h*2493|0)+(u(j,-3250)|0)+k+(u(i,-4061)|0)|0;c[e+56>>2]=k;c[e+60>>2]=0-k;i=g+(u(m,-4061)|0)+(u(h,-3250)|0)+(u(j,-2493)|0)+l+(u(i,-535)|0)|0;c[e+80>>2]=i;c[e+84>>2]=i;i=(c[a+48>>2]|0)+2048>>12;l=(c[a+52>>2]|0)+2048>>12;j=u(l,-3784)|0;h=(c[a+56>>2]|0)+2048>>12;m=j+(i*2493|0)+(u(h,-535)|0)|0;g=(c[a+60>>2]|0)+2048>>12;k=(c[a+64>>2]|0)+2048>>12;f=u(k,-1567)|0;a=(c[a+68>>2]|0)+2048>>12;m=m+(g*4061|0)+f+(u(a,-3250)|0)|0;c[e+96>>2]=m;c[e+116>>2]=0-m;m=(l*1567|0)+(u(i,-3250)|0)+(h*4061|0)+(g*535|0)+(u(k,-3784)|0)+(u(a,-2493)|0)|0;c[e+120>>2]=m;c[e+140>>2]=m;m=j+(i*1567|0)+(h*3784|0)+(u(g,-1567)|0)+f+(a*3784|0)|0;c[e+100>>2]=m;c[e+112>>2]=0-m;l=u(l,-1567)|0;k=k*3784|0;m=l+(u(i,-3784)|0)+(h*1567|0)+(g*3784|0)+k+(a*1567|0)|0;c[e+124>>2]=m;c[e+136>>2]=m;k=l+(i*535|0)+(h*2493|0)+(u(g,-3250)|0)+k+(u(a,-4061)|0)|0;c[e+104>>2]=k;c[e+108>>2]=0-k;a=j+(u(i,-4061)|0)+(u(h,-3250)|0)+(u(g,-2493)|0)+f+(u(a,-535)|0)|0;c[e+128>>2]=a;c[e+132>>2]=a;c[b>>2]=0;c[b+24>>2]=((c[e>>2]|0)+2048>>12)*535;c[b+48>>2]=(((c[e+48>>2]|0)+2048>>12)*535|0)+(((c[e+24>>2]|0)+2048>>12)*4061|0);c[b+72>>2]=(((c[e+96>>2]|0)+2048>>12)*535|0)+(((c[e+72>>2]|0)+2048>>12)*4061|0);c[b+96>>2]=((c[e+120>>2]|0)+2048>>12)*4061;c[b+120>>2]=0;c[b+4>>2]=0;c[b+28>>2]=((c[e+4>>2]|0)+2048>>12)*1567;c[b+52>>2]=(((c[e+52>>2]|0)+2048>>12)*1567|0)+(((c[e+28>>2]|0)+2048>>12)*3784|0);c[b+76>>2]=(((c[e+100>>2]|0)+2048>>12)*1567|0)+(((c[e+76>>2]|0)+2048>>12)*3784|0);c[b+100>>2]=((c[e+124>>2]|0)+2048>>12)*3784;c[b+124>>2]=0;c[b+8>>2]=0;c[b+32>>2]=((c[e+8>>2]|0)+2048>>12)*2493;c[b+56>>2]=(((c[e+56>>2]|0)+2048>>12)*2493|0)+(((c[e+32>>2]|0)+2048>>12)*3250|0);c[b+80>>2]=(((c[e+104>>2]|0)+2048>>12)*2493|0)+(((c[e+80>>2]|0)+2048>>12)*3250|0);c[b+104>>2]=((c[e+128>>2]|0)+2048>>12)*3250;c[b+128>>2]=0;c[b+12>>2]=0;c[b+36>>2]=((c[e+12>>2]|0)+2048>>12)*3250;c[b+60>>2]=(((c[e+60>>2]|0)+2048>>12)*3250|0)+(((c[e+36>>2]|0)+2048>>12)*2493|0);c[b+84>>2]=(((c[e+108>>2]|0)+2048>>12)*3250|0)+(((c[e+84>>2]|0)+2048>>12)*2493|0);c[b+108>>2]=((c[e+132>>2]|0)+2048>>12)*2493;c[b+132>>2]=0;c[b+16>>2]=0;c[b+40>>2]=((c[e+16>>2]|0)+2048>>12)*3784;c[b+64>>2]=(((c[e+64>>2]|0)+2048>>12)*3784|0)+(((c[e+40>>2]|0)+2048>>12)*1567|0);c[b+88>>2]=(((c[e+112>>2]|0)+2048>>12)*3784|0)+(((c[e+88>>2]|0)+2048>>12)*1567|0);c[b+112>>2]=((c[e+136>>2]|0)+2048>>12)*1567;c[b+136>>2]=0;c[b+20>>2]=0;c[b+44>>2]=((c[e+20>>2]|0)+2048>>12)*4061;c[b+68>>2]=(((c[e+68>>2]|0)+2048>>12)*4061|0)+(((c[e+44>>2]|0)+2048>>12)*535|0);c[b+92>>2]=(((c[e+116>>2]|0)+2048>>12)*4061|0)+(((c[e+92>>2]|0)+2048>>12)*535|0);c[b+116>>2]=((c[e+140>>2]|0)+2048>>12)*535;c[b+140>>2]=0;hc=d;return}function Vl(b){b=b|0;var e=0,f=0,g=0,h=0;h=b+28|0;e=Dl(h)|0;g=c[b+4>>2]|0;f=g+-1|0;a:do if(e>>>0<f>>>0){b=e;while(1){e=b+1|0;if((a[b>>0]|0)==-1?(d[e>>0]|0)>223:0){e=b;break a}if(e>>>0<f>>>0)b=e;else break}}while(0);if((g-e|0)<8){h=-1;return h|0}Bl(h,e);h=0;return h|0}function Wl(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=hc;f=hc=hc+31&-32;hc=hc+16|0;g=a+28|0;c[g>>2]=0;h=a+32|0;c[h>>2]=0;i=d+28|0;El(i,11);if(!(Fl(i,1)|0))c[g>>2]=c[g>>2]|16384;k=(Fl(i,1)|0)==0;e=c[g>>2]|0;if(!k){if(e&16384|0){c[d+60>>2]=257;k=-1;hc=j;return k|0}}else c[g>>2]=e|4096;k=Fl(i,2)|0;c[a>>2]=4-k;if(!k){c[d+60>>2]=258;k=-1;hc=j;return k|0}if(!(Fl(i,1)|0)){c[g>>2]=c[g>>2]|16;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];b[a+24>>1]=Gl(f,16,-1)|0}e=Fl(i,4)|0;if((e|0)==15){c[d+60>>2]=259;k=-1;hc=j;return k|0}k=c[a>>2]|0;c[a+16>>2]=c[48032+(((c[g>>2]&4096|0)==0?k+-1|0:(k>>>1)+3|0)*60|0)+(e<<2)>>2];e=Fl(i,2)|0;if((e|0)==3){c[d+60>>2]=260;k=-1;hc=j;return k|0}e=c[48332+(e<<2)>>2]|0;d=a+20|0;c[d>>2]=e;f=c[g>>2]|0;if(f&4096|0?(c[d>>2]=e>>>1,f&16384|0):0)c[d>>2]=e>>>2;if(Fl(i,1)|0)c[g>>2]=c[g>>2]|128;if(Fl(i,1)|0)c[h>>2]=c[h>>2]|256;c[a+4>>2]=3-(Fl(i,2)|0);c[a+8>>2]=Fl(i,2)|0;if(Fl(i,1)|0)c[g>>2]=c[g>>2]|32;if(Fl(i,1)|0)c[g>>2]=c[g>>2]|64;c[a+12>>2]=Fl(i,2)|0;if(!(c[g>>2]&16)){k=0;hc=j;return k|0}b[a+26>>1]=Fl(i,16)|0;k=0;hc=j;return k|0}function Xl(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;c[a>>2]=b;if(d>>>0>=e>>>0&(e|0)!=0){h=(d>>>0)/(e>>>0)|0;i=h+b|0;c[a>>2]=i;d=d-(u(h,e)|0)|0}else i=b;a:do if((e|0)>=16e3){if((e|0)<32e3){if((e|0)<22050){switch(e|0){case 16e3:break;default:{f=4;break a}}d=d*22050|0;b=a+4|0;c[b>>2]=d;break}switch(e|0){case 22050:{d=d*16e3|0;b=a+4|0;c[b>>2]=d;break a}case 24e3:{d=d*14700|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}}if((e|0)<48e3)if((e|0)<44100){switch(e|0){case 32e3:break;default:{f=4;break a}}d=d*11025|0;b=a+4|0;c[b>>2]=d;break}else{switch(e|0){case 44100:break;default:{f=4;break a}}d=d*8e3|0;b=a+4|0;c[b>>2]=d;break}else if((e|0)<3528e5){switch(e|0){case 48e3:break;default:{f=4;break a}}d=d*7350|0;b=a+4|0;c[b>>2]=d;break}else{switch(e|0){case 3528e5:break;default:{f=4;break a}}b=a+4|0;c[b>>2]=d;break}}else{if((e|0)<8e3){switch(e|0){case 1:case 0:break;case 1e3:{d=d*352800|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}c[a+4>>2]=0;return}if((e|0)<11025){switch(e|0){case 8e3:break;default:{f=4;break a}}d=d*44100|0;b=a+4|0;c[b>>2]=d;break}switch(e|0){case 11025:{d=d*32e3|0;b=a+4|0;c[b>>2]=d;break a}case 12e3:{d=d*29400|0;b=a+4|0;c[b>>2]=d;break a}default:{f=4;break a}}}while(0);if((f|0)==4){b=d;f=e;while(1){b=(b>>>0)%(f>>>0)|0;if(!b)break;else{h=f;f=b;b=h}}g=(d>>>0)/(f>>>0)|0;h=(e>>>0)/(f>>>0)|0;if(f>>>0>e>>>0)f=3528e5;else{d=3528e5;f=h;while(1){d=(d>>>0)%(f>>>0)|0;if(!d)break;else{e=f;f=d;d=e}}}d=3528e5/(f>>>0)|0;b=(h>>>0)/(f>>>0)|0;if(f>>>0>h>>>0)M(72192,72203,144,72211);do if(b>>>0>=d>>>0)if(b>>>0<g>>>0){h=(g>>>0)/(b>>>0)|0;d=(((u(g-(u(h,b)|0)|0,d)|0)>>>0)/(b>>>0)|0)+(u(h,d)|0)|0;break}else{d=((u(d,g)|0)>>>0)/(b>>>0)|0;break}else{h=(d>>>0)/(b>>>0)|0;d=(((u(d-(u(h,b)|0)|0,g)|0)>>>0)/(b>>>0)|0)+(u(h,g)|0)|0}while(0);b=a+4|0;c[b>>2]=d}if(d>>>0<=352799999)return;h=(d>>>0)/3528e5|0;c[a>>2]=i+h;c[b>>2]=d-(u(h,3528e5)|0);return}function Yl(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,r=0,s=0,t=0;t=hc;i=hc=hc+31&-32;hc=hc+112|0;j=i+48|0;r=a+28|0;q=r;p=c[q>>2]|0;q=c[q+4>>2]|0;m=c[b+28>>2]|0;d=m>>>7&1;m=(c[b>>2]|0)==3?((m&4096|0)==0?144:72):144;if(!(Vl(a)|0)){k=i+20|0;l=b+20|0;o=a+20|0;n=4-(d<<2)|0;h=d^1;d=0;do{e=j;f=a;g=e+64|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));e=i;f=b;g=e+44|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(g|0));if(((Wl(i,j)|0)==0?(c[i>>2]|0)==(c[b>>2]|0):0)?(c[k>>2]|0)==(c[l>>2]|0):0){d=Dl(r)|0;g=(c[b>>2]|0)==1;g=((u(c[l>>2]|0,(g?n:h)+(d-(c[o>>2]|0))|0)|0)>>>0)/((g?48:m)>>>0)|0;d=(g>>>0)/1e3|0;if(g>>>0>=8e3){s=8;break}}El(r,8)}while((Vl(a)|0)==0);s=r;c[s>>2]=p;c[s+4>>2]=q;if(d>>>0>=8?!(d>>>0>640&(c[b>>2]|0)==3):0){c[a+16>>2]=d*1e3;s=0;hc=t;return s|0}}else{s=r;c[s>>2]=p;c[s+4>>2]=q}c[a+60>>2]=257;s=-1;hc=t;return s|0}function Zl(a){a=a|0;var b=0;hB(a|0,0,1024)|0;b=0;do{c[a+1536+(b<<5)>>2]=0;c[a+1024+(b<<5)>>2]=0;c[a+1536+(b<<5)+4>>2]=0;c[a+1024+(b<<5)+4>>2]=0;c[a+1536+(b<<5)+8>>2]=0;c[a+1024+(b<<5)+8>>2]=0;c[a+1536+(b<<5)+12>>2]=0;c[a+1024+(b<<5)+12>>2]=0;c[a+1536+(b<<5)+16>>2]=0;c[a+1024+(b<<5)+16>>2]=0;c[a+1536+(b<<5)+20>>2]=0;c[a+1024+(b<<5)+20>>2]=0;c[a+1536+(b<<5)+24>>2]=0;c[a+1024+(b<<5)+24>>2]=0;c[a+1536+(b<<5)+28>>2]=0;c[a+1024+(b<<5)+28>>2]=0;b=b+1|0}while((b|0)!=16);hB(a+2048|0,0,1024)|0;b=0;do{c[a+3584+(b<<5)>>2]=0;c[a+3072+(b<<5)>>2]=0;c[a+3584+(b<<5)+4>>2]=0;c[a+3072+(b<<5)+4>>2]=0;c[a+3584+(b<<5)+8>>2]=0;c[a+3072+(b<<5)+8>>2]=0;c[a+3584+(b<<5)+12>>2]=0;c[a+3072+(b<<5)+12>>2]=0;c[a+3584+(b<<5)+16>>2]=0;c[a+3072+(b<<5)+16>>2]=0;c[a+3584+(b<<5)+20>>2]=0;c[a+3072+(b<<5)+20>>2]=0;c[a+3584+(b<<5)+24>>2]=0;c[a+3072+(b<<5)+24>>2]=0;c[a+3584+(b<<5)+28>>2]=0;c[a+3072+(b<<5)+28>>2]=0;b=b+1|0}while((b|0)!=16);return}function _l(a){a=a|0;var b=0;hB(a+48|0,0,9216)|0;a=c[a+9264>>2]|0;if(!a)return;hB(a|0,0,2304)|0;b=0;do{c[a+2304+(b<<2)>>2]=0;c[a+2376+(b<<2)>>2]=0;c[a+2448+(b<<2)>>2]=0;c[a+2520+(b<<2)>>2]=0;c[a+2592+(b<<2)>>2]=0;c[a+2664+(b<<2)>>2]=0;c[a+2736+(b<<2)>>2]=0;c[a+2808+(b<<2)>>2]=0;c[a+2880+(b<<2)>>2]=0;c[a+2952+(b<<2)>>2]=0;c[a+3024+(b<<2)>>2]=0;c[a+3096+(b<<2)>>2]=0;c[a+3168+(b<<2)>>2]=0;c[a+3240+(b<<2)>>2]=0;c[a+3312+(b<<2)>>2]=0;c[a+3384+(b<<2)>>2]=0;c[a+3456+(b<<2)>>2]=0;c[a+3528+(b<<2)>>2]=0;c[a+3600+(b<<2)>>2]=0;c[a+3672+(b<<2)>>2]=0;c[a+3744+(b<<2)>>2]=0;c[a+3816+(b<<2)>>2]=0;c[a+3888+(b<<2)>>2]=0;c[a+3960+(b<<2)>>2]=0;c[a+4032+(b<<2)>>2]=0;c[a+4104+(b<<2)>>2]=0;c[a+4176+(b<<2)>>2]=0;c[a+4248+(b<<2)>>2]=0;c[a+4320+(b<<2)>>2]=0;c[a+4392+(b<<2)>>2]=0;c[a+4464+(b<<2)>>2]=0;c[a+4536+(b<<2)>>2]=0;b=b+1|0}while((b|0)!=18);return}function $l(){am(0);return}function am(a){a=a|0;ra(11808,72226);ga(11824,72231,1,1,0);na(11832,72236,1,-128,127);na(11848,72241,1,-128,127);na(11840,72253,1,0,255);na(11856,72267,2,-32768,32767);na(11864,72273,2,0,65535);na(11872,72288,4,-2147483648,2147483647);na(11880,72292,4,0,-1);na(11888,72305,4,-2147483648,2147483647);na(11896,72310,4,0,-1);ma(11904,72324,4);ma(11912,72330,8);pa(9224,72337);pa(9576,72349);qa(9600,4,72382);la(9248,72395);oa(9624,0,72411);oa(9632,0,72441);oa(9640,1,72478);oa(9648,2,72517);oa(9656,3,72548);oa(9664,4,72588);oa(9672,5,72617);oa(9680,4,72655);oa(9688,5,72685);oa(9632,0,72724);oa(9640,1,72756);oa(9648,2,72789);oa(9656,3,72822);oa(9664,4,72856);oa(9672,5,72889);oa(9696,6,72923);oa(9704,7,72954);oa(9712,7,72986);return}function bm(a){a=a|0;return Nn(c[a+4>>2]|0)|0}function cm(a){a=a|0;var b=0,d=0;b=hc;d=hc=hc+31&-32;hc=hc+16|0;c[d>>2]=hm(c[a+60>>2]|0)|0;a=fm(aa(6,d|0)|0)|0;hc=b;return a|0}function dm(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=hc;f=hc=hc+31&-32;hc=hc+48|0;k=f+32|0;g=f+16|0;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=fm(_(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=fm(_(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}hc=m;return d|0}function em(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=hc;f=hc=hc+31&-32;hc=hc+32|0;h=f+8|0;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((fm(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}x(a|0);hc=g;return b|0}function fm(a){a=a|0;if(a>>>0>4294963200){c[(gm()|0)>>2]=0-a;a=-1}return a|0}function gm(){return 98088}function hm(a){a=a|0;return a|0}function im(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;k=hc;i=hc=hc+31&-32;hc=hc+32|0;f=i+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;l=c[j>>2]|0;c[g>>2]=e-((l|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=l;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=fm(Z(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;hc=k;return f|0}function jm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=hc;h=hc=hc+31&-32;hc=hc+32|0;f=h;c[b+36>>2]=1;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=h+16,$(54,f|0)|0):0)a[b+75>>0]=-1;h=dm(b,d,e)|0;hc=g;return h|0}function km(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=lm(a,b,c)|0;x(y()|0);return d|0}function lm(a,b,c){a=a|0;b=b|0;c=c|0;c=mm(a,b,c,-1,-1)|0;x(y()|0);return c|0}function mm(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;j=hc;h=hc=hc+31&-32;hc=hc+144|0;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;g=h+8|0;c[g>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;nm(h,0,0);d=om(h,d,1,e,f)|0;e=y()|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+120>>2]|0)-(c[g>>2]|0));x(e|0);hc=j;return d|0}function nm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=a+112|0;c[f>>2]=b;c[f+4>>2]=d;f=c[a+8>>2]|0;e=c[a+4>>2]|0;g=f-e|0;h=((g|0)<0)<<31>>31;i=a+120|0;c[i>>2]=g;c[i+4>>2]=h;if(((b|0)!=0|(d|0)!=0)&((h|0)>(d|0)|(h|0)==(d|0)&g>>>0>b>>>0))c[a+104>>2]=e+b;else c[a+104>>2]=f;return}function om(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;a:do if(e>>>0>36){c[(gm()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+104|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=pm(b)|0}while((qm(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=pm(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=pm(b)|0;if((i|32|0)!=120)if(j){o=8;n=47;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=pm(b)|0;if((d[4257+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){nm(b,0,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{o=16;n=47}}else{e=j?10:e;if(e>>>0>(d[4257+i>>0]|0)>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;nm(b,0,0);c[(gm()|0)>>2]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;do{i=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=pm(b)|0;e=j+-48|0}while(e>>>0<10&i>>>0<429496729);if(e>>>0<10){m=0;do{f=YA(i|0,m|0,10,0)|0;k=y()|0;l=((e|0)<0)<<31>>31;o=~l;if(k>>>0>o>>>0|(k|0)==(o|0)&f>>>0>~e>>>0){f=10;e=m;n=76;break c}i=ZA(f|0,k|0,e|0,l|0)|0;m=y()|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=pm(b)|0;e=j+-48|0}while(e>>>0<10&(m>>>0<429496729|(m|0)==429496729&i>>>0<2576980378));if(e>>>0>9){j=p;e=m}else{f=10;e=m;n=76}}else{j=p;e=0}}else{j=p;e=0;i=0}}else{o=e;n=47}while(0);d:do if((n|0)==47){if(!(o+-1&o)){n=a[73521+((o*23|0)>>>5&7)>>0]|0;f=a[4257+i>>0]|0;e=f&255;if(o>>>0>e>>>0){i=0;do{i=e|i<<n;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=pm(b)|0;f=a[4257+j>>0]|0;e=f&255}while(i>>>0<134217728&o>>>0>e>>>0);k=e;e=0}else{j=i;k=e;e=0;i=0}l=dB(-1,-1,n|0)|0;m=y()|0;if(o>>>0<=k>>>0|(m>>>0<e>>>0|(m|0)==(e|0)&l>>>0<i>>>0)){f=o;n=76;break}while(1){i=eB(i|0,e|0,n|0)|0;e=y()|0;i=i|f&255;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=pm(b)|0;f=a[4257+j>>0]|0;if(o>>>0<=(f&255)>>>0|(e>>>0>m>>>0|(e|0)==(m|0)&i>>>0>l>>>0)){f=o;n=76;break d}}}e=a[4257+i>>0]|0;f=e&255;if(o>>>0>f>>>0){i=0;do{i=f+(u(i,o)|0)|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=pm(b)|0;e=a[4257+j>>0]|0;f=e&255}while(i>>>0<119304647&o>>>0>f>>>0);k=e;e=0}else{j=i;k=e;i=0;e=0}if(o>>>0>f>>>0){m=bB(-1,-1,o|0,0)|0;n=y()|0;f=k;while(1){if(e>>>0>n>>>0|(e|0)==(n|0)&i>>>0>m>>>0){f=o;n=76;break d}k=YA(i|0,e|0,o|0,0)|0;l=y()|0;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=o;n=76;break d}i=ZA(k|0,l|0,f|0,0)|0;e=y()|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=pm(b)|0;f=a[4257+j>>0]|0;if(o>>>0<=(f&255)>>>0){f=o;n=76;break}}}else{f=o;n=76}}while(0);if((n|0)==76)if(f>>>0>(d[4257+j>>0]|0)>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=pm(b)|0}while(f>>>0>(d[4257+i>>0]|0)>>>0);c[(gm()|0)>>2]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else j=p;if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0<h>>>0|(e|0)==(h|0)&i>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[(gm()|0)>>2]=34;g=ZA(g|0,h|0,-1,-1)|0;h=y()|0;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[(gm()|0)>>2]=34;break}}g=((j|0)<0)<<31>>31;g=_A(i^j|0,e^g|0,j|0,g|0)|0;h=y()|0}while(0);x(h|0);return g|0}function pm(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=b+112|0;f=g;e=c[f>>2]|0;f=c[f+4>>2]|0;if(!((e|0)==0&(f|0)==0)?(i=b+120|0,h=c[i+4>>2]|0,!((h|0)<(f|0)|((h|0)==(f|0)?(c[i>>2]|0)>>>0<e>>>0:0))):0)j=4;else{e=rm(b)|0;if((e|0)>=0){f=c[g>>2]|0;g=c[g+4>>2]|0;i=c[b+8>>2]|0;if(!((f|0)==0&(g|0)==0)){h=c[b+4>>2]|0;k=i-h|0;l=((k|0)<0)<<31>>31;m=b+120|0;f=_A(f|0,g|0,c[m>>2]|0,c[m+4>>2]|0)|0;m=y()|0;g=i;if((m|0)>(l|0)|(m|0)==(l|0)&f>>>0>k>>>0)j=9;else c[b+104>>2]=h+(f+-1)}else{g=i;j=9}if((j|0)==9)c[b+104>>2]=i;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;k=g+1-f|0;m=b+120|0;l=m;k=ZA(c[l>>2]|0,c[l+4>>2]|0,k|0,((k|0)<0)<<31>>31|0)|0;l=y()|0;c[m>>2]=k;c[m+4>>2]=l}f=f+-1|0;if((e|0)!=(d[f>>0]|0|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+104>>2]=0;e=-1}return e|0}function qm(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function rm(a){a=a|0;var b=0,e=0;e=hc;b=hc=hc+31&-32;hc=hc+16|0;if((sm(a)|0)==0?(nc[c[a+32>>2]&31](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;hc=e;return a|0}function sm(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=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)nc[c[b+36>>2]&31](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function tm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=um(a,b,c)|0;x(y()|0);return d|0}function um(a,b,c){a=a|0;b=b|0;c=c|0;c=mm(a,b,c,0,-2147483648)|0;x(y()|0);return c|0}function vm(a,b){a=+a;b=+b;var d=0,e=0;g[h>>3]=a;e=c[h>>2]|0;d=c[h+4>>2]|0;g[h>>3]=b;d=c[h+4>>2]&-2147483648|d&2147483647;c[h>>2]=e;c[h+4>>2]=d;return +(+g[h>>3])}function wm(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function xm(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 ym(a){a=a|0;return (a+-48|0)>>>0<10|0}function zm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=hc;f=hc=hc+31&-32;hc=hc+16|0;c[f>>2]=d;d=Am(a,b,f)|0;hc=e;return d|0}function Am(a,b,c){a=a|0;b=b|0;c=c|0;return Bm(a,2147483647,b,c)|0}function Bm(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;j=hc;i=hc=hc+31&-32;hc=hc+160|0;g=i+144|0;fB(i|0,10152,144)|0;if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;h=4}else{c[(gm()|0)>>2]=75;d=-1}else h=4;if((h|0)==4){h=-2-b|0;h=d>>>0>h>>>0?h:d;c[i+48>>2]=h;g=i+20|0;c[g>>2]=b;c[i+44>>2]=b;d=b+h|0;b=i+16|0;c[b>>2]=d;c[i+28>>2]=d;d=Cm(i,e,f)|0;if(h){i=c[g>>2]|0;a[i+(((i|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}hc=j;return d|0}function Cm(a,b,c){a=a|0;b=b|0;c=c|0;return Fm(a,b,c,1,60)|0}function Dm(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,v=0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=hc;m=hc=hc+31&-32;hc=hc+560|0;l=m+32|0;v=m+536|0;G=m;F=G;m=m+540|0;c[v>>2]=0;E=m+12|0;Xm(e)|0;j=y()|0;if((j|0)<0){e=-e;Xm(e)|0;D=1;C=73547;j=y()|0}else{D=(h&2049|0)!=0&1;C=(h&2048|0)==0?((h&1|0)==0?73548:73553):73550}do if(0==0&(j&2146435072|0)==2146435072){G=(i&32|0)!=0;j=D+3|0;Qm(b,32,f,j,h&-65537);Jm(b,C,D);Jm(b,e!=e|0.0!=0.0?(G?73589:73574):G?73566:73570,3);Qm(b,32,f,j,h^8192)}else{q=+Ym(e,v)*2.0;j=q!=0.0;if(j)c[v>>2]=(c[v>>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[v>>2]|0;j=(k|0)<0?0-k|0:k;j=Om(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[4992+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;Qm(b,32,f,E,h);Jm(b,r,p);Qm(b,48,f,E,h^65536);F=m-F|0;Jm(b,G,F);G=k-l|0;Qm(b,48,j-(F+G)|0,0,0);Jm(b,n,G);Qm(b,32,f,E,h^8192);j=E;break}k=(g|0)<0?6:g;if(j){j=(c[v>>2]|0)+-28|0;c[v>>2]=j;e=q*268435456.0}else{e=q;j=c[v>>2]|0}B=(j|0)<0?l:l+288|0;l=B;do{z=~~e>>>0;c[l>>2]=z;l=l+4|0;e=(e-+(z>>>0))*1.0e9}while(e!=0.0);z=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=eB(c[j>>2]|0,0,n|0)|0;s=ZA(s|0,y()|0,m|0,0)|0;w=y()|0;m=bB(s|0,w|0,1e9,0)|0;x=YA(m|0,y()|0,1e9,0)|0;x=_A(s|0,w|0,x|0,y()|0)|0;y()|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[v>>2]|0)-n|0;c[v>>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=u(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[v>>2]|0)+r|0;c[v>>2]=j}while((j|0)<0);s=m}else s=m;if(s>>>0<l>>>0){j=(z-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;w=(t|0)==103;x=(k|0)!=0;m=k-((t|0)==102?0:j)+((x&w)<<31>>31)|0;if((m|0)<(((l-z>>2)*9|0)+-9|0)){v=m+9216|0;m=(v|0)/9|0;g=B+4+(m+-1024<<2)|0;m=v-(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-(u(m,n)|0)|0;o=(g+4|0)==(l|0);if(!(o&(r|0)==0)){q=(m&1|0)==0?9007199254740992.0:9007199254740994.0;v=n>>>1;e=r>>>0<v>>>0?.5:o&(r|0)==(v|0)?1.0:1.5;if(D){v=(a[C>>0]|0)==45;e=v?-e:e;q=v?-q:q}m=p-r|0;c[g>>2]=m;if(q+e!=q){v=m+n|0;c[g>>2]=v;if(v>>>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}v=(c[m>>2]|0)+1|0;c[m>>2]=v;if(v>>>0>999999999)n=m;else{n=j;break}}}else{m=g;n=s}j=(z-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}v=m+4|0;l=l>>>0>v>>>0?v: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){v=l;t=1;break b}if(m>>>0>n>>>0)l=m;else{v=m;t=0;break}}else{v=l;t=0}while(0);do if(w){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?(A=c[v+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){m=0;l=10;do{l=l*10|0;m=m+1|0}while(!((A>>>0)%(l>>>0)|0|0))}else m=0;else m=9;l=((v-z>>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){w=0;j=(j|0)>0?j:0}else{l=(j|0)<0?g:j;l=Om(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;w=j;j=m-j|0}j=D+1+k+p+j|0;Qm(b,32,f,j,h);Jm(b,C,D);Qm(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=Om(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){hB(G|0,48,l-F|0)|0;do l=l+-1|0;while(l>>>0>G>>>0)}Jm(b,l,n-l|0);m=m+4|0}while(m>>>0<=B>>>0);if(!((h&8|0)==0&(s^1)))Jm(b,73578,1);if(m>>>0<v>>>0&(k|0)>0)while(1){l=Om(c[m>>2]|0,0,r)|0;if(l>>>0>G>>>0){hB(G|0,48,l-F|0)|0;do l=l+-1|0;while(l>>>0>G>>>0)}Jm(b,l,(k|0)<9?k:9);m=m+4|0;l=k+-9|0;if(!(m>>>0<v>>>0&(k|0)>9)){k=l;break}else k=l}Qm(b,48,k+9|0,9,0)}else{v=t?v:n+4|0;if(n>>>0<v>>>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=Om(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;Jm(b,l,1);if(s&(k|0)<1){l=m;break}Jm(b,73578,1);l=m}else{if(l>>>0<=G>>>0)break;hB(G|0,48,l+p|0)|0;do l=l+-1|0;while(l>>>0>G>>>0)}while(0);F=t-l|0;Jm(b,l,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0<v>>>0&(k|0)>-1)}Qm(b,48,k+18|0,18,0);Jm(b,w,E-w|0)}Qm(b,32,f,j,h^8192)}while(0);hc=H;return ((j|0)<(f|0)?f:j)|0}function Em(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 Fm(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=hc;s=hc=hc+31&-32;hc=hc+224|0;p=s+208|0;q=s+160|0;r=s+80|0;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((Gm(0,d,p,r,q,f,g)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=Hm(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=Gm(b,d,p,r,q,f,g)|0;if(j){nc[c[b+36>>2]&31](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=Gm(b,d,p,r,q,f,g)|0;h=c[b>>2]|0;c[b>>2]=h|n;if(o|0)Im(b);e=(h&32|0)==0?e:-1}hc=t;return e|0}function Gm(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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=hc;E=hc=hc+31&-32;hc=hc+64|0;G=E+56|0;I=E+40|0;B=E;D=E+48|0;E=E+60|0;c[G>>2]=e;x=(d|0)!=0;z=B+40|0;A=z;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[(gm()|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)Jm(d,r,l)}while((l|0)!=0);v=(ym(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((ym(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=Km(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=Km(G)|0;m=c[G>>2]|0;break}if(ym(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+(4528+(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}Lm(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=Nm(c[q>>2]|0,c[q+4>>2]|0,z)|0;n=A-q|0;o=0;p=73530;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=_A(0,0,m|0,n|0)|0;n=y()|0;o=I;c[o>>2]=m;c[o+4>>2]=n;o=1;p=73530;w=72;break e}else{o=(t&2049|0)!=0&1;p=(t&2048|0)==0?((t&1|0)==0?73530:73532):73531;w=72;break e}}case 117:{n=I;o=0;p=73530;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=73530;q=1;m=n;l=A;break}case 115:{s=c[I>>2]|0;s=(s|0)==0?73540:s;t=Pm(s,0,l)|0;K=(t|0)==0;r=s;o=0;p=73530;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){Qm(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=lc[j&1](d,+g[I>>3],u,l,t,m)|0;break d}default:{o=0;p=73530;q=l;m=t;l=A}}while(0);f:do if((w|0)==67){q=I;q=Mm(c[q>>2]|0,c[q+4>>2]|0,z,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?73530:73530+(m>>>4)|0;w=73}else if((w|0)==72){q=Om(m,n,z)|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=Rm(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}}Qm(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=Rm(E,m)|0;o=m+o|0;if((o|0)>(l|0)){w=89;break f}Jm(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=A-q+((m^1)&1)|0;r=K?q:z;q=K?((l|0)>(m|0)?l:m):0;m=(l|0)>-1?n&-65537:n;l=A}else if((w|0)==89){w=0;Qm(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;Qm(d,32,l,K,m);Jm(d,p,o);Qm(d,48,l,K,m^65536);Qm(d,48,s,t,0);Jm(d,r,t);Qm(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;Lm(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);hc=J;return e|0}function Hm(a){a=a|0;return 1}function Im(a){a=a|0;return}function Jm(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))Vm(b,d,a)|0;return}function Km(b){b=b|0;var d=0,e=0;if(!(ym(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((ym(a[e>>0]|0)|0)!=0)}return d|0}function Lm(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:{xc[e&63](a,d);break a}default:break a}while(0);while(0);return}function Mm(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[4992+(b&15)>>0]|0|f;b=dB(b|0,c|0,4)|0;c=y()|0}while(!((b|0)==0&(c|0)==0));return e|0}function Nm(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=dB(b|0,c|0,3)|0;c=y()|0}while(!((b|0)==0&(c|0)==0));return d|0}function Om(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=bB(b|0,c|0,10,0)|0;f=c;c=y()|0;g=YA(b|0,c|0,10,0)|0;g=_A(e|0,f|0,g|0,y()|0)|0;y()|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 Pm(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=u(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 Qm(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=hc;f=hc=hc+31&-32;hc=hc+256|0;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;hB(f|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{Jm(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}Jm(a,f,e)}hc=g;return}function Rm(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Sm(a,b,0)|0;return a|0}function Sm(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[(Tm()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(gm()|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[(gm()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function Tm(){return Um()|0}function Um(){return 48412}function Vm(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(!(Wm(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=nc[c[e+36>>2]&31](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=nc[c[e+36>>2]&31](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);fB(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 Wm(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 Xm(a){a=+a;var b=0;g[h>>3]=a;b=c[h>>2]|0;x(c[h+4>>2]|0);return b|0}function Ym(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=dB(d|0,e|0,52)|0;y()|0;switch(f&2047){case 0:{if(a!=0.0){a=+Ym(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 Zm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;fB(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function _m(a){a=a|0;var b=0;b=a;while(1)if(!(c[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function $m(a){a=a|0;return (((a|32)+-97|0)>>>0<6|(ym(a)|0)!=0)&1|0}function an(){return 48656}function bn(){var a=0;a=(c[c[(cn()|0)+188>>2]>>2]|0)==0;return (a?1:4)|0}function cn(){return Um()|0}function dn(){return 48660}function en(){return 48664}function fn(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+104|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=pm(b)|0}while((qm(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=pm(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;while(1){if((h|32|0)!=(a[73580+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=pm(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=8){e=8;break}}c:do switch(e&2147483647|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;while(1){if((h|32|0)!=(a[73589+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=pm(b)|0;break}}while(0);e=e+1|0;if(e>>>0>=3){e=3;break}}}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=pm(b)|0;if((e|0)!=40){if(!(c[n>>2]|0)){g=r;break a}c[o>>2]=(c[o>>2]|0)+-1;g=r;break a}e=1;while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=pm(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=r;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[(gm()|0)>>2]=22;nm(b,0,0);g=0.0;break a}if(!e){g=r;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=r;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=pm(b)|0;if((e|32|0)==120){g=+gn(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+hn(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[(gm()|0)>>2]=22;nm(b,0,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*s}while(0);return +g}function gn(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0;z=a+4|0;i=c[z>>2]|0;x=a+104|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=pm(a)|0;j=0;a:while(1){switch(i|0){case 46:{w=10;break a}case 48:break;default:{p=0;m=j;l=0;j=0;break a}}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=pm(a)|0;j=1}if((w|0)==10){i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=pm(a)|0;if((i|0)==48){l=0;j=0;do{i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=pm(a)|0;l=ZA(l|0,j|0,-1,-1)|0;j=y()|0}while((i|0)==48);p=1;m=1}else{p=1;m=j;l=0;j=0}}o=0;n=1.0;h=0.0;v=0;s=p;t=m;u=0;m=0;while(1){q=i+-48|0;p=i|32;if(q>>>0>=10){r=(i|0)==46;if(!(r|(p+-97|0)>>>0<6))break;if(r)if(!s){s=1;k=n;q=v;r=t;l=m;j=u;p=u}else{i=46;break}else w=24}else w=24;if((w|0)==24){w=0;i=(i|0)>57?p+-87|0:q;do if(!((u|0)<0|(u|0)==0&m>>>0<8))if((u|0)<0|(u|0)==0&m>>>0<14){n=n*.0625;k=n;h=h+n*+(i|0);i=v;break}else{i=(o|0)!=0|(i|0)==0;o=i?o:1;k=n;h=i?h:h+n*.5;i=v;break}else{k=n;i=i+(v<<4)|0}while(0);m=ZA(m|0,u|0,1,0)|0;q=i;r=1;p=y()|0}i=c[z>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[z>>2]=i+1;i=d[i>>0]|0}else i=pm(a)|0;n=k;v=q;t=r;u=p}do if(!t){i=(c[x>>2]|0)==0;if(!i)c[z>>2]=(c[z>>2]|0)+-1;if(g){if(!i?(c[z>>2]=(c[z>>2]|0)+-1,!((s|0)==0|i)):0)c[z>>2]=(c[z>>2]|0)+-1}else nm(a,0,0);h=+(f|0)*0.0}else{o=(s|0)==0;p=o?m:l;o=o?u:j;if((u|0)<0|(u|0)==0&m>>>0<8){j=v;l=u;do{j=j<<4;w=m;m=ZA(m|0,l|0,1,0)|0;v=l;l=y()|0}while((v|0)<0|(v|0)==0&w>>>0<7);m=j}else m=v;if((i|32|0)==112){j=jn(a,g)|0;i=y()|0;if((j|0)==0&(i|0)==-2147483648){if(!g){nm(a,0,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[z>>2]=(c[z>>2]|0)+-1;j=0;i=0}l=eB(p|0,o|0,2)|0;l=ZA(l|0,y()|0,-32,-1)|0;l=ZA(l|0,y()|0,j|0,i|0)|0;i=y()|0;if(!m){h=+(f|0)*0.0;break}z=0-e|0;g=((z|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>z>>>0){c[(gm()|0)>>2]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}z=e+-106|0;g=((z|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0<z>>>0){c[(gm()|0)>>2]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((m|0)>-1){j=m;do{z=!(h>=.5);j=j<<1|(z^1)&1;h=h+(z?h:h+-1.0);l=ZA(l|0,i|0,-1,-1)|0;i=y()|0}while((j|0)>-1);n=h;m=j}else n=h;z=((b|0)<0)<<31>>31;e=_A(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=ZA(e|0,y()|0,l|0,i|0)|0;e=y()|0;if((e|0)<(z|0)|(e|0)==(z|0)&i>>>0<b>>>0)if((i|0)>0)w=65;else{j=0;i=84;w=67}else{i=b;w=65}if((w|0)==65)if((i|0)<53){j=i;i=84-i|0;w=67}else{k=0.0;h=+(f|0)}if((w|0)==67){h=+(f|0);k=+ln(+kn(1.0,i),h);i=j}f=(m&1|0)==0&(n!=0.0&(i|0)<32);h=(f?0.0:n)*h+(k+h*+((m+(f&1)|0)>>>0))-k;if(!(h!=0.0))c[(gm()|0)>>2]=34;h=+nn(h,l)}while(0);return +h}function hn(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.0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,v=0.0,w=0,x=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0.0;I=hc;F=hc=hc+31&-32;hc=hc+512|0;G=f+e|0;H=0-G|0;E=a+4|0;D=a+104|0;j=0;a:while(1){switch(b|0){case 46:{B=7;break a}case 48:break;default:{w=0;p=j;j=0;o=0;break a}}b=c[E>>2]|0;if(b>>>0<(c[D>>2]|0)>>>0){c[E>>2]=b+1;b=d[b>>0]|0}else b=pm(a)|0;j=1}if((B|0)==7){b=c[E>>2]|0;if(b>>>0<(c[D>>2]|0)>>>0){c[E>>2]=b+1;b=d[b>>0]|0}else b=pm(a)|0;if((b|0)==48){j=0;b=0;while(1){j=ZA(j|0,b|0,-1,-1)|0;o=y()|0;b=c[E>>2]|0;if(b>>>0<(c[D>>2]|0)>>>0){c[E>>2]=b+1;b=d[b>>0]|0}else b=pm(a)|0;if((b|0)==48)b=o;else{w=1;p=1;break}}}else{w=1;p=j;j=0;o=0}}c[F>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){C=F+496|0;x=0;l=0;s=0;z=w;A=p;B=n;p=0;n=0;c:while(1){do if(m)if(!z){z=1;j=p;o=n}else break c;else{p=ZA(p|0,n|0,1,0)|0;n=y()|0;w=(b|0)!=48;if((l|0)>=125){if(!w)break;c[C>>2]=c[C>>2]|1;break}m=F+(l<<2)|0;if(!x)b=B;else b=b+-48+((c[m>>2]|0)*10|0)|0;c[m>>2]=b;x=x+1|0;A=(x|0)==9;x=A?0:x;l=l+(A&1)|0;s=w?p:s;A=1}while(0);b=c[E>>2]|0;if(b>>>0<(c[D>>2]|0)>>>0){c[E>>2]=b+1;b=d[b>>0]|0}else b=pm(a)|0;B=b+-48|0;m=(b|0)==46;if(!(m|B>>>0<10)){w=z;m=A;B=31;break b}}b=x;m=(A|0)!=0;B=39}else{x=0;l=0;s=0;m=p;p=0;n=0;B=31}while(0);do if((B|0)==31){C=(w|0)==0;j=C?p:j;o=C?n:o;m=(m|0)!=0;if(!(m&(b|32|0)==101))if((b|0)>-1){b=x;B=39;break}else{b=x;B=41;break}m=jn(a,h)|0;b=y()|0;if((m|0)==0&(b|0)==-2147483648){if(!h){nm(a,0,0);i=0.0;break}if(!(c[D>>2]|0)){m=0;b=0}else{c[E>>2]=(c[E>>2]|0)+-1;m=0;b=0}}j=ZA(m|0,b|0,j|0,o|0)|0;b=x;o=y()|0;B=43}while(0);if((B|0)==39)if(c[D>>2]|0){c[E>>2]=(c[E>>2]|0)+-1;if(m)B=43;else B=42}else B=41;if((B|0)==41)if(m)B=43;else B=42;do if((B|0)==42){c[(gm()|0)>>2]=22;nm(a,0,0);i=0.0}else if((B|0)==43){m=c[F>>2]|0;if(!m){i=+(g|0)*0.0;break}if(((n|0)<0|(n|0)==0&p>>>0<10)&((j|0)==(p|0)&(o|0)==(n|0))?(e|0)>30|(m>>>e|0)==0:0){i=+(g|0)*+(m>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&j>>>0>a>>>0){c[(gm()|0)>>2]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&j>>>0<a>>>0){c[(gm()|0)>>2]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=F+(l<<2)|0;m=c[n>>2]|0;while(1){m=m*10|0;if((b|0)>=8)break;else b=b+1|0}c[n>>2]=m}l=l+1|0}if((s|0)<9?(s|0)<=(j|0)&(j|0)<18:0){if((j|0)==9){i=+(g|0)*+((c[F>>2]|0)>>>0);break}if((j|0)<9){i=+(g|0)*+((c[F>>2]|0)>>>0)/+(c[8848+(8-j<<2)>>2]|0);break}a=e+27+(u(j,-3)|0)|0;b=c[F>>2]|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[8848+(j+-10<<2)>>2]|0);break}}b=(j|0)%9|0;if(!b)m=0;else{s=(j|0)>-1?b:b+9|0;o=c[8848+(8-s<<2)>>2]|0;if(l){p=1e9/(o|0)|0;n=0;m=0;b=0;do{D=F+(b<<2)|0;E=c[D>>2]|0;a=(E>>>0)/(o>>>0)|0;E=E-(u(a,o)|0)|0;a=a+n|0;c[D>>2]=a;n=u(p,E)|0;a=(b|0)==(m|0)&(a|0)==0;j=a?j+-9|0:j;m=a?m+1&127:m;b=b+1|0}while((b|0)!=(l|0));if(!n)b=l;else{c[F+(l<<2)>>2]=n;b=l+1|0}}else{m=0;b=0}l=b;j=9-s+j|0}b=0;d:while(1){w=(j|0)<18;x=(j|0)==18;z=F+(m<<2)|0;while(1){if(!w){if(!x)break d;if((c[z>>2]|0)>>>0>=9007199){j=18;break d}}n=0;A=l;l=l+127|0;while(1){p=l&127;o=F+(p<<2)|0;l=eB(c[o>>2]|0,0,29)|0;l=ZA(l|0,y()|0,n|0,0)|0;n=y()|0;if(n>>>0>0|(n|0)==0&l>>>0>1e9){s=bB(l|0,n|0,1e9,0)|0;a=YA(s|0,y()|0,1e9,0)|0;l=_A(l|0,n|0,a|0,y()|0)|0;y()|0}else s=0;c[o>>2]=l;a=(p|0)==(m|0);o=(p|0)!=(A+127&127|0)|a?A:(l|0)==0?p:A;if(a)break;else{n=s;A=o;l=p+-1|0}}b=b+-29|0;if(!s)l=A;else break}m=m+127&127;l=o+127&127;n=F+((o+126&127)<<2)|0;if((m|0)==(o|0))c[n>>2]=c[n>>2]|c[F+(l<<2)>>2];else l=A;c[F+(m<<2)>>2]=s;j=j+9|0}e:while(1){x=l+1&127;z=F+((l+127&127)<<2)|0;while(1){p=(j|0)==18;w=(j|0)>27?9:1;A=m;while(1){o=0;while(1){m=o+A&127;if((m|0)==(l|0)){B=92;break}m=c[F+(m<<2)>>2]|0;n=c[48668+(o<<2)>>2]|0;if(m>>>0<n>>>0){B=92;break}if(m>>>0>n>>>0)break;if((o+1|0)>>>0<2)o=1;else{B=92;break}}if((B|0)==92?(B=0,p):0)break e;b=w+b|0;if((A|0)==(l|0))A=l;else break}p=(1<<w)+-1|0;s=1e9>>>w;o=0;m=A;n=A;do{D=F+(n<<2)|0;E=c[D>>2]|0;a=(E>>>w)+o|0;c[D>>2]=a;o=u(E&p,s)|0;a=(n|0)==(m|0)&(a|0)==0;j=a?j+-9|0:j;m=a?m+1&127:m;n=n+1&127}while((n|0)!=(l|0));if(o|0){if((x|0)!=(m|0))break;c[z>>2]=c[z>>2]|1}}c[F+(l<<2)>>2]=o;l=x}i=0.0;j=l;m=0;do{n=m+A&127;l=j+1&127;if((n|0)==(j|0)){c[F+(l+-1<<2)>>2]=0;j=l}i=i*1.0e9+ +((c[F+(n<<2)>>2]|0)>>>0);m=m+1|0}while((m|0)!=2);v=+(g|0);k=i*v;n=b+53|0;o=n-f|0;p=(o|0)<(e|0);m=p?((o|0)>0?o:0):e;if((m|0)<53){J=+ln(+kn(1.0,105-m|0),k);q=+mn(k,+kn(1.0,53-m|0));r=J;i=q;q=J+(k-q)}else{r=0.0;i=0.0;q=k}l=A+2&127;if((l|0)!=(j|0)){l=c[F+(l<<2)>>2]|0;do if(l>>>0>=5e8){if((l|0)!=5e8){i=v*.75+i;break}if((A+3&127|0)==(j|0)){i=v*.5+i;break}else{i=v*.75+i;break}}else{if((l|0)==0?(A+3&127|0)==(j|0):0)break;i=v*.25+i}while(0);if((53-m|0)>1?!(+mn(i,1.0)!=0.0):0)k=i+1.0;else k=i}else k=i;i=q+k-r;do if((n&2147483647|0)>(-2-G|0)){G=!(+t(+i)>=9007199254740992.0);b=b+((G^1)&1)|0;i=G?i:i*.5;if((b+50|0)<=(H|0)?!(k!=0.0&(p&((m|0)!=(o|0)|G))):0)break;c[(gm()|0)>>2]=34}while(0);i=+nn(i,b)}while(0);hc=I;return +i}function jn(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;i=a+4|0;e=c[i>>2]|0;j=a+104|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;f=d[e>>0]|0}else f=pm(a)|0;switch(f|0){case 43:case 45:{g=(f|0)==45&1;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=pm(a)|0;f=e+-48|0;if((b|0)!=0&f>>>0>9)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;k=14}else k=12;break}default:{g=0;e=f;f=f+-48|0;k=12}}if((k|0)==12)if(f>>>0>9)k=14;else{f=0;do{f=e+-48+(f*10|0)|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=pm(a)|0;b=e+-48|0}while(b>>>0<10&(f|0)<214748364);h=((f|0)<0)<<31>>31;if(b>>>0<10){do{l=YA(f|0,h|0,10,0)|0;b=y()|0;e=ZA(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=ZA(e|0,y()|0,l|0,b|0)|0;h=y()|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=pm(a)|0;b=e+-48|0}while(b>>>0<10&((h|0)<21474836|(h|0)==21474836&f>>>0<2061584302));if(b>>>0<10){do{e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=pm(a)|0}while((e+-48|0)>>>0<10);e=h}else e=h}else e=h;if(c[j>>2]|0)c[i>>2]=(c[i>>2]|0)+-1;j=(g|0)==0;i=_A(0,0,f|0,e|0)|0;l=y()|0;f=j?f:i;e=j?e:l}if((k|0)==14)if(!(c[j>>2]|0)){f=0;e=-2147483648}else{c[i>>2]=(c[i>>2]|0)+-1;f=0;e=-2147483648}x(e|0);return f|0}function kn(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;e=(b|0)<-2044;d=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((d|0)>-1022?d:-1022):b+1022|0}}else{a=a*8988465674311579538646525.0e283;d=(b|0)>2046;e=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((e|0)<1023?e:1023):b+-1023|0}d=eB(b+1023|0,0,52)|0;e=y()|0;c[h>>2]=d;c[h+4>>2]=e;return +(a*+g[h>>3])}function ln(a,b){a=+a;b=+b;return +(+vm(a,b))}function mn(a,b){a=+a;b=+b;return +(+on(a,b))}function nn(a,b){a=+a;b=b|0;return +(+kn(a,b))}function on(a,b){a=+a;b=+b;var d=0,e=0,f=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g[h>>3]=a;j=c[h>>2]|0;l=c[h+4>>2]|0;g[h>>3]=b;n=c[h>>2]|0;o=c[h+4>>2]|0;e=dB(j|0,l|0,52)|0;y()|0;e=e&2047;m=dB(n|0,o|0,52)|0;y()|0;m=m&2047;p=l&-2147483648;i=eB(n|0,o|0,1)|0;k=y()|0;a:do if(!((i|0)==0&(k|0)==0)?(f=pn(b)|0,d=(y()|0)&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=eB(j|0,l|0,1)|0;f=y()|0;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>i>>>0))return +((d|0)==(i|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=eB(j|0,l|0,12)|0;f=y()|0;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=eB(d|0,f|0,1)|0;f=y()|0}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;j=eB(j|0,l|0,1-e|0)|0;i=y()|0}else i=l&1048575|1048576;if(!m){f=eB(n|0,o|0,12)|0;k=y()|0;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=eB(f|0,k|0,1)|0;k=y()|0}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=eB(n|0,o|0,1-d|0)|0;m=d;l=y()|0}else l=o&1048575|1048576;f=_A(j|0,i|0,n|0,l|0)|0;d=y()|0;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=j;d=i}j=eB(f|0,d|0,1)|0;i=y()|0;e=e+-1|0;f=_A(j|0,i|0,n|0,l|0)|0;d=y()|0;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=i;f=j}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=eB(f|0,d|0,1)|0;d=y()|0;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=ZA(f|0,d|0,0,-1048576)|0;d=y()|0;e=eB(e|0,0,52)|0;d=d|(y()|0);e=o|e}else{e=dB(f|0,d|0,1-e|0)|0;d=y()|0}c[h>>2]=e;c[h+4>>2]=d|p;b=+g[h>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function pn(a){a=+a;var b=0;g[h>>3]=a;b=c[h>>2]|0;x(c[h+4>>2]|0);return b|0}function qn(a){a=a|0;return 0}function rn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return d|0}function sn(a,b){a=a|0;b=b|0;return -1|0}function tn(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 un(a,b){a=a|0;b=b|0;var d=0,e=0;d=hc;e=hc=hc+31&-32;hc=hc+16|0;c[e>>2]=a;c[e+4>>2]=b;b=fm(ba(91,e|0)|0)|0;hc=d;return b|0}function vn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(tn(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=u(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function wn(){return}function xn(a){a=a|0;if(yn(a)|0)vo(a);return}function yn(a){a=a|0;return (a|0)!=48372&((a|0)!=0&(a|0)!=98064)&1|0}function zn(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;l=hc;h=hc=hc+31&-32;hc=hc+16|0;j=(g|0)==0?98092:g;g=c[j>>2]|0;a:do if(!e)if(!g)g=0;else k=19;else{i=(b|0)==0?h:b;if(!f)g=-2;else{if(!g){g=a[e>>0]|0;if(g<<24>>24>-1){c[i>>2]=g&255;g=g<<24>>24!=0&1;break}h=(c[c[(An()|0)+188>>2]>>2]|0)==0;g=a[e>>0]|0;if(h){c[i>>2]=g<<24>>24&57343;g=1;break}g=(g&255)+-194|0;if(g>>>0>50){k=19;break}g=c[4048+(g<<2)>>2]|0;h=f+-1|0;if(h){e=e+1|0;k=11}}else{h=f;k=11}b:do if((k|0)==11){b=d[e>>0]|0;m=b>>>3;if((m+-16|m+(g>>26))>>>0>7){k=19;break a}g=b+-128|g<<6;b=h+-1|0;if((g|0)<0)do{e=e+1|0;if(!b)break b;h=a[e>>0]|0;if((h&-64)<<24>>24!=-128){k=19;break a}g=(h&255)+-128|g<<6;b=b+-1|0}while((g|0)<0);c[j>>2]=0;c[i>>2]=g;g=f-b|0;break a}while(0);c[j>>2]=g;g=-2}}while(0);if((k|0)==19){c[j>>2]=0;c[(gm()|0)>>2]=84;g=-1}hc=l;return g|0}function An(){return Um()|0}function Bn(a,b){a=a|0;b=b|0;return ym(a)|0}function Cn(a,b){a=a|0;b=b|0;return $m(a)|0}function Dn(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=hc;n=hc=hc+31&-32;hc=hc+272|0;m=n;n=n+256|0;do if(!(a[d>>0]|0)){d=Ya(73593)|0;if(d|0?a[d>>0]|0:0)break;d=Ya(8880+(b*12|0)|0)|0;if(d|0?a[d>>0]|0:0)break;d=Ya(73600)|0;if(d|0?a[d>>0]|0:0)break;d=73605}while(0);e=0;a:while(1){switch(a[d+e>>0]|0){case 47:case 0:break a;default:{}}e=e+1|0;if(e>>>0>=15){e=15;break}}f=a[d>>0]|0;if(f<<24>>24!=46?(a[d+e>>0]|0)==0:0)if(f<<24>>24==67)l=15;else{k=d;l=16}else{d=73605;l=15}if((l|0)==15)if(!(a[d+1>>0]|0))l=18;else{k=d;l=16}b:do if((l|0)==16)if((wm(k,73605)|0)!=0?(wm(k,73613)|0)!=0:0){d=c[24524]|0;if(d|0)do{if(!(wm(k,d+8|0)|0))break b;d=c[d+24>>2]|0}while((d|0)!=0);U(98100);d=c[24524]|0;c:do if(d|0){while(1){if(!(wm(k,d+8|0)|0))break;d=c[d+24>>2]|0;if(!d)break c}ca(98100);break b}while(0);d:do if(((c[24502]|0)==0?(g=Ya(73619)|0,(g|0)!=0):0)?(a[g>>0]|0)!=0:0){i=254-e|0;j=e+1|0;f=g;while(1){h=vn(f,58)|0;d=a[h>>0]|0;g=h-f+((d<<24>>24!=0)<<31>>31)|0;if(g>>>0<i>>>0){fB(m|0,f|0,g|0)|0;f=m+g|0;a[f>>0]=47;fB(f+1|0,k|0,e|0)|0;a[m+(j+g)>>0]=0;f=V(m|0,n|0)|0;if(f|0)break;d=a[h>>0]|0}f=h+(d<<24>>24!=0&1)|0;if(!(a[f>>0]|0)){l=41;break d}}d=uo(28)|0;if(!d){un(f,c[n>>2]|0)|0;l=41;break}else{c[d>>2]=f;c[d+4>>2]=c[n>>2];n=d+8|0;fB(n|0,k|0,e|0)|0;a[n+e>>0]=0;c[d+24>>2]=c[24524];c[24524]=d;break}}else l=41;while(0);if((l|0)==41){d=uo(28)|0;if(d){c[d>>2]=c[12086];c[d+4>>2]=c[12087];n=d+8|0;fB(n|0,k|0,e|0)|0;a[n+e>>0]=0;c[d+24>>2]=c[24524];c[24524]=d}}ca(98100);d=(b|0)==0&(d|0)==0?48344:d}else{d=k;l=18}while(0);do if((l|0)==18){if((b|0)==0?(a[d+1>>0]|0)==46:0){d=48344;break}d=0}while(0);hc=o;return d|0}function En(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=hc;i=hc=hc+31&-32;hc=hc+32|0;a:do if(!(yn(d)|0)){h=(d|0)!=0;f=0;g=0;do{e=1<<g&a;if(h&(e|0)==0)e=c[d+(g<<2)>>2]|0;else e=Dn(g,(e|0)==0?100142:b)|0;f=f+((e|0)!=0&1)|0;c[i+(g<<2)>>2]=e;g=g+1|0}while((g|0)!=6);switch(f&2147483647|0){case 0:{d=98064;break a}case 1:{if((c[i>>2]|0)==48344){d=48372;break a}break}default:{}}}else{e=0;do{if(1<<e&a|0)c[d+(e<<2)>>2]=Dn(e,b)|0;e=e+1|0}while((e|0)!=6)}while(0);hc=j;return d|0}function Fn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=hc;g=hc=hc+31&-32;hc=hc+16|0;c[g>>2]=e;e=Bm(a,b,d,g)|0;hc=f;return e|0}function Gn(a){a=a|0;var b=0,d=0;b=(Hn()|0)+188|0;d=c[b>>2]|0;if(a|0)c[b>>2]=(a|0)==(-1|0)?98040:a;return ((d|0)==98040?-1:d)|0}function Hn(){return Um()|0}function In(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=a;while(1){d=d+-1|0;c[e>>2]=c[b>>2];if(!d)break;else{b=b+4|0;e=e+4|0}}}return a|0}function Jn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=u(d,b)|0;d=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){g=(Hm(e)|0)==0;a=Vm(a,f,e)|0;if(!g)Im(e)}else a=Vm(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Kn(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=hc;j=hc=hc+31&-32;hc=hc+16|0;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(Wm(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((nc[c[b+36>>2]&31](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);hc=l;return f|0}function Ln(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=hc;g=hc=hc+31&-32;hc=hc+16|0;a:do if(!e)b=0;else{do if(f|0){i=(b|0)==0?g:b;b=a[e>>0]|0;if(b<<24>>24>-1){c[i>>2]=b&255;b=b<<24>>24!=0&1;break a}h=(c[c[(Mn()|0)+188>>2]>>2]|0)==0;b=a[e>>0]|0;if(h){c[i>>2]=b<<24>>24&57343;b=1;break a}b=(b&255)+-194|0;if(b>>>0<=50){g=e+1|0;h=c[4048+(b<<2)>>2]|0;if(f>>>0<4?h&-2147483648>>>((f*6|0)+-6|0)|0:0)break;b=d[g>>0]|0;f=b>>>3;if((f+-16|f+(h>>26))>>>0<=7){b=b+-128|h<<6;if((b|0)>=0){c[i>>2]=b;b=2;break a}g=(d[e+2>>0]|0)+-128|0;if(g>>>0<=63){g=g|b<<6;if((g|0)>=0){c[i>>2]=g;b=3;break a}b=(d[e+3>>0]|0)+-128|0;if(b>>>0<=63){c[i>>2]=b|g<<6;b=4;break a}}}}}while(0);c[(gm()|0)>>2]=84;b=-1}while(0);hc=j;return b|0}function Mn(){return Um()|0}function Nn(a){a=a|0;var b=0,c=0;b=(tn(a)|0)+1|0;c=uo(b)|0;if(!c)a=0;else a=fB(c|0,a|0,b|0)|0;return a|0}function On(){U(98108);return 98116}function Pn(){ca(98108);return}function Qn(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=Rn(a)|0;break}d=(Hm(a)|0)==0;b=Rn(a)|0;if(!d)Im(a)}else{if(!(c[12102]|0))b=0;else b=Qn(c[12102]|0)|0;a=c[(On()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=Hm(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=Rn(a)|0|b;if(d|0)Im(a);a=c[a+56>>2]|0}while((a|0)!=0);Pn()}while(0);return b|0}function Rn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(nc[c[a+36>>2]&31](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0<g>>>0){g=e-g|0;oc[c[a+40>>2]&7](a,g,((g|0)<0)<<31>>31,1)|0;y()|0}c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function Sn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=hc;f=hc=hc+31&-32;hc=hc+16|0;c[f>>2]=d;d=Tn(a,b,f)|0;hc=e;return d|0}function Tn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=hc;f=hc=hc+31&-32;hc=hc+144|0;hB(f|0,0,144)|0;c[f+32>>2]=29;c[f+44>>2]=a;c[f+76>>2]=-1;c[f+84>>2]=a;d=Vn(f,b,d)|0;hc=e;return d|0}function Un(a,b,c){a=a|0;b=b|0;c=c|0;return Zn(a,b,c)|0}function Vn(e,h,i){e=e|0;h=h|0;i=i|0;var 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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=hc;N=hc=hc+31&-32;hc=hc+288|0;K=N+264|0;L=N;M=N+260|0;N=N+272|0;if((c[e+76>>2]|0)>-1)P=Hm(e)|0;else P=0;j=a[h>>0]|0;a:do if(j<<24>>24){C=e+4|0;D=e+104|0;E=e+120|0;F=e+8|0;G=L+10|0;H=L+33|0;I=L+46|0;J=L+94|0;B=K+4|0;m=h;h=0;k=0;l=j;j=0;u=0;v=0;b:while(1){c:do if(!(qm(l&255)|0)){n=(a[m>>0]|0)==37;d:do if(n){l=m+1|0;o=a[l>>0]|0;e:do switch(o<<24>>24){case 37:break d;case 42:{A=0;l=m+2|0;break}default:{if(ym(o&255)|0?(a[m+2>>0]|0)==36:0){A=Wn(i,(d[l>>0]|0)+-48|0)|0;l=m+3|0;break e}z=(c[i>>2]|0)+(4-1)&~(4-1);A=c[z>>2]|0;c[i>>2]=z+4}}while(0);if(!(ym(d[l>>0]|0)|0)){r=0;o=l}else{m=0;do{m=(m*10|0)+-48+(d[l>>0]|0)|0;l=l+1|0}while((ym(d[l>>0]|0)|0)!=0);r=m;o=l}n=a[o>>0]|0;q=o+1|0;if(n<<24>>24==109){l=(A|0)!=0&1;k=0;m=q;o=o+2|0;n=a[q>>0]|0;j=0}else{l=0;m=o;o=q}switch(n<<24>>24){case 104:{z=(a[o>>0]|0)==104;n=z?-2:-1;m=z?m+2|0:o;break}case 108:{z=(a[o>>0]|0)==108;n=z?3:1;m=z?m+2|0:o;break}case 106:{n=3;m=o;break}case 116:case 122:{n=1;m=o;break}case 76:{n=2;m=o;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{n=0;break}default:{O=143;break b}}s=d[m>>0]|0;t=(s&47|0)==3;s=t?s|32:s;t=t?1:n;q=s&255;switch(q<<24>>24){case 99:{z=(r|0)>1?r:1;break}case 91:{z=r;break}case 110:{Xn(A,t,u,v);n=u;o=v;break c}default:{nm(e,0,0);do{n=c[C>>2]|0;if(n>>>0<(c[D>>2]|0)>>>0){c[C>>2]=n+1;n=d[n>>0]|0}else n=pm(e)|0}while((qm(n)|0)!=0);if(!(c[D>>2]|0))n=c[C>>2]|0;else{n=(c[C>>2]|0)+-1|0;c[C>>2]=n}x=E;z=n-(c[F>>2]|0)|0;u=ZA(c[x>>2]|0,c[x+4>>2]|0,u|0,v|0)|0;u=ZA(u|0,y()|0,z|0,((z|0)<0)<<31>>31|0)|0;z=r;v=y()|0}}x=((z|0)<0)<<31>>31;nm(e,z,x);o=c[C>>2]|0;n=c[D>>2]|0;if(o>>>0<n>>>0)c[C>>2]=o+1;else{if((pm(e)|0)<0){O=143;break b}n=c[D>>2]|0}if(n|0)c[C>>2]=(c[C>>2]|0)+-1;f:do switch(q<<24>>24){case 91:case 99:case 115:{w=(s|0)==99;g:do if((s|16|0)==115){hB(L|0,-1,257)|0;a[L>>0]=0;if((s|0)==115){a[H>>0]=0;b[G>>1]=0;b[G+2>>1]=0;a[G+4>>0]=0}}else{s=m+1|0;r=(a[s>>0]|0)==94;n=r&1;m=r?m+2|0:s;hB(L|0,n|0,257)|0;a[L>>0]=0;switch(a[m>>0]|0){case 45:{q=(n^1)&255;a[I>>0]=q;m=m+1|0;break}case 93:{q=(n^1)&255;a[J>>0]=q;m=m+1|0;break}default:q=(n^1)&255}while(1){n=a[m>>0]|0;h:do switch(n<<24>>24){case 0:{O=143;break b}case 93:break g;case 45:{o=m+1|0;n=a[o>>0]|0;switch(n<<24>>24){case 93:case 0:{n=45;break h}default:{}}m=a[m+-1>>0]|0;if((m&255)<(n&255)){m=m&255;do{m=m+1|0;a[L+m>>0]=q;n=a[o>>0]|0}while(m>>>0<(n&255)>>>0);m=o}else m=o;break}default:{}}while(0);a[L+((n&255)+1)>>0]=q;m=m+1|0}}while(0);n=w?z+1|0:31;s=(t|0)==1;t=(l|0)!=0;i:do if(s){if(t){j=uo(n<<2)|0;if(!j){k=0;j=0;O=143;break b}}else j=A;c[K>>2]=0;c[B>>2]=0;k=0;j:while(1){q=(j|0)==0;do{k:while(1){o=c[C>>2]|0;if(o>>>0<(c[D>>2]|0)>>>0){c[C>>2]=o+1;o=d[o>>0]|0}else o=pm(e)|0;if(!(a[L+(o+1)>>0]|0))break j;a[N>>0]=o;switch(zn(M,N,1,K)|0){case -1:{k=0;O=143;break b}case -2:break;default:break k}}if(!q){c[j+(k<<2)>>2]=c[M>>2];k=k+1|0}}while(!(t&(k|0)==(n|0)));n=n<<1|1;o=xo(j,n<<2)|0;if(!o){k=0;O=143;break b}else j=o}if(!(Yn(K)|0)){k=0;O=143;break b}else{q=k;k=0;r=j}}else{if(t){k=uo(n)|0;if(!k){k=0;j=0;O=143;break b}j=0;while(1){q=j;do{j=c[C>>2]|0;if(j>>>0<(c[D>>2]|0)>>>0){c[C>>2]=j+1;j=d[j>>0]|0}else j=pm(e)|0;if(!(a[L+(j+1)>>0]|0)){r=0;j=0;break i}r=q;q=q+1|0;a[k+r>>0]=j}while((q|0)!=(n|0));n=n<<1|1;o=xo(k,n)|0;if(!o){j=0;O=143;break b}else{j=q;k=o}}}if(!A)while(1){j=c[C>>2]|0;if(j>>>0<(c[D>>2]|0)>>>0){c[C>>2]=j+1;j=d[j>>0]|0}else j=pm(e)|0;if(!(a[L+(j+1)>>0]|0)){q=0;k=0;r=0;j=0;break i}}k=0;while(1){j=c[C>>2]|0;if(j>>>0<(c[D>>2]|0)>>>0){c[C>>2]=j+1;j=d[j>>0]|0}else j=pm(e)|0;if(!(a[L+(j+1)>>0]|0)){q=k;k=A;r=0;j=0;break i}a[A+k>>0]=j;k=k+1|0}}while(0);if(!(c[D>>2]|0))n=c[C>>2]|0;else{n=(c[C>>2]|0)+-1|0;c[C>>2]=n}o=E;n=n-(c[F>>2]|0)|0;n=ZA(c[o>>2]|0,c[o+4>>2]|0,n|0,((n|0)<0)<<31>>31|0)|0;o=y()|0;if((n|0)==0&(o|0)==0)break b;if(!((n|0)==(z|0)&(o|0)==(x|0)|w^1))break b;do if(t)if(s){c[A>>2]=r;break}else{c[A>>2]=k;break}while(0);if(!w){if(r|0)c[r+(q<<2)>>2]=0;if(!k){k=0;break f}a[k+q>>0]=0}break}case 120:case 88:case 112:{n=16;O=131;break}case 111:{n=8;O=131;break}case 117:case 100:{n=10;O=131;break}case 105:{n=0;O=131;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{p=+fn(e,t,0);z=E;w=c[z>>2]|0;z=c[z+4>>2]|0;x=(c[C>>2]|0)-(c[F>>2]|0)|0;x=_A(0,0,x|0,((x|0)<0)<<31>>31|0)|0;if((w|0)==(x|0)&(z|0)==(y()|0))break b;if(A)switch(t|0){case 0:{f[A>>2]=p;break f}case 1:{g[A>>3]=p;break f}case 2:{g[A>>3]=p;break f}default:break f}break}default:{}}while(0);do if((O|0)==131){O=0;n=om(e,n,0,-1,-1)|0;o=y()|0;z=E;w=c[z>>2]|0;z=c[z+4>>2]|0;x=(c[C>>2]|0)-(c[F>>2]|0)|0;x=_A(0,0,x|0,((x|0)<0)<<31>>31|0)|0;if((w|0)==(x|0)&(z|0)==(y()|0))break b;if((A|0)!=0&(s|0)==112){c[A>>2]=n;break}else{Xn(A,t,n,o);break}}while(0);o=E;n=(c[C>>2]|0)-(c[F>>2]|0)|0;o=ZA(c[o>>2]|0,c[o+4>>2]|0,u|0,v|0)|0;n=ZA(o|0,y()|0,n|0,((n|0)<0)<<31>>31|0)|0;h=h+((A|0)!=0&1)|0;o=y()|0;break c}while(0);m=m+(n&1)|0;nm(e,0,0);l=c[C>>2]|0;if(l>>>0<(c[D>>2]|0)>>>0){c[C>>2]=l+1;l=d[l>>0]|0}else l=pm(e)|0;if((l|0)!=(d[m>>0]|0)){O=23;break b}n=ZA(u|0,v|0,1,0)|0;o=y()|0}else{while(1){l=m+1|0;if(!(qm(d[l>>0]|0)|0))break;else m=l}nm(e,0,0);do{l=c[C>>2]|0;if(l>>>0<(c[D>>2]|0)>>>0){c[C>>2]=l+1;l=d[l>>0]|0}else l=pm(e)|0}while((qm(l)|0)!=0);if(!(c[D>>2]|0))l=c[C>>2]|0;else{l=(c[C>>2]|0)+-1|0;c[C>>2]=l}o=E;n=l-(c[F>>2]|0)|0;o=ZA(c[o>>2]|0,c[o+4>>2]|0,u|0,v|0)|0;n=ZA(o|0,y()|0,n|0,((n|0)<0)<<31>>31|0)|0;o=y()|0}while(0);m=m+1|0;l=a[m>>0]|0;if(!(l<<24>>24))break a;else{u=n;v=o}}if((O|0)==23){if(c[D>>2]|0)c[C>>2]=(c[C>>2]|0)+-1;if((h|0)!=0|(l|0)>-1)break;else{l=0;h=k;O=144}}else if((O|0)==143)if(!h){h=k;O=144}if((O|0)==144){k=h;h=-1}if(l){vo(k);vo(j)}}else h=0;while(0);if(P|0)Im(e);hc=Q;return h|0}function Wn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=hc;d=hc=hc+31&-32;hc=hc+16|0;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}hc=e;return a|0}function Xn(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function Yn(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0&1;return a|0}function Zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=Pm(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0<d>>>0?f:d;fB(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function _n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=hc;f=hc=hc+31&-32;hc=hc+16|0;c[f>>2]=d;d=Cm(a,b,f)|0;hc=e;return d|0}function $n(a,b,c){a=a|0;b=b|0;c=c|0;return zn(0,a,b,(c|0)==0?98120:c)|0}function ao(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;n=hc;l=hc=hc+31&-32;hc=hc+1040|0;k=l;l=l+1024|0;j=c[b>>2]|0;c[l>>2]=j;m=(a|0)!=0;h=m?e:256;i=m?a:k;g=j;a:do if((h|0)!=0&(j|0)!=0){e=0;j=i;while(1){a=d>>>2;i=a>>>0>=h>>>0;if(!(d>>>0>131|i)){i=j;break a}a=i?h:a;d=d-a|0;a=bo(j,l,a,f)|0;if((a|0)==-1)break;i=(j|0)==(k|0);h=h-(i?0:a)|0;i=i?j:j+(a<<2)|0;e=a+e|0;g=c[l>>2]|0;if((h|0)!=0&(g|0)!=0)j=i;else break a}e=-1;i=j;h=0;g=c[l>>2]|0}else e=0;while(0);b:do if((g|0)!=0?(h|0)!=0&(d|0)!=0:0){while(1){a=zn(i,g,d,f)|0;if((a+2|0)>>>0<3)break;g=(c[l>>2]|0)+a|0;c[l>>2]=g;d=d-a|0;h=h+-1|0;e=e+1|0;if(!((h|0)!=0&(d|0)!=0))break b;else i=i+4|0}switch(a|0){case -1:{e=a;break b}case 0:{c[l>>2]=0;break b}default:{c[f>>2]=0;break b}}}while(0);if(m)c[b>>2]=c[l>>2];hc=n;return e|0}function bo(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;h=c[e>>2]|0;if((g|0)!=0?(i=c[g>>2]|0,(i|0)!=0):0)if(!b){j=h;g=f;l=26}else{c[g>>2]=0;k=f;j=h;l=48}else l=5;a:do if((l|0)==5){g=(b|0)!=0;if(c[c[(co()|0)+188>>2]>>2]|0)if(g){g=f;l=33;break}else{g=f;l=15;break}if(!g){f=tn(h)|0;l=63;break}b:do if(f){g=f;while(1){i=a[h>>0]|0;if(!(i<<24>>24))break;h=h+1|0;c[b>>2]=i<<24>>24&57343;g=g+-1|0;if(!g)break b;else b=b+4|0}c[b>>2]=0;c[e>>2]=0;f=f-g|0;l=63;break a}while(0);c[e>>2]=h;l=63}while(0);c:while(1){d:do if((l|0)==15){while(1){i=a[h>>0]|0;if(((i&255)+-1|0)>>>0<127?(h&3|0)==0:0){l=c[h>>2]|0;i=l&255;if(!((l+-16843009|l)&-2139062144)){do{h=h+4|0;g=g+-4|0;i=c[h>>2]|0}while(!((i+-16843009|i)&-2139062144|0));i=i&255}}i=i&255;if((i+-1|0)>>>0>=127)break;g=g+-1|0;h=h+1|0}i=i+-194|0;if(i>>>0>50)l=57;else{i=c[4048+(i<<2)>>2]|0;j=h+1|0;l=26;continue c}}else if((l|0)==26){l=(d[j>>0]|0)>>>3;if((l+-16|l+(i>>26))>>>0>7){h=j;l=56}else{h=j+1|0;if(i&33554432){if((a[h>>0]&-64)<<24>>24!=-128){h=j;l=56;break}h=j+2|0;if(i&524288){if((a[h>>0]&-64)<<24>>24!=-128){h=j;l=56;break}h=j+3|0}}g=g+-1|0;l=15;continue c}}else if((l|0)==33){l=0;e:do if(g){while(1){i=d[h>>0]|0;j=i+-1|0;if(j>>>0<127){if((h&3|0)==0&g>>>0>4){while(1){i=c[h>>2]|0;if((i+-16843009|i)&-2139062144|0){l=42;break}c[b>>2]=i&255;c[b+4>>2]=d[h+1>>0];c[b+8>>2]=d[h+2>>0];j=h+4|0;i=b+16|0;c[b+12>>2]=d[h+3>>0];g=g+-4|0;if(g>>>0>4){b=i;h=j}else{l=41;break}}if((l|0)==41){b=i;h=j;i=a[j>>0]|0}else if((l|0)==42)i=i&255;i=i&255;j=i+-1|0;l=44}}else l=44;if((l|0)==44){l=0;if(j>>>0>=127)break}h=h+1|0;c[b>>2]=i;g=g+-1|0;if(!g)break e;else b=b+4|0}i=i+-194|0;if(i>>>0>50){l=57;break d}i=c[4048+(i<<2)>>2]|0;k=g;j=h+1|0;l=48;continue c}while(0);c[e>>2]=h;l=63;continue c}else if((l|0)==48){l=0;g=d[j>>0]|0;h=g>>>3;if((h+-16|h+(i>>26))>>>0>7){h=j;g=k;l=56}else{h=j+1|0;g=g+-128|i<<6;do if((g|0)<0){i=(d[h>>0]|0)+-128|0;if(i>>>0<=63){h=j+2|0;g=i|g<<6;if((g|0)>=0)break;i=(d[h>>0]|0)+-128|0;if(i>>>0<=63){h=j+3|0;g=i|g<<6;break}}c[(gm()|0)>>2]=84;h=j+-1|0;break d}while(0);c[b>>2]=g;b=b+4|0;g=k+-1|0;l=33;continue c}}else if((l|0)==63)return f|0;while(0);if((l|0)==56){h=h+-1|0;if(!i)l=57;else{f=b;l=61}}if((l|0)==57)if(!(a[h>>0]|0)){if(b|0){c[b>>2]=0;c[e>>2]=0}f=f-g|0;l=63;continue}else{f=b;l=61}if((l|0)==61){c[(gm()|0)>>2]=84;if(!f){f=-1;l=63;continue}}c[e>>2]=h;f=-1;l=63}return 0}function co(){return Um()|0}function eo(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;l=hc;j=hc=hc+31&-32;hc=hc+272|0;i=j;j=j+256|0;f=c[b>>2]|0;c[j>>2]=f;k=(a|0)!=0;g=k?e:256;h=k?a:i;e=f;a:do if((g|0)!=0&(f|0)!=0){f=0;a=e;while(1){e=d>>>0>=g>>>0;if(!(e|d>>>0>32)){e=a;break a}e=e?g:d;d=d-e|0;e=fo(h,j,e,0)|0;if((e|0)==-1)break;a=(h|0)==(i|0);g=g-(a?0:e)|0;h=a?h:h+e|0;f=e+f|0;e=c[j>>2]|0;if((g|0)!=0&(e|0)!=0)a=e;else break a}f=-1;g=0;e=c[j>>2]|0}else f=0;while(0);b:do if((e|0)!=0?(g|0)!=0&(d|0)!=0:0){while(1){a=Sm(h,c[e>>2]|0,0)|0;if((a+1|0)>>>0<2)break;e=(c[j>>2]|0)+4|0;c[j>>2]=e;d=d+-1|0;g=g-a|0;f=a+f|0;if(!((g|0)!=0&(d|0)!=0))break b;else h=h+a|0}if(!a)c[j>>2]=0;else f=-1}while(0);if(k)c[b>>2]=c[j>>2];hc=l;return f|0}function fo(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;j=hc;i=hc=hc+31&-32;hc=hc+16|0;a:do if(!b){e=c[d>>2]|0;f=c[e>>2]|0;if(!f)e=0;else{b=e;e=0;do{if(f>>>0>127){f=Sm(i,f,0)|0;if((f|0)==-1){e=-1;break a}}else f=1;e=f+e|0;b=b+4|0;f=c[b>>2]|0}while((f|0)!=0)}}else{b:do if(e>>>0>3){f=e;g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h)break;h=Sm(b,h,0)|0;if((h|0)==-1){e=-1;break a}b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(f>>>0<=3)break b}a[b>>0]=0;c[d>>2]=0;e=e-f|0;break a}else f=e;while(0);if(f){g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h){g=20;break}h=Sm(i,h,0)|0;if((h|0)==-1){e=-1;break a}if(f>>>0<h>>>0){g=23;break}Sm(b,c[g>>2]|0,0)|0;b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(!f)break a}if((g|0)==20){a[b>>0]=0;c[d>>2]=0;e=e-f|0;break}else if((g|0)==23){e=e-f|0;break}}}while(0);hc=j;return e|0}function go(a){a=a|0;var b=0,e=0,f=0;if((c[a+76>>2]|0)>=0?(Hm(a)|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0}else b=rm(a)|0;Im(a)}else f=3;do if((f|0)==3){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0;break}else{b=rm(a)|0;break}}while(0);return b|0}function ho(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=hc;e=hc=hc+31&-32;hc=hc+16|0;c[e>>2]=c[d>>2];e=Bm(0,0,b,e)|0;if((e|0)>=0?(f=e+1|0,g=uo(f)|0,c[a>>2]=g,(g|0)!=0):0)a=Bm(g,f,b,d)|0;else a=-1;hc=h;return a|0}function io(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;do if((b|0)!=-1){if((c[d+76>>2]|0)>-1)g=Hm(d)|0;else g=0;h=d+4|0;e=c[h>>2]|0;if(!e){sm(d)|0;e=c[h>>2]|0;if(e|0){f=e;i=6}}else{f=e;i=6}if((i|0)==6?f>>>0>((c[d+44>>2]|0)+-8|0)>>>0:0){i=f+-1|0;c[h>>2]=i;a[i>>0]=b;c[d>>2]=c[d>>2]&-17;if(!g)break;Im(d);break}if(g){Im(d);b=-1}else b=-1}else b=-1;while(0);return b|0}function jo(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?(Hm(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=Kn(d,b)|0;Im(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=Kn(d,b)|0}while(0);return e|0}function ko(a,b){a=a|0;b=b|0;var d=0,e=0;d=hc;e=hc=hc+31&-32;hc=hc+16|0;c[e>>2]=b;b=Cm(c[12101]|0,a,e)|0;hc=d;return b|0}function lo(a,b){a=a|0;b=b|0;return +(+mo(a,b,1))}function mo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,h=0,i=0;g=hc;e=hc=hc+31&-32;hc=hc+144|0;hB(e|0,0,144)|0;i=e+4|0;c[i>>2]=a;h=e+8|0;c[h>>2]=-1;c[e+44>>2]=a;c[e+76>>2]=-1;nm(e,0,0);f=+fn(e,d,1);e=e+120|0;d=(c[i>>2]|0)-(c[h>>2]|0)|0;d=ZA(c[e>>2]|0,c[e+4>>2]|0,d|0,((d|0)<0)<<31>>31|0)|0;e=y()|0;if(b|0)c[b>>2]=(d|0)==0&(e|0)==0?a:a+d|0;hc=g;return +f}function no(a,b){a=a|0;b=b|0;return +(+mo(a,b,0))}function oo(a,b){a=a|0;b=b|0;return +(+mo(a,b,2))}function po(a,b,c){a=a|0;b=b|0;c=c|0;return +(+no(a,b))}function qo(a,b,c){a=a|0;b=b|0;c=c|0;return +(+lo(a,b))}function ro(a,b,c){a=a|0;b=b|0;c=c|0;return +(+oo(a,b))}function so(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=a;while(1){d=d+-1|0;c[e>>2]=b;if(!d)break;else e=e+4|0}}return a|0}function to(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(a-b>>2>>>0>=d>>>0){if(d|0){e=a;while(1){d=d+-1|0;c[e>>2]=c[b>>2];if(!d)break;else{b=b+4|0;e=e+4|0}}}}else do{d=d+-1|0;c[a+(d<<2)>>2]=c[b+(d<<2)>>2]}while((d|0)!=0);return a|0}function uo(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=hc;n=hc=hc+31&-32;hc=hc+16|0;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;m=c[24531]|0;d=m>>>a;if(d&3|0){b=(d&1^1)+a|0;a=98164+(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[24531]=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;hc=w;return v|0}l=c[24533]|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=98164+(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[24531]=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[24536]|0;b=l>>>3;d=98164+(b<<1<<2)|0;b=1<<b;if(!(a&b)){c[24531]=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[24533]=h;c[24536]=f;v=i;hc=w;return v|0}g=c[24532]|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[98428+((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=98428+(b<<2)|0;if((i|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[24532]=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[24536]|0;b=l>>>3;d=98164+(b<<1<<2)|0;b=1<<b;if(!(b&m)){c[24531]=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[24533]=j;c[24536]=h}v=i+8|0;hc=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[24532]|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[98428+(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[98428+((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[24533]|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=98428+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=e&~(1<<a);c[24532]=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=98164+(b<<1<<2)|0;a=c[24531]|0;b=1<<b;if(!(a&b)){c[24531]=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=98428+(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[24532]=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;hc=w;return v|0}else m=k}else m=k}else m=-1;while(0);d=c[24533]|0;if(d>>>0>=m>>>0){b=d-m|0;a=c[24536]|0;if(b>>>0>15){v=a+m|0;c[24536]=v;c[24533]=b;c[v+4>>2]=b|1;c[a+d>>2]=b;c[a+4>>2]=m|3}else{c[24533]=0;c[24536]=0;c[a+4>>2]=d|3;v=a+d+4|0;c[v>>2]=c[v>>2]|1}v=a+8|0;hc=w;return v|0}h=c[24534]|0;if(h>>>0>m>>>0){t=h-m|0;c[24534]=t;v=c[24537]|0;u=v+m|0;c[24537]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;hc=w;return v|0}if(!(c[24649]|0)){c[24651]=4096;c[24650]=4096;c[24652]=-1;c[24653]=-1;c[24654]=0;c[24642]=0;c[24649]=n&-16^1431655768;a=4096}else a=c[24651]|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;hc=w;return v|0}a=c[24641]|0;if(a|0?(l=c[24639]|0,n=l+k|0,n>>>0<=l>>>0|n>>>0>a>>>0):0){v=0;hc=w;return v|0}d:do if(!(c[24642]&4)){d=c[24537]|0;e:do if(d){e=98572;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=jB(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=jB(0)|0;if((d|0)!=(-1|0)?(b=d,o=c[24650]|0,p=o+-1|0,b=((p&b|0)==0?0:(p+b&0-o)-b|0)+k|0,o=c[24639]|0,p=b+o|0,b>>>0>m>>>0&b>>>0<2147483647):0){n=c[24641]|0;if(n|0?p>>>0<=o>>>0|p>>>0>n>>>0:0){b=0;break}a=jB(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[24651]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;q=145;break d}if((jB(a|0)|0)==(-1|0)){jB(d|0)|0;b=0;break}else{h=a+b|0;g=e;q=145;break d}}while(0);c[24642]=c[24642]|4;q=143}else{b=0;q=143}while(0);if(((q|0)==143?k>>>0<2147483647:0)?(t=jB(k|0)|0,p=jB(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[24639]|0)+h|0;c[24639]=b;if(b>>>0>(c[24640]|0)>>>0)c[24640]=b;j=c[24537]|0;f:do if(j){b=98572;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[24534]|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[24537]=u;c[24534]=t;c[u+4>>2]=t|1;c[j+v+4>>2]=40;c[24538]=c[24653];break}if(g>>>0<(c[24535]|0)>>>0)c[24535]=g;d=g+h|0;b=98572;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[24534]|0)+i|0;c[24534]=v;c[24537]=k;c[k+4>>2]=v|1}else{if((c[24536]|0)==(b|0)){v=(c[24533]|0)+i|0;c[24533]=v;c[24536]=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[24531]=c[24531]&~(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=98428+(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[24532]=c[24532]&~(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=98164+(b<<1<<2)|0;a=c[24531]|0;b=1<<b;if(!(a&b)){c[24531]=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=98428+(e<<2)|0;c[k+28>>2]=e;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[24532]|0;d=1<<e;if(!(a&d)){c[24532]=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;hc=w;return v|0}b=98572;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[24537]=u;c[24534]=t;c[u+4>>2]=t|1;c[g+d+4>>2]=40;c[24538]=c[24653];d=a+4|0;c[d>>2]=27;c[b>>2]=c[24643];c[b+4>>2]=c[24644];c[b+8>>2]=c[24645];c[b+12>>2]=c[24646];c[24643]=g;c[24644]=h;c[24646]=0;c[24645]=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=98164+(b<<1<<2)|0;a=c[24531]|0;b=1<<b;if(!(a&b)){c[24531]=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=98428+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[f>>2]=0;b=c[24532]|0;a=1<<e;if(!(b&a)){c[24532]=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[24535]|0;if((v|0)==0|g>>>0<v>>>0)c[24535]=g;c[24643]=g;c[24644]=h;c[24646]=0;c[24540]=c[24649];c[24539]=-1;c[24544]=98164;c[24543]=98164;c[24546]=98172;c[24545]=98172;c[24548]=98180;c[24547]=98180;c[24550]=98188;c[24549]=98188;c[24552]=98196;c[24551]=98196;c[24554]=98204;c[24553]=98204;c[24556]=98212;c[24555]=98212;c[24558]=98220;c[24557]=98220;c[24560]=98228;c[24559]=98228;c[24562]=98236;c[24561]=98236;c[24564]=98244;c[24563]=98244;c[24566]=98252;c[24565]=98252;c[24568]=98260;c[24567]=98260;c[24570]=98268;c[24569]=98268;c[24572]=98276;c[24571]=98276;c[24574]=98284;c[24573]=98284;c[24576]=98292;c[24575]=98292;c[24578]=98300;c[24577]=98300;c[24580]=98308;c[24579]=98308;c[24582]=98316;c[24581]=98316;c[24584]=98324;c[24583]=98324;c[24586]=98332;c[24585]=98332;c[24588]=98340;c[24587]=98340;c[24590]=98348;c[24589]=98348;c[24592]=98356;c[24591]=98356;c[24594]=98364;c[24593]=98364;c[24596]=98372;c[24595]=98372;c[24598]=98380;c[24597]=98380;c[24600]=98388;c[24599]=98388;c[24602]=98396;c[24601]=98396;c[24604]=98404;c[24603]=98404;c[24606]=98412;c[24605]=98412;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[24537]=u;c[24534]=t;c[u+4>>2]=t|1;c[g+v+4>>2]=40;c[24538]=c[24653]}while(0);b=c[24534]|0;if(b>>>0>m>>>0){t=b-m|0;c[24534]=t;v=c[24537]|0;u=v+m|0;c[24537]=u;c[u+4>>2]=t|1;c[v+4>>2]=m|3;v=v+8|0;hc=w;return v|0}}c[(gm()|0)>>2]=12;v=0;hc=w;return v|0}function vo(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[24535]|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[24536]|0)==(h|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[24533]=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[24531]=c[24531]&~(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=98428+(b<<2)|0;if((c[d>>2]|0)==(h|0)){c[d>>2]=a;if(!a){c[24532]=c[24532]&~(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[24537]|0)==(j|0)){j=(c[24534]|0)+b|0;c[24534]=j;c[24537]=i;c[i+4>>2]=j|1;if((i|0)!=(c[24536]|0))return;c[24536]=0;c[24533]=0;return}if((c[24536]|0)==(j|0)){j=(c[24533]|0)+b|0;c[24533]=j;c[24536]=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[24531]=c[24531]&~(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=98428+(a<<2)|0;if((c[b>>2]|0)==(j|0)){c[b>>2]=d;if(!d){c[24532]=c[24532]&~(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[24536]|0)){c[24533]=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=98164+(a<<1<<2)|0;b=c[24531]|0;a=1<<a;if(!(b&a)){c[24531]=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=98428+(e<<2)|0;c[i+28>>2]=e;c[i+20>>2]=0;c[i+16>>2]=0;b=c[24532]|0;d=1<<e;a:do if(!(b&d)){c[24532]=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[24539]|0)+-1|0;c[24539]=j;if(j|0)return;a=98580;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[24539]=-1;return}function wo(a,b){a=a|0;b=b|0;var d=0;if(a){d=u(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;a=uo(d)|0;if(!a)return a|0;if(!(c[a+-4>>2]&3))return a|0;hB(a|0,0,d|0)|0;return a|0}function xo(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){b=uo(b)|0;return b|0}if(b>>>0>4294967231){c[(gm()|0)>>2]=12;b=0;return b|0}d=yo(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){b=d+8|0;return b|0}d=uo(b)|0;if(!d){b=0;return b|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;fB(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;vo(a);b=d;return b|0}function yo(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;l=a+4|0;m=c[l>>2]|0;d=m&-8;i=a+d|0;if(!(m&3)){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[24651]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;k=a+b|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|3;m=i+4|0;c[m>>2]=c[m>>2]|1;zo(k,d);return a|0}if((c[24537]|0)==(i|0)){k=(c[24534]|0)+d|0;d=k-b|0;e=a+b|0;if(k>>>0<=b>>>0){a=0;return a|0}c[l>>2]=m&1|b|2;c[e+4>>2]=d|1;c[24537]=e;c[24534]=d;return a|0}if((c[24536]|0)==(i|0)){e=(c[24533]|0)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){k=a+b|0;e=a+e|0;c[l>>2]=m&1|b|2;c[k+4>>2]=d|1;c[e>>2]=d;e=e+4|0;c[e>>2]=c[e>>2]&-2;e=k}else{c[l>>2]=m&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[24533]=d;c[24536]=e;return a|0}e=c[i+4>>2]|0;if(e&2|0){a=0;return a|0}j=(e&-8)+d|0;if(j>>>0<b>>>0){a=0;return a|0}k=j-b|0;f=e>>>3;do if(e>>>0<256){e=c[i+8>>2]|0;d=c[i+12>>2]|0;if((d|0)==(e|0)){c[24531]=c[24531]&~(1<<f);break}else{c[e+12>>2]=d;c[d+8>>2]=e;break}}else{h=c[i+24>>2]|0;d=c[i+12>>2]|0;do if((d|0)==(i|0)){e=i+16|0;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){f=0;break}}else e=f;while(1){g=d+20|0;f=c[g>>2]|0;if(!f){g=d+16|0;f=c[g>>2]|0;if(!f)break;else{d=f;e=g}}else{d=f;e=g}}c[e>>2]=0;f=d}else{f=c[i+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(h|0){d=c[i+28>>2]|0;e=98428+(d<<2)|0;if((c[e>>2]|0)==(i|0)){c[e>>2]=f;if(!f){c[24532]=c[24532]&~(1<<d);break}}else{g=h+16|0;c[((c[g>>2]|0)==(i|0)?g:h+20|0)>>2]=f;if(!f)break}c[f+24>>2]=h;d=i+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);if(k>>>0<16){c[l>>2]=m&1|j|2;m=a+j+4|0;c[m>>2]=c[m>>2]|1;return a|0}else{i=a+b|0;c[l>>2]=m&1|b|2;c[i+4>>2]=k|3;m=a+j+4|0;c[m>>2]=c[m>>2]|1;zo(i,k);return a|0}return 0}function zo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;h=a+(0-f)|0;b=f+b|0;if((c[24536]|0)==(h|0)){a=i+4|0;d=c[a>>2]|0;if((d&3|0)!=3)break;c[24533]=b;c[a>>2]=d&-2;c[h+4>>2]=b|1;c[i>>2]=b;return}e=f>>>3;if(f>>>0<256){a=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(a|0)){c[24531]=c[24531]&~(1<<e);break}else{c[a+12>>2]=d;c[d+8>>2]=a;break}}g=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+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{f=c[h+8>>2]|0;c[f+12>>2]=a;c[a+8>>2]=f}while(0);if(g){d=c[h+28>>2]|0;e=98428+(d<<2)|0;if((c[e>>2]|0)==(h|0)){c[e>>2]=a;if(!a){c[24532]=c[24532]&~(1<<d);break}}else{f=g+16|0;c[((c[f>>2]|0)==(h|0)?f:g+20|0)>>2]=a;if(!a)break}c[a+24>>2]=g;d=h+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){c[a+20>>2]=d;c[d+24>>2]=a}}}else h=a;while(0);a=i+4|0;e=c[a>>2]|0;if(!(e&2)){if((c[24537]|0)==(i|0)){i=(c[24534]|0)+b|0;c[24534]=i;c[24537]=h;c[h+4>>2]=i|1;if((h|0)!=(c[24536]|0))return;c[24536]=0;c[24533]=0;return}if((c[24536]|0)==(i|0)){i=(c[24533]|0)+b|0;c[24533]=i;c[24536]=h;c[h+4>>2]=i|1;c[h+i>>2]=i;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){a=c[i+8>>2]|0;b=c[i+12>>2]|0;if((b|0)==(a|0)){c[24531]=c[24531]&~(1<<d);break}else{c[a+12>>2]=b;c[b+8>>2]=a;break}}else{g=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+16|0;d=a+4|0;b=c[d>>2]|0;if(!b){b=c[a>>2]|0;if(!b){d=0;break}}else a=d;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);if(g|0){b=c[i+28>>2]|0;a=98428+(b<<2)|0;if((c[a>>2]|0)==(i|0)){c[a>>2]=d;if(!d){c[24532]=c[24532]&~(1<<b);break}}else{e=g+16|0;c[((c[e>>2]|0)==(i|0)?e:g+20|0)>>2]=d;if(!d)break}c[d+24>>2]=g;b=i+16|0;a=c[b>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}b=c[b+4>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}}while(0);c[h+4>>2]=f|1;c[h+f>>2]=f;if((h|0)==(c[24536]|0)){c[24533]=f;return}}else{c[a>>2]=e&-2;c[h+4>>2]=b|1;c[h+b>>2]=b;f=b}b=f>>>3;if(f>>>0<256){d=98164+(b<<1<<2)|0;a=c[24531]|0;b=1<<b;if(!(a&b)){c[24531]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;return}b=f>>>8;if(b)if(f>>>0>16777215)e=31;else{g=(b+1048320|0)>>>16&8;i=b<<g;d=(i+520192|0)>>>16&4;i=i<<d;e=(i+245760|0)>>>16&2;e=14-(d|g|e)+(i<<e>>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=98428+(e<<2)|0;c[h+28>>2]=e;c[h+20>>2]=0;c[h+16>>2]=0;a=c[24532]|0;d=1<<e;if(!(a&d)){c[24532]=a|d;c[b>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}b=c[b>>2]|0;a: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 a}else{e=e<<1;b=a}}c[d>>2]=h;c[h+24>>2]=b;c[h+12>>2]=h;c[h+8>>2]=h;return}while(0);g=b+8|0;i=c[g>>2]|0;c[i+12>>2]=h;c[g>>2]=h;c[h+8>>2]=i;c[h+12>>2]=b;c[h+24>>2]=0;return}function Ao(a,b){a=a|0;b=b|0;if(a>>>0<9){b=uo(b)|0;return b|0}else{b=Bo(a,b)|0;return b|0}return 0}function Bo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=a>>>0>16?a:16;if(!(d+-1&d))a=d;else{a=16;while(1)if(a>>>0<d>>>0)a=a<<1;else break}if((-64-a|0)>>>0<=b>>>0){c[(gm()|0)>>2]=12;h=0;return h|0}g=b>>>0<11?16:b+11&-8;d=uo(g+12+a|0)|0;if(!d){h=0;return h|0}f=d+-8|0;do if(a+-1&d){e=(d+a+-1&0-a)+-8|0;b=f;e=(e-b|0)>>>0>15?e:e+a|0;b=e-b|0;a=d+-4|0;i=c[a>>2]|0;d=(i&-8)-b|0;if(!(i&3)){c[e>>2]=(c[f>>2]|0)+b;c[e+4>>2]=d;a=e;b=e;break}else{i=e+4|0;c[i>>2]=d|c[i>>2]&1|2;d=e+d+4|0;c[d>>2]=c[d>>2]|1;c[a>>2]=b|c[a>>2]&1|2;c[i>>2]=c[i>>2]|1;zo(f,b);a=e;b=e;break}}else{a=f;b=f}while(0);a=a+4|0;d=c[a>>2]|0;if(d&3|0?(h=d&-8,h>>>0>(g+16|0)>>>0):0){i=h-g|0;f=b+g|0;c[a>>2]=g|d&1|2;c[f+4>>2]=i|3;h=b+h+4|0;c[h>>2]=c[h>>2]|1;zo(f,i)}i=b+8|0;return i|0}function Co(a,b){a=a|0;b=b|0;return 0}function Do(a){a=a|0;return 0}function Eo(a){a=a|0;return 0}function Fo(a){a=a|0;return 0}function Go(a,b){a=a|0;b=b|0;if(!a){b=22;return b|0}b=uo(8)|0;c[b>>2]=0;c[b+4>>2]=38177486;c[a>>2]=b;b=0;return b|0}function Ho(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 Io(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 Jo(a,b){a=a|0;b=b|0;if((c[a>>2]|0)==324508639)return 0;vc[b&3]();c[a>>2]=324508639;return 0}function Ko(a){a=a|0;Lo(a);return}function Lo(a){a=a|0;c[a>>2]=48684;Mo(a,0);er(a+28|0);vo(c[a+32>>2]|0);vo(c[a+36>>2]|0);vo(c[a+48>>2]|0);vo(c[a+60>>2]|0);return}function Mo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=a+32|0;f=a+36|0;d=c[a+40>>2]|0;while(1){if(!d)break;g=d+-1|0;yc[c[(c[e>>2]|0)+(g<<2)>>2]&31](b,a,c[(c[f>>2]|0)+(g<<2)>>2]|0);d=g}return}function No(a){a=a|0;Lo(a);nz(a);return}function Oo(a){a=a|0;Lo(a);return}function Po(a){a=a|0;c[a>>2]=48700;er(a+4|0);return}function Qo(a){a=a|0;Po(a);nz(a);return}function Ro(a,b){a=a|0;b=b|0;return}function So(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function To(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function Uo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a;c[e>>2]=0;c[e+4>>2]=0;e=a+8|0;c[e>>2]=-1;c[e+4>>2]=-1;return}function Vo(a){a=a|0;return 0}function Wo(a){a=a|0;return 0}function Xo(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;bp()|0;i=b+12|0;j=b+16|0;h=0;while(1){if((h|0)>=(e|0))break;f=c[i>>2]|0;g=c[j>>2]|0;if(f>>>0<g>>>0){g=g-f|0;k=e-h|0;g=(k|0)<(g|0)?k:g;dp(d,f,g)|0;c[i>>2]=(c[i>>2]|0)+g;d=d+g|0;f=g}else{f=kc[c[(c[b>>2]|0)+40>>2]&127](b)|0;if((f|0)==-1)break;a[d>>0]=ep(f)|0;d=d+1|0;f=1}h=f+h|0}return h|0}function Yo(a){a=a|0;return bp()|0}function Zo(b){b=b|0;var d=0;d=kc[c[(c[b>>2]|0)+36>>2]&127](b)|0;if((d|0)==(bp()|0))b=bp()|0;else{d=b+12|0;b=c[d>>2]|0;c[d>>2]=b+1;b=cp(a[b>>0]|0)|0}return b|0}function _o(a,b){a=a|0;b=b|0;return bp()|0}function $o(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;i=bp()|0;j=b+24|0;k=b+28|0;f=0;while(1){if((f|0)>=(e|0))break;g=c[j>>2]|0;h=c[k>>2]|0;if(g>>>0<h>>>0){h=h-g|0;l=e-f|0;h=(l|0)<(h|0)?l:h;dp(g,d,h)|0;c[j>>2]=(c[j>>2]|0)+h;d=d+h|0;f=h+f|0}else{h=c[(c[b>>2]|0)+52>>2]|0;l=cp(a[d>>0]|0)|0;if((mc[h&31](b,l)|0)==(i|0))break;d=d+1|0;f=f+1|0}}return f|0}function ap(a,b){a=a|0;b=b|0;return bp()|0}function bp(){return -1}function cp(a){a=a|0;return a&255|0}function dp(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)fB(a|0,b|0,c|0)|0;return a|0}function ep(a){a=a|0;return a&255|0}function fp(a){a=a|0;c[a>>2]=48764;er(a+4|0);return}function gp(a){a=a|0;fp(a);nz(a);return}function hp(a,b){a=a|0;b=b|0;return}function ip(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function jp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function kp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a;c[e>>2]=0;c[e+4>>2]=0;e=a+8|0;c[e>>2]=-1;c[e+4>>2]=-1;return}function lp(a){a=a|0;return 0}function mp(a){a=a|0;return 0}function np(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;tp()|0;h=a+12|0;i=a+16|0;g=0;while(1){if((g|0)>=(d|0))break;e=c[h>>2]|0;f=c[i>>2]|0;if(e>>>0<f>>>0){f=f-e>>2;j=d-g|0;f=(j|0)<(f|0)?j:f;vp(b,e,f)|0;c[h>>2]=(c[h>>2]|0)+(f<<2);b=b+(f<<2)|0;e=f}else{e=kc[c[(c[a>>2]|0)+40>>2]&127](a)|0;if((e|0)==-1)break;c[b>>2]=wp(e)|0;b=b+4|0;e=1}g=e+g|0}return g|0}function op(a){a=a|0;return tp()|0}function pp(a){a=a|0;var b=0;b=kc[c[(c[a>>2]|0)+36>>2]&127](a)|0;if((b|0)==(tp()|0))a=tp()|0;else{b=a+12|0;a=c[b>>2]|0;c[b>>2]=a+4;a=up(c[a>>2]|0)|0}return a|0}function qp(a,b){a=a|0;b=b|0;return tp()|0}function rp(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;h=tp()|0;i=a+24|0;j=a+28|0;e=0;while(1){if((e|0)>=(d|0))break;f=c[i>>2]|0;g=c[j>>2]|0;if(f>>>0<g>>>0){g=g-f>>2;k=d-e|0;g=(k|0)<(g|0)?k:g;vp(f,b,g)|0;c[i>>2]=(c[i>>2]|0)+(g<<2);b=b+(g<<2)|0;e=g+e|0}else{g=c[(c[a>>2]|0)+52>>2]|0;k=up(c[b>>2]|0)|0;if((mc[g&31](a,k)|0)==(h|0))break;b=b+4|0;e=e+1|0}}return e|0}function sp(a,b){a=a|0;b=b|0;return tp()|0}function tp(){return -1}function up(a){a=a|0;return a|0}function vp(a,b,c){a=a|0;b=b|0;c=c|0;if(c)In(a,b,c)|0;return a|0}function wp(a){a=a|0;return a|0}function xp(a){a=a|0;Bp(a,48860);Ko(a+8|0);return}function yp(a){a=a|0;xp(a);nz(a);return}function zp(a){a=a|0;xp(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Ap(a){a=a|0;yp(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Bp(a,b){a=a|0;b=b|0;return}function Cp(a){a=a|0;Gp(a,48908);Oo(a+8|0);return}function Dp(a){a=a|0;Cp(a);nz(a);return}function Ep(a){a=a|0;Cp(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Fp(a){a=a|0;Dp(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Gp(a,b){a=a|0;b=b|0;return}function Hp(a){a=a|0;Lp(a,48956);Ko(a+4|0);return}function Ip(a){a=a|0;Hp(a);nz(a);return}function Jp(a){a=a|0;Hp(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Kp(a){a=a|0;Ip(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Lp(a,b){a=a|0;b=b|0;return}function Mp(a){a=a|0;Qp(a,49004);Oo(a+4|0);return}function Np(a){a=a|0;Mp(a);nz(a);return}function Op(a){a=a|0;Mp(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Pp(a){a=a|0;Np(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Qp(a,b){a=a|0;b=b|0;return}function Rp(a){a=a|0;return tn(a)|0}function Sp(a,b){a=a|0;b=b|0;var d=0;c[a+24>>2]=b;c[a+16>>2]=(b|0)==0&1;c[a+20>>2]=0;c[a+4>>2]=4098;c[a+12>>2]=0;c[a+8>>2]=6;d=a+28|0;b=a+32|0;a=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0));fz(d);return}function Tp(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function Up(a,b){a=a|0;b=b|0;dz(a,b+28|0);return}function Vp(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function Wp(a){a=a|0;c[a>>2]=48700;fz(a+4|0);a=a+8|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function Xp(a){a=a|0;c[a>>2]=48764;fz(a+4|0);a=a+8|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;return}function Yp(){_p();return}function Zp(){return}function _p(){$p(0);return}function $p(a){a=a|0;var b=0,d=0;b=c[12100]|0;aq(99300,b,99356);c[24655]=48832;c[24657]=48852;c[24656]=0;Sp(98628,99300);c[24675]=0;c[24676]=bp()|0;bq(99364,b,99420);c[24677]=48880;c[24679]=48900;c[24678]=0;Sp(98716,99364);c[24697]=0;c[24698]=tp()|0;b=c[12101]|0;cq(99428,b,99476);c[24699]=48928;c[24700]=48948;Sp(98800,99428);c[24718]=0;c[24719]=bp()|0;dq(99484,b,99532);c[24720]=48976;c[24721]=48996;Sp(98884,99484);c[24739]=0;c[24740]=tp()|0;b=c[12099]|0;cq(99540,b,99588);c[24741]=48928;c[24742]=48948;Sp(98968,99540);c[24760]=0;c[24761]=bp()|0;a=c[98964+(c[(c[24741]|0)+-12>>2]|0)+24>>2]|0;c[24783]=48928;c[24784]=48948;Sp(99136,a);c[24802]=0;c[24803]=bp()|0;dq(99596,b,99644);c[24762]=48976;c[24763]=48996;Sp(99052,99596);c[24781]=0;c[24782]=tp()|0;b=c[99048+(c[(c[24762]|0)+-12>>2]|0)+24>>2]|0;c[24804]=48976;c[24805]=48996;Sp(99220,b);c[24823]=0;c[24824]=tp()|0;c[98620+(c[(c[24655]|0)+-12>>2]|0)+72>>2]=98796;c[98708+(c[(c[24677]|0)+-12>>2]|0)+72>>2]=98880;b=(c[24741]|0)+-12|0;a=98964+(c[b>>2]|0)+4|0;c[a>>2]=c[a>>2]|8192;a=(c[24762]|0)+-12|0;d=99048+(c[a>>2]|0)+4|0;c[d>>2]=c[d>>2]|8192;c[98964+(c[b>>2]|0)+72>>2]=98796;c[99048+(c[a>>2]|0)+72>>2]=98880;return}function aq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=hc;g=hc=hc+31&-32;hc=hc+16|0;Wp(b);c[b>>2]=49212;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=bp()|0;a[b+52>>0]=0;e=c[(c[b>>2]|0)+8>>2]|0;dz(g,b+4|0);xc[e&63](b,g);er(g);hc=f;return}function bq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=hc;g=hc=hc+31&-32;hc=hc+16|0;Xp(b);c[b>>2]=49148;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=tp()|0;a[b+52>>0]=0;e=c[(c[b>>2]|0)+8>>2]|0;dz(g,b+4|0);xc[e&63](b,g);er(g);hc=f;return}function cq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=hc;g=hc=hc+31&-32;hc=hc+16|0;Wp(b);c[b>>2]=49084;c[b+32>>2]=d;dz(g,b+4|0);d=dr(g,99972)|0;er(g);c[b+36>>2]=d;c[b+40>>2]=e;a[b+44>>0]=(kc[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;hc=f;return}function dq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=hc;g=hc=hc+31&-32;hc=hc+16|0;Xp(b);c[b>>2]=49020;c[b+32>>2]=d;dz(g,b+4|0);d=dr(g,99980)|0;er(g);c[b+36>>2]=d;c[b+40>>2]=e;a[b+44>>0]=(kc[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;hc=f;return}function eq(a){a=a|0;fp(a);nz(a);return}function fq(b,d){b=b|0;d=d|0;kc[c[(c[b>>2]|0)+24>>2]&127](b)|0;d=dr(d,99980)|0;c[b+36>>2]=d;a[b+44>>0]=(kc[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;return}function gq(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=hc;e=hc=hc+31&-32;hc=hc+16|0;d=e+8|0;f=a+36|0;g=a+40|0;h=d+8|0;i=d;b=a+32|0;a:while(1){a=c[f>>2]|0;a=qc[c[(c[a>>2]|0)+20>>2]&31](a,c[g>>2]|0,d,h,e)|0;l=(c[e>>2]|0)-i|0;if((Jn(d,1,l,c[b>>2]|0)|0)!=(l|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{j=4;break a}}}if((j|0)==4)a=((Qn(c[b>>2]|0)|0)!=0)<<31>>31;hc=k;return a|0}function hq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if(!(a[b+44>>0]|0)){f=0;while(1){if((f|0)>=(e|0))break a;h=c[(c[b>>2]|0)+52>>2]|0;g=up(c[d>>2]|0)|0;g=mc[h&31](b,g)|0;if((g|0)==(tp()|0))break a;f=f+1|0;d=d+4|0}}else f=Jn(d,4,e,c[b+32>>2]|0)|0;while(0);return f|0}function iq(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=hc;n=hc=hc+31&-32;hc=hc+32|0;l=n+16|0;f=n+8|0;m=n+4|0;do if(!(Vp(d,tp()|0)|0)){c[f>>2]=wp(d)|0;if(a[b+44>>0]|0){if((Jn(f,4,1,c[b+32>>2]|0)|0)==1){e=15;break}b=tp()|0;break}c[m>>2]=l;e=f+4|0;g=b+36|0;h=b+40|0;i=l+8|0;j=l;k=b+32|0;while(1){b=c[g>>2]|0;b=uc[c[(c[b>>2]|0)+12>>2]&15](b,c[h>>2]|0,f,e,n,l,i,m)|0;if((c[n>>2]|0)==(f|0)){e=14;break}if((b|0)==3){e=8;break}if(b>>>0>=2){e=14;break}f=(c[m>>2]|0)-j|0;if((Jn(l,1,f,c[k>>2]|0)|0)!=(f|0)){e=14;break}if((b|0)==1)f=c[n>>2]|0;else{e=13;break}}if((e|0)==8)if((Jn(f,1,1,c[k>>2]|0)|0)==1)e=13;else e=14;if((e|0)==13){e=15;break}else if((e|0)==14){b=tp()|0;break}}else e=15;while(0);if((e|0)==15)b=jq(d)|0;hc=o;return b|0}function jq(a){a=a|0;if(Vp(a,tp()|0)|0)a=~(tp()|0);return a|0}function kq(a){a=a|0;Po(a);nz(a);return}function lq(b,d){b=b|0;d=d|0;kc[c[(c[b>>2]|0)+24>>2]&127](b)|0;d=dr(d,99972)|0;c[b+36>>2]=d;a[b+44>>0]=(kc[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;return}function mq(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=hc;e=hc=hc+31&-32;hc=hc+16|0;d=e+8|0;f=a+36|0;g=a+40|0;h=d+8|0;i=d;b=a+32|0;a:while(1){a=c[f>>2]|0;a=qc[c[(c[a>>2]|0)+20>>2]&31](a,c[g>>2]|0,d,h,e)|0;l=(c[e>>2]|0)-i|0;if((Jn(d,1,l,c[b>>2]|0)|0)!=(l|0)){a=-1;break}switch(a|0){case 1:break;case 2:{a=-1;break a}default:{j=4;break a}}}if((j|0)==4)a=((Qn(c[b>>2]|0)|0)!=0)<<31>>31;hc=k;return a|0}function nq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;a:do if(!(a[b+44>>0]|0)){f=0;while(1){if((f|0)>=(e|0))break a;h=c[(c[b>>2]|0)+52>>2]|0;g=cp(a[d>>0]|0)|0;g=mc[h&31](b,g)|0;if((g|0)==(bp()|0))break a;f=f+1|0;d=d+1|0}}else f=Jn(d,1,e,c[b+32>>2]|0)|0;while(0);return f|0}function oq(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=hc;n=hc=hc+31&-32;hc=hc+32|0;l=n+16|0;f=n+8|0;m=n+4|0;do if(!(Tp(d,bp()|0)|0)){a[f>>0]=ep(d)|0;if(a[b+44>>0]|0){if((Jn(f,1,1,c[b+32>>2]|0)|0)==1){e=15;break}b=bp()|0;break}c[m>>2]=l;e=f+1|0;g=b+36|0;h=b+40|0;i=l+8|0;j=l;k=b+32|0;while(1){b=c[g>>2]|0;b=uc[c[(c[b>>2]|0)+12>>2]&15](b,c[h>>2]|0,f,e,n,l,i,m)|0;if((c[n>>2]|0)==(f|0)){e=14;break}if((b|0)==3){e=8;break}if(b>>>0>=2){e=14;break}f=(c[m>>2]|0)-j|0;if((Jn(l,1,f,c[k>>2]|0)|0)!=(f|0)){e=14;break}if((b|0)==1)f=c[n>>2]|0;else{e=13;break}}if((e|0)==8)if((Jn(f,1,1,c[k>>2]|0)|0)==1)e=13;else e=14;if((e|0)==13){e=15;break}else if((e|0)==14){b=bp()|0;break}}else e=15;while(0);if((e|0)==15)b=pq(d)|0;hc=o;return b|0}function pq(a){a=a|0;if(Tp(a,bp()|0)|0)a=~(bp()|0);return a|0}function qq(a){a=a|0;fp(a);nz(a);return}function rq(b,d){b=b|0;d=d|0;var e=0,f=0;f=dr(d,99980)|0;e=b+36|0;c[e>>2]=f;d=b+44|0;c[d>>2]=kc[c[(c[f>>2]|0)+24>>2]&127](f)|0;e=c[e>>2]|0;a[b+53>>0]=(kc[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;if((c[d>>2]|0)>8)vu(74070);else return}function sq(a){a=a|0;return vq(a,0)|0}function tq(a){a=a|0;return vq(a,1)|0}function uq(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;l=hc;g=hc=hc+31&-32;hc=hc+32|0;h=g+16|0;i=g+8|0;f=g+4|0;j=Vp(d,tp()|0)|0;k=b+52|0;e=(a[k>>0]|0)!=0;do if(j)if(e)e=d;else{e=c[b+48>>2]|0;a[k>>0]=((Vp(e,tp()|0)|0)^1)&1}else{if(e){j=b+48|0;c[f>>2]=wp(c[j>>2]|0)|0;e=c[b+36>>2]|0;switch(uc[c[(c[e>>2]|0)+12>>2]&15](e,c[b+40>>2]|0,f,f+4|0,g,h,h+8|0,i)|0){case 1:case 2:{g=11;break}case 3:{a[h>>0]=c[j>>2];c[i>>2]=h+1;g=8;break}default:g=8}a:do if((g|0)==8){e=b+32|0;while(1){f=c[i>>2]|0;if(f>>>0<=h>>>0){f=1;e=0;break a}b=f+-1|0;c[i>>2]=b;if((io(a[b>>0]|0,c[e>>2]|0)|0)==-1){g=11;break}}}while(0);if((g|0)==11){f=0;e=tp()|0}if(f)e=j;else break}else e=b+48|0;c[e>>2]=d;a[k>>0]=1;e=d}while(0);hc=l;return e|0}function vq(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;r=hc;m=hc=hc+31&-32;hc=hc+32|0;p=m+16|0;q=m+8|0;l=m+4|0;g=b+52|0;if(a[g>>0]|0){f=b+48|0;e=c[f>>2]|0;if(d){c[f>>2]=tp()|0;a[g>>0]=0}}else{e=c[b+44>>2]|0;e=(e|0)>1?e:1;o=b+32|0;f=0;while(1){if(f>>>0>=e>>>0){n=9;break}g=go(c[o>>2]|0)|0;if((g|0)==-1){n=8;break}a[p+f>>0]=g;f=f+1|0}if((n|0)==8)e=tp()|0;else if((n|0)==9){do if(!(a[b+53>>0]|0)){i=b+40|0;j=b+36|0;k=q+4|0;a:while(1){s=c[i>>2]|0;g=s;f=c[g>>2]|0;g=c[g+4>>2]|0;t=c[j>>2]|0;h=p+e|0;switch(uc[c[(c[t>>2]|0)+16>>2]&15](t,s,p,h,l,q,k,m)|0){case 3:{n=15;break a}case 2:{n=17;break a}case 1:break;default:break a}t=c[i>>2]|0;c[t>>2]=f;c[t+4>>2]=g;if((e|0)==8){n=17;break}f=go(c[o>>2]|0)|0;if((f|0)==-1){n=17;break}a[h>>0]=f;e=e+1|0}if((n|0)==15)c[q>>2]=a[p>>0];else if((n|0)==17){e=tp()|0;break}n=19}else{c[q>>2]=a[p>>0];n=19}while(0);b:do if((n|0)==19){c:do if(d)c[b+48>>2]=up(c[q>>2]|0)|0;else{do{if((e|0)<=0)break c;e=e+-1|0;t=up(a[p+e>>0]|0)|0}while((io(t,c[o>>2]|0)|0)!=-1);e=tp()|0;break b}while(0);e=up(c[q>>2]|0)|0}while(0)}}hc=r;return e|0}function wq(a){a=a|0;Po(a);nz(a);return}
function Mk(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,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=hc;u=hc=hc+31&-32;hc=hc+32|0;o=u+24|0;v=u+16|0;w=u+8|0;c[e>>2]=0;a[b+3224>>0]=0;j=c[d+12>>2]|0;k=c[b+856+(j<<3)>>2]|0;if(!(a[k>>0]|0))M(76276,60315,1982,69129);t=b+1384|0;l=c[b+856+(j<<3)+4>>2]|0;if(l|0){s=l+4|0;c[s>>2]=(c[s>>2]|0)+1}c[t>>2]=k;s=b+1388|0;j=c[s>>2]|0;c[s>>2]=l;if(j|0?(q=j+4|0,r=c[q>>2]|0,c[q>>2]=r+-1,(r|0)==0):0){wc[c[(c[j>>2]|0)+8>>2]&255](j);iz(j)}k=a[(c[t>>2]|0)+9>>0]|0;p=b+1376|0;j=c[b+728+(k<<3)>>2]|0;k=c[b+728+(k<<3)+4>>2]|0;if(k|0){r=k+4|0;c[r>>2]=(c[r>>2]|0)+1}c[p>>2]=j;q=b+1380|0;j=c[q>>2]|0;c[q>>2]=k;if(j|0?(n=j+4|0,r=c[n>>2]|0,c[n>>2]=r+-1,(r|0)==0):0){wc[c[(c[j>>2]|0)+8>>2]&255](j);iz(j)}k=a[(c[p>>2]|0)+1>>0]|0;m=b+1368|0;j=c[b+600+(k<<3)>>2]|0;k=c[b+600+(k<<3)+4>>2]|0;if(k|0){r=k+4|0;c[r>>2]=(c[r>>2]|0)+1}c[m>>2]=j;n=b+1372|0;j=c[n>>2]|0;c[n>>2]=k;if(j|0?(l=j+4|0,r=c[l>>2]|0,c[l>>2]=r+-1,(r|0)==0):0){wc[c[(c[j>>2]|0)+8>>2]&255](j);iz(j)}Rk(b);r=d+8|0;if(!(a[r>>0]|0)){if(!(c[b+2220>>2]|0)){d=0;hc=y;return d|0}}else{c[b+2200>>2]=c[d+32>>2];j=c[p>>2]|0;if(!(a[j+4703>>0]|0))k=1;else k=(a[b+533>>0]|0)!=0;c[o>>2]=j;l=o+4|0;j=c[q>>2]|0;c[l>>2]=j;if(j|0){j=j+4|0;c[j>>2]=(c[j>>2]|0)+1}k=Sk(b+2144|0,o,b,f,g,i,k)|0;j=c[l>>2]|0;if(j|0?(i=j+4|0,o=c[i>>2]|0,c[i>>2]=o+-1,(o|0)==0):0){wc[c[(c[j>>2]|0)+8>>2]&255](j);iz(j)}if((k|0)==-1){c[e>>2]=9;d=0;hc=y;return d|0}j=c[b+2152>>2]|0;if((c[b+2156>>2]|0)-j>>2>>>0>k>>>0)j=c[j+(k<<2)>>2]|0;else j=0;g=b+2220|0;c[g>>2]=j;f=j+326|0;a[f>>0]=a[h>>0]|0;a[f+1>>0]=a[h+1>>0]|0;a[f+2>>0]=a[h+2>>0]|0;f=c[g>>2]|0;c[v>>2]=c[m>>2];m=v+4|0;j=c[n>>2]|0;c[m>>2]=j;if(j|0){h=j+4|0;c[h>>2]=(c[h>>2]|0)+1}c[w>>2]=c[p>>2];l=w+4|0;j=c[q>>2]|0;c[l>>2]=j;if(j|0){h=j+4|0;c[h>>2]=(c[h>>2]|0)+1}c[u>>2]=c[t>>2];k=u+4|0;j=c[s>>2]|0;c[k>>2]=j;if(j|0){t=j+4|0;c[t>>2]=(c[t>>2]|0)+1}Tk(f,v,w,u);j=c[k>>2]|0;if(j|0?(v=j+4|0,w=c[v>>2]|0,c[v>>2]=w+-1,(w|0)==0):0){wc[c[(c[j>>2]|0)+8>>2]&255](j);iz(j)}j=c[l>>2]|0;do if(j|0){v=j+4|0;w=c[v>>2]|0;c[v>>2]=w+-1;if(w|0)break;wc[c[(c[j>>2]|0)+8>>2]&255](j);iz(j)}while(0);j=c[m>>2]|0;do if(j|0){v=j+4|0;w=c[v>>2]|0;c[v>>2]=w+-1;if(w|0)break;wc[c[(c[j>>2]|0)+8>>2]&255](j);iz(j)}while(0);j=c[g>>2]|0;c[j+112>>2]=b;Uk(j);j=b+3208|0;a:do if(Vk(a[j>>0]|0)|0){do if(!(Wk(a[j>>0]|0)|0)){if(Xk(a[j>>0]|0)|0)break;if(a[b+2204>>0]|0)break;if(a[b+2207>>0]|0)break;a[b+2205>>0]=0;a[b+2206>>0]=0;break a}while(0);a[b+2205>>0]=1;a[b+2207>>0]=0}while(0);do if(Yk(a[j>>0]|0)|0){if(!(a[b+2205>>0]|0)){x=55;break}a[(c[g>>2]|0)+104>>0]=0}else x=55;while(0);if((x|0)==55)a[(c[g>>2]|0)+104>>0]=(a[d+28>>0]|0)!=0&1;Zk(b,d);if(a[r>>0]|0){c[(c[g>>2]|0)+100>>2]=1;_k(b,d)}c[(c[g>>2]|0)+100>>2]=1;a[b+2204>>0]=0}if((c[d+24>>2]|0)>>>0<2?!($k(b,d)|0):0){d=0;hc=y;return d|0}if(!(a[d+16>>0]|0)){j=b+2224|0;k=d+20|0}else{k=b+2224|0;j=k;k=(c[k>>2]|0)+804|0}c[d+804>>2]=c[k>>2];c[j>>2]=d;d=1;hc=y;return d|0}function Nk(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function Ok(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=c[a+32>>2]|0;a=(c[a+36>>2]|0)-f|0;e=a>>2;if((a|0)<=0){d=0;return d|0}a=e;e=e+-1|0;while(1){if(((c[f+(e<<2)>>2]|0)-d|0)<=(b|0)){e=5;break}a=e+-1|0;if((a|0)>-1){g=e;e=a;a=g}else{a=0;e=5;break}}if((e|0)==5)return a|0;return 0}function Pk(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function Qk(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function Rk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=c[b+1376>>2]|0;f=(e|0)==0;if(f){d=c[b+1368>>2]|0;if(!d)d=6;else d=(c[d+8>>2]|0)+-1|0}else d=(a[e+2>>0]|0)+-1|0;do if((d|0)!=(a[b+2112>>0]|0)){if(f){d=c[b+1368>>2]|0;if(!d)d=6;else{d=c[d+8>>2]|0;g=10}}else{d=a[e+2>>0]|0;g=10}if((g|0)==10)if((d|0)>0)d=d+-1|0;else break;j=d+1|0;k=b+1892|0;while(1){i=d*100|0;f=(i|0)/(j|0)|0;i=(i+100|0)/(j|0)|0;if((i|0)>=(f|0)){g=i-f|0;h=c[k>>2]|0;e=f;while(1){l=(d|0)>(h|0);d=l?h:d;a[b+1912+(e<<1)>>0]=d;a[b+1912+(e<<1)+1>>0]=l?100:(((e-f|0)*100|0)/(g|0)|0)&255;if((e|0)<(i|0))e=e+1|0;else break}}c[b+2116+(d<<2)>>2]=i;if((d|0)>0)d=d+-1|0;else break}}while(0);k=c[b+1896>>2]|0;l=a[b+1912+(k<<1)>>0]|0;c[b+1900>>2]=l;c[b+1904>>2]=a[b+1912+(k<<1)+1>>0];c[b+1908>>2]=l;return}function Sk(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=hc;u=hc=hc+31&-32;hc=hc+16|0;s=u+8|0;t=b+8|0;r=b+12|0;o=c[r>>2]|0;l=c[t>>2]|0;m=l;k=o;a:do if((o|0)==(l|0)){p=-1;j=o;l=o}else{n=o-l>>2;p=0;while(1){j=c[m+(p<<2)>>2]|0;if((a[j+104>>0]|0)==0?(c[j+100>>2]|0)==0:0)break;p=p+1|0;if(p>>>0>=n>>>0){p=-1;j=o;break a}}Ve(j);k=c[r>>2]|0;j=k;l=c[t>>2]|0}while(0);o=j-l>>2;if((!((p|0)==(o+-1|0)?1:o>>>0<=(c[b+4>>2]|0)>>>0)?(q=c[k+-4>>2]|0,(a[q+104>>0]|0)==0):0)?(c[q+100>>2]|0)==0:0){Ue(q);nz(q);j=(c[r>>2]|0)+-4|0;c[r>>2]=j}if((p|0)==-1){j=j-(c[t>>2]|0)>>2;k=lz(432)|0;Rg(k);c[s>>2]=k;l=c[r>>2]|0;if((l|0)==(c[b+16>>2]|0))kl(t,s);else{c[l>>2]=k;c[r>>2]=(c[r>>2]|0)+4}p=j}o=c[(c[t>>2]|0)+(p<<2)>>2]|0;j=c[d>>2]|0;l=c[j+484>>2]|0;m=c[j+488>>2]|0;n=c[j+476>>2]|0;if(n>>>0>=4)M(69335,60364,259,69337);c[u>>2]=j;k=u+4|0;j=c[d+4>>2]|0;c[k>>2]=j;if(j|0){d=j+4|0;c[d>>2]=(c[d>>2]|0)+1}Pg(o,l,m,n,u,1,e,0,f,g,h,i)|0;j=c[k>>2]|0;if(!j){u=o+324|0;a[u>>0]=0;hc=v;return p|0}i=j+4|0;u=c[i>>2]|0;c[i>>2]=u+-1;if(u|0){u=o+324|0;a[u>>0]=0;hc=v;return p|0}wc[c[(c[j>>2]|0)+8>>2]&255](j);iz(j);u=o+324|0;a[u>>0]=0;hc=v;return p|0}function Tk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[b>>2]|0;g=c[b+4>>2]|0;if(g|0){b=g+4|0;c[b>>2]=(c[b>>2]|0)+1}c[a+120>>2]=f;f=a+124|0;b=c[f>>2]|0;c[f>>2]=g;if(b|0?(f=b+4|0,g=c[f>>2]|0,c[f>>2]=g+-1,(g|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[d>>2]|0;f=c[d+4>>2]|0;if(f|0){d=f+4|0;c[d>>2]=(c[d>>2]|0)+1}c[a+128>>2]=b;d=a+132|0;b=c[d>>2]|0;c[d>>2]=f;if(b|0?(g=b+4|0,d=c[g>>2]|0,c[g>>2]=d+-1,(d|0)==0):0){wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b)}b=c[e>>2]|0;f=c[e+4>>2]|0;if(f|0){e=f+4|0;c[e>>2]=(c[e>>2]|0)+1}c[a+136>>2]=b;a=a+140|0;b=c[a>>2]|0;c[a>>2]=f;if(!b)return;e=b+4|0;a=c[e>>2]|0;c[e>>2]=a+-1;if(a|0)return;wc[c[(c[b>>2]|0)+8>>2]&255](b);iz(b);return}function Uk(a){a=a|0;var b=0,d=0;b=c[a+164>>2]|0;if(b|0)hB(b|0,0,(c[a+168>>2]|0)*3|0)|0;b=c[a+144>>2]|0;if(b|0)hB(b|0,0,(c[a+148>>2]|0)*24|0)|0;b=c[a+264>>2]|0;if(b|0)hB(b|0,0,c[a+268>>2]|0)|0;d=c[a+148>>2]|0;if((d|0)<=0)return;a=c[a+332>>2]|0;b=0;do{c[a+(b*80|0)>>2]=0;b=b+1|0}while((b|0)<(d|0));return}function Vk(a){a=a|0;return (a&-8)<<24>>24==16|0}function Wk(a){a=a|0;return (a+-19&255)<2|0}function Xk(a){a=a|0;return (a+-16&255)<3|0}function Yk(a){a=a|0;return (a|1)<<24>>24==9|0}function Zk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=b+3208|0;if(Vk(a[i>>0]|0)|0?(a[b+2205>>0]|0)!=0:0){g=b+2208|0;c[g>>2]=0;a[b+3224>>0]=1;e=d+32|0;d=e;e=c[e>>2]|0;f=0}else h=4;do if((h|0)==4){f=c[(c[b+1376>>2]|0)+5032>>2]|0;d=d+32|0;h=c[d>>2]|0;e=c[b+2212>>2]|0;if((e|0)>(h|0)?(e-h|0)>=((f|0)/2|0|0):0){f=(c[b+2216>>2]|0)+f|0;g=b+2208|0;c[g>>2]=f;e=h;break}if((h|0)>(e|0)?(h-e|0)>((f|0)/2|0|0):0){f=(c[b+2216>>2]|0)-f|0;g=b+2208|0;c[g>>2]=f;e=h;break}f=c[b+2216>>2]|0;g=b+2208|0;c[g>>2]=f;e=h}while(0);h=c[b+2220>>2]|0;c[h+96>>2]=e+f;c[h+92>>2]=e;if(a[h+328>>0]|0)return;if(il(a[i>>0]|0)|0)return;if(Yk(a[i>>0]|0)|0)return;if(jl(a[i>>0]|0)|0)return;c[b+2212>>2]=c[d>>2];c[b+2216>>2]=c[g>>2];return}function _k(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,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=hc;w=hc=hc+31&-32;hc=hc+32|0;A=w+16|0;z=w+4|0;c[A>>2]=0;B=A+4|0;c[B>>2]=0;x=A+8|0;c[x>>2]=0;y=d+2220|0;t=c[c[y>>2]>>2]|0;k=d+3208|0;if((Vk(a[k>>0]|0)|0?a[d+2205>>0]|0:0)?(l=c[(c[y>>2]|0)+96>>2]|0,m=d+2152|0,n=d+2156|0,g=c[n>>2]|0,h=c[m>>2]|0,f=g-h|0,(f|0)>0):0){j=0;i=f>>>2;f=h;do{if(i>>>0>j>>>0)i=c[f+(j<<2)>>2]|0;else i=0;if(((c[i+100>>2]|0)!=0?(c[i+96>>2]|0)<(l|0):0)?(o=i+108|0,p=c[i>>2]|0,(c[o>>2]|0)>>>0>p>>>0):0){c[z>>2]=p;h=c[B>>2]|0;if(h>>>0<(c[x>>2]|0)>>>0){c[h>>2]=p;c[B>>2]=h+4}else{bl(A,z);g=c[n>>2]|0;f=c[m>>2]|0}c[o>>2]=c[i>>2]}j=j+1|0;i=g-f>>2}while((j|0)<(i|0))}if(Wk(a[k>>0]|0)|0){r=d+2548|0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0}else{f=a[e+912>>0]|0;if(!(f<<24>>24)){g=0;f=0}else{l=(c[y>>2]|0)+96|0;k=f&255;h=0;i=0;j=0;while(1){r=(a[e+880+h>>0]|0)==0;f=j+(r&1)|0;g=i+((r^1)&1)|0;c[(r?d+2696+(j<<2)|0:d+2568+(i<<2)|0)>>2]=(c[l>>2]|0)+(b[e+816+(h<<1)>>1]|0);h=h+1|0;if(h>>>0>=k>>>0)break;else{i=g;j=f}}}c[d+2548>>2]=g;g=a[e+913>>0]|0;if(!(g<<24>>24))g=0;else{l=(c[y>>2]|0)+96|0;k=g&255;h=0;i=0;while(1){r=(a[e+896+h>>0]|0)==0;j=f+(r&1)|0;g=i+((r^1)&1)|0;c[(r?d+2696+(f<<2)|0:d+2632+(i<<2)|0)>>2]=(c[l>>2]|0)+(b[e+848+(h<<1)>>1]|0);h=h+1|0;if(h>>>0>=k>>>0){f=j;break}else{i=g;f=j}}}c[d+2552>>2]=g;c[d+2556>>2]=f;m=e+144|0;n=e+148|0;if(((c[n>>2]|0)+(c[m>>2]|0)|0)>0){k=e+32|0;l=d+1376|0;j=0;g=0;f=0;do{h=c[d+2228+(j<<2)>>2]|0;i=e+248+j|0;if(a[i>>0]|0)h=(c[(c[y>>2]|0)+96>>2]|0)+h-(c[k>>2]|0)-(u(c[(c[l>>2]|0)+5032>>2]|0,c[d+2356+(j<<2)>>2]|0)|0)|0;if(!(c[d+2292+(j<<2)>>2]|0)){c[d+2824+(f<<2)>>2]=h;c[d+2484+(f<<2)>>2]=a[i>>0];f=f+1|0}else{c[d+2760+(g<<2)>>2]=h;c[d+2420+(g<<2)>>2]=a[i>>0];g=g+1|0}j=j+1|0}while((j|0)<((c[n>>2]|0)+(c[m>>2]|0)|0))}else{g=0;f=0}c[d+2560>>2]=g;c[d+2564>>2]=f}o=d+2144|0;p=d+2152|0;q=d+2156|0;g=(c[q>>2]|0)-(c[p>>2]|0)|0;f=g>>2;c[z>>2]=0;r=z+4|0;c[r>>2]=0;h=z+8|0;c[h>>2]=0;if(g|0){if((g|0)<0)Yz(z);g=lz(f)|0;c[r>>2]=g;c[z>>2]=g;c[h>>2]=g+f;do{a[g>>0]=0;g=(c[r>>2]|0)+1|0;c[r>>2]=g;f=f+-1|0}while((f|0)!=0)}n=d+2560|0;f=c[n>>2]|0;if((f|0)>0){l=d+1376|0;k=0;do{g=d+2760+(k<<2)|0;f=c[g>>2]|0;if(!(c[d+2420+(k<<2)>>2]|0))f=cl(o,f,t,1)|0;else f=dl(o,f,t,1)|0;j=d+3080+(k<<2)|0;c[j>>2]=f;if((f|0)>-1){g=f;f=(c[z>>2]|0)+f|0}else{i=el(d,c[l>>2]|0,c[g>>2]|0,1)|0;g=(c[q>>2]|0)-(c[p>>2]|0)>>2;a[w>>0]=0;f=c[z>>2]|0;h=(c[r>>2]|0)-f|0;if(g>>>0<=h>>>0){if(g>>>0<h>>>0)c[r>>2]=f+g}else{fl(z,g-h|0,w);f=c[z>>2]|0}c[j>>2]=i;g=i;f=f+i|0}a[f>>0]=1;if(a[(c[(c[p>>2]|0)+(g<<2)>>2]|0)+324>>0]|0)a[(c[y>>2]|0)+324>>0]=4;k=k+1|0;f=c[n>>2]|0}while((k|0)<(f|0))}m=d+2564|0;g=c[m>>2]|0;if((g|0)>0){l=d+1376|0;k=0;do{g=d+2824+(k<<2)|0;f=c[g>>2]|0;if(!(c[d+2484+(k<<2)>>2]|0))f=cl(o,f,t,1)|0;else f=dl(o,f,t,1)|0;j=d+3144+(k<<2)|0;c[j>>2]=f;if((f|0)>-1)f=(c[z>>2]|0)+f|0;else{i=el(d,c[l>>2]|0,c[g>>2]|0,1)|0;g=(c[q>>2]|0)-(c[p>>2]|0)>>2;a[w>>0]=0;f=c[z>>2]|0;h=(c[r>>2]|0)-f|0;if(g>>>0<=h>>>0){if(g>>>0<h>>>0)c[r>>2]=f+g}else{fl(z,g-h|0,w);f=c[z>>2]|0}c[j>>2]=i;f=f+i|0}a[f>>0]=1;k=k+1|0;f=c[m>>2]|0}while((k|0)<(f|0));i=f;f=c[n>>2]|0}else i=g;if((f|0)>0){h=c[p>>2]|0;g=0;do{c[(c[h+(c[d+3080+(g<<2)>>2]<<2)>>2]|0)+100>>2]=2;g=g+1|0}while((g|0)<(f|0))}if((i|0)>0){g=c[p>>2]|0;f=0;do{c[(c[g+(c[d+3144+(f<<2)>>2]<<2)>>2]|0)+100>>2]=2;f=f+1|0}while((f|0)!=(i|0))}k=d+2548|0;if((c[k>>2]|0)>0){l=d+1376|0;j=0;do{f=d+2568+(j<<2)|0;g=dl(o,c[f>>2]|0,t,0)|0;h=d+2888+(j<<2)|0;c[h>>2]=g;if((g|0)<=-1){i=el(d,c[l>>2]|0,c[f>>2]|0,0)|0;c[h>>2]=i;g=c[z>>2]|0;if(i>>>0<((c[r>>2]|0)-g|0)>>>0){f=i;g=g+i|0;s=80}else f=i}else{f=g;g=(c[z>>2]|0)+g|0;s=80}if((s|0)==80){s=0;a[g>>0]=1}if(a[(c[(c[p>>2]|0)+(f<<2)>>2]|0)+324>>0]|0)a[(c[y>>2]|0)+324>>0]=4;j=j+1|0}while((j|0)<(c[k>>2]|0))}j=d+2552|0;if((c[j>>2]|0)>0){k=d+1376|0;i=0;do{g=d+2632+(i<<2)|0;f=dl(o,c[g>>2]|0,t,0)|0;h=d+2952+(i<<2)|0;c[h>>2]=f;if((f|0)<=-1){f=el(d,c[k>>2]|0,c[g>>2]|0,0)|0;c[h>>2]=f}a[(c[z>>2]|0)+f>>0]=1;if(a[(c[(c[p>>2]|0)+(f<<2)>>2]|0)+324>>0]|0)a[(c[y>>2]|0)+324>>0]=4;i=i+1|0}while((i|0)<(c[j>>2]|0))}g=d+2556|0;if((c[g>>2]|0)>0){f=0;do{h=dl(o,c[d+2696+(f<<2)>>2]|0,t,0)|0;c[d+3016+(f<<2)>>2]=h;if((h|0)>-1)a[(c[z>>2]|0)+h>>0]=1;f=f+1|0}while((f|0)<(c[g>>2]|0))}h=c[q>>2]|0;g=c[p>>2]|0;f=h-g|0;if((f|0)>0){k=0;i=f>>>2;f=g;j=h;while(1){t=c[z>>2]|0;if(k>>>0<((c[r>>2]|0)-t|0)>>>0?(a[t+k>>0]|0)!=0:0)g=j;else{if(i>>>0>k>>>0)g=c[f+(k<<2)>>2]|0;else g=0;h=c[y>>2]|0;if(((g|0)!=(h|0)?(v=g+108|0,(c[v>>2]|0)>>>0>(c[h>>2]|0)>>>0):0)?(c[g+100>>2]|0)!=0:0){g=c[g>>2]|0;c[w>>2]=g;i=c[B>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[i>>2]=g;c[B>>2]=i+4;g=j}else{bl(A,w);h=c[y>>2]|0;g=c[q>>2]|0;f=c[p>>2]|0}c[v>>2]=c[h>>2]}else g=j}k=k+1|0;i=g-f>>2;if((k|0)>=(i|0))break;else j=g}}f=e+1348|0;if((f|0)!=(A|0))gl(f,c[A>>2]|0,c[B>>2]|0);f=c[z>>2]|0;if(f|0){c[r>>2]=f;nz(f)}f=c[A>>2]|0;if(!f){hc=C;return}c[B>>2]=f;nz(f);hc=C;return}function $k(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,v=0,w=0,x=0,y=0,z=0;z=hc;y=hc=hc+31&-32;hc=hc+480|0;t=y+288|0;x=y+96|0;v=c[e+916>>2]|0;w=c[e+332>>2]|0;s=(w|0)>(v|0)?w:v;f=y;g=f+96|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));a:do if((s|0)>0){h=c[b+2548>>2]|0;o=c[b+2552>>2]|0;p=(o|0)>0;q=c[b+2560>>2]|0;r=(q|0)>0;b:do if((h|0)>0){l=b+2888|0;m=b+2952|0;n=b+3080|0;i=0-h|0;j=0-((o|0)>1?o:1)|0;k=0-((q|0)>1?q:1)|0;f=0;while(1){if((f|0)<(s|0)){g=f-s|0;fB(t+(f<<2)|0,l|0,u(g>>>0<i>>>0?i:g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(s|0)&(g|0)<(h|0))}if((f|0)<(s|0)&p){g=f-s|0;fB(t+(f<<2)|0,m|0,u(g>>>0<j>>>0?j:g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(s|0)&(g|0)<(o|0))}if((f|0)<(s|0)&r){g=f-s|0;g=g>>>0<k>>>0?k:g;hB(y+f|0,1,0-g|0)|0;fB(t+(f<<2)|0,n|0,u(g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(s|0)&(g|0)<(q|0))}if(!f)break b;if((f|0)>=(s|0))break a}}else{j=b+2952|0;k=b+3080|0;h=0-((o|0)>1?o:1)|0;i=0-((q|0)>1?q:1)|0;f=0;while(1){if((f|0)<(s|0)&p){g=f-s|0;fB(t+(f<<2)|0,j|0,u(g>>>0<h>>>0?h:g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(s|0)&(g|0)<(o|0))}if((f|0)<(s|0)&r){g=f-s|0;g=g>>>0<i>>>0?i:g;hB(y+f|0,1,0-g|0)|0;fB(t+(f<<2)|0,k|0,u(g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(s|0)&(g|0)<(q|0))}if(!f)break b;if((f|0)>=(s|0))break a}}while(0);f=b+84|0;g=c[f>>2]|0;if((g|0)==20){c[b+80>>2]=1001;y=0;hc=z;return y|0}else{c[f>>2]=g+1;c[b+4+(g<<2)>>2]=1016;y=0;hc=z;return y|0}}while(0);if((w|0)>=17)M(69158,60315,1771,69191);c:do if((w|0)>0){i=b+2152|0;j=b+2156|0;k=(a[e+340>>0]|0)==0;h=0;while(1){if(k)f=h;else f=d[e+342+h>>0]|0;g=e+920+(h<<2)|0;c[g>>2]=c[t+(f<<2)>>2];a[e+1304+h>>0]=a[y+f>>0]|0;f=c[g>>2]|0;g=c[i>>2]|0;if((c[j>>2]|0)-g>>2>>>0<=f>>>0){f=0;g=76;break}f=c[g+(f<<2)>>2]|0;if(!f){f=0;g=76;break}c[e+1048+(h<<2)>>2]=c[f+96>>2];c[e+1176+(h<<2)>>2]=c[f+100>>2];h=h+1|0;if((h|0)>=(w|0))break c}if((g|0)==76){hc=z;return f|0}}while(0);if(c[e+24>>2]|0){y=1;hc=z;return y|0}t=c[e+336>>2]|0;o=(t|0)>(v|0)?t:v;d:do if((o|0)>0){h=c[b+2552>>2]|0;p=c[b+2548>>2]|0;q=(p|0)>0;r=c[b+2560>>2]|0;s=(r|0)>0;e:do if((h|0)>0){l=b+2952|0;m=b+2888|0;n=b+3080|0;i=0-h|0;j=0-((p|0)>1?p:1)|0;k=0-((r|0)>1?r:1)|0;f=0;while(1){if((f|0)<(o|0)){g=f-o|0;fB(x+(f<<2)|0,l|0,u(g>>>0<i>>>0?i:g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(o|0)&(g|0)<(h|0))}if((f|0)<(o|0)&q){g=f-o|0;fB(x+(f<<2)|0,m|0,u(g>>>0<j>>>0?j:g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(o|0)&(g|0)<(p|0))}if((f|0)<(o|0)&s){g=f-o|0;g=g>>>0<k>>>0?k:g;hB(y+48+f|0,1,0-g|0)|0;fB(x+(f<<2)|0,n|0,u(g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(o|0)&(g|0)<(r|0))}if(!f)break e;if((f|0)>=(o|0))break d}}else{j=b+2888|0;k=b+3080|0;h=0-((p|0)>1?p:1)|0;i=0-((r|0)>1?r:1)|0;f=0;while(1){if((f|0)<(o|0)&q){g=f-o|0;fB(x+(f<<2)|0,j|0,u(g>>>0<h>>>0?h:g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(o|0)&(g|0)<(p|0))}if((f|0)<(o|0)&s){g=f-o|0;g=g>>>0<i>>>0?i:g;hB(y+48+f|0,1,0-g|0)|0;fB(x+(f<<2)|0,k|0,u(g,-4)|0)|0;g=0;do{f=f+1|0;g=g+1|0}while((f|0)<(o|0)&(g|0)<(r|0))}if(!f)break e;if((f|0)>=(o|0))break d}}while(0);f=b+84|0;g=c[f>>2]|0;if((g|0)==20){c[b+80>>2]=1001;y=0;hc=z;return y|0}else{c[f>>2]=g+1;c[b+4+(g<<2)>>2]=1016;y=0;hc=z;return y|0}}while(0);if((w|0)>16){f=b+84|0;g=c[f>>2]|0;if((g|0)==20){c[b+80>>2]=1001;y=0;hc=z;return y|0}else{c[f>>2]=g+1;c[b+4+(g<<2)>>2]=1012;y=0;hc=z;return y|0}}if((t|0)>=17)M(69225,60315,1824,69191);if((t|0)<=0){y=1;hc=z;return y|0}k=b+2152|0;i=b+2156|0;j=(a[e+341>>0]|0)==0;h=0;while(1){if(j)f=h;else f=d[e+358+h>>0]|0;g=e+984+(h<<2)|0;c[g>>2]=c[x+(f<<2)>>2];a[e+1320+h>>0]=a[y+48+f>>0]|0;f=c[g>>2]|0;g=c[k>>2]|0;if((c[i>>2]|0)-g>>2>>>0<=f>>>0){f=0;g=76;break}f=c[g+(f<<2)>>2]|0;if(!f){f=0;g=76;break}c[e+1112+(h<<2)>>2]=c[f+96>>2];c[e+1240+(h<<2)>>2]=c[f+100>>2];h=h+1|0;if((h|0)>=(t|0)){f=1;g=76;break}}if((g|0)==76){hc=z;return f|0}return 0}function al(a){a=a|0;return}function bl(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function cl(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;a:do if(e){g=a+8|0;h=c[a+12>>2]|0;i=c[g>>2]|0;a=i;if((h|0)==(i|0)){d=-1;return d|0}f=h-i>>2;e=0;while(1){j=c[a+(e<<2)>>2]|0;if(((c[j+92>>2]|0)==(b|0)?(c[j+108>>2]|0)>(d|0):0)?(c[j+100>>2]|0)==2:0)break;e=e+1|0;if(e>>>0>=f>>>0){f=h;e=i;break a}}return e|0}else{g=a+8|0;j=c[g>>2]|0;f=c[a+12>>2]|0;e=j;a=j}while(0);if((f|0)==(e|0)){j=-1;return j|0}e=0;while(1){j=c[a+(e<<2)>>2]|0;if(((c[j+92>>2]|0)==(b|0)?(c[j+108>>2]|0)>(d|0):0)?c[j+100>>2]|0:0){a=15;break}e=e+1|0;if(e>>>0>=f-(c[g>>2]|0)>>2>>>0){e=-1;a=15;break}}if((a|0)==15)return e|0;return 0}function dl(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;a:do if(e){g=a+8|0;h=c[a+12>>2]|0;i=c[g>>2]|0;a=i;if((h|0)==(i|0)){d=-1;return d|0}f=h-i>>2;e=0;while(1){j=c[a+(e<<2)>>2]|0;if(((c[j+96>>2]|0)==(b|0)?(c[j+108>>2]|0)>(d|0):0)?(c[j+100>>2]|0)==2:0)break;e=e+1|0;if(e>>>0>=f>>>0){f=h;e=i;break a}}return e|0}else{g=a+8|0;j=c[g>>2]|0;f=c[a+12>>2]|0;e=j;a=j}while(0);if((f|0)==(e|0)){j=-1;return j|0}e=0;while(1){j=c[a+(e<<2)>>2]|0;if(((c[j+96>>2]|0)==(b|0)?(c[j+108>>2]|0)>(d|0):0)?c[j+100>>2]|0:0){a=15;break}e=e+1|0;if(e>>>0>=f-(c[g>>2]|0)>>2>>>0){e=-1;a=15;break}}if((a|0)==15)return e|0;return 0}function el(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;n=hc;i=hc=hc+31&-32;hc=hc+16|0;j=b+2144|0;if(!(Ui(j,1)|0))M(69258,60315,1414,69289);l=a[(c[b+1384>>2]|0)+9>>0]|0;h=c[b+728+(l<<3)>>2]|0;l=c[b+728+(l<<3)+4>>2]|0;m=(l|0)==0;if(m){c[i>>2]=h;h=i+4|0;c[h>>2]=0}else{k=l+4|0;c[k>>2]=(c[k>>2]|0)+1;c[i>>2]=h;h=i+4|0;c[h>>2]=l;c[k>>2]=(c[k>>2]|0)+1}k=Sk(j,i,b,0,0,0,0)|0;h=c[h>>2]|0;if(h|0?(i=h+4|0,j=c[i>>2]|0,c[i>>2]=j+-1,(j|0)==0):0){wc[c[(c[h>>2]|0)+8>>2]&255](h);iz(h)}if((k|0)<=-1)M(69328,60315,1419,69289);h=c[b+2152>>2]|0;if((c[b+2156>>2]|0)-h>>2>>>0>k>>>0)h=c[h+(k<<2)>>2]|0;else h=0;j=1<<(c[e+5004>>2]|0)+-1;hl(h,1<<(c[e+4996>>2]|0)+-1,j,j);j=h+168|0;if((c[j>>2]|0)>0){b=h+164|0;i=0;do{o=(c[b>>2]|0)+(i*3|0)|0;p=(d[o>>0]|d[o+1>>0]<<8)&-769;a[o>>0]=p;a[o+1>>0]=p>>8;i=i+1|0}while((i|0)<(c[j>>2]|0))}c[h+96>>2]=f;c[h+92>>2]=(c[e+5032>>2]|0)+-1&f;a[h+104>>0]=0;c[h+100>>2]=g?2:1;a[h+324>>0]=1;if(m){hc=n;return k|0}o=l+4|0;p=c[o>>2]|0;c[o>>2]=p+-1;if(p|0){hc=n;return k|0}wc[c[(c[l>>2]|0)+8>>2]&255](l);iz(l);hc=n;return k|0}function fl(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;m=b+8|0;h=c[m>>2]|0;n=b+4|0;f=c[n>>2]|0;if((h-f|0)>>>0>=d>>>0){do{a[f>>0]=a[e>>0]|0;f=(c[n>>2]|0)+1|0;c[n>>2]=f;d=d+-1|0}while((d|0)!=0);return}j=c[b>>2]|0;i=f-j|0;g=i+d|0;if((g|0)<0)Yz(b);k=h-j|0;l=k<<1;g=k>>>0<1073741823?(l>>>0<g>>>0?g:l):2147483647;if(!g)l=0;else l=lz(g)|0;i=l+i|0;k=l+g|0;h=f+d-j|0;f=i;while(1){a[f>>0]=a[e>>0]|0;d=d+-1|0;if(!d)break;else f=f+1|0}d=c[b>>2]|0;g=(c[n>>2]|0)-d|0;f=i+(0-g)|0;if((g|0)>0)fB(f|0,d|0,g|0)|0;c[b>>2]=f;c[n>>2]=l+h;c[m>>2]=k;if(!d)return;nz(d);return}function gl(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;k=d;h=b;g=k-h|0;f=g>>2;i=a+8|0;e=c[i>>2]|0;l=c[a>>2]|0;j=l;if(f>>>0<=e-l>>2>>>0){g=a+4|0;a=(c[g>>2]|0)-l>>2;f=f>>>0>a>>>0;a=f?b+(a<<2)|0:d;d=a;e=d-h|0;if(e|0)gB(l|0,b|0,e|0)|0;if(!f){c[g>>2]=j+(e>>2<<2);return}e=k-d|0;if((e|0)<=0)return;fB(c[g>>2]|0,a|0,e|0)|0;c[g>>2]=(c[g>>2]|0)+(e>>>2<<2);return}if(l){e=a+4|0;c[e>>2]=l;nz(l);c[i>>2]=0;c[e>>2]=0;c[a>>2]=0;e=0}if(f>>>0>1073741823)Yz(a);l=e>>1;f=e>>2>>>0<536870911?(l>>>0<f>>>0?f:l):1073741823;if(f>>>0>1073741823)Yz(a);e=lz(f<<2)|0;d=a+4|0;c[d>>2]=e;c[a>>2]=e;c[i>>2]=e+(f<<2);if((g|0)<=0)return;fB(e|0,b|0,g|0)|0;c[d>>2]=e+(g>>>2<<2);return}function hl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((b|0)>-1)hB(c[a+4>>2]|0,b&255|0,u(c[a+28>>2]|0,c[a+40>>2]|0)|0)|0;if((d|0)>-1)hB(c[a+8>>2]|0,d&255|0,u(c[a+36>>2]|0,c[a+44>>2]|0)|0)|0;if((e|0)<=-1)return;hB(c[a+12>>2]|0,e&255|0,u(c[a+36>>2]|0,c[a+44>>2]|0)|0)|0;return}function il(a){a=a|0;if((a&255)<15)return (a&1)==0|0;else return 0;return 0}function jl(a){a=a|0;return (a|1)<<24>>24==7|0}function kl(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function ll(a){a=a|0;var c=0;c=a+100|0;do{b[a>>1]=0;a=a+2|0}while((a|0)<(c|0));return}function ml(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;h=c[g+856+(c[f+12>>2]<<3)>>2]|0;if(!h)M(71159,58545,152,71163);h=c[g+728+(a[h+9>>0]<<3)>>2]|0;if(!h)M(71186,58545,154,71163);t=Wg(e)|0;s=f+384|0;a[s>>0]=t;if(t>>>0>7){f=0;return f|0}t=h+476|0;do if(c[t>>2]|0){g=Xg(e)|0;g=g+(d[s>>0]|0)|0;if(g>>>0>7){f=0;return f|0}else{n=f+385|0;a[n>>0]=g;break}}else n=f+385|0;while(0);o=f+332|0;p=f+24|0;q=f+336|0;r=h+5164|0;m=h+5160|0;l=0;a:while(1){if(l)if(!(c[p>>2]|0))g=q;else{g=1;h=33;break}else g=o;k=c[g>>2]|0;h=(k|0)>0;if(h){g=0;do{a[f+386+(l<<4)+g>>0]=Mf(e,1)|0;g=g+1|0}while((g|0)!=(k|0));if((c[t>>2]|0)!=0&h){g=0;do{a[f+418+(l<<4)+g>>0]=Mf(e,1)|0;g=g+1|0}while((g|0)!=(k|0))}if(h){j=0;do{if(!(a[f+386+(l<<4)+j>>0]|0)){b[f+450+(l<<5)+(j<<1)>>1]=1<<d[s>>0];g=0}else{g=Xg(e)|0;if((g+128|0)>>>0>255){g=0;h=33;break a}b[f+450+(l<<5)+(j<<1)>>1]=(1<<d[s>>0])+g;g=Xg(e)|0;i=c[m>>2]|0;if(!((g|0)>=(0-i|0)&(g|0)<(i|0))){g=0;h=33;break a}g=g&255}a[f+514+(l<<4)+j>>0]=g;if(!(a[f+418+(l<<4)+j>>0]|0)){g=1<<d[n>>0]&65535;b[f+546+(l<<6)+(j<<2)>>1]=g;a[f+674+(l<<5)+(j<<1)>>0]=0;b[f+546+(l<<6)+(j<<2)+2>>1]=g;g=0}else{g=Xg(e)|0;if((g+128|0)>>>0>255){g=0;h=33;break a}i=f+546+(l<<6)+(j<<2)|0;b[i>>1]=(1<<d[n>>0])+g;g=Xg(e)|0;h=c[r>>2]|0;if(!((g|0)>=(u(h,-4)|0)&(g|0)<(h<<2|0))){g=0;h=33;break a}i=u(h,b[i>>1]|0)|0;g=h+g-(i>>d[n>>0])|0;i=0-h|0;a[f+674+(l<<5)+(j<<1)>>0]=(g|0)<(i|0)?i:(g|0)<(h|0)?g:h+255|0;g=Xg(e)|0;if((g+128|0)>>>0>255){g=0;h=33;break a}i=f+546+(l<<6)+(j<<2)+2|0;b[i>>1]=(1<<d[n>>0])+g;g=Xg(e)|0;h=c[r>>2]|0;if(!((g|0)>=(u(h,-4)|0)&(g|0)<(h<<2|0))){g=0;h=33;break a}i=u(h,b[i>>1]|0)|0;g=h+g-(i>>d[n>>0])|0;i=0-h|0;g=((g|0)<(i|0)?i:(g|0)<(h|0)?g:h+255|0)&255}a[f+674+(l<<5)+(j<<1)+1>>0]=g;j=j+1|0}while((j|0)<(k|0))}}l=l+1|0;if(l>>>0>=2){g=1;h=33;break}}if((h|0)==33)return g|0;return 0}function nl(d){d=d|0;var e=0;c[d+12>>2]=0;a[d+16>>0]=0;e=d+20|0;c[d+32>>2]=0;a[d+36>>0]=0;c[d>>2]=0;c[d+4>>2]=0;b[d+8>>1]=0;c[e>>2]=0;c[e+4>>2]=0;b[e+8>>1]=0;ll(d+38|0);e=d+740|0;c[d+760>>2]=0;c[d+764>>2]=0;a[d+768>>0]=0;c[d+772>>2]=0;c[d+776>>2]=0;hB(d+140|0,0,237)|0;hB(d+380|0,0,358)|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;b[e+16>>1]=0;a[e+18>>0]=0;c[d+784>>2]=c[d+780>>2];e=d+792|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;ll(d+816|0);hB(d+916|0,0,420)|0;c[d+1352>>2]=c[d+1348>>2];a[d+1344>>0]=0;return}function ol(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=hc;l=hc=hc+31&-32;hc=hc+16|0;m=b+40|0;n=b+44|0;e=c[n>>2]|0;if((e|0)==(c[m>>2]|0)){e=lz(48)|0;a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;g=e+32|0;c[g>>2]=0;f=e+36|0;c[f>>2]=0;i=e+40|0;c[i>>2]=0;h=lz(64)|0;c[g>>2]=h;g=h+64|0;c[i>>2]=g;i=h+64|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[f>>2]=g;k=e+8|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;k=e}else{j=e+-4|0;k=c[j>>2]|0;c[n>>2]=j}a[k>>0]=0;a[k+1>>0]=0;a[k+2>>0]=0;g=k+8|0;c[g>>2]=0;c[g+4>>2]=0;c[k+16>>2]=0;g=k+24|0;c[g>>2]=0;j=k+36|0;c[j>>2]=c[k+32>>2];h=k+28|0;if((c[h>>2]|0)>=(d|0)){n=k;hc=o;return n|0}i=uo(d)|0;if(i|0){e=k+20|0;f=c[e>>2]|0;if(f|0){fB(i|0,f|0,c[g>>2]|0)|0;vo(f)}c[e>>2]=i;c[h>>2]=d;n=k;hc=o;return n|0}c[l>>2]=k;e=k;do if(k|0){f=c[n>>2]|0;if(f-(c[m>>2]|0)>>2>>>0<16)if((c[b+48>>2]|0)==(f|0)){Qe(m,l);break}else{c[f>>2]=e;c[n>>2]=(c[n>>2]|0)+4;break}else{vo(c[k+20>>2]|0);e=c[k+32>>2]|0;if(e|0){c[j>>2]=e;nz(e)}nz(k);break}}while(0);n=0;hc=o;return n|0}function pl(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;i=a+4|0;j=c[a>>2]|0;k=(c[i>>2]|0)-j|0;g=k>>2;d=g+1|0;if(d>>>0>1073741823)Yz(a);l=a+8|0;f=(c[l>>2]|0)-j|0;h=f>>1;h=f>>2>>>0<536870911?(h>>>0<d>>>0?d:h):1073741823;do if(h)if(h>>>0>1073741823){l=N(8)|0;rz(l,68988);c[l>>2]=52024;S(l|0,11744,126)}else{f=lz(h<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(g<<2)|0;c[d>>2]=c[b>>2];if((k|0)>0)fB(f|0,j|0,k|0)|0;c[a>>2]=e;c[i>>2]=d+4;c[l>>2]=e+(h<<2);if(!j)return;nz(j);return}function ql(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;s=hc;o=hc=hc+31&-32;hc=hc+32|0;b=a+16|0;d=c[b>>2]|0;if(d>>>0>1023){c[b>>2]=d+-1024;o=a+4|0;n=c[o>>2]|0;q=c[n>>2]|0;n=n+4|0;c[o>>2]=n;p=a+8|0;b=c[p>>2]|0;m=a+12|0;r=c[m>>2]|0;e=r;do if((b|0)==(r|0)){i=n;d=c[a>>2]|0;f=d;if(n>>>0>d>>>0){e=((i-f>>2)+1|0)/-2|0;f=n+(e<<2)|0;d=b-i|0;if(!d)b=f;else{gB(f|0,n|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){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{h=lz(f<<2)|0;break}else h=0;while(0);k=h;e=h+(g<<2)|0;l=e;j=h+(f<<2)|0;if((n|0)==(b|0))b=l;else{f=((b+-4-i|0)>>>2)+1|0;d=n;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[m>>2]=j;if(d){nz(d);b=c[p>>2]|0}}while(0);c[b>>2]=q;c[p>>2]=(c[p>>2]|0)+4;hc=s;return}r=a+8|0;b=c[r>>2]|0;q=a+4|0;l=c[q>>2]|0;i=b-l|0;j=i>>2;p=a+12|0;e=c[p>>2]|0;f=c[a>>2]|0;g=e-f|0;m=b;h=e;n=l;d=f;if(j>>>0>=g>>2>>>0){d=(g|0)==0?1:g>>1;c[o+12>>2]=0;c[o+16>>2]=a+12;do if(d)if(d>>>0>1073741823){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{g=lz(d<<2)|0;f=g;break}else{f=0;g=0}while(0);c[o>>2]=f;b=g+(j<<2)|0;m=o+8|0;c[m>>2]=b;k=o+4|0;c[k>>2]=b;l=o+12|0;c[l>>2]=g+(d<<2);h=lz(4096)|0;do if((j|0)==(d|0)){if((i|0)>0){b=b+(((j+1|0)/-2|0)<<2)|0;c[m>>2]=b;c[k>>2]=b;break}d=(i|0)==0?1:i>>1;b=d>>>2;do if(d)if(d>>>0>1073741823){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{e=lz(d<<2)|0;break}else e=0;while(0);b=e+(b<<2)|0;n=b;c[o>>2]=e;c[k>>2]=n;c[m>>2]=n;c[l>>2]=e+(d<<2);if(g)nz(f)}while(0);c[b>>2]=h;e=(c[m>>2]|0)+4|0;c[m>>2]=e;b=c[r>>2]|0;d=c[q>>2]|0;if((b|0)==(d|0))h=m;else{do{b=b+-4|0;sl(o,b);d=c[q>>2]|0}while((b|0)!=(d|0));h=m;e=c[m>>2]|0;b=c[r>>2]|0}f=d;g=c[a>>2]|0;c[a>>2]=c[o>>2];c[o>>2]=g;c[q>>2]=c[k>>2];c[k>>2]=f;c[r>>2]=e;c[h>>2]=b;a=c[p>>2]|0;c[p>>2]=c[l>>2];c[l>>2]=a;if((d|0)!=(b|0))c[m>>2]=b+(~((b+-4-f|0)>>>2)<<2);if(g|0)nz(g);hc=s;return}if((e|0)==(b|0)){c[o>>2]=lz(4096)|0;rl(a,o);m=c[q>>2]|0;n=c[m>>2]|0;m=m+4|0;c[q>>2]=m;b=c[r>>2]|0;o=c[p>>2]|0;e=o;do if((b|0)==(o|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{gB(f|0,m|0,d|0)|0;b=(c[q>>2]|0)+(e<<2)|0}a=f+(d>>2<<2)|0;c[r>>2]=a;c[q>>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){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{h=lz(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[q>>2]=l;c[r>>2]=b;c[p>>2]=j;if(d){nz(d);b=c[r>>2]|0}}while(0);c[b>>2]=n;c[r>>2]=(c[r>>2]|0)+4;hc=s;return}else{o=lz(4096)|0;do if((m|0)==(h|0)){if(n>>>0>d>>>0){b=((l-f>>2)+1|0)/-2|0;d=n+(b<<2)|0;if(!i)b=d;else{gB(d|0,l|0,i|0)|0;b=(c[q>>2]|0)+(b<<2)|0}a=d+(j<<2)|0;c[r>>2]=a;c[q>>2]=b;b=a;break}b=(g|0)==0?1:g>>1;h=b>>>2;do if(b)if(b>>>0>1073741823){s=N(8)|0;rz(s,68988);c[s>>2]=52024;S(s|0,11744,126)}else{g=lz(b<<2)|0;break}else g=0;while(0);j=g;f=g+(h<<2)|0;k=f;i=g+(b<<2)|0;if((n|0)==(m|0))b=k;else{e=((m+-4-l|0)>>>2)+1|0;d=f;b=n;while(1){c[d>>2]=c[b>>2];b=b+4|0;if((b|0)==(m|0))break;else d=d+4|0}b=g+(e+h<<2)|0;d=c[a>>2]|0}c[a>>2]=j;c[q>>2]=k;c[r>>2]=b;c[p>>2]=i;if(d){nz(d);b=c[r>>2]|0}}while(0);c[b>>2]=o;c[r>>2]=(c[r>>2]|0)+4;hc=s;return}}function rl(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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{h=lz(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){nz(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 sl(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{gB(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=N(8)|0;rz(q,68988);c[q>>2]=52024;S(q|0,11744,126)}else{h=lz(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){nz(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 tl(a,b){a=a|0;b=b|0;return Si(a,b)|0}function ul(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return vl(a+548|0,b,c,d,e,f)|0}function vl(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,q=0;q=hc;o=hc=hc+31&-32;hc=hc+16|0;if(c[b+8>>2]|0)M(71190,71216,375,71232);a[b+1>>0]=0;p=ol(b,e)|0;if(!p){p=7;hc=q;return p|0}j=p+28|0;do if((c[j>>2]|0)<(e|0)){i=uo(e)|0;if(i|0){k=p+20|0;l=c[k>>2]|0;if(l|0){fB(i|0,l|0,c[p+24>>2]|0)|0;vo(l)}c[k>>2]=i;c[j>>2]=e;break}c[o>>2]=p;e=p;i=b+40|0;j=b+44|0;k=c[j>>2]|0;do if(k-(c[i>>2]|0)>>2>>>0<16)if((c[b+48>>2]|0)==(k|0)){Qe(i,o);break}else{c[k>>2]=e;c[j>>2]=(c[j>>2]|0)+4;break}else{vo(c[p+20>>2]|0);e=c[p+32>>2]|0;if(e|0){c[p+36>>2]=e;nz(e)}nz(p)}while(0);p=7;hc=q;return p|0}else i=c[p+20>>2]|0;while(0);fB(i|0,d|0,e|0)|0;n=p+24|0;c[n>>2]=e;d=p+8|0;c[d>>2]=f;c[d+4>>2]=g;c[p+16>>2]=h;a:do if((e|0)>2){d=p+32|0;f=p+36|0;g=p+40|0;i=c[p+20>>2]|0;l=0;while(1){k=i+2|0;j=a[k>>0]|0;switch(j<<24>>24){case 0:case 3:{if((a[i>>0]|0)==0?(m=i+1|0,j<<24>>24==3&(a[m>>0]|0)==0):0){j=c[f>>2]|0;e=l+2+(j-(c[d>>2]|0)>>2)|0;c[o>>2]=e;if((c[g>>2]|0)==(j|0))pl(d,o);else{c[j>>2]=e;c[f>>2]=j+4}gB(k|0,i+3|0,-3-l+(c[n>>2]|0)|0)|0;e=(c[n>>2]|0)+-1|0;c[n>>2]=e;j=l+1|0;i=m}else j=l;break}default:{j=l+2|0;i=k}}l=j+1|0;if((l|0)>=(e+-2|0))break a;else i=i+1|0}}while(0);d=b+16|0;k=c[d>>2]|0;o=(c[b+20>>2]|0)-k|0;l=b+28|0;f=b+32|0;i=c[f>>2]|0;j=i+(c[l>>2]|0)|0;if((((o|0)==0?0:(o<<8)+-1|0)|0)==(j|0)){ql(b+12|0);i=c[f>>2]|0;j=(c[l>>2]|0)+i|0;k=c[d>>2]|0;e=c[n>>2]|0}c[(c[k+(j>>>10<<2)>>2]|0)+((j&1023)<<2)>>2]=p;c[f>>2]=i+1;p=b+36|0;c[p>>2]=(c[p>>2]|0)+e;p=0;hc=q;return p|0}function wl(b){b=b|0;var d=0;if((c[b+2196>>2]|0)<=0){d=0;return d|0}d=c[b+2192>>2]|0;d=c[(c[(c[b+2180>>2]|0)+(d>>>10<<2)>>2]|0)+((d&1023)<<2)>>2]|0;if(!d){d=0;return d|0}a[d+104>>0]=0;xl(b+2144|0);return d|0}function xl(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+36|0;d=c[b>>2]|0;e=a+48|0;f=c[e>>2]|0;a=a+52|0;c[a>>2]=(c[a>>2]|0)+-1;a=f+1|0;c[e>>2]=a;if(a>>>0<=2047)return;nz(c[d>>2]|0);c[b>>2]=(c[b>>2]|0)+4;c[e>>2]=(c[e>>2]|0)+-1024;return}function yl(a,b){a=a|0;b=b|0;switch(b|0){case 0:{a=a+76|0;break}case 2:case 1:{a=a+84|0;break}default:{b=0;return b|0}}b=c[a>>2]|0;return b|0}function zl(a,b){a=a|0;b=b|0;switch(b|0){case 0:{a=a+80|0;break}case 2:case 1:{a=a+88|0;break}default:{b=0;return b|0}}b=c[a>>2]|0;return b|0}function Al(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if(b>>>0>=3)M(71252,71241,639,71279);f=c[a+64+(b<<2)>>2]|0;if(!d)return f|0;e=c[((b|0)==0?a+40|0:a+44|0)>>2]|0;switch(b|0){case 0:{a=(c[a+128>>2]|0)+4996|0;g=7;break}case 2:case 1:{a=(c[a+128>>2]|0)+5004|0;g=7;break}default:a=0}if((g|0)==7)a=((c[a>>2]|0)+7|0)/8|0;c[d>>2]=u(a,e)|0;return f|0}function Bl(a,d){a=a|0;d=d|0;c[a>>2]=d;b[a+4>>1]=0;b[a+6>>1]=8;return}function Cl(a,b){a=a|0;b=b|0;return (e[a+6>>1]|0)+8-(e[b+6>>1]|0)+((c[b>>2]|0)-((c[a>>2]|0)+1)<<3)|0}function Dl(a){a=a|0;var d=0;d=c[a>>2]|0;return ((b[a+6>>1]|0)==8?d:d+1|0)|0}function El(a,f){a=a|0;f=f|0;var g=0,h=0,i=0;g=(c[a>>2]|0)+(f>>>3)|0;c[a>>2]=g;i=a+6|0;h=(e[i>>1]|0)-(f&7)|0;f=h&65535;b[i>>1]=f;if((h&65535)>>>0>8){g=g+1|0;c[a>>2]=g;f=h+8&65535;b[i>>1]=f}if((f&65535)>=8)return;b[a+4>>1]=d[g>>0]|0;return}function Fl(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;l=e+6|0;g=b[l>>1]|0;if(g<<16>>16==8){h=d[c[e>>2]>>0]|0;k=e+4|0;b[k>>1]=h}else{k=e+4|0;h=b[k>>1]|0}j=g&65535;g=(1<<j)+65535&(h&65535);do if(j>>>0<=f>>>0){h=f-j|0;i=(c[e>>2]|0)+1|0;c[e>>2]=i;b[l>>1]=8;if(h>>>0>7){j=f-j|0;do{f=i;i=i+1|0;c[e>>2]=i;g=g<<8|(d[f>>0]|0);h=h+-8|0}while(h>>>0>7);h=j&7}if(!h){l=g;return l|0}else{e=a[i>>0]|0;b[k>>1]=e&255;k=8-h|0;g=(e&255)>>>k|g<<h;h=k;break}}else{h=j-f|0;g=g>>>h}while(0);b[l>>1]=h;l=g;return l|0}function Gl(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,s=0;h=h&65535;if(g>>>0>31){q=f+6|0;p=f+4|0;n=b[q>>1]|0;o=g;while(1){if(n<<16>>16!=8){j=n&65535;i=(1<<j)+65535&(e[p>>1]|0);if((n&65535)>32){r=j+-32|0;j=r&65535;i=i>>>r;r=13}else r=7}else{i=a[c[f>>2]>>0]|0;b[p>>1]=i&255;i=(1<<(n&65535))+255&(i&255);j=8;r=7}if((r|0)==7){r=0;k=32-j|0;m=c[f>>2]|0;l=m+1|0;c[f>>2]=l;b[q>>1]=8;if(k>>>0>7){j=(24-j|0)>>>3;do{s=l;l=l+1|0;c[f>>2]=l;i=i<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=m+2+j|0;k=0-n&7}else j=l;if(!k)j=8;else{s=a[j>>0]|0;b[p>>1]=s&255;r=8-k|0;j=r&65535;i=(s&255)>>>r|i<<k;r=13}}if((r|0)==13){r=0;b[q>>1]=j}s=h<<8^(e[56514+((i>>>24^h>>>8&255)<<1)>>1]|0);s=s<<8^(e[56514+(((s>>>8^i>>>16)&255)<<1)>>1]|0);s=s<<8^(e[56514+(((s^i)>>>8&255)<<1)>>1]|0);h=s<<8^(e[56514+(((s>>>8^i)&255)<<1)>>1]|0);o=o+-32|0;if(o>>>0<=31)break;else n=j}g=g&31}switch(g>>>3&536870911|0){case 3:{q=h<<8;p=h>>>8;o=f+6|0;n=b[o>>1]|0;if(n<<16>>16!=8){i=f+4|0;j=n&65535;h=(1<<j)+65535&(e[i>>1]|0);if((n&65535)>8){r=j+-8|0;i=r&65535;h=h>>>r;r=29}else r=23}else{h=a[c[f>>2]>>0]|0;i=f+4|0;b[i>>1]=h&255;h=(1<<(n&65535))+255&(h&255);j=8;r=23}if((r|0)==23){k=8-j|0;l=c[f>>2]|0;j=l+1|0;c[f>>2]=j;b[o>>1]=8;if(k>>>0>7){m=((k+-8|0)>>>3)+2|0;do{s=j;j=j+1|0;c[f>>2]=j;h=h<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=l+m|0;k=0-n&7}if(!k)i=8;else{s=a[j>>0]|0;b[i>>1]=s&255;r=8-k|0;i=r&65535;h=(s&255)>>>r|h<<k;r=29}}if((r|0)==29)b[o>>1]=i;h=q^(e[56514+(((h^p)&255)<<1)>>1]|0);r=31;break}case 2:{o=f+6|0;i=b[o>>1]|0;r=31;break}case 1:{o=f+6|0;i=b[o>>1]|0;r=43;break}default:{}}if((r|0)==31){q=h<<8;p=h>>>8;if(i<<16>>16!=8){j=f+4|0;k=i&65535;h=(1<<k)+65535&(e[j>>1]|0);if((i&65535)>8){r=k+-8|0;i=r&65535;h=h>>>r;r=41}else r=35}else{h=a[c[f>>2]>>0]|0;j=f+4|0;b[j>>1]=h&255;h=(1<<(i&65535))+255&(h&255);k=8;r=35}if((r|0)==35){l=8-k|0;m=c[f>>2]|0;k=m+1|0;c[f>>2]=k;b[o>>1]=8;if(l>>>0>7){n=((l+-8|0)>>>3)+2|0;do{s=k;k=k+1|0;c[f>>2]=k;h=h<<8|(d[s>>0]|0);l=l+-8|0}while(l>>>0>7);k=m+n|0;l=0-i&7}if(!l)i=8;else{s=a[k>>0]|0;b[j>>1]=s&255;r=8-l|0;i=r&65535;h=(s&255)>>>r|h<<l;r=41}}if((r|0)==41)b[o>>1]=i;h=q^(e[56514+(((h^p)&255)<<1)>>1]|0);r=43}if((r|0)==43){q=h<<8;p=h>>>8;if(i<<16>>16!=8){j=f+4|0;k=i&65535;h=(1<<k)+65535&(e[j>>1]|0);if((i&65535)>8){i=k+-8|0;h=h>>>i;r=53}else r=47}else{h=a[c[f>>2]>>0]|0;j=f+4|0;b[j>>1]=h&255;h=(1<<(i&65535))+255&(h&255);k=8;r=47}if((r|0)==47){l=8-k|0;m=c[f>>2]|0;k=m+1|0;c[f>>2]=k;b[o>>1]=8;if(l>>>0>7){n=((l+-8|0)>>>3)+2|0;do{s=k;k=k+1|0;c[f>>2]=k;h=h<<8|(d[s>>0]|0);l=l+-8|0}while(l>>>0>7);k=m+n|0;i=0-i&7}else i=l;if(i){s=a[k>>0]|0;b[j>>1]=s&255;r=8-i|0;h=(s&255)>>>r|h<<i;i=r;r=53}}if((r|0)==53)b[o>>1]=i;h=q^(e[56514+(((h^p)&255)<<1)>>1]|0);g=g&7}if(!g){s=h;s=s&65535;return s|0}q=f+6|0;p=f+4|0;n=b[q>>1]|0;o=g;while(1){o=o+-1|0;if(n<<16>>16!=8){g=n&65535;i=(1<<g)+65535&(e[p>>1]|0);if((n&65535)<=1){k=1-g|0;m=c[f>>2]|0;j=m+1|0;c[f>>2]=j;b[q>>1]=8;if(k>>>0>7){l=(-7-g|0)>>>3;g=i;do{s=j;j=j+1|0;c[f>>2]=j;g=g<<8|(d[s>>0]|0);k=k+-8|0}while(k>>>0>7);j=m+2+l|0;k=1-n&7}else g=i;if(!k)i=8;else{s=a[j>>0]|0;b[p>>1]=s&255;r=8-k|0;j=r&65535;g=(s&255)>>>r|g<<k;r=67}}else r=60}else{i=a[c[f>>2]>>0]|0;b[p>>1]=i&255;i=(1<<(n&65535))+255&(i&255);g=8;r=60}if((r|0)==60){g=g+-1|0;j=g&65535;g=i>>>g;r=67}if((r|0)==67){r=0;b[q>>1]=j;i=j}s=h<<1;h=((g^h>>>15)&1|0)==0?s:s^32773;if(!o)break;else n=i}s=h&65535;return s|0}function Hl(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;Bl(a+28|0,0);Bl(a+36|0,0);a=a+44|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;return}function Il(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+36|0;d=a;e=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));f=97992;d=c[f+4>>2]|0;e=b;c[e>>2]=c[f>>2];c[e+4>>2]=d;c[a+44>>2]=0;c[a+9264>>2]=0;_l(a);return}function Jl(a){a=a|0;Zl(a);a=a+4096|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function Kl(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=(c[d+4>>2]|0)==0?1:2;switch(c[d>>2]|0){case 1:{e=12;break}case 3:{e=(c[d+28>>2]&4096|0)==0?36:18;f=3;break}default:{e=36;f=3}}f=c[d+20>>2]|0;h=a+4100|0;c[h>>2]=f;b[a+4104>>1]=i;g=a+4106|0;b[g>>1]=e<<5;if(!(c[d+44>>2]&2))f=21;else{c[h>>2]=f>>>1;b[g>>1]=e<<4&32752;f=22}zc[f&31](a,d,i,e);a=a+4096|0;c[a>>2]=(c[a>>2]|0)+e&15;return}function Ll(a){a=a|0;var b=0;b=a+9264|0;a=c[b>>2]|0;if(!a)return;vo(a);c[b>>2]=0;return}function Ml(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,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;if(!d)return;x=a+4096|0;n=(e|0)==0;m=0;s=a+1504|0;t=a+1472|0;while(1){if(!n){f=a+4108+(m*4608|0)|0;w=c[x>>2]|0;y=0;while(1){A=w&1;o=a+(m<<11)+(A<<9)|0;Ol(b+48+(m*4608|0)+(y<<7)|0,w>>>1,o,a+(m<<11)+1024+(A<<9)|0);k=w&-2;v=w+15&14|1;l=A^1;q=12744+(v<<2)|0;B=12744+(k<<2)|0;H=u(c[B>>2]|0,c[o>>2]|0)|0;g=u(c[q>>2]|0,c[a+(m<<11)+(l<<9)>>2]|0)|0;i=u(c[q+56>>2]|0,c[a+(m<<11)+(l<<9)+4>>2]|0)|0;h=u(c[q+48>>2]|0,c[a+(m<<11)+(l<<9)+8>>2]|0)|0;p=u(c[q+40>>2]|0,c[a+(m<<11)+(l<<9)+12>>2]|0)|0;j=u(c[q+32>>2]|0,c[a+(m<<11)+(l<<9)+16>>2]|0)|0;z=u(c[q+24>>2]|0,c[a+(m<<11)+(l<<9)+20>>2]|0)|0;r=u(c[q+16>>2]|0,c[a+(m<<11)+(l<<9)+24>>2]|0)|0;q=u(c[q+8>>2]|0,c[a+(m<<11)+(l<<9)+28>>2]|0)|0;I=u(c[B+56>>2]|0,c[a+(m<<11)+(A<<9)+4>>2]|0)|0;G=u(c[B+48>>2]|0,c[a+(m<<11)+(A<<9)+8>>2]|0)|0;F=u(c[B+40>>2]|0,c[a+(m<<11)+(A<<9)+12>>2]|0)|0;E=u(c[B+32>>2]|0,c[a+(m<<11)+(A<<9)+16>>2]|0)|0;D=u(c[B+24>>2]|0,c[a+(m<<11)+(A<<9)+20>>2]|0)|0;C=u(c[B+16>>2]|0,c[a+(m<<11)+(A<<9)+24>>2]|0)|0;c[f>>2]=I+H+G+F+E+D+C+(u(c[B+8>>2]|0,c[a+(m<<11)+(A<<9)+28>>2]|0)|0)-(i+g+h+p+j+z+r+q)>>2;q=0-v|0;r=0-k|0;z=s+(l<<9)|0;j=12744;p=a+(m<<11)+1024+(l<<9)|0;h=f+4|0;g=f+60|0;i=1;while(1){f=o;o=o+32|0;if(!(i&1)){B=j+128+(v<<2)|0;A=p+4|0;J=p+8|0;K=p+12|0;L=p+16|0;M=p+20|0;N=p+24|0;O=p+28|0;W=j+128+(k<<2)|0;I=f+60|0;$=u(c[W+8>>2]|0,c[I>>2]|0)|0;U=u(c[B>>2]|0,c[p>>2]|0)|0;V=u(c[B+56>>2]|0,c[A>>2]|0)|0;T=u(c[B+48>>2]|0,c[J>>2]|0)|0;S=u(c[B+40>>2]|0,c[K>>2]|0)|0;R=u(c[B+32>>2]|0,c[L>>2]|0)|0;Q=u(c[B+24>>2]|0,c[M>>2]|0)|0;P=u(c[B+16>>2]|0,c[N>>2]|0)|0;B=u(c[B+8>>2]|0,c[O>>2]|0)|0;H=f+56|0;aa=u(c[W+16>>2]|0,c[H>>2]|0)|0;G=f+52|0;_=u(c[W+24>>2]|0,c[G>>2]|0)|0;F=f+48|0;Z=u(c[W+32>>2]|0,c[F>>2]|0)|0;E=f+44|0;Y=u(c[W+40>>2]|0,c[E>>2]|0)|0;D=f+40|0;X=u(c[W+48>>2]|0,c[D>>2]|0)|0;C=f+36|0;f=u(c[W+56>>2]|0,c[C>>2]|0)|0;c[h>>2]=aa+$+_+Z+Y+X+f+(u(c[W>>2]|0,c[o>>2]|0)|0)-(V+U+T+S+R+Q+P+B)>>2;B=j+128+(q<<2)|0;f=u(c[B+116>>2]|0,c[O>>2]|0)|0;f=(u(c[B+108>>2]|0,c[N>>2]|0)|0)+f|0;f=f+(u(c[B+100>>2]|0,c[M>>2]|0)|0)|0;f=f+(u(c[B+92>>2]|0,c[L>>2]|0)|0)|0;f=f+(u(c[B+84>>2]|0,c[K>>2]|0)|0)|0;f=f+(u(c[B+76>>2]|0,c[J>>2]|0)|0)|0;f=f+(u(c[B+68>>2]|0,c[A>>2]|0)|0)|0;B=f+(u(c[B+60>>2]|0,c[p>>2]|0)|0)|0;f=j+128+(r<<2)|0;B=B+(u(c[f+60>>2]|0,c[o>>2]|0)|0)|0;C=B+(u(c[f+68>>2]|0,c[C>>2]|0)|0)|0;D=C+(u(c[f+76>>2]|0,c[D>>2]|0)|0)|0;E=D+(u(c[f+84>>2]|0,c[E>>2]|0)|0)|0;F=E+(u(c[f+92>>2]|0,c[F>>2]|0)|0)|0;G=F+(u(c[f+100>>2]|0,c[G>>2]|0)|0)|0;H=G+(u(c[f+108>>2]|0,c[H>>2]|0)|0)|0;c[g>>2]=H+(u(c[f+116>>2]|0,c[I>>2]|0)|0)>>2;f=h+4|0;g=g+-4|0}else f=h;i=i+1|0;if((i|0)==16)break;else{j=j+128|0;p=p+32|0;h=f}}aa=14792+(v<<2)|0;$=u(c[aa>>2]|0,c[z>>2]|0)|0;$=$+(u(c[aa+56>>2]|0,c[t+(l<<9)+36>>2]|0)|0)|0;$=$+(u(c[aa+48>>2]|0,c[t+(l<<9)+40>>2]|0)|0)|0;$=$+(u(c[aa+40>>2]|0,c[t+(l<<9)+44>>2]|0)|0)|0;$=$+(u(c[aa+32>>2]|0,c[t+(l<<9)+48>>2]|0)|0)|0;$=$+(u(c[aa+24>>2]|0,c[t+(l<<9)+52>>2]|0)|0)|0;$=$+(u(c[aa+16>>2]|0,c[t+(l<<9)+56>>2]|0)|0)|0;c[f>>2]=0-($+(u(c[aa+8>>2]|0,c[t+(l<<9)+60>>2]|0)|0))>>2;y=y+1|0;if((y|0)==(e|0))break;else{f=f+32|0;w=w+1&15}}}m=m+1|0;if((m|0)==(d|0))break;else{s=s+2048|0;t=t+2048|0}}return}function Nl(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,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;if(!d)return;w=a+4096|0;j=(e|0)==0;i=0;o=a+1472|0;p=a+1504|0;while(1){if(!j){r=a+4108+(i*4608|0)|0;v=c[w>>2]|0;x=0;while(1){A=v&1;k=a+(i<<11)+(A<<9)|0;Ol(b+48+(i*4608|0)+(x<<7)|0,v>>>1,k,a+(i<<11)+1024+(A<<9)|0);g=v&-2;q=v+15&14|1;h=A^1;m=12744+(q<<2)|0;B=12744+(g<<2)|0;H=u(c[B>>2]|0,c[k>>2]|0)|0;t=u(c[m>>2]|0,c[a+(i<<11)+(h<<9)>>2]|0)|0;y=u(c[m+56>>2]|0,c[a+(i<<11)+(h<<9)+4>>2]|0)|0;s=u(c[m+48>>2]|0,c[a+(i<<11)+(h<<9)+8>>2]|0)|0;l=u(c[m+40>>2]|0,c[a+(i<<11)+(h<<9)+12>>2]|0)|0;f=u(c[m+32>>2]|0,c[a+(i<<11)+(h<<9)+16>>2]|0)|0;z=u(c[m+24>>2]|0,c[a+(i<<11)+(h<<9)+20>>2]|0)|0;n=u(c[m+16>>2]|0,c[a+(i<<11)+(h<<9)+24>>2]|0)|0;m=u(c[m+8>>2]|0,c[a+(i<<11)+(h<<9)+28>>2]|0)|0;I=u(c[B+56>>2]|0,c[a+(i<<11)+(A<<9)+4>>2]|0)|0;G=u(c[B+48>>2]|0,c[a+(i<<11)+(A<<9)+8>>2]|0)|0;F=u(c[B+40>>2]|0,c[a+(i<<11)+(A<<9)+12>>2]|0)|0;E=u(c[B+32>>2]|0,c[a+(i<<11)+(A<<9)+16>>2]|0)|0;D=u(c[B+24>>2]|0,c[a+(i<<11)+(A<<9)+20>>2]|0)|0;C=u(c[B+16>>2]|0,c[a+(i<<11)+(A<<9)+24>>2]|0)|0;c[r>>2]=I+H+G+F+E+D+C+(u(c[B+8>>2]|0,c[a+(i<<11)+(A<<9)+28>>2]|0)|0)-(y+t+s+l+f+z+n+m)>>2;m=0-g|0;n=0-q|0;z=p+(h<<9)|0;f=12744;l=a+(i<<11)+1024+(h<<9)|0;s=r;t=r+124|0;y=1;while(1){s=s+4|0;I=f+128+(q<<2)|0;H=l+4|0;G=l+8|0;F=l+12|0;E=l+16|0;D=l+20|0;C=l+24|0;B=l+28|0;W=f+128+(g<<2)|0;A=k+60|0;aa=u(c[W+8>>2]|0,c[A>>2]|0)|0;U=u(c[I>>2]|0,c[l>>2]|0)|0;V=u(c[I+56>>2]|0,c[H>>2]|0)|0;T=u(c[I+48>>2]|0,c[G>>2]|0)|0;S=u(c[I+40>>2]|0,c[F>>2]|0)|0;R=u(c[I+32>>2]|0,c[E>>2]|0)|0;Q=u(c[I+24>>2]|0,c[D>>2]|0)|0;O=u(c[I+16>>2]|0,c[C>>2]|0)|0;I=u(c[I+8>>2]|0,c[B>>2]|0)|0;J=k+56|0;ba=u(c[W+16>>2]|0,c[J>>2]|0)|0;K=k+52|0;$=u(c[W+24>>2]|0,c[K>>2]|0)|0;L=k+48|0;_=u(c[W+32>>2]|0,c[L>>2]|0)|0;M=k+44|0;Z=u(c[W+40>>2]|0,c[M>>2]|0)|0;N=k+40|0;Y=u(c[W+48>>2]|0,c[N>>2]|0)|0;P=k+36|0;k=k+32|0;X=u(c[W+56>>2]|0,c[P>>2]|0)|0;c[s>>2]=ba+aa+$+_+Z+Y+X+(u(c[W>>2]|0,c[k>>2]|0)|0)-(V+U+T+S+R+Q+O+I)>>2;I=f+128+(m<<2)|0;O=u(c[I+60>>2]|0,c[k>>2]|0)|0;O=(u(c[I+68>>2]|0,c[P>>2]|0)|0)+O|0;N=O+(u(c[I+76>>2]|0,c[N>>2]|0)|0)|0;M=N+(u(c[I+84>>2]|0,c[M>>2]|0)|0)|0;L=M+(u(c[I+92>>2]|0,c[L>>2]|0)|0)|0;K=L+(u(c[I+100>>2]|0,c[K>>2]|0)|0)|0;J=K+(u(c[I+108>>2]|0,c[J>>2]|0)|0)|0;A=J+(u(c[I+116>>2]|0,c[A>>2]|0)|0)|0;I=f+128+(n<<2)|0;B=A+(u(c[I+116>>2]|0,c[B>>2]|0)|0)|0;C=B+(u(c[I+108>>2]|0,c[C>>2]|0)|0)|0;D=C+(u(c[I+100>>2]|0,c[D>>2]|0)|0)|0;E=D+(u(c[I+92>>2]|0,c[E>>2]|0)|0)|0;F=E+(u(c[I+84>>2]|0,c[F>>2]|0)|0)|0;G=F+(u(c[I+76>>2]|0,c[G>>2]|0)|0)|0;H=G+(u(c[I+68>>2]|0,c[H>>2]|0)|0)|0;c[t>>2]=H+(u(c[I+60>>2]|0,c[l>>2]|0)|0)>>2;y=y+1|0;if((y|0)==16)break;else{f=f+128|0;l=l+32|0;t=t+-4|0}}ba=14792+(q<<2)|0;aa=u(c[ba>>2]|0,c[z>>2]|0)|0;aa=aa+(u(c[ba+56>>2]|0,c[o+(h<<9)+36>>2]|0)|0)|0;aa=aa+(u(c[ba+48>>2]|0,c[o+(h<<9)+40>>2]|0)|0)|0;aa=aa+(u(c[ba+40>>2]|0,c[o+(h<<9)+44>>2]|0)|0)|0;aa=aa+(u(c[ba+32>>2]|0,c[o+(h<<9)+48>>2]|0)|0)|0;aa=aa+(u(c[ba+24>>2]|0,c[o+(h<<9)+52>>2]|0)|0)|0;aa=aa+(u(c[ba+16>>2]|0,c[o+(h<<9)+56>>2]|0)|0)|0;c[r+64>>2]=0-(aa+(u(c[ba+8>>2]|0,c[o+(h<<9)+60>>2]|0)|0))>>2;x=x+1|0;if((x|0)==(e|0))break;else{r=r+128|0;v=v+1&15}}}i=i+1|0;if((i|0)==(d|0))break;else{o=o+2048|0;p=p+2048|0}}return}function Ol(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,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;s=c[a>>2]|0;aa=c[a+124>>2]|0;Q=aa+s|0;aa=(s+2048-aa>>12)*4091|0;s=c[a+60>>2]|0;p=c[a+64>>2]|0;I=p+s|0;p=(s+2048-p>>12)*201|0;s=p+aa|0;p=(aa+2048-p>>12)*4076|0;aa=I+Q|0;I=(Q+2048-I>>12)*4076|0;Q=c[a+28>>2]|0;X=c[a+96>>2]|0;q=X+Q|0;X=(Q+2048-X>>12)*3035|0;Q=c[a+32>>2]|0;A=c[a+92>>2]|0;N=A+Q|0;A=(Q+2048-A>>12)*2751|0;Q=A+X|0;A=(X+2048-A>>12)*401|0;X=N+q|0;N=(q+2048-N>>12)*401|0;q=c[a+12>>2]|0;ba=c[a+112>>2]|0;m=ba+q|0;ba=(q+2048-ba>>12)*3857|0;q=c[a+48>>2]|0;n=c[a+76>>2]|0;G=n+q|0;n=(q+2048-n>>12)*1380|0;q=n+ba|0;n=(ba+2048-n>>12)*3166|0;ba=G+m|0;G=(m+2048-G>>12)*3166|0;m=c[a+16>>2]|0;T=c[a+108>>2]|0;r=T+m|0;T=(m+2048-T>>12)*3703|0;m=c[a+44>>2]|0;i=c[a+80>>2]|0;F=i+m|0;i=(m+2048-i>>12)*1751|0;m=i+T|0;i=(T+2048-i>>12)*2598|0;T=F+r|0;F=(r+2048-F>>12)*2598|0;r=c[a+4>>2]|0;$=c[a+120>>2]|0;k=$+r|0;$=(r+2048-$>>12)*4052|0;r=c[a+56>>2]|0;o=c[a+68>>2]|0;H=o+r|0;o=(r+2048-o>>12)*601|0;r=o+$|0;o=($+2048-o>>12)*3920|0;$=H+k|0;H=(k+2048-H>>12)*3920|0;k=c[a+24>>2]|0;R=c[a+100>>2]|0;Z=R+k|0;R=(k+2048-R>>12)*3290|0;k=c[a+36>>2]|0;g=c[a+88>>2]|0;D=g+k|0;g=(k+2048-g>>12)*2440|0;k=g+R|0;g=(R+2048-g>>12)*1189|0;R=D+Z|0;D=(Z+2048-D>>12)*1189|0;Z=c[a+8>>2]|0;_=c[a+116>>2]|0;l=_+Z|0;_=(Z+2048-_>>12)*3973|0;Z=c[a+52>>2]|0;x=c[a+72>>2]|0;Y=x+Z|0;x=(Z+2048-x>>12)*995|0;Z=x+_|0;x=(_+2048-x>>12)*3612|0;_=Y+l|0;Y=(l+2048-Y>>12)*3612|0;l=c[a+20>>2]|0;S=c[a+104>>2]|0;ca=S+l|0;S=(l+2048-S>>12)*3513|0;l=c[a+40>>2]|0;h=c[a+84>>2]|0;E=h+l|0;h=(l+2048-h>>12)*2106|0;l=h+S|0;h=(S+2048-h>>12)*1931|0;S=E+ca|0;E=(ca+2048-E>>12)*1931|0;ca=X+aa|0;X=(aa+2048-X>>12)*4017|0;aa=T+ba|0;T=(ba+2048-T>>12)*799|0;ba=R+$|0;R=($+2048-R>>12)*3406|0;$=S+_|0;S=(_+2048-S>>12)*2276|0;_=Q+s|0;Q=(s+2048-Q>>12)*4017|0;s=m+q|0;m=(q+2048-m>>12)*799|0;q=k+r|0;k=(r+2048-k>>12)*3406|0;r=l+Z|0;l=(Z+2048-l>>12)*2276|0;Z=N+I|0;N=(I+2048-N>>12)*4017|0;I=F+G|0;F=(G+2048-F>>12)*799|0;G=D+H|0;D=(H+2048-D>>12)*3406|0;H=E+Y|0;E=(Y+2048-E>>12)*2276|0;Y=A+p|0;A=(p+2048-A>>12)*4017|0;p=i+n|0;i=(n+2048-i>>12)*799|0;n=g+o|0;g=(o+2048-g>>12)*3406|0;o=h+x|0;h=(x+2048-h>>12)*2276|0;x=$+ba|0;w=aa+ca+2048|0;c[e+480+(b<<2)>>2]=w+x>>12;c[d+(b<<2)>>2]=((w-x>>12)*2896|0)+2048>>12;x=s+_|0;w=r+q|0;a=w+x|0;c[e+448+(b<<2)>>2]=a+2048>>12;M=I+Z|0;L=H+G|0;B=L+M|0;c[e+416+(b<<2)>>2]=B+2048>>12;z=p+Y|0;t=o+n|0;y=t+z|0;a=(y<<1)-a|0;c[e+384+(b<<2)>>2]=a+2048>>12;W=T+X|0;V=S+R|0;U=V+W|0;c[e+352+(b<<2)>>2]=U+2048>>12;P=m+Q|0;O=l+k|0;j=O+P|0;a=(j<<1)-a|0;c[e+320+(b<<2)>>2]=a+2048>>12;K=F+N|0;J=E+D|0;C=J+K|0;B=(C<<1)-B|0;c[e+288+(b<<2)>>2]=B+2048>>12;v=i+A|0;u=h+g|0;f=u+v|0;y=(f<<1)-y|0;a=(y<<1)-a|0;c[e+256+(b<<2)>>2]=a+2048>>12;aa=(ca+2048-aa>>12)*3784|0;$=(ba+2048-$>>12)*1567|0;ba=$+aa|0;c[e+224+(b<<2)>>2]=ba+2048>>12;c[d+256+(b<<2)>>2]=2048-ba+((aa+2048-$>>12)*5792|0)>>12;s=(_+2048-s>>12)*3784|0;r=(q+2048-r>>12)*1567|0;q=r+s|0;a=(q<<1)-a|0;c[e+192+(b<<2)>>2]=a+2048>>12;I=(Z+2048-I>>12)*3784|0;H=(G+2048-H>>12)*1567|0;G=H+I|0;B=(G<<1)-B|0;c[e+160+(b<<2)>>2]=B+2048>>12;p=(Y+2048-p>>12)*3784|0;o=(n+2048-o>>12)*1567|0;n=o+p|0;y=(n<<1)-y|0;a=(y<<1)-a|0;c[e+128+(b<<2)>>2]=a+2048>>12;T=(X+2048-T>>12)*3784|0;S=(R+2048-S>>12)*1567|0;R=S+T|0;U=(R<<1)-U|0;c[e+96+(b<<2)>>2]=U+2048>>12;U=((W+2048-V>>12)*5792|0)-U|0;c[d+128+(b<<2)>>2]=U+2048>>12;c[d+384+(b<<2)>>2]=2048-U+(((T+2048-S>>12)*5792|0)-R<<1)>>12;m=(Q+2048-m>>12)*3784|0;l=(k+2048-l>>12)*1567|0;k=l+m|0;j=(k<<1)-j|0;a=(j<<1)-a|0;c[e+64+(b<<2)>>2]=a+2048>>12;j=((P+2048-O>>12)*5792|0)-j|0;F=(N+2048-F>>12)*3784|0;E=(D+2048-E>>12)*1567|0;D=E+F|0;C=(D<<1)-C|0;B=(C<<1)-B|0;c[e+32+(b<<2)>>2]=B+2048>>12;B=((M+2048-L>>12)*5792|0)-B|0;c[d+64+(b<<2)>>2]=B+2048>>12;C=((K+2048-J>>12)*5792|0)-C|0;B=(C<<1)-B|0;c[d+192+(b<<2)>>2]=B+2048>>12;B=(((I+2048-H>>12)*5792|0)-G<<1)-B|0;c[d+320+(b<<2)>>2]=B+2048>>12;c[d+448+(b<<2)>>2]=((((F+2048-E>>12)*5792|0)-D<<1)-C<<1)+2048-B>>12;i=(A+2048-i>>12)*3784|0;h=(g+2048-h>>12)*1567|0;g=h+i|0;f=(g<<1)-f|0;y=(f<<1)-y|0;t=((z+2048-t>>12)*5792|0)-y|0;a=(y<<1)-a|0;c[e+(b<<2)>>2]=a+2048>>12;a=((x+2048-w>>12)*5792|0)-a|0;c[d+32+(b<<2)>>2]=a+2048>>12;a=(t<<1)-a|0;c[d+96+(b<<2)>>2]=a+2048>>12;a=(j<<1)-a|0;c[d+160+(b<<2)>>2]=a+2048>>12;f=((v+2048-u>>12)*5792|0)-f|0;e=(f<<1)-t|0;a=(e<<1)-a|0;c[d+224+(b<<2)>>2]=a+2048>>12;a=(((s+2048-r>>12)*5792|0)-q<<1)-a|0;c[d+288+(b<<2)>>2]=a+2048>>12;e=(((p+2048-o>>12)*5792|0)-n<<1)-e|0;a=(e<<1)-a|0;c[d+352+(b<<2)>>2]=a+2048>>12;a=((((m+2048-l>>12)*5792|0)-k<<1)-j<<1)-a|0;c[d+416+(b<<2)>>2]=a+2048>>12;c[d+480+(b<<2)>>2]=(((((i+2048-h>>12)*5792|0)-g<<1)-f<<1)-e<<1)+2048-a>>12;return}function Pl(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;c[j>>2]=0;l=(h|0)!=0;t=(g|0)==1;c[k>>2]=l?(t?1:2):t?5:3;c[i>>2]=Fl(f,l?8:9)|0;c[i+4>>2]=Fl(f,c[k>>2]|0)|0;if(!l)if(!g)t=2;else{h=0;do{a[i+8+h>>0]=Fl(f,4)|0;h=h+1|0}while((h|0)!=(g|0));t=2}else t=1;q=(g|0)==0;s=l?9:4;r=l?2:3;p=l^1;o=0;h=0;do{if(!q){n=0;do{l=i+10+(o*116|0)+(n*58|0)|0;b[l>>1]=Fl(f,12)|0;m=i+10+(o*116|0)+(n*58|0)+2|0;b[m>>1]=Fl(f,9)|0;b[i+10+(o*116|0)+(n*58|0)+4>>1]=Fl(f,8)|0;b[i+10+(o*116|0)+(n*58|0)+6>>1]=Fl(f,s)|0;c[j>>2]=(c[j>>2]|0)+(e[l>>1]|0);h=(h|0)==0&(e[m>>1]|0)>288?562:h;m=i+10+(o*116|0)+(n*58|0)+8|0;a[m>>0]=0;if(!(Fl(f,1)|0)){a[i+10+(o*116|0)+(n*58|0)+9>>0]=0;a[i+10+(o*116|0)+(n*58|0)+10>>0]=Fl(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=Fl(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+12>>0]=Fl(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+16>>0]=Fl(f,4)|0;a[i+10+(o*116|0)+(n*58|0)+17>>0]=Fl(f,3)|0}else{u=Fl(f,2)|0;k=u&255;l=i+10+(o*116|0)+(n*58|0)+9|0;a[l>>0]=k;h=(u&255|h|0)==0?563:h;if(k<<24>>24==2&p)h=((h|0)==0?(a[i+8+n>>0]|0)!=0:0)?564:h;k=i+10+(o*116|0)+(n*58|0)+16|0;a[k>>0]=7;a[i+10+(o*116|0)+(n*58|0)+17>>0]=36;if(!(Fl(f,1)|0)){if((a[l>>0]|0)==2)a[k>>0]=8}else a[m>>0]=a[m>>0]|8;a[i+10+(o*116|0)+(n*58|0)+10>>0]=Fl(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+11>>0]=Fl(f,5)|0;a[i+10+(o*116|0)+(n*58|0)+12>>0]=4;a[i+10+(o*116|0)+(n*58|0)+13>>0]=Fl(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+14>>0]=Fl(f,3)|0;a[i+10+(o*116|0)+(n*58|0)+15>>0]=Fl(f,3)|0}u=Fl(f,r)|0;a[m>>0]=u|d[m>>0];n=n+1|0}while((n|0)!=(g|0))}o=o+1|0}while(o>>>0<t>>>0);return h|0}function Ql(f,h,i,j){f=f|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,v=0,w=0,x=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,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;Ab=hc;lb=hc=hc+31&-32;hc=hc+7296|0;xb=lb+2448|0;wb=lb+2432|0;vb=lb+2416|0;tb=lb+2400|0;sb=lb+2384|0;rb=lb+2368|0;yb=lb+2352|0;ub=lb+2336|0;qb=lb+2320|0;pb=lb+16|0;ob=lb;hb=lb+7224|0;nb=lb+7216|0;zb=lb+2608|0;lb=lb+2464|0;jb=h+28|0;fb=c[jb>>2]|0;kb=(fb&16384|0)==0;k=c[h+20>>2]<<((kb^1)&1);k=(k>>>15&1)+(kb?-8:-5)+(k>>>7&15)|0;fb=2-(fb>>>12&1)|0;if(!fb){zb=0;hc=Ab;return zb|0}ib=(j|0)==0;gb=14920+(k*12|0)|0;kb=14920+(k*12|0)+8|0;db=14920+(k*12|0)+4|0;Fa=i+184|0;bb=h+8|0;Ga=pb+4|0;Ra=pb+8|0;Ua=pb+12|0;Va=pb+16|0;Wa=pb+20|0;Xa=pb+24|0;Ya=pb+28|0;Za=pb+32|0;_a=pb+36|0;Ha=pb+40|0;Ia=pb+44|0;Ja=pb+48|0;Ka=pb+52|0;La=pb+56|0;Ma=pb+60|0;Na=pb+64|0;Oa=pb+68|0;Pa=pb+72|0;Qa=pb+76|0;Sa=pb+80|0;Ta=pb+84|0;R=c[12099]|0;ab=h+4|0;T=hb+4|0;U=hb+8|0;cb=h+9264|0;V=pb+2|0;ea=pb+4|0;pa=pb+6|0;za=pb+8|0;Aa=pb+10|0;Ba=pb+12|0;Ca=pb+14|0;Da=pb+16|0;Ea=pb+18|0;W=pb+20|0;X=pb+22|0;Y=pb+24|0;Z=pb+26|0;_=pb+28|0;$=pb+30|0;aa=pb+32|0;ba=pb+34|0;ca=pb+36|0;da=pb+38|0;fa=pb+40|0;ga=pb+42|0;ha=pb+44|0;ia=pb+46|0;ja=pb+48|0;ka=pb+50|0;la=pb+52|0;ma=pb+54|0;na=pb+56|0;oa=pb+58|0;qa=pb+60|0;ra=pb+62|0;sa=pb+64|0;ta=pb+66|0;ua=pb+68|0;va=pb+70|0;wa=pb+72|0;xa=pb+74|0;ya=pb+76|0;S=zb+2304|0;$a=0;a:while(1){P=i+10+($a*116|0)|0;if(!ib){L=c[gb>>2]|0;O=($a|0)==0;N=0;do{x=i+10+($a*116|0)+(N*58|0)|0;k=nb+(N<<2)|0;c[k>>2]=L;z=i+10+($a*116|0)+(N*58|0)+9|0;n=(a[z>>0]|0)==2;if(n){K=c[((a[i+10+($a*116|0)+(N*58|0)+8>>0]&8)==0?db:kb)>>2]|0;c[k>>2]=K;k=K}else k=L;if(!(c[jb>>2]&4096)){if(O)m=0;else m=d[i+8+N>>0]|0;K=f;o=c[K+4>>2]|0;p=pb;c[p>>2]=c[K>>2];c[p+4>>2]=o;p=e[i+10+($a*116|0)+(N*58|0)+6>>1]|0;o=d[71382+(p<<1)>>0]|0;p=d[71382+(p<<1)+1>>0]|0;if(n){l=18-((d[i+10+($a*116|0)+(N*58|0)+8>>0]|0)>>>3&1)|0;m=l;n=0;while(1){m=m+-1|0;a[i+10+($a*116|0)+(N*58|0)+18+n>>0]=Fl(f,o)|0;if(!m)break;else n=n+1|0}a[i+10+($a*116|0)+(N*58|0)+18+l>>0]=Fl(f,p)|0;a[l+1+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[l+2+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;J=l|4;a[l+3+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[i+10+($a*116|0)+(N*58|0)+18+J>>0]=Fl(f,p)|0;a[J+1+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[J+2+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[J+3+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[J+4+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[J+5+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[J+6+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;K=l|12;a[J+7+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[i+10+($a*116|0)+(N*58|0)+18+K>>0]=Fl(f,p)|0;a[K+1+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[K+2+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[K+3+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[K+4+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;a[K+5+(i+10+($a*116|0)+(N*58|0)+18)>>0]=Fl(f,p)|0;K=x+(l|36)|0;a[K>>0]=0;a[K+1>>0]=0;a[K+2>>0]=0}else{if(!(m&8)){a[i+10+($a*116|0)+(N*58|0)+18>>0]=Fl(f,o)|0;a[i+10+($a*116|0)+(N*58|0)+19>>0]=Fl(f,o)|0;a[i+10+($a*116|0)+(N*58|0)+20>>0]=Fl(f,o)|0;a[i+10+($a*116|0)+(N*58|0)+21>>0]=Fl(f,o)|0;a[i+10+($a*116|0)+(N*58|0)+22>>0]=Fl(f,o)|0;l=(Fl(f,o)|0)&255}else{a[i+10+($a*116|0)+(N*58|0)+18>>0]=a[i+10+(N*58|0)+18>>0]|0;a[i+10+($a*116|0)+(N*58|0)+19>>0]=a[i+10+(N*58|0)+19>>0]|0;a[i+10+($a*116|0)+(N*58|0)+20>>0]=a[i+10+(N*58|0)+20>>0]|0;a[i+10+($a*116|0)+(N*58|0)+21>>0]=a[i+10+(N*58|0)+21>>0]|0;a[i+10+($a*116|0)+(N*58|0)+22>>0]=a[i+10+(N*58|0)+22>>0]|0;l=a[i+10+(N*58|0)+23>>0]|0}a[i+10+($a*116|0)+(N*58|0)+23>>0]=l;if(!(m&4)){a[i+10+($a*116|0)+(N*58|0)+24>>0]=Fl(f,o)|0;a[i+10+($a*116|0)+(N*58|0)+25>>0]=Fl(f,o)|0;a[i+10+($a*116|0)+(N*58|0)+26>>0]=Fl(f,o)|0;a[i+10+($a*116|0)+(N*58|0)+27>>0]=Fl(f,o)|0;l=(Fl(f,o)|0)&255}else{a[i+10+($a*116|0)+(N*58|0)+24>>0]=a[i+10+(N*58|0)+24>>0]|0;a[i+10+($a*116|0)+(N*58|0)+25>>0]=a[i+10+(N*58|0)+25>>0]|0;a[i+10+($a*116|0)+(N*58|0)+26>>0]=a[i+10+(N*58|0)+26>>0]|0;a[i+10+($a*116|0)+(N*58|0)+27>>0]=a[i+10+(N*58|0)+27>>0]|0;l=a[i+10+(N*58|0)+28>>0]|0}a[i+10+($a*116|0)+(N*58|0)+28>>0]=l;if(!(m&2)){a[i+10+($a*116|0)+(N*58|0)+29>>0]=Fl(f,p)|0;a[i+10+($a*116|0)+(N*58|0)+30>>0]=Fl(f,p)|0;a[i+10+($a*116|0)+(N*58|0)+31>>0]=Fl(f,p)|0;a[i+10+($a*116|0)+(N*58|0)+32>>0]=Fl(f,p)|0;l=(Fl(f,p)|0)&255}else{a[i+10+($a*116|0)+(N*58|0)+29>>0]=a[i+10+(N*58|0)+29>>0]|0;a[i+10+($a*116|0)+(N*58|0)+30>>0]=a[i+10+(N*58|0)+30>>0]|0;a[i+10+($a*116|0)+(N*58|0)+31>>0]=a[i+10+(N*58|0)+31>>0]|0;a[i+10+($a*116|0)+(N*58|0)+32>>0]=a[i+10+(N*58|0)+32>>0]|0;l=a[i+10+(N*58|0)+33>>0]|0}a[i+10+($a*116|0)+(N*58|0)+33>>0]=l;if(!(m&1)){a[i+10+($a*116|0)+(N*58|0)+34>>0]=Fl(f,p)|0;a[i+10+($a*116|0)+(N*58|0)+35>>0]=Fl(f,p)|0;a[i+10+($a*116|0)+(N*58|0)+36>>0]=Fl(f,p)|0;a[i+10+($a*116|0)+(N*58|0)+37>>0]=Fl(f,p)|0;l=(Fl(f,p)|0)&255}else{a[i+10+($a*116|0)+(N*58|0)+34>>0]=a[i+10+(N*58|0)+34>>0]|0;a[i+10+($a*116|0)+(N*58|0)+35>>0]=a[i+10+(N*58|0)+35>>0]|0;a[i+10+($a*116|0)+(N*58|0)+36>>0]=a[i+10+(N*58|0)+36>>0]|0;a[i+10+($a*116|0)+(N*58|0)+37>>0]=a[i+10+(N*58|0)+37>>0]|0;l=a[i+10+(N*58|0)+38>>0]|0}a[i+10+($a*116|0)+(N*58|0)+38>>0]=l;a[i+10+($a*116|0)+(N*58|0)+39>>0]=0}l=Cl(pb,f)|0}else{t=(N|0)==0?0:Fa;l=c[bb>>2]|0;K=f;p=c[K+4>>2]|0;m=pb;c[m>>2]=c[K>>2];c[m+4>>2]=p;m=b[i+10+($a*116|0)+(N*58|0)+6>>1]|0;p=m&65535;if(n)v=((d[i+10+($a*116|0)+(N*58|0)+8>>0]|0)>>>3&1)+1&255;else v=0;if((t|0)!=0&(l&1|0)!=0){l=p>>>1;do if((m&65535)>=360)if((m&65535)<488){r=l+-180|0;s=4;m=r>>>4&3;q=r>>>2&3;r=r&3;break}else{r=l+-244|0;q=(r>>>0)/3|0;s=5;m=q;q=r-(q*3|0)|0;r=0;break}else{K=(l>>>0)%36|0;r=(K>>>0)/6|0;s=3;m=(p>>>0)/72|0;q=r;r=K-(r*6|0)|0}while(0);n=71310+(s*12|0)+(v<<2)|0;p=(1<<m)+-1|0;if(!(a[n>>0]|0))l=0;else{o=0;while(1){K=Fl(f,m)|0;a[i+10+($a*116|0)+(N*58|0)+18+o>>0]=K;l=o+1|0;a[t+18+o>>0]=(K|0)==(p|0)&1;if(l>>>0<(d[n>>0]|0)>>>0)o=l;else break}}p=(1<<q)+-1|0;n=71310+(s*12|0)+(v<<2)+1|0;if(a[n>>0]|0){o=0;m=l;while(1){K=Fl(f,q)|0;a[i+10+($a*116|0)+(N*58|0)+18+m>>0]=K;l=m+1|0;a[t+18+m>>0]=(K|0)==(p|0)&1;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}p=(1<<r)+-1|0;n=71310+(s*12|0)+(v<<2)+2|0;if(a[n>>0]|0){o=0;m=l;while(1){K=Fl(f,r)|0;a[i+10+($a*116|0)+(N*58|0)+18+m>>0]=K;l=m+1|0;a[t+18+m>>0]=(K|0)==(p|0)&1;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}n=71310+(s*12|0)+(v<<2)+3|0;if(a[n>>0]|0){o=0;m=l;while(1){K=Fl(f,0)|0;a[i+10+($a*116|0)+(N*58|0)+18+m>>0]=K;l=m+1|0;a[t+18+m>>0]=(K|0)==0&1;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}if(l>>>0<39)do{a[i+10+($a*116|0)+(N*58|0)+18+l>>0]=0;a[t+18+l>>0]=0;l=l+1|0}while((l|0)!=39)}else{do if((m&65535)>=400)if((m&65535)<500){q=p+-400|0;s=1;o=(q>>>0)/20|0;q=(q>>>2>>>0)%5|0;r=m&3;p=0;break}else{r=p+-500|0;q=(r>>>0)/3|0;s=i+10+($a*116|0)+(N*58|0)+8|0;a[s>>0]=a[s>>0]|4;s=2;o=q;q=r-(q*3|0)|0;r=0;p=0;break}else{s=0;o=(p>>>0)/80|0;q=(p>>>4>>>0)%5|0;r=p>>>2&3;p=p&3}while(0);m=71310+(s*12|0)+(v<<2)|0;if(!(a[m>>0]|0))l=0;else{n=0;while(1){l=n+1|0;a[i+10+($a*116|0)+(N*58|0)+18+n>>0]=Fl(f,o)|0;if(l>>>0<(d[m>>0]|0)>>>0)n=l;else break}}n=71310+(s*12|0)+(v<<2)+1|0;if(a[n>>0]|0){o=0;m=l;while(1){l=m+1|0;a[i+10+($a*116|0)+(N*58|0)+18+m>>0]=Fl(f,q)|0;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}n=71310+(s*12|0)+(v<<2)+2|0;if(a[n>>0]|0){o=0;m=l;while(1){l=m+1|0;a[i+10+($a*116|0)+(N*58|0)+18+m>>0]=Fl(f,r)|0;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}n=71310+(s*12|0)+(v<<2)+3|0;if(a[n>>0]|0){o=0;m=l;while(1){l=m+1|0;a[i+10+($a*116|0)+(N*58|0)+18+m>>0]=Fl(f,p)|0;o=o+1|0;if(o>>>0>=(d[n>>0]|0)>>>0)break;else m=l}}if(l>>>0<39)hB(x+(l+18)|0,0,39-l|0)|0}l=Cl(pb,f)|0}w=zb+(N*2304|0)|0;m=(e[x>>1]|0)-l|0;if((m|0)<0){mb=566;break a}r=(e[i+10+($a*116|0)+(N*58|0)+4>>1]|0)+-210|0;K=i+10+($a*116|0)+(N*58|0)+8|0;n=d[K>>0]|0;s=(n>>>1&1)+1|0;do if((a[z>>0]|0)==2){if(!(n&8)){l=0;n=0}else{o=n<<29>>31;l=0;n=0;while(1){c[pb+(n<<2)>>2]=r-((o&d[71414+n>>0])+(d[i+10+($a*116|0)+(N*58|0)+18+n>>0]|0)<<s);p=n+1|0;l=l+(d[k+n>>0]|0)|0;if(l>>>0<36)n=p;else{n=p;break}}}p=r-(d[i+10+($a*116|0)+(N*58|0)+13>>0]<<3)|0;q=r-(d[i+10+($a*116|0)+(N*58|0)+14>>0]<<3)|0;o=r-(d[i+10+($a*116|0)+(N*58|0)+15>>0]<<3)|0;if(l>>>0<576)while(1){c[pb+(n<<2)>>2]=p-(d[i+10+($a*116|0)+(N*58|0)+18+n>>0]<<s);J=n+1|0;c[pb+(J<<2)>>2]=q-(d[i+10+($a*116|0)+(N*58|0)+18+J>>0]<<s);J=n+2|0;c[pb+(J<<2)>>2]=o-(d[i+10+($a*116|0)+(N*58|0)+18+J>>0]<<s);l=((d[k+n>>0]|0)*3|0)+l|0;if(l>>>0>=576)break;else n=n+3|0}}else{c[pb>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+18>>0]<<s);c[Ga>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+19>>0]<<s);c[Ra>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+20>>0]<<s);c[Ua>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+21>>0]<<s);c[Va>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+22>>0]<<s);c[Wa>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+23>>0]<<s);c[Xa>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+24>>0]<<s);c[Ya>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+25>>0]<<s);c[Za>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+26>>0]<<s);c[_a>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+27>>0]<<s);c[Ha>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+28>>0]<<s);l=d[i+10+($a*116|0)+(N*58|0)+29>>0]|0;if(!(n&4)){c[Ia>>2]=r-(l<<s);c[Ja>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+30>>0]<<s);c[Ka>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+31>>0]<<s);c[La>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+32>>0]<<s);c[Ma>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+33>>0]<<s);c[Na>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+34>>0]<<s);c[Oa>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+35>>0]<<s);c[Pa>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+36>>0]<<s);c[Qa>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+37>>0]<<s);c[Sa>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+38>>0]<<s);c[Ta>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+39>>0]<<s);break}else{c[Ia>>2]=r-(l+1<<s);c[Ja>>2]=r-((d[i+10+($a*116|0)+(N*58|0)+30>>0]|0)+1<<s);c[Ka>>2]=r-((d[i+10+($a*116|0)+(N*58|0)+31>>0]|0)+1<<s);c[La>>2]=r-((d[i+10+($a*116|0)+(N*58|0)+32>>0]|0)+1<<s);c[Ma>>2]=r-((d[i+10+($a*116|0)+(N*58|0)+33>>0]|0)+2<<s);c[Na>>2]=r-((d[i+10+($a*116|0)+(N*58|0)+34>>0]|0)+2<<s);c[Oa>>2]=r-((d[i+10+($a*116|0)+(N*58|0)+35>>0]|0)+3<<s);c[Pa>>2]=r-((d[i+10+($a*116|0)+(N*58|0)+36>>0]|0)+3<<s);c[Qa>>2]=r-((d[i+10+($a*116|0)+(N*58|0)+37>>0]|0)+3<<s);c[Sa>>2]=r-((d[i+10+($a*116|0)+(N*58|0)+38>>0]|0)+2<<s);c[Ta>>2]=r-(d[i+10+($a*116|0)+(N*58|0)+39>>0]<<s);break}}while(0);o=f;n=c[o>>2]|0;o=c[o+4>>2]|0;s=ob;c[s>>2]=n;c[s+4>>2]=o;El(f,m);o=dB(n|0,o|0,48)|0;y()|0;o=(31-o&-8)+o|0;n=Fl(ob,o)|0;s=d[i+10+($a*116|0)+(N*58|0)+10>>0]|0;q=c[12488+(s<<3)>>2]|0;if(!q){Q=165;break a}r=zb+(N*2304|0)+(d[k>>0]<<2)|0;x=k+1|0;l=m-o|0;p=c[pb>>2]|0;k=b[i+10+($a*116|0)+(N*58|0)+2>>1]|0;if((m|0)>0&k<<16>>16!=0){J=i+10+($a*116|0)+(N*58|0)+17|0;I=k&65535;B=p;t=Ga;z=e[12488+(s<<3)+4>>1]|0;v=(d[i+10+($a*116|0)+(N*58|0)+16>>0]|0)+1|0;m=0;A=0;p=e[12488+(s<<3)+6>>1]|0;H=0;F=w;while(1){I=I+-1|0;if((F|0)==(r|0)){w=x+1|0;r=F+(d[x>>0]<<2)|0;k=v+-1|0;if(!k){if(!m)k=(d[J>>0]|0)+1|0;else k=0;m=m+1|0;p=d[i+10+($a*116|0)+(N*58|0)+10+m>>0]|0;q=c[12488+(p<<3)>>2]|0;if(!q){Q=165;break a}else{s=e[12488+(p<<3)+4>>1]|0;p=e[12488+(p<<3)+6>>1]|0}}else s=z;x=c[t>>2]|0;G=x;t=t+4|0;z=s;E=k;D=m;s=(B|0)==(x|0)?A:0;x=w;C=p}else{G=B;E=v;D=m;s=A;C=p}k=31-o&-8;if((o|0)<21){n=Fl(ob,k)|0|n<<k;l=l-k|0;o=k+o|0}k=n>>>(o-C|0)&(1<<C)+-1;if(!(a[q+(k<<1)>>0]&1)){m=C;do{o=o-m|0;k=b[q+(k<<1)>>1]|0;m=(k&65535)>>>1&7;k=(n>>>(o-m|0)&(1<<m)+-1)+((k&65535)>>>4&65535)|0}while(!(a[q+(k<<1)>>0]&1))}A=q+(k<<1)|0;m=b[A>>1]|0;o=o-((m&65535)>>>1&7)|0;m=(m&65535)>>>4;k=m&15;v=k&65535;b:do if(!z){if(!(k<<16>>16)){m=s;k=0}else{k=1<<v;if(!(k&s)){s=k|s;p=(G|0)%4|0;k=c[15028+(v<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){g[sb>>3]=+(m|0)*3.725290298461914e-09;c[sb+8>>2]=k;_n(R,71436,sb)|0;k=2147483647;break}else{k=m<<k;break}else{B=0-k|0;k=B>>>0>31?0:(1<<~k)+m>>B}while(0);if(p)k=u((c[47856+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[hb+(v<<2)>>2]=k;m=s}else{m=s;k=c[hb+(v<<2)>>2]|0}B=o+-1|0;o=B;k=(1<<B&n|0)==0?k:0-k|0}c[F>>2]=k;B=(e[A>>1]|0)>>>8&15;v=B&65535;if(!(B<<16>>16)){w=n;k=0;s=m}else{k=1<<v;if(!(k&m)){s=k|m;k=(G|0)/4|0;p=G-(k<<2)|0;B=c[15028+(v<<2)>>2]|0;m=B&134217727;k=(B>>>27)+k|0;do if((k|0)>=0)if((k|0)>4){g[tb>>3]=+(m|0)*3.725290298461914e-09;c[tb+8>>2]=k;_n(R,71436,tb)|0;k=2147483647;break}else{k=m<<k;break}else{B=0-k|0;k=B>>>0>31?0:(1<<~k)+m>>B}while(0);if(p)k=u((c[47856+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[hb+(v<<2)>>2]=k;m=s}else k=c[hb+(v<<2)>>2]|0;s=o+-1|0;w=n;o=s;k=(1<<s&n|0)==0?k:0-k|0;s=m}}else{c:do switch(m&15){case 0:{w=n;k=0;break}case 15:{if(o>>>0<(z+2|0)>>>0){n=Fl(ob,16)|0|n<<16;l=l+-16|0;o=o+16|0}o=o-z|0;p=(G|0)%4|0;k=c[15028+((n>>>o&(1<<z)+-1)+v<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){g[qb>>3]=+(m|0)*3.725290298461914e-09;c[qb+8>>2]=k;_n(R,71436,qb)|0;k=2147483647;break}else{k=m<<k;break}else{Q=0-k|0;k=Q>>>0>31?0:(1<<~k)+m>>Q}while(0);if(!p){Q=118;break c}k=u((c[47856+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;Q=118;break}default:{k=1<<v;if(k&s|0){k=c[hb+(v<<2)>>2]|0;Q=118;break c}s=k|s;p=(G|0)%4|0;k=c[15028+(v<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){g[ub>>3]=+(m|0)*3.725290298461914e-09;c[ub+8>>2]=k;_n(R,71436,ub)|0;k=2147483647;break}else{k=m<<k;break}else{Q=0-k|0;k=Q>>>0>31?0:(1<<~k)+m>>Q}while(0);if(p)k=u((c[47856+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[hb+(v<<2)>>2]=k;Q=118}}while(0);if((Q|0)==118){Q=0;B=o+-1|0;w=n;o=B;k=(1<<B&n|0)==0?k:0-k|0}c[F>>2]=k;B=(e[A>>1]|0)>>>8;v=B&15;d:do switch(B&15){case 0:{k=0;break b}case 15:{if(o>>>0<(z+1|0)>>>0){n=Fl(ob,16)|0|w<<16;l=l+-16|0;o=o+16|0}else n=w;o=o-z|0;p=(G|0)%4|0;k=c[15028+((n>>>o&(1<<z)+-1)+v<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){g[yb>>3]=+(m|0)*3.725290298461914e-09;c[yb+8>>2]=k;_n(R,71436,yb)|0;k=2147483647;break}else{k=m<<k;break}else{B=0-k|0;k=B>>>0>31?0:(1<<~k)+m>>B}while(0);if(!p)break d;k=u((c[47856+(p+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;break}default:{k=1<<v;if(k&s|0){n=w;k=c[hb+(v<<2)>>2]|0;break d}s=k|s;n=(G|0)%4|0;k=c[15028+(v<<2)>>2]|0;m=k&134217727;k=(k>>>27)+((G|0)/4|0)|0;do if((k|0)>=0)if((k|0)>4){g[rb>>3]=+(m|0)*3.725290298461914e-09;c[rb+8>>2]=k;_n(R,71436,rb)|0;k=2147483647;break}else{k=m<<k;break}else{B=0-k|0;k=B>>>0>31?0:(1<<~k)+m>>B}while(0);if(n)k=u((c[47856+(n+3<<2)>>2]|0)+32768>>16,k+2048>>12)|0;c[hb+(v<<2)>>2]=k;n=w}}while(0);B=o+-1|0;w=n;o=B;k=(1<<B&n|0)==0?k:0-k|0}while(0);c[F+4>>2]=k;k=H+2|0;m=o+l|0;if(!((I|0)!=0&(m|0)>0)){v=o;s=G;q=x;break}else{n=w;B=G;v=E;m=D;A=s;p=C;H=k;F=zb+(N*2304|0)+(k<<2)|0}}}else{w=n;v=o;s=p;t=Ga;q=x;k=0}if((m|0)<0){mb=568;break a}B=c[12480+((a[K>>0]&1)<<2)>>2]|0;o=(s|0)/4|0;p=s-(o<<2)|0;n=o+2|0;do if((s|0)>=-11)if((s|0)>11){g[vb>>3]=.25;c[vb+8>>2]=n;_n(R,71436,vb)|0;n=2147483647;break}else{n=67108864<<n;break}else{n=-2-o|0;n=n>>>0>31?0:(1<<-3-o)+67108864>>n}while(0);if(p)n=u((c[47856+(p+3<<2)>>2]|0)+32768>>16,n+2048>>12)|0;if((m|0)>0&k>>>0<573){m=w;w=q;while(1){z=zb+(N*2304|0)+(k<<2)|0;if((v|0)<10){A=Fl(ob,16)|0|m<<16;l=l+-16|0;m=v+16|0}else{A=m;m=v}q=m+-4|0;o=B+((A>>>q&15)<<1)|0;p=a[o>>0]|0;if(!(p&1)){p=b[o>>1]|0;o=(p&65535)>>>1&7;p=B+((A>>>(q-o|0)&(1<<o)+-1)+((p&65535)>>>4&65535)<<1)|0;o=p;p=a[p>>0]|0;m=q}x=m-((p&255)>>>1&7)|0;if((z|0)==(r|0)){v=w+1|0;r=r+(d[w>>0]<<2)|0;q=c[t>>2]|0;do if((s|0)==(q|0))m=s;else{n=(q|0)/4|0;p=q-(n<<2)|0;m=n+2|0;do if((q|0)>=-11)if((q|0)>11){g[wb>>3]=.25;c[wb+8>>2]=m;_n(R,71436,wb)|0;n=2147483647;break}else{n=67108864<<m;break}else{K=-2-n|0;n=K>>>0>31?0:(1<<-3-n)+67108864>>K}while(0);if(!p){m=q;break}m=q;n=u((c[47856+(p+3<<2)>>2]|0)+32768>>16,n+2048>>12)|0}while(0);p=a[o>>0]|0;s=m;t=t+4|0;q=v}else q=w;w=(p&16)==0;K=x+-1|0;m=0-n|0;x=w?x:K;c[z>>2]=w?0:(1<<K&A|0)==0?n:m;K=(a[o>>0]&32)==0;w=x+-1|0;x=K?x:w;c[z+4>>2]=K?0:(1<<w&A|0)==0?n:m;w=zb+(N*2304|0)+(k+2<<2)|0;if((w|0)==(r|0)){v=q+1|0;r=r+(d[q>>0]<<2)|0;q=c[t>>2]|0;do if((s|0)==(q|0))m=s;else{n=(q|0)/4|0;p=q-(n<<2)|0;m=n+2|0;do if((q|0)>=-11)if((q|0)>11){g[xb>>3]=.25;c[xb+8>>2]=m;_n(R,71436,xb)|0;n=2147483647;break}else{n=67108864<<m;break}else{K=-2-n|0;n=K>>>0>31?0:(1<<-3-n)+67108864>>K}while(0);if(!p){m=q;break}m=q;n=u((c[47856+(p+3<<2)>>2]|0)+32768>>16,n+2048>>12)|0}while(0);s=m;t=t+4|0;p=n;q=v;m=0-n|0}else p=n;K=(a[o>>0]&64)==0;J=x+-1|0;v=K?x:J;c[w>>2]=K?0:(1<<J&A|0)==0?p:m;J=(a[o>>0]|0)<0;K=v+-1|0;v=J?K:v;c[w+4>>2]=J?((1<<K&A|0)==0?p:m):0;k=k+4|0;m=v+l|0;if(!(k>>>0<573&(m|0)>0))break;else{m=A;n=p;w=q}}}if((l|0)<=-65){Q=202;break a}k=(m|0)<0?k+-4|0:k;if((k|0)<576)hB(zb+(N*2304|0)+(k<<2)|0,0,((((k|0)==575?576:575)-k|0)>>>1<<3)+8|0)|0;N=N+1|0}while(N>>>0<j>>>0)}if((c[ab>>2]|0)==2?(eb=c[bb>>2]|0,eb|0):0){v=c[nb>>2]|0;k=a[i+10+($a*116|0)+9>>0]|0;if(k<<24>>24!=(a[i+10+($a*116|0)+67>>0]|0)){Q=276;break}l=a[i+10+($a*116|0)+66>>0]|0;if((l^a[i+10+($a*116|0)+8>>0])&8){Q=276;break}O=eb&65535;b[pb>>1]=O;b[V>>1]=O;b[ea>>1]=O;b[pa>>1]=O;b[za>>1]=O;b[Aa>>1]=O;b[Ba>>1]=O;b[Ca>>1]=O;b[Da>>1]=O;b[Ea>>1]=O;b[W>>1]=O;b[X>>1]=O;b[Y>>1]=O;b[Z>>1]=O;b[_>>1]=O;b[$>>1]=O;b[aa>>1]=O;b[ba>>1]=O;b[ca>>1]=O;b[da>>1]=O;b[fa>>1]=O;b[ga>>1]=O;b[ha>>1]=O;b[ia>>1]=O;b[ja>>1]=O;b[ka>>1]=O;b[la>>1]=O;b[ma>>1]=O;b[na>>1]=O;b[oa>>1]=O;b[qa>>1]=O;b[ra>>1]=O;b[sa>>1]=O;b[ta>>1]=O;b[ua>>1]=O;b[va>>1]=O;b[wa>>1]=O;b[xa>>1]=O;b[ya>>1]=O;e:do if(eb&1|0){t=c[jb>>2]|0;c[jb>>2]=t|256;if(k<<24>>24==2){c[U>>2]=0;c[T>>2]=0;c[hb>>2]=0;if(l&8){o=0;l=0;p=S;k=0;do{Q=k;k=k+1|0;Q=a[v+Q>>0]|0;n=Q&255;f:do if(Q<<24>>24){m=0;do{if(c[p+(m<<2)>>2]|0){l=k;break f}m=m+1|0}while(m>>>0<n>>>0)}while(0);p=p+(n<<2)|0;o=o+n|0}while(o>>>0<36);if(o>>>0<576){m=p;Q=220}else Q=228}else{o=0;l=0;m=S;k=0;Q=220}if((Q|0)==220){Q=0;q=0;r=k;s=0;while(1){O=a[v+r>>0]|0;r=r+1|0;p=O&255;g:do if(!(O<<24>>24))n=q;else{n=0;while(1){if(c[m+(n<<2)>>2]|0)break;n=n+1|0;if(n>>>0>=p>>>0){n=q;break g}}c[hb+(s<<2)>>2]=r;n=r}while(0);o=o+p|0;if(o>>>0>=576)break;else{q=n;m=m+(p<<2)|0;s=((s+1|0)>>>0)%3|0}}if(!n)Q=228;else{l=k;o=n}}if((Q|0)==228){Q=0;o=0}if(l|0){m=eb&65534;n=0;do{b[pb+(n<<1)>>1]=m;n=n+1|0}while((n|0)!=(l|0))}if(k>>>0<o>>>0){m=eb&65534;l=0;while(1){if(k>>>0<(c[hb+(l<<2)>>2]|0)>>>0)b[pb+(k<<1)>>1]=m;k=k+1|0;if((k|0)==(o|0))break;else l=((l+1|0)>>>0)%3|0}}}else{k=0;o=0;p=S;q=0;while(1){O=a[v+q>>0]|0;q=q+1|0;n=O&255;h:do if(!(O<<24>>24))m=k;else{l=0;while(1){if(c[p+(l<<2)>>2]|0){m=q;break h}l=l+1|0;if(l>>>0>=n>>>0){m=k;break}}}while(0);o=o+n|0;if(o>>>0>=576)break;else{k=m;p=p+(n<<2)|0}}if(m|0){k=eb&65534;l=0;do{b[pb+(l<<1)>>1]=k;l=l+1|0}while((l|0)!=(m|0))}}if(!(t&4096)){p=0;q=0;while(1){k=a[v+q>>0]|0;o=k&255;l=pb+(q<<1)|0;m=b[l>>1]|0;do if(m&1|0){P=a[i+10+($a*116|0)+76+q>>0]|0;n=P&255;if((P&255)>6){b[l>>1]=m&65534;break}if(k<<24>>24){m=(c[48004+(n<<2)>>2]|0)+32768>>16;l=(c[48004+(6-n<<2)>>2]|0)+32768>>16;k=0;do{P=k+p|0;N=zb+(P<<2)|0;O=(c[N>>2]|0)+2048>>12;c[N>>2]=u(O,m)|0;c[zb+2304+(P<<2)>>2]=u(O,l)|0;k=k+1|0}while((k|0)!=(o|0))}}while(0);p=p+o|0;if(p>>>0>=576)break e;else q=q+1|0}}n=b[i+10+($a*116|0)+64>>1]&1;p=0;q=0;while(1){m=a[v+q>>0]|0;o=m&255;k=pb+(q<<1)|0;l=b[k>>1]|0;i:do if(l&1|0){if(a[P+192+q>>0]|0){b[k>>1]=l&65534;break}k=a[i+10+($a*116|0)+76+q>>0]|0;l=k&255;if(m<<24>>24){if(!(k<<24>>24)){k=0;while(1){O=k+p|0;c[zb+2304+(O<<2)>>2]=c[zb+(O<<2)>>2];k=k+1|0;if((k|0)==(o|0))break i}}m=(c[47884+(n*60|0)+((l+-1|0)>>>1<<2)>>2]|0)+32768>>16;if(!(l&1)){k=0;do{O=k+p|0;c[zb+2304+(O<<2)>>2]=u((c[zb+(O<<2)>>2]|0)+2048>>12,m)|0;k=k+1|0}while((k|0)!=(o|0))}else{k=0;do{O=k+p|0;L=zb+(O<<2)|0;N=c[L>>2]|0;c[L>>2]=u(N+2048>>12,m)|0;c[zb+2304+(O<<2)>>2]=N;k=k+1|0}while((k|0)!=(o|0))}}}while(0);p=p+o|0;if(p>>>0>=576)break;else q=q+1|0}}while(0);if(eb&2|0){c[jb>>2]=c[jb>>2]|512;m=0;n=0;while(1){P=a[v+n>>0]|0;k=P&255;if(P<<24>>24?(b[pb+(n<<1)>>1]|0)==2:0){l=0;do{P=l+m|0;L=zb+(P<<2)|0;P=zb+2304+(P<<2)|0;O=c[P>>2]|0;N=(c[L>>2]|0)+2048|0;c[L>>2]=(N+O>>12)*2896;c[P>>2]=(N-O>>12)*2896;l=l+1|0}while((l|0)!=(k|0))}m=m+k|0;if(m>>>0>=576)break;else n=n+1|0}}}if(!ib){A=$a*18|0;z=0;do{x=h+48+(z*4608|0)+(A<<7)|0;w=i+10+($a*116|0)+(z*58|0)+9|0;v=zb+(z*2304|0)|0;if((a[w>>0]|0)==2){k=c[nb+(z<<2)>>2]|0;t=(a[i+10+($a*116|0)+(z*58|0)+8>>0]&8)==0;if(t)s=0;else{m=0;while(1){l=k+1|0;m=m+(d[k>>0]|0)|0;if(m>>>0>=36){s=2;k=l;break}else k=l}};c[ob>>2]=0;c[ob+4>>2]=0;c[ob+8>>2]=0;c[hb>>2]=s;c[T>>2]=s;c[U>>2]=s;r=s*18|0;m=d[k>>0]|0;q=r;k=k+1|0;l=0;while(1){if(!m){p=d[k>>0]|0;k=k+1|0;l=((l+1|0)>>>0)%3|0}else p=m;O=c[zb+(z*2304|0)+(q<<2)>>2]|0;n=hb+(l<<2)|0;m=c[n>>2]|0;o=ob+(l<<2)|0;P=c[o>>2]|0;Q=P+1|0;c[o>>2]=Q;c[pb+(m*72|0)+(l*24|0)+(P<<2)>>2]=O;if((Q|0)==6){c[o>>2]=0;c[n>>2]=m+1}q=q+1|0;if((q|0)==576)break;else m=p+-1|0}fB(zb+(z*2304|0)+(r<<2)|0,pb+(s*72|0)|0,(u(s,-72)|0)+2304|0)|0;if(!t)Rl(v,36)}else Rl(v,576);k=a[w>>0]|0;l=a[i+10+($a*116|0)+(z*58|0)+8>>0]&8;if(k<<24>>24==2&l<<24>>24==0){Ul(v,lb);Tl(lb,(c[cb>>2]|0)+(z*2304|0)|0,x,0);Ul(zb+(z*2304|0)+72|0,lb);Tl(lb,(c[cb>>2]|0)+(z*2304|0)+72|0,x,1)}else{Q=l<<24>>24==0?k&255:0;Sl(v,lb,Q);Tl(lb,(c[cb>>2]|0)+(z*2304|0)|0,x,0);Sl(zb+(z*2304|0)+72|0,lb,Q);Tl(lb,(c[cb>>2]|0)+(z*2304|0)+72|0,x,1)}l=x+132|0;P=x+388|0;O=c[P>>2]|0;c[l>>2]=0-(c[l>>2]|0);l=x+644|0;Q=c[l>>2]|0;c[P>>2]=0-O;P=x+900|0;O=c[P>>2]|0;c[l>>2]=0-Q;l=x+1156|0;Q=c[l>>2]|0;c[P>>2]=0-O;P=x+1412|0;O=c[P>>2]|0;c[l>>2]=0-Q;l=x+1668|0;Q=c[l>>2]|0;c[P>>2]=0-O;P=x+1924|0;O=c[P>>2]|0;c[l>>2]=0-Q;l=x+2180|0;Q=c[l>>2]|0;c[P>>2]=0-O;c[l>>2]=0-Q;l=576;while(1){k=l;l=l+-1|0;if(c[zb+(z*2304|0)+(l<<2)>>2]|0)break;if(l>>>0<=36){k=36;break}}t=32-(((576-k|0)>>>0)/18|0)|0;k=a[w>>0]|0;l=t>>>0>2;j:do if(k<<24>>24==2)if(l){k=36;l=2;while(1){Ul(zb+(z*2304|0)+(k<<2)|0,lb);Tl(lb,(c[cb>>2]|0)+(z*2304|0)+(l*72|0)|0,x,l);if(l&1|0){Q=x+128+(l<<2)|0;O=x+384+(l<<2)|0;N=c[O>>2]|0;c[Q>>2]=0-(c[Q>>2]|0);Q=x+640+(l<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-N;O=x+896+(l<<2)|0;N=c[O>>2]|0;c[Q>>2]=0-P;Q=x+1152+(l<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-N;O=x+1408+(l<<2)|0;N=c[O>>2]|0;c[Q>>2]=0-P;Q=x+1664+(l<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-N;O=x+1920+(l<<2)|0;N=c[O>>2]|0;c[Q>>2]=0-P;Q=x+2176+(l<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-N;c[Q>>2]=0-P}l=l+1|0;if(l>>>0>=t>>>0){Q=311;break}else k=k+18|0}}else Q=312;else if(l){m=36;l=2;while(1){Sl(zb+(z*2304|0)+(m<<2)|0,lb,k&255);Tl(lb,(c[cb>>2]|0)+(z*2304|0)+(l*72|0)|0,x,l);if(l&1|0){Q=x+128+(l<<2)|0;O=x+384+(l<<2)|0;N=c[O>>2]|0;c[Q>>2]=0-(c[Q>>2]|0);Q=x+640+(l<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-N;O=x+896+(l<<2)|0;N=c[O>>2]|0;c[Q>>2]=0-P;Q=x+1152+(l<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-N;O=x+1408+(l<<2)|0;N=c[O>>2]|0;c[Q>>2]=0-P;Q=x+1664+(l<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-N;O=x+1920+(l<<2)|0;N=c[O>>2]|0;c[Q>>2]=0-P;Q=x+2176+(l<<2)|0;P=c[Q>>2]|0;c[O>>2]=0-N;c[Q>>2]=0-P}l=l+1|0;if(l>>>0>=t>>>0){Q=311;break j}k=a[w>>0]|0;m=m+18|0}}else Q=312;while(0);if((Q|0)==311?(Q=0,t>>>0<32):0)Q=312;if((Q|0)==312){Q=0;v=c[cb>>2]|0;do{P=v+(z*2304|0)+(t*72|0)|0;c[h+48+(z*4608|0)+(A<<7)+(t<<2)>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+4|0;k=x+128+(t<<2)|0;c[k>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+8|0;c[x+256+(t<<2)>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+12|0;p=x+384+(t<<2)|0;c[p>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+16|0;c[x+512+(t<<2)>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+20|0;q=x+640+(t<<2)|0;c[q>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+24|0;c[x+768+(t<<2)>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+28|0;r=x+896+(t<<2)|0;c[r>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+32|0;c[x+1024+(t<<2)>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+36|0;s=x+1152+(t<<2)|0;c[s>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+40|0;c[x+1280+(t<<2)>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+44|0;l=x+1408+(t<<2)|0;c[l>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+48|0;c[x+1536+(t<<2)>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+52|0;m=x+1664+(t<<2)|0;c[m>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+56|0;c[x+1792+(t<<2)>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+60|0;n=x+1920+(t<<2)|0;c[n>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+64|0;c[x+2048+(t<<2)>>2]=c[P>>2];c[P>>2]=0;P=v+(z*2304|0)+(t*72|0)+68|0;o=x+2176+(t<<2)|0;c[o>>2]=c[P>>2];c[P>>2]=0;if(t&1|0){O=c[p>>2]|0;c[k>>2]=0-(c[k>>2]|0);P=c[q>>2]|0;c[p>>2]=0-O;O=c[r>>2]|0;c[q>>2]=0-P;P=c[s>>2]|0;c[r>>2]=0-O;O=c[l>>2]|0;c[s>>2]=0-P;P=c[m>>2]|0;c[l>>2]=0-O;O=c[n>>2]|0;c[m>>2]=0-P;P=c[o>>2]|0;c[n>>2]=0-O;c[o>>2]=0-P}t=t+1|0}while(t>>>0<32)}z=z+1|0}while((z|0)!=(j|0))}$a=$a+1|0;if($a>>>0>=fb>>>0){k=0;Q=318;break}}if((Q|0)==165)mb=567;else if((Q|0)==202)M(71469,71301,1253,71511);else if((Q|0)==276){zb=569;hc=Ab;return zb|0}else if((Q|0)==318){hc=Ab;return k|0}zb=mb;hc=Ab;return zb|0}function Rl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+(b<<2)|0;if((b|0)<=18)return;b=a+72|0;do{g=b+-4|0;e=c[b>>2]|0;f=(c[g>>2]|0)+2048>>12;c[g>>2]=(u(2048-e>>12,-2107)|0)+(f*3512|0);c[b>>2]=(u(f,-2107)|0)+((e+2048>>12)*3512|0);e=b+-8|0;f=b+4|0;g=c[f>>2]|0;a=(c[e>>2]|0)+2048>>12;c[e>>2]=(u(2048-g>>12,-1932)|0)+(a*3612|0);c[f>>2]=(u(a,-1932)|0)+((g+2048>>12)*3612|0);f=b+-12|0;g=b+8|0;a=c[g>>2]|0;e=(c[f>>2]|0)+2048>>12;c[f>>2]=(u(2048-a>>12,-1284)|0)+(e*3890|0);c[g>>2]=(u(e,-1284)|0)+((a+2048>>12)*3890|0);g=b+-16|0;a=b+12|0;e=c[a>>2]|0;f=(c[g>>2]|0)+2048>>12;c[g>>2]=(u(2048-e>>12,-745)|0)+(f*4028|0);c[a>>2]=(u(f,-745)|0)+((e+2048>>12)*4028|0);a=b+-20|0;e=b+16|0;f=c[e>>2]|0;g=(c[a>>2]|0)+2048>>12;c[a>>2]=(u(2048-f>>12,-387)|0)+(g*4078|0);c[e>>2]=(u(g,-387)|0)+((f+2048>>12)*4078|0);e=b+-24|0;f=b+20|0;g=c[f>>2]|0;a=(c[e>>2]|0)+2048>>12;c[e>>2]=(u(2048-g>>12,-168)|0)+(a*4093|0);c[f>>2]=(u(a,-168)|0)+((g+2048>>12)*4093|0);f=b+-28|0;g=b+24|0;a=c[g>>2]|0;e=(c[f>>2]|0)+2048|0;c[f>>2]=(u(2048-a>>12,-58)|0)+(e&-4096);c[g>>2]=(u(e>>12,-58)|0)+(a+2048&-4096);g=b+-32|0;a=b+28|0;e=c[a>>2]|0;f=(c[g>>2]|0)+2048|0;c[g>>2]=(u(2048-e>>12,-15)|0)+(f&-4096);c[a>>2]=(u(f>>12,-15)|0)+(e+2048&-4096);b=b+72|0}while(b>>>0<d>>>0);return}function Sl(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,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;o=((c[a>>2]|0)+2048>>12)*8184|0;g=((c[a+4>>2]|0)+2048>>12)*8122|0;O=((c[a+8>>2]|0)+2048>>12)*7998|0;Z=((c[a+12>>2]|0)+2048>>12)*7813|0;X=((c[a+16>>2]|0)+2048>>12)*7568|0;V=((c[a+20>>2]|0)+2048>>12)*7266|0;ca=((c[a+24>>2]|0)+2048>>12)*6909|0;M=((c[a+28>>2]|0)+2048>>12)*6499|0;Q=((c[a+32>>2]|0)+2048>>12)*6040|0;ba=((c[a+36>>2]|0)+2048>>12)*5534|0;P=((c[a+40>>2]|0)+2048>>12)*4987|0;f=((c[a+44>>2]|0)+2048>>12)*4402|0;A=((c[a+48>>2]|0)+2048>>12)*3783|0;R=((c[a+52>>2]|0)+2048>>12)*3135|0;m=((c[a+56>>2]|0)+2048>>12)*2463|0;t=((c[a+60>>2]|0)+2048>>12)*1773|0;N=((c[a+64>>2]|0)+2048>>12)*1069|0;W=((c[a+68>>2]|0)+2048>>12)*357|0;S=W+o|0;Y=N+g|0;e=t+O|0;a=m+Z|0;v=R+X|0;l=A+V|0;K=f+ca|0;_=P+M|0;L=ba+Q|0;$=a+l|0;l=a-l|0;a=e+K|0;e=K-e|0;K=Y+_|0;aa=S+L|0;S=L-S|0;L=a+$+aa|0;U=e+2048|0;n=u(U+l>>12,-5266)|0;l=l+2048|0;T=(l-S>>12)*8068|0;U=u(S+U>>12,-2802)|0;Y=u(2048-_+Y>>12,-7094)|0;_=u(a+2048-aa>>12,-7698)|0;$=$+2048|0;aa=u($-aa>>12,-1423)|0;a=u($-a>>12,-6275)|0;$=K+v|0;K=(v<<1)-K|0;W=(o+2048-W>>12)*8161|0;N=(g+2048-N>>12)*7913|0;t=(O+2048-t>>12)*7424|0;m=(Z+2048-m>>12)*6710|0;R=X+2048-R>>12;A=(V+2048-A>>12)*4699|0;f=(ca+2048-f>>12)*3462|0;P=(M+2048-P>>12)*2120|0;ba=(Q+2048-ba>>12)*714|0;Q=m+A|0;A=m-A|0;m=t+f|0;t=f-t|0;f=N+P|0;M=W+ba|0;W=ba-W|0;ba=m+Q+M|0;ca=t+2048|0;V=u(ca+A>>12,-5266)|0;A=A+2048|0;X=(A-W>>12)*8068|0;ca=u(W+ca>>12,-2802)|0;N=u(2048-P+N>>12,-7094)|0;P=u(m+2048-M>>12,-7698)|0;Q=Q+2048|0;M=u(Q-M>>12,-1423)|0;m=u(Q-m>>12,-6275)|0;Q=f+(R*5793|0)|0;f=(R*11586|0)-f|0;R=ba+Q|0;Z=V-N-R+X|0;O=m-f+P-Z|0;W=(u(A-t+W>>12,-7094)|0)-O|0;P=P+f-M-W|0;X=N-ca+X-P|0;Q=ba-(Q<<1)-X|0;ca=V+N+ca-Q|0;N=(L+$|0)/2|0;R=((R|0)/2|0)-N|0;V=((n-Y+T|0)/2|0)-R|0;Z=((Z|0)/2|0)-V|0;ba=((a-K+_|0)/2|0)-Z|0;O=((O|0)/2|0)-ba|0;S=(u(l-e+S>>12,-3547)|0)-O|0;W=((W|0)/2|0)-S|0;_=((_+K-aa|0)/2|0)-W|0;P=((P|0)/2|0)-_|0;T=((Y-U+T|0)/2|0)-P|0;X=((X|0)/2|0)-T|0;$=((L-($<<1)|0)/2|0)-X|0;Q=((Q|0)/2|0)-$|0;U=((n+Y+U|0)/2|0)-Q|0;Y=((ca|0)/2|0)-U|0;aa=((a+K+aa|0)/2|0)-Y|0;ca=((m+f+M-ca|0)/2|0)-aa|0;c[b>>2]=P;M=b+4|0;c[M>>2]=T;f=b+8|0;c[f>>2]=X;m=b+12|0;c[m>>2]=$;K=b+16|0;c[K>>2]=Q;a=b+20|0;c[a>>2]=U;n=b+24|0;c[n>>2]=Y;L=b+28|0;c[L>>2]=aa;e=b+32|0;c[e>>2]=ca;l=b+36|0;c[l>>2]=0-ca;t=b+40|0;c[t>>2]=0-aa;A=b+44|0;c[A>>2]=0-Y;g=b+48|0;c[g>>2]=0-U;o=b+52|0;c[o>>2]=0-Q;v=b+56|0;c[v>>2]=0-$;h=b+60|0;c[h>>2]=0-X;p=b+64|0;c[p>>2]=0-T;w=b+68|0;c[w>>2]=0-P;da=0-_|0;i=b+72|0;c[i>>2]=da;I=0-W|0;q=b+76|0;c[q>>2]=I;F=0-S|0;x=b+80|0;c[x>>2]=F;C=0-O|0;j=b+84|0;c[j>>2]=C;H=0-ba|0;r=b+88|0;c[r>>2]=H;E=0-Z|0;y=b+92|0;c[y>>2]=E;B=0-V|0;k=b+96|0;c[k>>2]=B;J=0-R|0;s=b+100|0;c[s>>2]=J;G=0-N|0;z=b+104|0;c[z>>2]=G;D=b+108|0;c[D>>2]=G;G=b+112|0;c[G>>2]=J;J=b+116|0;c[J>>2]=B;B=b+120|0;c[B>>2]=E;E=b+124|0;c[E>>2]=H;H=b+128|0;c[H>>2]=C;C=b+132|0;c[C>>2]=F;F=b+136|0;c[F>>2]=I;I=b+140|0;c[I>>2]=da;switch(d|0){case 0:{c[b>>2]=(P+2048>>12)*179;c[M>>2]=(T+2048>>12)*535;c[f>>2]=(X+2048>>12)*887;c[m>>2]=($+2048>>12)*1232;c[K>>2]=(Q+2048>>12)*1567;c[a>>2]=(U+2048>>12)*1891;c[n>>2]=(Y+2048>>12)*2201;c[L>>2]=(aa+2048>>12)*2493;c[e>>2]=(ca+2048>>12)*2767;c[l>>2]=(2048-ca>>12)*3020;c[t>>2]=(2048-aa>>12)*3250;c[A>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[v>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[w>>2]=(2048-P>>12)*4092;c[i>>2]=(2048-_>>12)*4092;c[q>>2]=(2048-W>>12)*4061;c[x>>2]=(2048-S>>12)*3999;c[j>>2]=(2048-O>>12)*3906;c[r>>2]=(2048-ba>>12)*3784;c[y>>2]=(2048-Z>>12)*3633;c[k>>2]=(2048-V>>12)*3455;c[s>>2]=((c[s>>2]|0)+2048>>12)*3250;c[z>>2]=((c[z>>2]|0)+2048>>12)*3020;c[D>>2]=((c[D>>2]|0)+2048>>12)*2767;c[G>>2]=((c[G>>2]|0)+2048>>12)*2493;c[J>>2]=((c[J>>2]|0)+2048>>12)*2201;c[B>>2]=((c[B>>2]|0)+2048>>12)*1891;c[E>>2]=((c[E>>2]|0)+2048>>12)*1567;c[H>>2]=((c[H>>2]|0)+2048>>12)*1232;c[C>>2]=((c[C>>2]|0)+2048>>12)*887;c[F>>2]=((c[F>>2]|0)+2048>>12)*535;c[I>>2]=((c[I>>2]|0)+2048>>12)*179;return}case 1:{c[b>>2]=(P+2048>>12)*179;c[M>>2]=(T+2048>>12)*535;c[f>>2]=(X+2048>>12)*887;c[m>>2]=($+2048>>12)*1232;c[K>>2]=(Q+2048>>12)*1567;c[a>>2]=(U+2048>>12)*1891;c[n>>2]=(Y+2048>>12)*2201;c[L>>2]=(aa+2048>>12)*2493;c[e>>2]=(ca+2048>>12)*2767;c[l>>2]=(2048-ca>>12)*3020;c[t>>2]=(2048-aa>>12)*3250;c[A>>2]=(2048-Y>>12)*3455;c[g>>2]=(2048-U>>12)*3633;c[o>>2]=(2048-Q>>12)*3784;c[v>>2]=(2048-$>>12)*3906;c[h>>2]=(2048-X>>12)*3999;c[p>>2]=(2048-T>>12)*4061;c[w>>2]=(2048-P>>12)*4092;da=2048-V>>12;c[k>>2]=da*4061;b=2048-R>>12;c[s>>2]=b*3784;d=2048-N>>12;c[z>>2]=d*3250;c[D>>2]=d*2493;c[G>>2]=b*1567;c[J>>2]=da*535;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;c[B+16>>2]=0;c[B+20>>2]=0;return}case 3:{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[n>>2]=(Y+2048>>12)*535;c[L>>2]=(aa+2048>>12)*1567;c[e>>2]=(ca+2048>>12)*2493;c[l>>2]=(2048-ca>>12)*3250;c[t>>2]=(2048-aa>>12)*3784;c[A>>2]=(2048-Y>>12)*4061;da=2048-_>>12;c[i>>2]=da*4092;b=2048-W>>12;c[q>>2]=b*4061;d=2048-S>>12;c[x>>2]=d*3999;ca=2048-O>>12;c[j>>2]=ca*3906;ba=2048-ba>>12;c[r>>2]=ba*3784;aa=2048-Z>>12;c[y>>2]=aa*3633;$=2048-V>>12;c[k>>2]=$*3455;_=2048-R>>12;c[s>>2]=_*3250;Z=2048-N>>12;c[z>>2]=Z*3020;c[D>>2]=Z*2767;c[G>>2]=_*2493;c[J>>2]=$*2201;c[B>>2]=aa*1891;c[E>>2]=ba*1567;c[H>>2]=ca*1232;c[C>>2]=d*887;c[F>>2]=b*535;c[I>>2]=da*179;return}default:return}}function Tl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;c[d+(e<<2)>>2]=(c[b>>2]|0)+(c[a>>2]|0);c[b>>2]=c[a+72>>2];f=b+4|0;c[d+128+(e<<2)>>2]=(c[f>>2]|0)+(c[a+4>>2]|0);c[f>>2]=c[a+76>>2];f=b+8|0;c[d+256+(e<<2)>>2]=(c[f>>2]|0)+(c[a+8>>2]|0);c[f>>2]=c[a+80>>2];f=b+12|0;c[d+384+(e<<2)>>2]=(c[f>>2]|0)+(c[a+12>>2]|0);c[f>>2]=c[a+84>>2];f=b+16|0;c[d+512+(e<<2)>>2]=(c[f>>2]|0)+(c[a+16>>2]|0);c[f>>2]=c[a+88>>2];f=b+20|0;c[d+640+(e<<2)>>2]=(c[f>>2]|0)+(c[a+20>>2]|0);c[f>>2]=c[a+92>>2];f=b+24|0;c[d+768+(e<<2)>>2]=(c[f>>2]|0)+(c[a+24>>2]|0);c[f>>2]=c[a+96>>2];f=b+28|0;c[d+896+(e<<2)>>2]=(c[f>>2]|0)+(c[a+28>>2]|0);c[f>>2]=c[a+100>>2];f=b+32|0;c[d+1024+(e<<2)>>2]=(c[f>>2]|0)+(c[a+32>>2]|0);c[f>>2]=c[a+104>>2];f=b+36|0;c[d+1152+(e<<2)>>2]=(c[f>>2]|0)+(c[a+36>>2]|0);c[f>>2]=c[a+108>>2];f=b+40|0;c[d+1280+(e<<2)>>2]=(c[f>>2]|0)+(c[a+40>>2]|0);c[f>>2]=c[a+112>>2];f=b+44|0;c[d+1408+(e<<2)>>2]=(c[f>>2]|0)+(c[a+44>>2]|0);c[f>>2]=c[a+116>>2];f=b+48|0;c[d+1536+(e<<2)>>2]=(c[f>>2]|0)+(c[a+48>>2]|0);c[f>>2]=c[a+120>>2];f=b+52|0;c[d+1664+(e<<2)>>2]=(c[f>>2]|0)+(c[a+52>>2]|0);c[f>>2]=c[a+124>>2];f=b+56|0;c[d+1792+(e<<2)>>2]=(c[f>>2]|0)+(c[a+56>>2]|0);c[f>>2]=c[a+128>>2];f=b+60|0;c[d+1920+(e<<2)>>2]=(c[f>>2]|0)+(c[a+60>>2]|0);c[f>>2]=c[a+132>>2];f=b+64|0;c[d+2048+(e<<2)>>2]=(c[f>>2]|0)+(c[a+64>>2]|0);c[f>>2]=c[a+136>>2];b=b+68|0;c[d+2176+(e<<2)>>2]=(c[b>>2]|0)+(c[a+68>>2]|0);c[b>>2]=c[a+140>>2];return}
 
// EMSCRIPTEN_END_FUNCS
var kc=[IB,cm,Vo,Wo,Yo,Zo,lp,mp,op,pp,gq,mq,sq,tq,yq,zq,Vs,at,bt,ct,dt,et,ft,gt,Dt,Kt,Lt,Mt,Nt,Ot,Pt,Qt,yu,zu,Eu,Ju,Ku,Pu,Uu,Vu,_u,dv,ev,jv,gw,hw,jw,yw,zw,Bw,ex,fx,lx,mx,rw,sw,uw,Hw,Iw,Kw,AA,Hd,Qd,Sd,Td,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB,IB];var lc=[JB,Dm];var mc=[KB,Le,Me,hz,_o,ap,qp,sp,iq,oq,uq,Aq,Tw,Vw,Xw,wx,yx,Ax,Md,Od,KB,KB,KB,KB,KB,KB,KB,KB,KB,KB,KB,KB];var nc=[LB,dm,im,jm,Zm,So,Xo,$o,ip,np,rp,hq,nq,Hq,Pq,Wv,$v,Uw,Ww,Zw,sx,xx,zx,Cx,eA,GA,IA,Wd,ke,Un,LB,LB];var oc=[MB,hf,em,Yw,tx,ux,vx,Bx];var pc=[NB,ws,xs,Ns,Os,NB,NB,NB];var qc=[OB,Fq,Nq,rs,ss,us,ys,Is,Js,Ls,Ps,fw,iw,xw,Aw,_w,Dx,qw,tw,Gw,Jw,OB,OB,OB,OB,OB,OB,OB,OB,OB,OB,OB];var rc=[PB,Kv,Qv,PB];var sc=[QB,Uq,Vq,Wq,Xq,Yq,Zq,_q,$q,ar,br,cr,Qr,Rr,Sr,Tr,Ur,Vr,Wr,Xr,Yr,Zr,_r,ts,vs,Ks,Ms,Ws,Xs,Ys,Zs,_s,Et,Ft,Gt,Ht,It,Lv,Rv,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB,QB];var tc=[RB,mu,su,ov,pv,Av,Bv,RB];var uc=[SB,$s,Jt,dw,ew,vw,ww,ow,pw,Ew,Fw,SB,SB,SB,SB,SB];var vc=[TB,UB,Zz,sA];var wc=[VB,Xd,Yd,_d,ae,be,de,ee,Ad,ge,he,me,ne,oe,Je,Ke,kf,lf,qf,rf,Lg,Mg,Ni,Oi,Zj,_j,$j,ak,uk,vk,wk,xk,Fk,Gk,Hk,Ik,Lo,No,Po,Qo,fp,gp,xp,yp,zp,Ap,Cp,Dp,Ep,Fp,Hp,Ip,Jp,Kp,Mp,Np,Op,Pp,eq,kq,qq,wq,Cq,Dq,Eq,Lq,Mq,Sq,Tq,Or,Pr,ps,qs,Gs,Hs,Ts,Us,Bt,Ct,ku,lu,qu,ru,wu,xu,Hu,Iu,Su,Tu,bv,cv,mv,nv,yv,zv,Iv,Jv,Ov,Pv,Uv,Vv,Zv,_v,Kq,nw,cw,Cw,Dw,Ow,Pw,Rw,Sw,cx,dx,jx,kx,qx,rx,Ex,Fx,Gx,aA,bA,cA,dA,nA,yA,zA,EA,FA,HA,KA,Id,Rc,Sc,Rd,Vd,kr,mr,qv,vo,tA,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB,VB];var xc=[WB,rd,pe,mf,sf,Ng,Ro,hp,fq,lq,rq,xq,Au,Bu,Cu,Du,Fu,Gu,Lu,Mu,Nu,Ou,Qu,Ru,Wu,Xu,Yu,Zu,$u,av,fv,gv,hv,iv,kv,lv,Yv,bw,gx,hx,ix,nx,ox,px,Pc,Qc,Ld,Tc,Uc,Vc,Wc,Xc,Yc,Zc,_c,$c,ad,bd,Ud,mi,Em,WB,WB,WB];var yc=[XB,qd,fe,jf,Jd,Kd,Nd,Pd,Xh,_h,$h,ai,bi,ci,di,ei,fi,xi,yi,zi,Ai,Bi,Ci,Di,Ei,Fi,XB,XB,XB,XB,XB,XB];var zc=[YB,Uo,kp,Gq,Oq,hA,qA,NA,Yh,Zh,gi,hi,ii,ji,ki,li,si,ti,ui,vi,wi,Nl,Ml,YB,YB,YB,YB,YB,YB,YB,YB,YB];var Ac=[ZB,gA,pA,MA,ni,oi,pi,qi,ri,ZB,ZB,ZB,ZB,ZB,ZB,ZB];var Bc=[_B,To,jp,Xv,aw,fA,oA,LA,gh,_B,_B,_B,_B,_B,_B,_B];var Cc=[$B,fh,kh,ph,qh,rh,sh,th,uh,vh,wh,xh,yh,zh,Ah,Bh,Ch,Dh,Eh,$B,$B,$B,$B,$B,$B,$B,$B,$B,$B,$B,$B,$B];var Dc=[aC,jh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,Uh,Vh,Wh,aC,aC,aC,aC,aC,aC,aC,aC,aC,aC,aC,aC,aC,aC];var Ec=[bC,hh,nh,bC];var Fc=[cC,lh,oh,Fh,Gh,cC,cC,cC];var Gc=[dC,ih];var Hc=[eC,mh];return{___cxa_can_catch:VA,___cxa_is_pointer_type:WA,___errno_location:gm,___getTypeName:bm,___muldi3:YA,___udivdi3:bB,_bitshift64Ashr:cB,_bitshift64Lshr:dB,_bitshift64Shl:eB,_free:vo,_i64Add:ZA,_i64Subtract:_A,_main:Nc,_malloc:uo,_memcpy:fB,_memmove:gB,_memset:hB,_pthread_cond_broadcast:iB,_sbrk:jB,_strlen:tn,dynCall_ii:kB,dynCall_iidiiii:lB,dynCall_iii:mB,dynCall_iiii:nB,dynCall_iiiii:oB,dynCall_iiiiid:pB,dynCall_iiiiii:qB,dynCall_iiiiiid:rB,dynCall_iiiiiii:sB,dynCall_iiiiiiii:tB,dynCall_iiiiiiiii:uB,dynCall_v:vB,dynCall_vi:wB,dynCall_vii:xB,dynCall_viii:yB,dynCall_viiii:zB,dynCall_viiiii:AB,dynCall_viiiiii:BB,dynCall_viiiiiii:CB,dynCall_viiiiiiii:DB,dynCall_viiiiiiiii:EB,dynCall_viiiiiiiiii:FB,dynCall_viiiiiiiiiiii:GB,dynCall_viiiiiiiiiiiii:HB,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 _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];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 _pthread_cond_broadcast=Module["_pthread_cond_broadcast"]=asm["_pthread_cond_broadcast"];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_iiiiid=Module["dynCall_iiiiid"]=asm["dynCall_iiiiid"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiid=Module["dynCall_iiiiiid"]=asm["dynCall_iiiiiid"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];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"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];var dynCall_viiiiiiiiiiii=Module["dynCall_viiiiiiiiiiii"]=asm["dynCall_viiiiiiiiiiii"];var dynCall_viiiiiiiiiiiii=Module["dynCall_viiiiiiiiiiiii"]=asm["dynCall_viiiiiiiiiiiii"];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();